@font-face{font-family:Syne;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/0da54fcd0470ea43-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Syne;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/680a7121f7a85e3f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Syne;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8a1d8947e5852e30-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Syne;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/0da54fcd0470ea43-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Syne;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/680a7121f7a85e3f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Syne;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/8a1d8947e5852e30-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Syne Fallback;src:local("Arial");ascent-override:93.93%;descent-override:27.93%;line-gap-override:0.00%;size-adjust:98.47%}.__className_387f85{font-family:Syne,Syne Fallback;font-style:normal}.__variable_387f85{--font-syne:"Syne","Syne Fallback"}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans Fallback;src:local("Arial");ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.00%;size-adjust:104.98%}.__className_96bb4e{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.__variable_96bb4e{--font-jakarta:"Plus Jakarta Sans","Plus Jakarta Sans Fallback"}:root{color-scheme:light;--font-display:var(--font-syne),system-ui,sans-serif;--font-sans:var(--font-jakarta),system-ui,sans-serif;--font-ui:var(--font-jakarta),system-ui,sans-serif;--bg:#f7f7f5;--surface:#ffffff;--ink:#080808;--yellow:#ffd600;--text:var(--ink);--text-muted:#6b6560;--border:rgba(8,8,8,0.1);--border-strong:rgba(8,8,8,0.16)}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{font-family:var(--font-sans);color:var(--text);-webkit-font-smoothing:antialiased}.landing,body{background:var(--bg)}.landing{position:relative;display:grid;grid-template-rows:1fr auto;min-height:100dvh;overflow:hidden}.grid-canvas{width:100%;height:100%}.grid-canvas,.landing-wash{position:absolute;inset:0;pointer-events:none}.landing-wash{background:radial-gradient(ellipse 70% 60% at 50% 30%,transparent 35%,rgba(247,247,245,.85) 100%)}.hero{position:relative;z-index:1;display:flex;align-items:center;padding:clamp(2rem,6vh,4rem) clamp(1.5rem,5vw,4rem) 0}.hero-title{margin:0;display:flex;flex-direction:column;font-family:var(--font-display);font-size:clamp(3.25rem,17vw,15rem);font-weight:800;letter-spacing:-.04em;line-height:.88;text-transform:lowercase;color:var(--text)}.hero-line{display:block}.hero-line-accent{color:var(--yellow)}.hero-footer{position:relative;z-index:1;padding:clamp(1.5rem,4vh,2.5rem) clamp(1.5rem,5vw,4rem) clamp(2rem,6vh,3.5rem)}.actions{display:flex;flex-direction:column;align-items:stretch;gap:.75rem;width:min(100%,320px)}.btn{display:inline-flex;align-items:center;justify-content:center;height:3rem;padding:0 1.75rem;border-radius:.625rem;font-family:var(--font-ui);font-size:.9375rem;font-weight:600;letter-spacing:-.02em;text-decoration:none;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}.btn:focus-visible{outline:2px solid var(--yellow);outline-offset:3px}.btn-primary{background:var(--yellow);color:var(--ink);border:1px solid var(--yellow)}.btn-primary:hover{background:#ffe24d;border-color:#ffe24d;transform:translateY(-1px)}.btn-ghost{background:var(--surface);color:var(--text);border:1px solid var(--border-strong)}.btn-ghost:hover{border-color:var(--yellow);color:var(--ink);transform:translateY(-1px)}.btn-ghost:active,.btn-primary:active{transform:translateY(0)}@media (min-width:560px){.actions{flex-direction:row;width:auto;gap:.875rem}.btn{min-width:10.5rem}}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.login-stub{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;background:var(--bg);font-family:var(--font-sans);color:var(--text)}.login-stub h1{margin:0;font-family:var(--font-display);font-size:clamp(1.75rem,5vw,2.5rem);font-weight:800;letter-spacing:-.04em;text-transform:lowercase}.login-stub a{font-family:var(--font-ui);color:var(--text-muted);font-size:.9375rem;font-weight:500;letter-spacing:-.015em;text-decoration:none}.login-stub a:hover{color:var(--ink)}.auth-shell{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:2rem 1.25rem;background:var(--bg)}.auth-card{width:min(100%,420px);padding:2rem 1.75rem 1.75rem;border-radius:1rem;border:1px solid var(--border);background:var(--surface);box-shadow:0 1px 2px rgba(8,8,8,.04)}.auth-eyebrow,.dashboard-eyebrow{margin:0 0 .5rem;font-family:var(--font-ui);font-size:.75rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#9a8500}.auth-title{margin:0;font-family:var(--font-display);font-size:1.75rem;font-weight:800;letter-spacing:-.04em;text-transform:lowercase}.auth-lead{margin:.75rem 0 1.5rem;font-size:.9375rem;line-height:1.5;color:var(--text-muted)}.auth-form{gap:1rem}.auth-form,.field{display:flex;flex-direction:column}.field{gap:.375rem;font-family:var(--font-ui);font-size:.8125rem;font-weight:500;color:var(--text-muted)}.field input{height:2.75rem;padding:0 .875rem;border-radius:.5rem;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-family:var(--font-sans);font-size:.9375rem}.field input:focus{outline:2px solid var(--yellow);outline-offset:1px;border-color:var(--yellow)}.auth-error{margin:0;font-size:.875rem;color:#c92a2a}.auth-submit{width:100%;margin-top:.25rem;cursor:pointer;border:none}.auth-submit:disabled{opacity:.65;cursor:wait}.auth-back{display:inline-block;margin-top:1.25rem;font-family:var(--font-ui);font-size:.875rem;color:var(--text-muted);text-decoration:none}.auth-back:hover{color:var(--ink)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.dashboard-shell{display:flex;min-height:100dvh;background:var(--bg)}.dashboard-sidebar{display:flex;flex-direction:column;flex-shrink:0;width:min(100%,16.5rem);padding:1.5rem 1.25rem;border-right:1px solid var(--border);background:var(--surface)}.sidebar-brand{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem}.sidebar-brand-mark{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.625rem;background:var(--yellow);color:var(--ink);font-size:.875rem;letter-spacing:-.04em}.sidebar-brand-mark,.sidebar-brand-name{font-family:var(--font-display);font-weight:800;text-transform:lowercase}.sidebar-brand-name{margin:0;font-size:.9375rem;letter-spacing:-.03em;line-height:1.2}.sidebar-brand-role{margin:.15rem 0 0;font-family:var(--font-ui);font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.sidebar-nav{display:flex;flex-direction:column;gap:.35rem;flex:1 1}.sidebar-link{width:100%;padding:.65rem .875rem;border:none;border-radius:.5rem;background:transparent;color:var(--text-muted);font-family:var(--font-ui);font-size:.9375rem;font-weight:600;letter-spacing:-.02em;text-align:left;cursor:pointer;transition:background .15s ease,color .15s ease}.sidebar-link:hover{background:var(--bg);color:var(--ink)}.sidebar-link.is-active{background:rgba(255,214,0,.28);color:var(--ink)}.sidebar-link:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}.sidebar-footer{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border)}.sidebar-user{margin:0 0 .875rem;display:flex;flex-direction:column;gap:.15rem}.sidebar-user-label{font-family:var(--font-ui);font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.sidebar-user-name{font-family:var(--font-ui);font-size:.875rem;font-weight:700;color:var(--ink)}.sidebar-signout{width:100%;height:2.5rem;font-size:.875rem}.dashboard-content{flex:1 1;min-width:0;padding:clamp(1.5rem,4vw,2.5rem)}.dashboard-topbar{margin-bottom:1.75rem}.dashboard-page-title{margin:0;font-family:var(--font-display);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;letter-spacing:-.04em;text-transform:lowercase;line-height:1.05}.dashboard-page-lead{margin:.5rem 0 0;font-size:.9375rem;color:var(--text-muted);max-width:36rem;line-height:1.5}.dashboard-main{max-width:52rem}@media (max-width:720px){.dashboard-shell{flex-direction:column}.dashboard-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--border);padding:1.25rem 1rem}.sidebar-nav{flex-direction:row;flex-wrap:wrap;flex:none}.sidebar-link{width:auto;flex:1 1;min-width:7rem;text-align:center}.sidebar-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.sidebar-user{margin:0}.sidebar-signout{width:auto;min-width:7rem}}.panel-title{margin:0 0 1.25rem;font-family:var(--font-display);font-size:1.125rem;font-weight:700;letter-spacing:-.03em;text-transform:lowercase;color:var(--text-muted)}.panel-empty{color:var(--text-muted);font-size:.9375rem}.card-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.card{padding:1.25rem 1.35rem;border-radius:.75rem;border:1px solid var(--border);background:var(--surface);box-shadow:0 1px 2px rgba(8,8,8,.04)}.card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.card-head h3{margin:0;font-family:var(--font-display);font-size:1.125rem;font-weight:700;letter-spacing:-.03em}.card-meta{margin:.5rem 0 .75rem;font-size:.8125rem;color:var(--text-muted)}.card-body{margin:0;line-height:1.55;font-size:.9375rem;color:#3d3a36}.badge{display:inline-flex;padding:.2rem .55rem;border-radius:999px;font-family:var(--font-ui);font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--border-strong);color:var(--text-muted)}.badge-active{border-color:rgba(154,133,0,.35);color:#7a6a00;background:rgba(255,214,0,.15)}.timeline{list-style:none;margin:0;padding:0}.timeline-item{display:grid;grid-template-columns:1rem 1fr;grid-gap:0 1.25rem;gap:0 1.25rem;padding-bottom:1.5rem;position:relative}.timeline-item:not(:last-child):before{content:"";position:absolute;left:.4375rem;top:1.25rem;bottom:0;width:2px;background:var(--border)}.timeline-marker{width:.875rem;height:.875rem;margin-top:.35rem;border-radius:50%;border:2px solid var(--border-strong);background:var(--surface)}.timeline-item.status-completed .timeline-marker{border-color:var(--yellow);background:var(--yellow)}.timeline-item.status-in_progress .timeline-marker{border-color:var(--yellow);box-shadow:0 0 0 3px rgba(255,214,0,.35)}.timeline-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem}.timeline-row h3{margin:0;font-family:var(--font-display);font-size:1rem;font-weight:700;letter-spacing:-.02em}.timeline-date{margin:.35rem 0 .5rem;font-size:.8125rem;color:var(--text-muted)}.timeline-desc{margin:0;font-size:.9375rem;line-height:1.5;color:#3d3a36}