@font-face{font-family:Inter;font-style:normal;font-weight:300 900;font-display:swap;src:url(/fonts/inter-normal-300-900-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-weight:300 900;font-display:swap;src:url(/fonts/inter-normal-300-900-latin-ext.woff2) format("woff2");unicode-range:u+0100-02af,u+0304,u+0308,u+0329,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20cf,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:italic;font-weight:600;font-display:swap;src:url(/fonts/inter-italic-600-latin.woff2) format("woff2")}@font-face{font-family:Archivo Expanded;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/archivo-expanded-normal-600-latin.woff2) format("woff2")}@font-face{font-family:Archivo Expanded;font-style:italic;font-weight:600;font-display:swap;src:url(/fonts/archivo-expanded-italic-600-latin.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/cormorant-garamond-normal-400-700-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/cormorant-garamond-normal-400-700-latin-ext.woff2) format("woff2");unicode-range:u+0100-02af,u+0304,u+0308,u+0329,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20cf,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/cormorant-garamond-italic-400-700-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/cormorant-garamond-italic-400-700-latin-ext.woff2) format("woff2");unicode-range:u+0100-02af,u+0304,u+0308,u+0329,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20cf,u+2113,u+2c60-2c7f,u+a720-a7ff}:root{--bg:#0b0b0c;--surface:#121214;--surface-2:#18181b;--fg:#f2f2f2;--muted:#8a8a8f;--faint:#5e5e63;--line:#2a2a2e;--accent:#ffffff;--accent-fg:#0b0b0c;--ok:#8fe3a8;--warn:#e6b85c;--info:#7aa2ff;--danger:#ff6b6b;--radius:14px;--shadow:0 1px 0 rgba(255,255,255,.03) inset,0 12px 32px -20px rgba(0,0,0,.8);--font-sans:"Inter";--font-display:"Archivo Expanded";--font-serif:"Cormorant Garamond";color-scheme:dark}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{background:var(--bg);color:var(--fg);font:15px/1.5 var(--font-sans),-apple-system,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit}h1,h2,h3{margin:0;font-family:var(--font-display),var(--font-sans),sans-serif;font-weight:600;letter-spacing:-.045em}.wordmark-link{text-decoration:none;color:inherit}.wordmark{gap:.35em;color:var(--fg);white-space:nowrap}.wordmark,.wordmark .logo-mark-wrap{display:inline-flex;align-items:baseline}.wordmark .logo-name{font-family:var(--font-display),var(--font-sans),sans-serif;font-weight:600;letter-spacing:-.03em;line-height:1;font-size:17px}.wordmark .tm{font-size:.25em;font-weight:500;letter-spacing:.04em;margin-left:.12em;position:relative;top:-2.168em}.wordmark .sep,.wordmark .tm{font-family:var(--font-sans),sans-serif}.wordmark .sep{font-weight:400;font-size:14px;color:var(--faint)}.wordmark .product{font-family:var(--font-display),var(--font-sans),sans-serif;font-weight:600;font-size:17px;line-height:1;letter-spacing:-.045em;color:#f3f5f6}.wordmark.s .logo-name,.wordmark.s .product{font-size:14px}.wordmark.s .sep{font-size:12px}p{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--info);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:13px}.mono{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.auth{min-height:100vh;display:grid;place-items:center;padding:16px;position:relative;isolation:isolate;overflow:hidden}.auth:before{content:"";position:absolute;inset:-40% -20%;z-index:-1;pointer-events:none;background:radial-gradient(60% 50% at 70% 20%,rgba(120,110,90,.22),transparent 60%),radial-gradient(40% 40% at 20% 80%,rgba(80,90,110,.2),transparent 60%),repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 64px),repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 64px);-webkit-mask-image:radial-gradient(70% 70% at 50% 50%,#000 30%,transparent 100%);mask-image:radial-gradient(70% 70% at 50% 50%,#000 30%,transparent 100%);animation:drift 40s linear infinite alternate}@keyframes drift{0%{transform:translateZ(0)}to{transform:translate3d(-3%,2%,0)}}.auth .card,.auth form{width:100%;max-width:360px}.auth .brand{margin-bottom:28px}.auth h1{font-family:var(--font-display),var(--font-sans),sans-serif;font-weight:600;letter-spacing:-.045em;font-size:26px;line-height:1.1;margin:0 0 8px}.auth p{color:var(--muted);margin:0 0 24px}.auth input{width:100%;padding:12px 14px;background:transparent;border:1px solid var(--line);border-radius:8px;outline:none}.auth input:focus{border-color:var(--muted)}.auth button{width:100%;margin-top:12px;padding:12px 14px;background:var(--accent);color:var(--accent-fg);border:0;border-radius:8px;font-weight:600}.auth button:disabled{opacity:.6;cursor:default}.auth .error{color:var(--danger);font-size:13px;margin:10px 0 0}.auth .note{font-size:12px;color:var(--faint);margin:28px 0 0}.auth .alt{font-size:13px;margin-top:18px;color:var(--muted)}.auth .alt button{all:unset;cursor:pointer;text-decoration:underline}body.app{background:radial-gradient(60% 40% at 80% -10%,rgba(120,110,90,.12),transparent 60%),repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 64px),repeating-linear-gradient(90deg,rgba(255,255,255,.018) 0 1px,transparent 1px 64px),var(--bg);background-attachment:fixed}.shell{max-width:1080px;margin:0 auto;padding:0 max(24px,env(safe-area-inset-right)) 64px max(24px,env(safe-area-inset-left))}.topbar{justify-content:space-between;gap:16px;min-height:60px;border-bottom:1px solid var(--line);margin-bottom:36px}.topbar,.topbar nav{display:flex;align-items:center;flex-wrap:wrap}.topbar nav{gap:18px;font-size:14px}.topbar nav a,.topbar nav button{text-decoration:none;color:var(--muted);background:none;border:0;padding:0}.topbar nav [aria-current=page],.topbar nav a:hover,.topbar nav button:hover{color:var(--fg)}.topbar select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface);padding:6px 28px 6px 12px;color:var(--fg);background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 14px) 52%,calc(100% - 9px) 52%;background-size:5px 5px;background-repeat:no-repeat}.topbar input,.topbar select{border:1px solid var(--line);border-radius:999px;font-size:13px}.topbar input{background:var(--surface);padding:6px 12px;width:170px;outline:none}.topbar input:focus{border-color:var(--muted)}.greeting{margin-bottom:28px;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.greeting h1{font-family:var(--font-display),var(--font-sans),sans-serif;font-weight:600;letter-spacing:-.045em;font-size:34px;line-height:1.1;margin-bottom:4px}.accent,.greeting h1 em{font-family:var(--font-serif),Georgia,serif;font-style:italic;font-weight:500;letter-spacing:0;font-size:1.12em;color:var(--fg)}.greeting .sub{color:var(--muted)}.mission{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:14px 20px;margin:0 0 24px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(135deg,#141416,#1d1d21);color:#f2efe6;box-shadow:var(--shadow)}.mission .muted{color:#b2ada2}.phases{flex-wrap:wrap;gap:4px 6px;margin:0;padding:0;list-style:none;font-size:13px;letter-spacing:.02em}.phases,.phases button{display:flex;align-items:center}.phases button{gap:7px;color:#8d887d;background:none;border:0;padding:6px 8px;border-radius:999px;min-height:32px;transition:background .2s,color .2s}.phases button:hover{background:rgba(255,255,255,.05);color:#c9c4b8}.phases li.done button{color:#c9c4b8}.phases li.now button{color:#fff;font-weight:600;background:rgba(255,255,255,.06)}.phases .dot{width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.55;flex:none}.phases li.done .dot{background:var(--ok);opacity:1}.phases li.now .dot{opacity:1;box-shadow:0 0 0 4px rgba(255,255,255,.14)}.phases .stat{margin-left:6px;padding:2px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.18);color:#e6e1d4;font-size:12px;letter-spacing:.08em}.tminus{font-size:14px;color:#e6e1d4}.tminus b{font-weight:600;font-size:16px;letter-spacing:.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tminus.go b{color:var(--ok)}.mission .zones{flex-basis:100%;font-size:12px;color:#8d887d;letter-spacing:.04em}.mission .zones b{color:#c9c4b8;font-weight:500}.board{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-gap:14px;gap:14px;align-items:start}@media (max-width:860px){.board{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;box-shadow:var(--shadow)}.card .label{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;display:flex;justify-content:space-between;gap:12px}.event{padding:24px 26px;display:grid;grid-gap:18px;gap:18px}.event .head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}.event h2{font-family:var(--font-display),var(--font-sans),sans-serif;font-weight:600;letter-spacing:-.045em;font-size:30px;line-height:1.1}.event .when{color:var(--muted);margin-top:6px;max-width:48ch}.event .count{font-family:var(--font-display),var(--font-sans),sans-serif;font-weight:600;letter-spacing:-.04em;font-size:30px;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.event .count span{color:var(--faint)}.bar{height:3px;background:var(--line);border-radius:2px;overflow:hidden}.bar i{display:block;height:100%;background:var(--fg);transition:width .6s cubic-bezier(.2,.7,.2,1)}.next{display:grid;grid-gap:8px;gap:8px;padding:18px 20px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line)}.next .kicker{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--info);display:flex;align-items:center;gap:8px}.next .kicker:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--info);box-shadow:0 0 0 4px rgba(122,162,255,.16)}.next .what{font-size:24px;font-weight:600;letter-spacing:-.01em}.next .to{display:flex;align-items:center;gap:10px;color:#e6e1d4;flex-wrap:wrap}.next .how,.next .to svg{color:var(--muted)}.next .how{font-size:14px}.actions{display:flex;gap:10px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;min-height:44px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);color:var(--fg);text-decoration:none;font-weight:500;font-size:14px;line-height:1.2;transition:border-color .15s,transform .12s}.btn:hover{border-color:var(--muted)}.btn:active{transform:scale(.98)}.btn.primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent);padding-inline:22px;font-weight:600}.btn:disabled{opacity:.5;cursor:default;transform:none}.pill{display:inline-block;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:500;background:rgba(255,255,255,.07);color:var(--muted)}.pill.review{background:rgba(230,184,92,.16);color:var(--warn)}.pill.approved{background:rgba(143,227,168,.16);color:var(--ok)}.done-card{display:grid;grid-gap:12px;gap:12px;justify-items:start}.done-card .big{font-family:var(--font-display),var(--font-sans),sans-serif;font-weight:600;letter-spacing:-.045em;font-size:26px}.steps{padding:18px 8px 8px}.steps .label{padding:0 12px}.steps ol{list-style:none;margin:0;padding:0}.row{width:100%;display:grid;grid-template-columns:22px minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;padding:10px 12px;min-height:44px;border:0;border-radius:10px;background:transparent;text-align:left;transition:background .2s}.row:hover{background:rgba(255,255,255,.04)}.row.cur{background:rgba(122,162,255,.08)}.check{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--faint);display:grid;place-items:center;font-size:11px;font-weight:700;color:var(--accent-fg)}.row.cur .check{border-color:var(--info)}.row.done .check{background:var(--ok);border-color:var(--ok)}.row.skip .check{background:var(--faint);border-color:var(--faint);color:var(--fg)}.row .nm{font-size:14px}.row .v,.row.done .nm,.row.skip .nm{color:var(--muted)}.row .v{font-size:13px;text-align:right}.row.done .v{color:var(--ok)}.link-btn{background:none;border:0;color:var(--muted);font-size:12px;letter-spacing:.06em;text-transform:uppercase;padding:0}.link-btn:hover{color:var(--fg)}.flash{padding:10px 14px;border-radius:10px;background:rgba(143,227,168,.12);color:var(--ok);margin-bottom:16px;font-size:14px}.flash.error{background:rgba(255,107,107,.12);color:#ff8a8a}.footnote{margin-top:28px;font-size:12px;color:var(--faint);display:flex;justify-content:space-between;gap:8px 20px;flex-wrap:wrap}@media (max-width:640px){.shell{padding:0 16px 48px}.topbar{margin-bottom:24px;padding:10px 0}.greeting h1{font-size:32px}.event{padding:20px}.actions .btn{flex:1 1}}@media (prefers-reduced-motion:no-preference){.reveal>*{animation:rise .6s cubic-bezier(.2,.7,.2,1) both}.reveal>:first-child{animation-delay:.02s}.reveal>:nth-child(2){animation-delay:.08s}.reveal>:nth-child(3){animation-delay:.14s}.reveal>:nth-child(4){animation-delay:.2s}.reveal>:nth-child(5){animation-delay:.26s}.reveal>:nth-child(6){animation-delay:.32s}.slide-in{animation:rise .45s cubic-bezier(.2,.7,.2,1) both}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.auth .card,.auth form{animation:rise .8s cubic-bezier(.2,.7,.2,1) both}}@media (prefers-reduced-motion:reduce){.auth:before{animation:none}*{transition:none!important}}