:root{--navy:#1f2a3d;--navy-deep:#17222f;--gold:#8a6e3f;--gold-soft:#a08855;--ink:#2a2a2a;--subtitle:#555;--caption:#757575;--hair:#d8d2c4;--paper:#fcfbf9;--green:#256029;--green-bg:#e8f3e9;--gold-tx:#7a5a18;--gold-bg:#fbf4e6;--amber-tx:#8a5b18;--amber-bg:#fbf1dd;--red:#b23b3b;--red-bg:#fbeaea;--grey:#666;--grey-bg:#efefef;--glass:#fff9;--glass-strong:#ffffffc7;--glass-edge:#fffc;--shadow:0 6px 24px #1f2a3d1a;--specular:inset 0 1px 0 #ffffffd9;--r:16px;--r-sm:11px;--spring:cubic-bezier(.34,1.45,.5,1);--ease:cubic-bezier(.22,.8,.3,1);--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;margin:0}body{color:var(--ink);background:var(--paper);overscroll-behavior:none;-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;font-family:Calibri,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.5}button{cursor:pointer;background:0 0;border:none;font-family:inherit}a{color:var(--gold);text-decoration:none}#ambient{z-index:0;background:linear-gradient(#fcfbf9,#f4efe5);position:fixed;inset:0;overflow:hidden}#ambient i{filter:blur(70px);opacity:.5;border-radius:50%;position:absolute}#ambient .b1{background:radial-gradient(circle,#1f2a3d47,#0000 70%);width:70vw;height:70vw;animation:46s ease-in-out infinite alternate drift1;top:-12vh;left:-25vw}#ambient .b2{background:radial-gradient(circle,#c9a96166,#0000 70%);width:60vw;height:60vw;animation:38s ease-in-out infinite alternate drift2;top:28vh;right:-20vw}#ambient .b3{background:radial-gradient(circle,#a0885542,#0000 72%);width:80vw;height:80vw;animation:58s ease-in-out infinite alternate-reverse drift1;bottom:-30vh;left:10vw}@keyframes drift1{to{transform:translate(9vw,6vh)scale(1.1)}}@keyframes drift2{to{transform:translate(-8vw,8vh)scale(.92)}}#root{z-index:1;flex-direction:column;height:100dvh;display:flex;position:relative}.hdr{padding:calc(var(--sat) + 10px) 18px 10px;-webkit-backdrop-filter:blur(20px)saturate(1.5);backdrop-filter:blur(20px)saturate(1.5);z-index:10;background:#fcfbf999;border-bottom:1px solid #d8d2c480;align-items:center;gap:10px;display:flex;position:sticky;top:0}.hdr .mast{letter-spacing:3px;color:var(--navy);font-size:15px;font-weight:700}.hdr .sub{letter-spacing:1.8px;color:var(--gold-soft);text-transform:uppercase;font-size:9px}.hdr .spacer{flex:1}.iconbtn{background:var(--glass);border:1px solid var(--glass-edge);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:38px;height:38px;box-shadow:var(--specular), var(--shadow);color:var(--navy);transition:transform .2s var(--spring);border-radius:50%;place-items:center;font-size:16px;display:grid;position:relative}.iconbtn:active{transform:scale(.9)}.iconbtn .badge{background:var(--red);color:#fff;border-radius:9px;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:10px;font-weight:700;display:grid;position:absolute;top:-3px;right:-3px}#page{padding:16px 16px calc(84px + var(--sab));flex:1;overflow-y:auto}.view-in{animation:viewIn .35s var(--ease)}@keyframes viewIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1}}#tabbar{left:12px;right:12px;bottom:calc(var(--sab) + 10px);z-index:20;-webkit-backdrop-filter:blur(24px)saturate(1.5);backdrop-filter:blur(24px)saturate(1.5);background:#1f2a3de0;border:1px solid #a0885559;border-radius:26px;padding:6px;display:flex;position:fixed;box-shadow:0 12px 40px #17222f59,inset 0 1px #ffffff1f}.tab{color:#9aa5b5;letter-spacing:.4px;text-transform:uppercase;transition:color .2s ease, background .25s ease, transform .2s var(--spring);border-radius:20px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:7px 0 5px;font-size:9.5px;font-weight:700;display:flex}.tab .ic{font-size:18px;line-height:1}.tab.active{color:#fff;background:#8a6e3f52}.tab:active{transform:scale(.93)}.tab .tbadge{background:var(--red);color:#fff;border-radius:8px;place-items:center;min-width:15px;height:15px;margin-top:-2px;margin-left:26px;padding:0 3px;font-size:9px;display:grid;position:absolute}.eyebrow{color:var(--gold-soft);letter-spacing:2px;text-transform:uppercase;font-size:10px;font-weight:700}h1.title{color:var(--navy);text-transform:uppercase;letter-spacing:.4px;margin:2px 0 4px;font-size:24px}.sub-line{color:var(--subtitle);font-size:12.5px}.sec{color:var(--navy);letter-spacing:1.4px;text-transform:uppercase;margin:22px 0 10px;font-size:13px;font-weight:700}.glass{background:var(--glass);border:1px solid var(--glass-edge);border-radius:var(--r);-webkit-backdrop-filter:blur(16px)saturate(1.4);backdrop-filter:blur(16px)saturate(1.4);box-shadow:var(--shadow), var(--specular)}.rise{animation:rise .45s var(--ease) both;animation-delay:calc(var(--i,0) * 40ms)}@keyframes rise{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1}}.pill{letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:2px 10px;font-size:9.5px;font-weight:700;display:inline-block;box-shadow:inset 0 1px #ffffff80}.p-grey{background:var(--grey-bg);color:var(--grey)}.p-gold{background:var(--gold-bg);color:var(--gold-tx)}.p-red{background:var(--red-bg);color:var(--red)}.p-green{background:var(--green-bg);color:var(--green)}.p-navy{color:var(--navy);background:#e7ebf2}.btn{background:var(--navy);color:#fff;letter-spacing:.3px;transition:transform .2s var(--spring), opacity .2s;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:10px 18px;font-size:13.5px;font-weight:700;display:inline-flex;box-shadow:0 6px 18px #1f2a3d47,inset 0 1px #ffffff2e}.btn:active{transform:scale(.95)}.btn.gold{background:linear-gradient(#a08855,#8a6e3f)}.btn.ghost{background:var(--glass);color:var(--navy);border:1px solid var(--glass-edge);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--specular)}.btn:disabled{opacity:.5}.btn.small{padding:7px 14px;font-size:12px}.greet{margin:6px 2px 14px}.greet .hello{color:var(--navy);font-size:21px;font-weight:700}.greet .seatline{color:var(--caption);margin-top:2px;font-size:12px}.tiles{grid-template-columns:1fr 1fr;gap:10px;display:grid}.tile{border-top:3px solid var(--gold);text-align:left;padding:14px 14px 12px}.tile.k-red{border-top-color:var(--red)}.tile.k-green{border-top-color:var(--green)}.tile.k-navy{border-top-color:var(--navy)}.tile .n{color:var(--navy);font-variant-numeric:tabular-nums;font-size:27px;font-weight:700;line-height:1}.tile .l{color:var(--caption);text-transform:uppercase;letter-spacing:.04em;margin-top:4px;font-size:10px}.handoff{align-items:center;gap:12px;margin-bottom:10px;padding:13px 15px;display:flex}.handoff .ho-main{flex:1;min-width:0}.handoff .ho-title{color:var(--navy);font-size:13.5px;font-weight:700}.handoff .ho-sub{color:var(--subtitle);margin-top:1px;font-size:11.5px}.task{align-items:flex-start;gap:11px;margin-bottom:9px;padding:12px 14px;display:flex}.task .chk{border:2px solid var(--gold-soft);color:#0000;width:25px;min-width:25px;height:25px;transition:all .25s var(--spring);background:#fff9;border-radius:50%;place-items:center;margin-top:1px;font-size:13px;display:grid}.task.done .chk{background:var(--green);border-color:var(--green);color:#fff}.task .t-main{flex:1;min-width:0}.task .t-title{color:var(--navy);font-size:13.5px;font-weight:700;line-height:1.35}.task.done .t-title{opacity:.55;text-decoration:none}.task .t-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:5px;display:flex}.task .t-meta .m{color:var(--caption);font-size:10.5px}.task .t-src{color:var(--gold-tx);margin-top:3px;font-size:10.5px;font-style:italic}.seg{border-radius:999px;gap:4px;margin-bottom:14px;padding:4px;display:flex}.seg button{color:var(--subtitle);letter-spacing:.3px;border-radius:999px;flex:1;padding:7px 4px;font-size:11.5px;font-weight:700;transition:all .25s}.seg button.on{background:var(--navy);color:#fff;box-shadow:0 4px 12px #1f2a3d4d}.sheet-scrim{z-index:40;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#17222f66;animation:.2s fadeIn;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}}.sheet{left:10px;right:10px;bottom:calc(var(--sab) + 10px);z-index:41;background:var(--glass-strong);-webkit-backdrop-filter:blur(28px)saturate(1.5);backdrop-filter:blur(28px)saturate(1.5);border:1px solid var(--glass-edge);box-shadow:0 -8px 48px #00000040, var(--specular);animation:sheetUp .35s var(--spring);border-radius:22px;max-height:78dvh;padding:18px 18px 14px;position:fixed;overflow-y:auto}@keyframes sheetUp{0%{opacity:0;transform:translateY(40px)}}.sheet .grab{background:var(--hair);border-radius:2px;width:40px;height:4px;margin:0 auto 14px}.sheet h3{color:var(--navy);margin:0 0 4px;font-size:16px}.sheet .row{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.sheet .kv{margin:6px 0;font-size:13px}.sheet .kv b{color:var(--gold-tx);letter-spacing:1px;text-transform:uppercase;margin-right:6px;font-size:10px}.search{border:1px solid var(--glass-edge);background:var(--glass);width:100%;color:var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--specular);border-radius:999px;outline:none;margin-bottom:14px;padding:11px 16px;font-family:inherit;font-size:16px}.doc-row{align-items:center;gap:12px;margin-bottom:9px;padding:12px 15px;display:flex}.doc-row .d-ic{color:var(--gold-soft);text-align:center;min-width:22px;font-size:17px}.doc-row .d-main{flex:1;min-width:0}.doc-row .d-title{color:var(--navy);font-size:13.5px;font-weight:700}.doc-row .d-desc{color:var(--subtitle);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:1px;font-size:11.5px;display:-webkit-box;overflow:hidden}.doc-row .d-meta{color:var(--caption);margin-top:2px;font-size:10px;font-style:italic}.reader{-webkit-user-select:text;user-select:text;padding:20px 18px 26px}.reader .eyebrow{margin-bottom:2px}.reader h1.doc-t{color:var(--navy);text-transform:uppercase;margin:2px 0 4px;font-size:20px}.reader .colophon{color:var(--caption);margin-bottom:12px;font-size:11px;font-style:italic}.docbody{font-size:14px}.docbody .doc-title{display:none}.docbody .eyebrow{margin:16px 0 2px}.docbody h1{color:var(--navy);margin:22px 0 8px;font-size:18.5px}.docbody h2{color:var(--navy);margin:18px 0 6px;font-size:15.5px}.docbody h3{color:var(--navy);margin:14px 0 4px;font-size:13.5px}.docbody p{margin:8px 0;line-height:1.6}.docbody ul{padding-left:20px}.docbody li{margin:3px 0}.docbody .em-gold{color:var(--gold)}.docbody .caption{color:var(--caption);font-size:11.5px;font-style:italic}.docbody table{border-collapse:collapse;width:100%;margin:12px 0;font-size:11.5px;display:block;overflow-x:auto}.docbody table th{background:var(--navy);color:#fff;text-align:left;white-space:nowrap;padding:6px 8px}.docbody table td{border:1px solid var(--hair);background:#fff9;padding:5px 8px}.docbody .callout{border-left:3px solid var(--gold);background:var(--gold-bg);border-radius:var(--r-sm);margin:12px 0;padding:10px 13px;font-size:13px}.docbody .callout-note{background:var(--green-bg);border-left-color:var(--green)}.docbody .callout-risk{background:var(--red-bg);border-left-color:var(--red)}.docbody .callout .co-title{color:var(--navy);font-weight:700}.docbody pre{border-radius:var(--r-sm);background:#f7f7f7;padding:10px;font-size:11px;overflow-x:auto}.back{color:var(--gold-tx);margin-bottom:4px;padding:4px 0;font-size:13px;font-weight:700;display:inline-block}.proj{margin-bottom:10px;padding:14px 16px}.proj .p-code{color:var(--gold-tx);letter-spacing:1px;font-size:11px;font-weight:700}.proj .p-name{color:var(--navy);margin:1px 0 6px;font-size:15px;font-weight:700}.stageline{align-items:center;gap:0;margin-top:8px;display:flex}.stageline .dot{background:var(--hair);border-radius:50%;width:8px;height:8px}.stageline .dot.done{background:var(--green)}.stageline .dot.active{background:var(--gold);animation:2s ease-in-out infinite pulse;box-shadow:0 0 0 3px #a0885540}.stageline .dot.awaiting_gate{background:var(--red)}.stageline .bar{background:var(--hair);flex:1;height:2px}.stageline .bar.done{background:var(--green)}@keyframes pulse{50%{box-shadow:0 0 0 6px #a088551f}}.timeline{margin-top:6px}.tstage{gap:12px;padding:0 2px;display:flex}.tstage .rail{flex-direction:column;align-items:center;width:18px;display:flex}.tstage .rail .nd{border:2px solid var(--hair);background:#fff;border-radius:50%;width:12px;height:12px;min-height:12px;margin-top:3px}.tstage.done .rail .nd{background:var(--green);border-color:var(--green)}.tstage.active .rail .nd{background:var(--gold);border-color:var(--gold);box-shadow:0 0 0 4px #a0885533}.tstage.awaiting_gate .rail .nd{background:var(--red);border-color:var(--red)}.tstage .rail .ln{background:var(--hair);flex:1;width:2px}.tstage.done .rail .ln{background:var(--green)}.tstage .t-body{flex:1;min-width:0;padding-bottom:16px}.tstage .s-name{color:var(--navy);font-size:13.5px;font-weight:700}.tstage .s-sub{color:var(--caption);margin-top:1px;font-size:11px}.tstage .s-cite{color:var(--gold-tx);font-size:10px;font-style:italic}.tstage .s-actions{gap:7px;margin-top:7px;display:flex}.notif{gap:11px;margin-bottom:8px;padding:12px 15px;display:flex}.notif.unread{border-left:3px solid var(--gold)}.notif .n-dot{background:var(--gold);border-radius:50%;width:8px;min-width:8px;height:8px;margin-top:6px}.notif.read .n-dot{background:var(--hair)}.notif .n-title{color:var(--navy);font-size:13px;font-weight:700}.notif .n-body{color:var(--subtitle);margin-top:1px;font-size:12px}.notif .n-time{color:var(--caption);margin-top:3px;font-size:10px;font-style:italic}.login{min-height:100dvh;padding:30px 26px calc(30px + var(--sab));z-index:1;flex-direction:column;justify-content:center;display:flex;position:relative}.login .mast{text-align:center;color:var(--navy);letter-spacing:6px;font-size:26px;font-weight:700}.login .tagl{text-align:center;color:var(--gold);letter-spacing:2px;margin-top:6px;font-size:11px;font-style:italic}.login .rule{border-bottom:2px solid var(--gold);width:200px;margin:16px auto 8px;position:relative}.login .rule:after{content:"◆";color:var(--gold);font-size:10px;position:absolute;top:-8px;left:50%;transform:translate(-50%)}.login .appname{text-align:center;color:var(--caption);letter-spacing:2.4px;text-transform:uppercase;margin-bottom:30px;font-size:10px}.login input{border:1px solid var(--glass-edge);background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:100%;box-shadow:var(--specular);color:var(--ink);border-radius:999px;outline:none;margin-bottom:10px;padding:13px 18px;font-family:inherit;font-size:16px}.login .err{color:var(--red);text-align:center;margin:8px 0;font-size:12.5px}.seatgrid{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.seatgrid button{border-radius:var(--r-sm);text-align:left;padding:11px 8px}.seatgrid .sg-num{color:var(--gold-tx);font-size:10px;font-weight:700}.seatgrid .sg-name{color:var(--navy);font-size:12px;font-weight:700}.empty{color:var(--caption);text-align:center;padding:26px 10px;font-size:13px;font-style:italic}.demo-banner{text-align:center;letter-spacing:1px;color:var(--gold-tx);background:var(--gold-bg);text-transform:uppercase;border-radius:999px;width:-moz-fit-content;width:fit-content;margin:0 auto 12px;padding:4px 12px;font-size:10px;font-weight:700}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
