:root{--surface:#fdfbf7;--surface-muted:#f5f1ea;--surface-quiet:#ebe5dc;--text:#1e2528;--text-muted:#647174;--text-soft:#8a9698;--line:#ddd5c9;--accent:#0e7490;--accent-soft:#e5f5f8;--danger:#9f1239;--radius:8px;color:var(--text);background:var(--surface);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--surface);min-height:100vh;color:var(--text);margin:0;overflow-x:clip}a{color:inherit;text-decoration:none;transition:color .14s,opacity .14s,transform .14s}button,input,textarea,select{font:inherit}button,.button{border:1px solid var(--line);border-radius:var(--radius);min-height:2.5rem;color:var(--text);cursor:pointer;background:#fff;justify-content:center;align-items:center;padding:.55rem .9rem;font-weight:650;transition:background-color .14s,border-color .14s,color .14s,transform .14s;display:inline-flex}button:active,.button:active,a:active{transform:translateY(1px)scale(.99)}.route-progress{z-index:20;background:var(--accent);transform-origin:0;pointer-events:none;width:34%;height:2px;animation:.7s ease-in-out infinite route-progress;position:fixed;inset:0 auto auto 0}@keyframes route-progress{0%{transform:translate(-120%)scaleX(.45)}55%{transform:translate(90%)scaleX(.7)}to{transform:translate(320%)scaleX(.45)}}button.primary,.button.primary{border-color:var(--accent);background:var(--accent);color:#fff}button.subtle,.button.subtle{background:0 0}.app-shell{grid-template-columns:15rem minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:var(--surface-muted);flex-direction:column;height:100vh;padding:1rem;display:flex;position:sticky;top:0}.brand{gap:.2rem;padding:.25rem 0 1rem;display:grid}.brand strong{letter-spacing:0;font-size:1.05rem}.brand span{color:var(--text-muted);font-size:.85rem}.nav-list{gap:.1rem;display:grid}.nav-link{border-radius:var(--radius);color:var(--text-muted);padding:.62rem .7rem}.nav-link[aria-current=page]{color:var(--text);background:#fff;font-weight:700}.sidebar-footer{border-top:1px solid var(--line);color:var(--text-muted);margin-top:auto;padding-top:1rem;font-size:.82rem;line-height:1.45}.content{min-width:0}.topbar{border-bottom:1px solid var(--line);z-index:4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fdfbf7eb;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem clamp(1rem,4vw,2.5rem);display:flex;position:sticky;top:0}.topbar-actions{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.page{width:min(1120px,100%);padding:clamp(1.25rem,4vw,2.5rem)}.page-header{gap:.65rem;max-width:760px;margin-bottom:2rem;display:grid}.eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:750}h1,h2,h3,p{margin:0}h1{letter-spacing:0;text-wrap:balance;font-size:clamp(2rem,5vw,4.5rem);line-height:1}h2{letter-spacing:0;font-size:1rem}h3{letter-spacing:0;font-size:.95rem}.lede{color:var(--text-muted);font-size:1.05rem;line-height:1.55}.section{border-top:1px solid var(--line);padding:1.3rem 0}.section-heading{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.7rem;display:flex}.section-heading p,.muted{color:var(--text-muted)}.row-list{display:grid}.row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1rem;padding:1rem 0;display:grid}.row>*{min-width:0}.row:first-child{border-top:0}.row-main{gap:.3rem;display:grid}.row-meta{color:var(--text-muted);overflow-wrap:anywhere;font-size:.88rem;line-height:1.45}.lane-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;display:grid}.lane{min-width:0}.lane-title{border-bottom:1px solid var(--line);padding-bottom:.65rem}.timeline{gap:0;display:grid}.time-row{border-top:1px solid var(--line);grid-template-columns:5.5rem minmax(0,1fr);gap:1rem;padding:.9rem 0;display:grid}.time{color:var(--text-muted);font-variant-numeric:tabular-nums}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.field{gap:.35rem;display:grid}.field label{color:var(--text-muted);font-size:.88rem;font-weight:650}.field input,.field textarea,.field select{border:1px solid var(--line);border-radius:var(--radius);width:100%;color:var(--text);background:#fff;padding:.75rem}.public-shell{background:var(--surface);min-height:100vh}.public-topbar{z-index:5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fdfbf7e0;border-bottom:1px solid #ddd5c9b8;justify-content:center;align-items:center;min-height:4.5rem;display:flex;position:sticky;top:0}.public-logo{font-size:clamp(1.35rem,4vw,2.4rem);font-weight:850;line-height:1;transition:opacity .22s}.public-home .public-logo{opacity:0}.public-links{color:var(--text-muted);opacity:1;align-items:center;gap:1rem;font-weight:700;transition:opacity .26s;display:flex;position:absolute;right:clamp(1rem,4vw,2rem)}.public-home .public-links{opacity:0;pointer-events:none;animation:.42s 2.8s forwards after-fade}.public-gate{align-content:center;gap:1rem;width:min(720px,100%);min-height:calc(100vh - 4.5rem);margin-inline:auto;padding:clamp(1.5rem,6vw,4rem);display:grid}.public-gate h1{font-size:clamp(2.4rem,9vw,5rem)}.landing{min-height:calc(100vh - 4.5rem);position:relative;overflow:hidden}.landing-topmark{z-index:8;color:var(--text);opacity:0;font-size:clamp(1.35rem,4vw,2.4rem);font-weight:850;line-height:1;animation:.45s cubic-bezier(.2,.8,.2,1) 2.35s forwards topmark-arrive;position:fixed;top:1.05rem;left:50%;transform:translate(-50%)translateY(2.5rem)scale(1.8)}.landing-stage{place-items:center;min-height:calc(100vh - 4.5rem);padding:clamp(1.25rem,4vw,3rem);display:grid}.landing-words{text-align:center;gap:clamp(.15rem,1.2vw,.6rem);width:min(760px,100%);font-size:clamp(4.4rem,16vw,12rem);font-weight:900;line-height:.86;display:grid}.landing-word{opacity:0;animation:word-slam .52s cubic-bezier(.16, 1, .3, 1) calc(var(--i) * .13s) forwards, word-collapse .52s cubic-bezier(.6, 0, .2, 1) calc(1.2s + var(--i) * 70ms) forwards, word-to-mark .52s cubic-bezier(.2, .8, .2, 1) calc(1.85s + var(--i) * 45ms) forwards;display:block;transform:translateY(-28vh)}.landing-word .extra-letter{transform-origin:100%;width:.68em;animation:extra-vanish .24s cubic-bezier(.6, 0, .2, 1) calc(1.2s + var(--letter) * 45ms + var(--i) * 35ms) forwards;display:inline-block;overflow:hidden}.landing-after{inset-inline:0;width:min(720px,100% - 2rem);color:var(--text-muted);opacity:0;justify-content:center;align-items:center;gap:1rem;margin-inline:auto;animation:.42s 2.8s forwards after-fade;display:flex;position:absolute;bottom:clamp(1.5rem,5vw,3rem);transform:translateY(1rem)}.landing-after p{max-width:30rem;line-height:1.5}@keyframes word-slam{to{opacity:1;transform:translateY(0)}}@keyframes extra-vanish{to{opacity:0;width:0;transform:translate(-.18em)scaleX(0)}}@keyframes word-collapse{to{gap:0}}@keyframes word-to-mark{to{opacity:0;transform:translateY(calc(-43vh + var(--i) * -.2rem)) scale(.18)}}@keyframes topmark-arrive{to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes after-fade{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}}.field textarea{resize:vertical;min-height:8rem}.notice{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius);background:#fff;padding:1rem}.danger-zone{border-color:#e8c7d0;border-left-color:var(--danger)}.empty-line{color:var(--text-soft);padding:1rem 0}@media (width<=860px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;position:static}.nav-list{scrollbar-width:none;max-width:100%;padding-bottom:.2rem;display:flex;overflow-x:auto}.nav-list::-webkit-scrollbar{display:none}.nav-link{white-space:nowrap}.topbar{flex-direction:column;align-items:flex-start;position:static}.topbar-actions{width:100%}.topbar-actions>*{flex:0 auto}.lane-grid,.form-grid,.row{grid-template-columns:1fr}.section-heading{justify-content:stretch;align-items:start;gap:.35rem;display:grid}.page{padding:1.25rem}h1{font-size:clamp(2rem,10vw,3.2rem)}.landing-topmark{top:1.45rem}.public-topbar{min-height:5.2rem}.public-links{right:1rem}.landing,.landing-stage,.public-gate{min-height:calc(100vh - 5.2rem)}.landing-words{font-size:clamp(4.1rem,20vw,7rem)}.landing-after{text-align:center;justify-items:center;display:grid;bottom:10vh}}
