:root{--c-navy:#0a3050;--c-navy-mid:#0d3a5c;--c-navy-dark:#082742;--c-green:#8ace8a;--c-green-mid:#72be72;--c-green-tint:#e8f5e8;--c-green-tint2:#dff0df;--c-red:#d64545;--c-red-tint:#fdecec;--c-red-tint2:#fbe0e0;--c-amber:#f9c74f;--c-amber-tint:#fef9e7;--c-amber-text:#7d5800;--c-slate:#b0c4d8;--c-slate-tint:#e8eef4;--c-slate-text:#0d3a5c;--text:#0f1722;--text-sec:#4a4a4a;--muted:#6b6b6b;--on-navy:#fff;--on-navy-dim:hsla(0,0%,100%,.72);--surface:#f5f7fa;--border:#dde6ee;--card:#fff;--tat-on-track-bg:var(--c-green-tint);--tat-on-track-text:#1a5c1a;--tat-on-track-border:#7dbd7d;--tat-due-today-bg:var(--c-amber-tint);--tat-due-today-text:var(--c-amber-text);--tat-due-today-border:var(--c-amber);--tat-overdue-bg:var(--c-red-tint);--tat-overdue-text:#991b1b;--tat-overdue-border:#fca5a5;--tat-completed-on-time-bg:var(--c-green-tint2);--tat-completed-on-time-text:#1a5c1a;--tat-completed-on-time-border:var(--c-green-mid);--tat-completed-late-bg:#f1eee8;--tat-completed-late-text:#7a4a1f;--tat-completed-late-border:#d9c7a8;--tat-hold-bg:var(--c-slate-tint);--tat-hold-text:var(--c-slate-text);--tat-hold-border:var(--c-slate);--otd-on-track-bg:var(--c-green-tint);--otd-on-track-text:#1a5c1a;--otd-at-risk-bg:var(--c-amber-tint);--otd-at-risk-text:var(--c-amber-text);--otd-breached-bg:var(--c-red-tint);--otd-breached-text:#991b1b;--otd-watch-bg:#fdf3e0;--otd-watch-text:#8a5a10;--otd-neutral-bg:#eef2f7;--otd-neutral-text:var(--muted);--pill-active-bg:var(--c-green-tint);--pill-active-text:#1a5c1a;--pill-pending-bg:var(--c-amber-tint);--pill-pending-text:var(--c-amber-text);--pill-draft-bg:var(--c-slate-tint);--pill-draft-text:var(--c-slate-text);--pill-closed-bg:var(--c-red-tint);--pill-closed-text:#991b1b;--pill-ch-linkedin-bg:#e3f2fd;--pill-ch-linkedin-text:#0d47a1;--pill-ch-instagram-bg:#fce4ec;--pill-ch-instagram-text:#ad1457;--pill-ch-newsletter-bg:#fff3e0;--pill-ch-newsletter-text:#c05600;--pill-ch-youtube-bg:#f5e3ee;--pill-ch-youtube-text:#7a1550;--att-present-bg:var(--c-green-tint);--att-present-text:#1a5c1a;--att-absent-bg:var(--tat-overdue-bg);--att-absent-text:var(--tat-overdue-text);--att-leave-bg:var(--pill-pending-bg);--att-leave-text:var(--pill-pending-text);--att-half-bg:#fdf3e0;--att-half-text:#8a5a10;--att-wfh-bg:#e6eef7;--att-wfh-text:#1d4f7a;--att-weekoff-bg:var(--surface);--att-weekoff-text:var(--muted);--r-sm:5px;--r-md:8px;--r-lg:10px;--r-pill:99px;--shadow-card:0 1px 4px rgba(10,48,80,.07),0 4px 12px rgba(10,48,80,.06);--shadow-raised:0 4px 16px rgba(10,48,80,.12),0 8px 24px rgba(10,48,80,.08);--f-head:"Plus Jakarta Sans",system-ui,sans-serif;--f-body:"Plus Jakarta Sans",system-ui,sans-serif;--f-mono:"JetBrains Mono",ui-monospace,monospace;--fs-2xs:9.5px;--fs-xs:10.5px;--fs-sm:11.5px;--fs-base:13px;--fs-md:14px;--fs-lg:16px;--fs-xl:18px;--fs-2xl:25px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sidebar-w:224px;--topbar-h:56px;--panel-w:452px}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{background:var(--surface);color:var(--text);font-family:var(--f-body);font-size:var(--fs-base);line-height:1.5;-webkit-font-smoothing:antialiased}.h{font-family:var(--f-head);color:var(--c-navy);font-weight:700}.num{font-family:var(--f-mono)}.muted{color:var(--muted)}button{font-family:var(--f-body);cursor:pointer}a{color:inherit}.shell{display:flex;height:100vh;overflow:hidden}.sidebar{width:var(--sidebar-w);flex:0 0 auto;background:var(--c-navy-dark);color:var(--on-navy);display:flex;flex-direction:column}.sb-brand{display:flex;align-items:center;gap:9px;padding:16px 18px;font-family:var(--f-head);font-weight:700;font-size:var(--fs-md);letter-spacing:.3px;border-bottom:1px solid hsla(0,0%,100%,.08)}.sb-brand .dot{width:9px;height:9px;border-radius:50%;background:var(--c-green);flex:0 0 auto}.sb-brand .domain{font-family:var(--f-mono);font-size:var(--fs-xs);font-weight:400;color:var(--on-navy-dim);display:block;margin-top:1px}.sb-nav{flex:1 1;overflow-y:auto;padding:10px 8px}.sb-item{display:flex;align-items:center;gap:10px;width:100%;background:none;border:none;color:var(--on-navy-dim);text-align:left;font-size:var(--fs-sm);font-weight:600;padding:9px 11px;border-radius:var(--r-sm);margin-bottom:2px;text-decoration:none}.sb-item:hover{background:hsla(0,0%,100%,.06);color:var(--on-navy)}.sb-item.on{background:var(--c-green);color:var(--c-navy)}.sb-item .ic{width:16px;text-align:center;font-family:var(--f-mono);font-size:11px;flex:0 0 auto}.sb-foot{padding:12px 18px;font-size:var(--fs-2xs);color:var(--on-navy-dim);border-top:1px solid hsla(0,0%,100%,.08)}.main{flex:1 1;display:flex;flex-direction:column;min-width:0}.topbar{height:var(--topbar-h);flex:0 0 auto;background:var(--card);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 20px;gap:16px}.tb-title{font-family:var(--f-head);font-weight:700;font-size:var(--fs-lg);color:var(--c-navy)}.tb-search{flex:0 0 260px;margin-left:12px}.tb-search input{width:100%;border:1px solid var(--border);border-radius:var(--r-pill);padding:7px 14px;font-size:var(--fs-sm);font-family:var(--f-body);background:var(--surface)}.tb-spacer{flex:1 1}.tb-role{display:flex;align-items:center;gap:7px;font-size:var(--fs-sm);background:var(--surface);padding:5px 12px 5px 5px;border-radius:var(--r-pill);border:1px solid var(--border)}.tb-role .av{width:24px;height:24px;border-radius:50%;background:var(--c-navy);color:#fff;font-weight:700;font-size:10px;display:grid;place-items:center}.tb-role .role-badge{font-family:var(--f-mono);font-size:var(--fs-2xs);color:var(--c-navy);background:var(--c-green-tint);padding:1px 7px;border-radius:var(--r-pill);font-weight:700;text-transform:uppercase;letter-spacing:.3px}.content{flex:1 1;overflow-y:auto;padding:20px 24px}.viewhead{display:flex;align-items:baseline;gap:12px;margin-bottom:4px;flex-wrap:wrap}.viewhead h2{font-family:var(--f-head);font-size:var(--fs-xl);color:var(--c-navy)}.viewhead .sub{font-size:var(--fs-sm);color:var(--muted)}.contract-note{font-size:var(--fs-xs);color:var(--muted);background:var(--surface);border:1px dashed var(--border);border-radius:var(--r-sm);padding:8px 11px;margin:10px 0 16px;font-family:var(--f-mono)}.contract-note b{color:var(--c-navy);font-family:var(--f-body)}.contract-note.top{border-color:var(--c-navy);background:var(--c-green-tint)}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.search,.sel{border:1px solid var(--border);border-radius:var(--r-sm);padding:7px 10px;font-size:var(--fs-sm);font-family:var(--f-body);background:#fff;color:var(--text)}.search{min-width:200px}.pill{font-size:var(--fs-xs);font-weight:600;padding:2px 9px;border-radius:var(--r-pill);white-space:nowrap;display:inline-block}.pill-active{background:var(--pill-active-bg);color:var(--pill-active-text)}.pill-pending{background:var(--pill-pending-bg);color:var(--pill-pending-text)}.pill-draft{background:var(--pill-draft-bg);color:var(--pill-draft-text)}.pill-closed{background:var(--pill-closed-bg);color:var(--pill-closed-text)}.pill-outline{background:#fff;color:var(--text-sec);border:1px solid var(--border)}.tat-chip{font-family:var(--f-mono);font-size:var(--fs-2xs);font-weight:700;padding:2px 8px;border-radius:var(--r-pill);border:1px solid transparent;white-space:nowrap;display:inline-flex;align-items:center;gap:4px}.tat-on_track{background:var(--tat-on-track-bg);color:var(--tat-on-track-text);border-color:var(--tat-on-track-border)}.tat-due_today{background:var(--tat-due-today-bg);color:var(--tat-due-today-text);border-color:var(--tat-due-today-border)}.tat-overdue{background:var(--tat-overdue-bg);color:var(--tat-overdue-text);border-color:var(--tat-overdue-border)}.tat-completed_on_time{background:var(--tat-completed-on-time-bg);color:var(--tat-completed-on-time-text);border-color:var(--tat-completed-on-time-border)}.tat-completed_late{background:var(--tat-completed-late-bg);color:var(--tat-completed-late-text);border-color:var(--tat-completed-late-border)}.tat-chip.frozen:after{content:"\1F512";font-size:9px;margin-left:1px}.hold-chip{font-family:var(--f-mono);padding:2px 8px;border-radius:var(--r-pill);background:var(--tat-hold-bg);color:var(--tat-hold-text);border:1px solid var(--tat-hold-border)}.hold-chip,.otd-chip{font-size:var(--fs-2xs);font-weight:700;white-space:nowrap}.otd-chip{padding:2px 9px;border-radius:4px}.otd-on_track{background:var(--otd-on-track-bg);color:var(--otd-on-track-text)}.otd-at_risk{background:var(--otd-at-risk-bg);color:var(--otd-at-risk-text)}.otd-breached{background:var(--otd-breached-bg);color:var(--otd-breached-text)}.otd-watch{background:var(--otd-watch-bg);color:var(--otd-watch-text)}.otd-sanctioned_on_time{background:var(--otd-on-track-bg);color:var(--otd-on-track-text)}.otd-sanctioned_late{background:var(--otd-breached-bg);color:var(--otd-breached-text)}.otd-exploratory,.otd-not_started{background:var(--otd-neutral-bg);color:var(--otd-neutral-text)}.pw-internal{font-size:var(--fs-2xs);color:var(--text-sec)}.pw-external{font-size:var(--fs-2xs);color:var(--c-navy);font-weight:600}.pw-external .noclock{font-family:var(--f-mono);font-size:9px;color:var(--muted);font-weight:400;margin-left:4px}.tbl-wrap{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-card);overflow:hidden}.tbl{width:100%;border-collapse:separate;border-spacing:0}.tbl th{text-align:left;font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-weight:700;padding:9px 12px;background:var(--surface)}.tbl td,.tbl th{border-bottom:1px solid var(--border)}.tbl td{padding:10px 12px;font-size:var(--fs-sm);vertical-align:middle}.tbl tr:last-child td{border-bottom:none}.tbl tr.row:hover{background:var(--c-green-tint);cursor:pointer}.tbl .step{font-weight:700;color:var(--c-navy)}.tbl .proc{font-family:var(--f-mono);font-size:10px;color:var(--muted);display:block;margin-top:1px}.owner-chip{display:inline-flex;align-items:center;gap:6px}.av-sm{width:19px;height:19px;border-radius:50%;background:var(--c-navy);color:#fff;font-weight:700;font-size:9px;display:grid;place-items:center;flex:0 0 auto}.rev-badge{font-family:var(--f-mono);font-size:10px;color:var(--muted)}.rev-badge.hot{color:var(--c-red);font-weight:700}.mod-chip{font-family:var(--f-mono);font-size:9.5px;font-weight:700;color:var(--c-navy);background:var(--surface);border:1px solid var(--border);padding:2px 7px;border-radius:var(--r-pill);white-space:nowrap;margin-left:6px}.tiles{display:flex;gap:12px;margin-bottom:18px;flex-wrap:wrap}.tile{flex:1 1;min-width:132px;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:12px 14px}.tile .tv{font-family:var(--f-mono);font-size:var(--fs-2xl);font-weight:600;color:var(--c-navy);line-height:1}.tile .tl{font-size:var(--fs-sm);color:var(--muted);margin-top:5px}.tile.good .tv{color:#1a5c1a}.tile.bad .tv{color:var(--c-red)}.tile.warn .tv{color:var(--c-amber-text)}.sectitle{font-family:var(--f-head);font-weight:700;font-size:var(--fs-sm);color:var(--c-navy);margin:20px 0 8px;text-transform:uppercase;letter-spacing:.4px;display:flex;align-items:center;gap:8px}.sectitle .n{font-family:var(--f-mono);font-size:11px;color:var(--muted);font-weight:400;text-transform:none;letter-spacing:0}.sectionhead{font-family:var(--f-head);font-weight:700;font-size:var(--fs-md);color:var(--c-navy);margin:22px 0 8px}.cal-wrap{background:var(--border);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-card);overflow:hidden;--cal-cols:6}.cal-nav{display:flex;align-items:center;gap:10px;margin:12px 0 8px;flex-wrap:wrap}.cal-navbtn{border:1px solid var(--border);background:#fff;color:var(--c-navy);border-radius:var(--r-sm);width:30px;height:30px;font-size:15px;font-weight:700}.cal-navbtn:hover{background:var(--c-green-tint)}.cal-mlabel{font-family:var(--f-head);font-size:var(--fs-lg);font-weight:700;color:var(--c-navy);min-width:150px}.cal-legend{display:flex;gap:10px;flex-wrap:wrap;margin:2px 0 12px}.cal-dow{display:grid;grid-template-columns:repeat(var(--cal-cols),minmax(0,1fr));grid-gap:1px;gap:1px}.cal-dow,.cal-dow div{background:var(--c-navy)}.cal-dow div{padding:8px 10px;font-size:var(--fs-xs);font-weight:700;color:var(--on-navy-dim);text-transform:uppercase;letter-spacing:.4px}.cal-grid{display:grid;grid-template-columns:repeat(var(--cal-cols),minmax(0,1fr));grid-gap:1px;gap:1px;background:var(--border)}.cal-cell{background:#fff;min-width:0;overflow:hidden;min-height:88px;padding:6px;position:relative}.cal-cell.oth,.cal-cell.pad{background:var(--surface)}.cal-cell.today{box-shadow:inset 0 0 0 2px var(--c-green)}.cal-dn{font-family:var(--f-mono);font-size:var(--fs-sm);font-weight:600;color:var(--muted);margin-bottom:4px}.cal-cell.today .cal-dn{color:var(--c-navy);font-weight:700}.cal-item{margin-bottom:4px;cursor:pointer}.cal-item-nm{font-size:var(--fs-2xs);font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.cal-item:hover .cal-item-nm{color:var(--c-navy)}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--c-navy);color:#fff;padding:11px 18px;border-radius:var(--r-md);font-size:12.5px;font-weight:600;box-shadow:var(--shadow-raised);z-index:90;opacity:0;pointer-events:none;transition:.24s;max-width:70vw;text-align:center}.toast.on{opacity:1;transform:translateX(-50%) translateY(0)}.btn-sm{padding:5px 11px;font-size:11px}.btn{font-weight:700;border:none;border-radius:var(--r-sm);padding:8px 16px;font-size:var(--fs-sm);transition:.16s}.btn-primary{background:var(--c-navy);color:#fff}.btn-primary:hover{background:var(--c-navy-mid)}.btn-ghost{background:#fff;color:var(--c-navy);border:1px solid var(--border)}.btn-ghost:hover{background:var(--c-green-tint)}.pfoot{display:flex;gap:10px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border)}.scrim{position:fixed;inset:0;background:rgba(10,23,34,.28);z-index:60;opacity:0;pointer-events:none;transition:.2s}.scrim.on{opacity:1;pointer-events:auto}.panel{position:fixed;top:0;right:0;height:100%;width:var(--panel-w);max-width:94vw;background:#fff;z-index:70;box-shadow:var(--shadow-raised);transform:translateX(100%);transition:transform .22s ease;overflow-y:auto}.panel.on{transform:translateX(0)}.p-head{position:-webkit-sticky;position:sticky;top:0;background:var(--c-navy);color:#fff;padding:16px 18px;z-index:2}.p-head .x{position:absolute;top:14px;right:14px;background:hsla(0,0%,100%,.12);border:none;color:#fff;width:26px;height:26px;border-radius:var(--r-sm);font-size:14px}.p-head .nm{font-family:var(--f-head);font-weight:700;font-size:var(--fs-xl)}.p-head .loc{font-size:var(--fs-sm);opacity:.82;margin-top:2px;font-family:var(--f-mono)}.p-body{padding:16px 18px}.metagrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px 14px;gap:10px 14px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border)}.metagrid .k{font-size:var(--fs-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.3px}.metagrid .v{font-size:var(--fs-base);color:var(--text);font-weight:600;margin-top:1px}.metagrid .v.num{font-family:var(--f-mono)}.tatblock{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:13px 14px;margin-bottom:14px}.tatblock .row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;font-size:var(--fs-sm)}.tatblock .row .k{color:var(--muted)}.tatblock .row .v{font-family:var(--f-mono);font-weight:600;color:var(--text)}.holdblock{background:var(--tat-hold-bg);border:1px solid var(--tat-hold-border);border-radius:var(--r-md);padding:11px 13px;margin-bottom:14px;font-size:var(--fs-sm);color:var(--tat-hold-text)}.holdblock .ht{font-weight:700;font-family:var(--f-head);margin-bottom:4px}.log{margin-bottom:8px}.log .li{display:flex;gap:10px;padding:8px 0;border-bottom:1px dashed var(--border);font-size:var(--fs-sm)}.log .li:last-child{border-bottom:none}.log .li .when{font-family:var(--f-mono);font-size:10px;color:var(--muted);flex:0 0 68px}.log .li .ch{font-size:10px;font-weight:700;color:var(--c-navy);display:block}.stub{background:#fff;border:1px dashed var(--border);border-radius:var(--r-lg);padding:28px;text-align:center;color:var(--muted);font-size:var(--fs-sm)}.stub b{color:var(--c-navy);font-family:var(--f-head);display:block;font-size:var(--fs-md);margin-bottom:6px}.cockpit-switcher{display:flex;align-items:center;gap:8px;margin:2px 0 10px}.cockpit-switcher label{font-size:var(--fs-sm);color:var(--muted);font-weight:600}.cockpit-switcher select{border:1px solid var(--border);border-radius:var(--r-sm);padding:6px 10px;font-size:var(--fs-sm);font-family:var(--f-body);background:#fff;color:var(--text);font-weight:700}.rollup-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px;margin-bottom:6px}.rollup-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:11px 13px}.rollup-card .rc-nm{font-family:var(--f-mono);font-size:var(--fs-sm);font-weight:700;color:var(--c-navy);margin-bottom:6px}.rollup-card .rc-row{display:flex;justify-content:space-between;font-size:var(--fs-sm);padding:2px 0}.rollup-card .rc-row .k{color:var(--muted)}.rollup-card .rc-row .v{font-family:var(--f-mono);font-weight:700}.rollup-card .rc-row .v.bad{color:var(--c-red)}.followup-wrap{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-card);overflow:hidden}.followup-row{display:flex;align-items:center;gap:12px;padding:11px 14px;border-bottom:1px solid var(--border);cursor:pointer}.followup-row:last-child{border-bottom:none}.followup-row:hover{background:var(--c-green-tint)}.followup-row .fr-step{flex:1 1;min-width:0}.followup-row .fr-step .nm{font-weight:700;color:var(--c-navy);font-size:var(--fs-sm)}.followup-row .fr-step .proc{font-family:var(--f-mono);font-size:10px;color:var(--muted);display:block;margin-top:1px}.followup-row .fr-party{width:200px;font-size:var(--fs-sm);color:var(--text-sec)}.followup-row .fr-wait{width:160px;text-align:right;font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--c-navy);font-weight:700}.followup-empty{padding:16px;text-align:center;color:var(--muted);font-size:var(--fs-sm)}.modbar-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px dashed var(--border)}.modbar-row:last-child{border-bottom:none}.modbar-nm{width:130px;font-size:var(--fs-sm);font-weight:700;color:var(--c-navy);font-family:var(--f-mono)}.modbar-track{flex:1 1;height:8px;background:var(--surface);border-radius:var(--r-pill);overflow:hidden;display:flex}.modbar-track i{display:block;height:100%}.modbar-track .done{background:var(--c-green-mid)}.modbar-track .open{background:var(--c-slate)}.modbar-track .overdue{background:var(--c-red)}.modbar-n{font-family:var(--f-mono);font-size:10px;color:var(--muted);width:150px;text-align:right}.otdstrip{display:flex;gap:10px;overflow-x:auto;padding-bottom:10px}.otdcard{flex:0 0 196px;background:#fff;border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-card);padding:10px 11px}.otdcard .nm{font-weight:700;color:var(--c-navy);font-size:12.5px;margin-bottom:3px;line-height:1.25}.otdcard .meta{font-size:10px;color:var(--muted);margin-bottom:7px}.otdcard .chips{gap:5px}.otdcard .chips,.pipe-row{display:flex;flex-wrap:wrap}.pipe-row{gap:10px}.pipe-rung{flex:1 1;min-width:112px;background:#fff;border:1px solid var(--border);border-radius:var(--r-md);padding:11px;text-align:center}.pipe-rung .pv{font-family:var(--f-mono);font-size:21px;font-weight:700;color:var(--c-navy);line-height:1}.pipe-rung .pl{font-size:10px;color:var(--muted);margin-top:4px}.zonewrap{margin-bottom:30px}.zonewrap h3.zh{font-family:var(--f-head);font-size:14.5px;color:var(--c-navy);margin:20px 0 4px;padding-top:14px;border-top:1px dashed var(--border)}.zonewrap h3.zh:first-of-type{border-top:none;padding-top:0;margin-top:6px}.embed-frame{border:2px dashed var(--c-navy);border-radius:var(--r-lg);padding:14px 16px;background:#fbfdff;margin-top:8px}.embed-frame .embed-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;flex-wrap:wrap}.embed-tag{font-family:var(--f-mono);font-size:9px;letter-spacing:.5px;text-transform:uppercase;color:#fff;background:var(--c-navy);padding:3px 9px;border-radius:var(--r-pill);white-space:nowrap}.app-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:14px;gap:14px;margin:14px 0 6px}.app-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:15px 16px;display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit;transition:.14s}.app-card:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px);border-color:var(--c-green-mid)}.app-card .nm{font-family:var(--f-head);font-weight:700;font-size:var(--fs-md);color:var(--c-navy)}.app-card .domain{font-family:var(--f-mono);font-size:10px;color:var(--muted)}.app-card .desc{font-size:var(--fs-sm);color:var(--text-sec);flex:1 1}.app-card .contains{font-size:10.5px;color:var(--muted)}.app-card .contains b{color:var(--text-sec);font-weight:600}.app-badge{align-self:flex-start;font-size:var(--fs-2xs);font-weight:700;padding:2px 9px;border-radius:var(--r-pill);text-transform:uppercase;letter-spacing:.3px}.app-badge.live{background:var(--pill-active-bg);color:var(--pill-active-text)}.app-badge.own{background:var(--otd-neutral-bg);color:var(--otd-neutral-text)}.app-badge.later{background:var(--pill-pending-bg);color:var(--pill-pending-text)}.app-badge.portal{background:var(--otd-watch-bg);color:var(--otd-watch-text)}.dash-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:14px;gap:14px;margin:14px 0 6px}.dash-card{background:var(--c-navy);color:#fff;border:none;border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:15px 16px;text-align:left;display:flex;flex-direction:column;gap:6px;cursor:pointer;transition:.14s}.dash-card:hover{background:var(--c-navy-mid);box-shadow:var(--shadow-raised);transform:translateY(-2px)}.dash-card .nm{font-family:var(--f-head);font-weight:700;font-size:var(--fs-md)}.dash-card .desc{font-size:var(--fs-sm);color:var(--on-navy-dim)}.dash-card .go{font-family:var(--f-mono);font-size:10px;color:var(--c-green);margin-top:2px}.board{display:flex;gap:12px;overflow-x:auto;padding-bottom:12px;align-items:flex-start}.col{flex:0 0 246px;background:#eef2f7;border:1px solid var(--border);border-radius:var(--r-lg);padding:10px}.card{background:#fff;border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-card);padding:10px 11px;margin-bottom:9px;cursor:pointer;transition:.14s}.card:hover{box-shadow:var(--shadow-raised);transform:translateY(-1px)}