@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/lato-regular.woff2') format('woff2')}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/playfair-display-regular.woff2') format('woff2')}

:root{color-scheme:light;--ivory:#fff8f3;--blush:#f4dce3;--rose:#d8a5b7;--plum:#5d304d;--dark:#422237;--text:#624652;--muted:#795466;--line:rgba(93,48,77,.15)}
*{box-sizing:border-box}
body{margin:0;background:var(--ivory);color:var(--text);font:400 16px/1.6 Lato,Arial,sans-serif}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit}
a{color:inherit}
a:focus-visible,button:focus-visible{outline:3px solid var(--plum);outline-offset:5px}
.skip-link{position:absolute;top:12px;left:12px;transform:translateY(-160%);z-index:10;padding:10px 16px;background:var(--plum);color:var(--ivory);border-radius:6px}
.skip-link:focus{transform:translateY(0)}
.site-header{background:var(--ivory);border-bottom:1px solid var(--line)}
.header-inner{max-width:1100px;margin:auto;min-height:110px;padding:24px 36px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;flex-direction:column;gap:2px}
.wordmark{font:400 31px/1.2 'Playfair Display',Georgia,serif;letter-spacing:3px;text-transform:uppercase;color:var(--plum)}
.brand-caption{font-size:12px;color:var(--muted)}
.environment{font-size:11px;letter-spacing:1.5px;background:var(--blush);color:var(--plum);border:1px solid var(--line);padding:5px 12px;border-radius:999px}
.main-content{max-width:1100px;margin:auto;padding:38px 36px 48px}
.eyebrow{margin:0 0 8px;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}
h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;color:var(--plum)}
h1{font-size:36px;line-height:1.25;margin:0 0 10px}
.intro{margin:0;color:var(--muted)}
.welcome-panel{display:flex;justify-content:space-between;align-items:center;gap:26px;margin:27px 0 16px;padding:27px;background:linear-gradient(110deg,#fbe7eb 0%,#fff8f3 55%,#f2d9e1 100%);border:1px solid var(--line);border-radius:18px}
.welcome-panel h2{font-size:25px;line-height:1.3;margin:0 0 6px}
.welcome-panel p{font-size:14px;margin:0;color:var(--muted)}
.primary-button{display:inline-flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 16px;min-height:49px;padding:12px 22px;border:0;border-radius:999px;background:var(--plum);color:var(--ivory);text-decoration:none;font-size:14px;font-weight:700}
.primary-button:not(:disabled):hover{background:var(--dark)}
.primary-button:disabled{background:#e1dfe0;color:#5f5b5e;cursor:not-allowed}
.button-status{font-size:11px;font-weight:400}
.availability-note{font-size:13px;color:var(--muted);margin:0 0 24px}
.page-group{margin-top:28px}
.group-heading{font:400 11px/1.5 Lato,Arial,sans-serif;text-transform:uppercase;letter-spacing:1.7px;margin:0 0 12px;color:var(--muted)}
.page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.page-tile{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0;min-height:128px;padding:22px;border:1px solid var(--line);border-radius:12px;background:#fffdfa;color:var(--text);text-decoration:none;text-align:left}
.tile-copy{display:block;min-width:0}
.tile-title{display:block;font-size:15px;font-weight:700;color:var(--plum);line-height:1.4}
.tile-description{display:block;font-size:13px;line-height:1.5;margin-top:7px}
.tile-arrow{color:var(--plum)}
.page-tile:not(:disabled):hover{background:#faedf1;border-color:var(--rose)}
.page-tile:disabled{background:#efeded;border-color:#ddd8da;color:#696367;cursor:not-allowed}
.page-tile:disabled .tile-title{color:#635d61}
.tile-status{flex-shrink:0;align-self:flex-start;font-size:10px;line-height:1.5;padding:3px 7px;border-radius:999px;background:#e1dfe0;color:#635d61;white-space:nowrap}
.site-footer{background:var(--plum);color:var(--ivory)}
.footer-inner{max-width:1100px;margin:auto;padding:21px 36px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12px}
@media(max-width:1000px){.page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-tile{min-height:115px}.header-inner,.main-content,.footer-inner{padding-left:28px;padding-right:28px}.welcome-panel{flex-wrap:wrap}}
@media(max-width:600px){.header-inner{min-height:100px;padding:23px 20px}.wordmark{font-size:27px;letter-spacing:2px}.main-content{padding:29px 20px 35px}h1{font-size:30px}.intro{font-size:14px}.welcome-panel{display:block;padding:21px;margin-top:23px}.welcome-panel h2{font-size:24px}.primary-button{width:100%;margin-top:19px}.page-grid{grid-template-columns:1fr;gap:10px}.page-tile{min-height:99px;padding:18px}.tile-title{font-size:15px}.tile-description{font-size:13px}.footer-inner{padding:21px 20px;justify-content:center;text-align:center}.availability-note{font-size:12px}.tile-status{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.workspace{display:grid;grid-template-columns:220px minmax(0,1fr);max-width:1320px;margin:auto}
.sidebar{padding:30px 16px;background:#fffdfa;border-right:1px solid var(--line)}
.sidebar-home,.sidebar-link{display:block;width:100%;text-align:left;text-decoration:none;border:0;border-radius:8px;padding:10px 12px;font:400 13px/1.5 Lato,Arial,sans-serif}
.sidebar-home{background:var(--blush);color:var(--plum);font-weight:700}
.sidebar-heading{font-size:10px;text-transform:uppercase;letter-spacing:1.3px;margin:25px 12px 8px;color:var(--muted)}
.sidebar-link{background:transparent;color:var(--plum);margin:3px 0}
.sidebar-link:disabled{color:#756e72;background:#f0eeee;cursor:not-allowed}
.sidebar-link:not(:disabled):hover{background:var(--blush)}
.sidebar-menu>summary{display:none}

.workspace .main-content{width:100%;min-width:0;padding:35px 30px 45px}
.header-inner,.footer-inner{max-width:1320px}
.workspace .page-tile{display:flex;flex-direction:column;gap:14px}
@media(max-width:1100px){.workspace .page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.workspace{display:block}.sidebar{padding:14px 22px;border-right:0;border-bottom:1px solid var(--line)}.sidebar-home{display:none}.sidebar-menu>summary{display:list-item;min-height:44px;padding:10px;color:var(--plum);cursor:pointer}.sidebar-menu:not([open])>nav{display:none}.sidebar-menu nav{padding-bottom:12px}.sidebar-heading{margin-top:16px}.sidebar-link{min-height:44px}.workspace .main-content{padding:28px}}
@media(max-width:600px){.workspace .main-content{padding:26px 20px 35px}.workspace .page-grid{grid-template-columns:1fr}.workspace .page-tile{flex-direction:row;align-items:flex-start}.sidebar{padding:10px 18px}}
.login-main{max-width:500px;margin:55px auto;padding:0 20px}.login-panel{background:#fffdfa;border:1px solid var(--line);border-radius:18px;padding:32px}.login-form{display:grid;gap:10px;margin-top:25px}.login-form label{font-size:14px;color:var(--plum)}.login-form input:not([type=hidden]){width:100%;min-height:48px;border:1px solid #d7bec8;border-radius:8px;padding:10px 12px;font:400 16px Lato,Arial,sans-serif;background:var(--ivory);color:var(--text)}.login-form input:focus-visible{outline:2px solid var(--plum);outline-offset:3px}.login-form .primary-button{margin-top:15px;cursor:pointer}.login-error{color:#96354c;font-size:14px}.account-bar{display:flex;justify-content:flex-end;align-items:center;gap:18px;max-width:1320px;margin:auto;padding:16px 30px;border-top:1px solid var(--line);font-size:13px}.signout-button{border:0;background:transparent;color:var(--plum);text-decoration:underline;min-height:44px;cursor:pointer}

/* Frequent actions share the welcome panel's blush treatment. */
.featured-actions{margin:29px 0 34px}
.featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.featured-panel{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:21px;min-width:0;padding:25px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(110deg,#fbe7eb 0%,#fff8f3 55%,#f2d9e1 100%)}
.featured-panel h3{font:400 25px/1.3 'Playfair Display',Georgia,serif;color:var(--plum);margin:0 0 9px}
.featured-panel p{font-size:14px;color:var(--muted);margin:0}
.featured-panel .primary-button{margin:0;min-width:140px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:600px){.featured-grid{grid-template-columns:1fr;gap:12px}.featured-panel{padding:22px;gap:18px}.featured-panel h3{font-size:24px}.featured-panel .primary-button{width:100%}}

/* Home stays available independently of the collapsible navigation. */
@media(max-width:800px){.sidebar .sidebar-home{display:flex;align-items:center;width:max-content;min-height:44px;padding:10px 16px;margin-bottom:6px;background:var(--blush);color:var(--plum)}}
