@font-face{font-family:archivo;src:url(../media/archivo_latin_400_normal-s.p.3ulrwo0hu78l8.woff2)format("woff2");font-display:swap;font-weight:400}@font-face{font-family:archivo;src:url(../media/archivo_latin_500_normal-s.p.3sl-13f6yep2o.woff2)format("woff2");font-display:swap;font-weight:500}@font-face{font-family:archivo;src:url(../media/archivo_latin_600_normal-s.p.2xrlizciyxkaw.woff2)format("woff2");font-display:swap;font-weight:600}@font-face{font-family:archivo;src:url(../media/archivo_latin_700_normal-s.p.0xklgcivxid3p.woff2)format("woff2");font-display:swap;font-weight:700}@font-face{font-family:archivo Fallback;src:local(Arial);ascent-override:88.86%;descent-override:21.25%;line-gap-override:0.0%;size-adjust:98.81%}.GDNLjG_className{font-family:archivo,archivo Fallback}.GDNLjG_variable{--font-archivo:"archivo", "archivo Fallback"}
@font-face{font-family:plexMono;src:url(../media/ibm_plex_mono_latin_400_normal-s.p.3xdfs0-p_zi4c.woff2)format("woff2");font-display:swap;font-weight:400}@font-face{font-family:plexMono;src:url(../media/ibm_plex_mono_latin_500_normal-s.p.11q3guvgd1r20.woff2)format("woff2");font-display:swap;font-weight:500}@font-face{font-family:plexMono;src:url(../media/ibm_plex_mono_latin_600_normal-s.p.30e0eqd5fxn92.woff2)format("woff2");font-display:swap;font-weight:600}@font-face{font-family:plexMono Fallback;src:local(Arial);ascent-override:77.95%;descent-override:20.91%;line-gap-override:0.0%;size-adjust:131.49%}._0M4dgW_className{font-family:plexMono,plexMono Fallback}._0M4dgW_variable{--font-plex-mono:"plexMono", "plexMono Fallback"}
:root{--tm-ink:#0d1b2a;--tm-steel:#4a6075;--tm-paper:#eef1f3;--tm-signal:#f25c2a;--tm-mist:#9fb3c8;--tm-line:#d3dae0;--navy-900:var(--tm-ink);--navy-800:#162a3d;--navy-700:#22384d;--navy-600:#31495f;--navy-500:var(--tm-steel);--slate-100:#f5f7f8;--slate-200:#e6ebee;--slate-300:var(--tm-line);--slate-400:var(--tm-mist);--slate-500:var(--tm-steel);--slate-600:#3d5266;--slate-700:#2c3e50;--paper:var(--tm-paper);--ink:var(--tm-ink);--signal:var(--tm-signal);--signal-good:#2f7d4f;--signal-warn:#b86e00;--signal-bad:#b3261e;--signal-info:#0a6b8a;--rule:var(--tm-line);--rule-strong:var(--tm-ink);--font-display:var(--font-archivo), "Archivo", Arial, sans-serif;--font-body:var(--font-archivo), "Archivo", Arial, sans-serif;--font-mono:var(--font-plex-mono), "IBM Plex Mono", "Courier New", monospace;--gap-xs:6px;--gap-sm:12px;--gap-md:20px;--gap-lg:32px;--gap-xl:56px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-body);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.55}a{color:var(--navy-700);text-decoration:none}a:hover{color:var(--navy-900);text-decoration:underline}.app{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--navy-900);color:var(--slate-200);border-right:1px solid var(--navy-800);height:100vh;padding:28px 0;position:sticky;top:0;overflow-y:auto}.sidebar-brand{border-bottom:1px solid #ffffff14;margin-bottom:16px;padding:0 24px 24px}.sidebar-brand .lockup{color:#fff;align-items:center;gap:12px;text-decoration:none;display:flex}.sidebar-brand .lockup:hover{color:#fff;text-decoration:none}.sidebar-brand .lockup img{flex:none;width:32px;height:32px}.sidebar-brand .lockup .over{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--tm-mist);font-size:9.5px}.sidebar-brand .lockup .name{letter-spacing:-.01em;font-size:16px;font-weight:600;line-height:1.15}.sidebar-brand .project{color:#fff;margin-top:18px;font-size:15px;font-weight:600;line-height:1.25}.sidebar-brand .sub{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--slate-400);margin-top:6px;font-size:10.5px}.nav-section{letter-spacing:.14em;text-transform:uppercase;color:var(--slate-400);padding:14px 24px 6px;font-size:10px}.sidebar nav a{color:var(--slate-200);border-left:3px solid #0000;align-items:center;gap:12px;padding:9px 24px;font-size:13.5px;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:flex}.sidebar nav a:hover{color:#fff;background:#ffffff0a;text-decoration:none}.sidebar nav a.active{border-left-color:var(--signal);color:#fff;background:#ffffff0f;font-weight:500}.sidebar nav a .num{font-family:var(--font-mono);color:var(--slate-400);width:22px;font-size:10.5px}.sidebar nav a.active .num{color:var(--signal)}.sidebar-footer{color:var(--slate-400);border-top:1px solid #ffffff14;margin-top:24px;padding:16px 24px;font-size:11px}.sidebar-footer .access-badge{color:var(--tm-mist);letter-spacing:.08em;text-transform:uppercase;background:#9fb3c81f;border:1px solid #9fb3c859;border-radius:3px;align-items:center;gap:6px;margin-top:8px;padding:3px 8px;font-size:10px;display:inline-flex}.main{max-width:1400px;padding:36px 56px 80px}.page-head{border-bottom:2px solid var(--navy-900);justify-content:space-between;align-items:flex-end;margin-bottom:32px;padding-bottom:18px;display:flex}.page-head .crumbs{font-family:var(--font-mono);color:var(--slate-500);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-size:11px}.page-head h1{font-family:var(--font-display);letter-spacing:-.02em;color:var(--navy-900);margin:0;font-size:34px;font-weight:600}.page-head .meta{text-align:right;color:var(--slate-600);font-size:12px;line-height:1.4}.page-head .meta .stamp{font-family:var(--font-mono);color:var(--slate-500);font-size:11px}.section-head{justify-content:space-between;align-items:baseline;margin:36px 0 16px;display:flex}.section-head h2{font-family:var(--font-display);letter-spacing:-.01em;color:var(--navy-900);margin:0;font-size:20px;font-weight:600}.section-head .note{color:var(--slate-500);font-size:12px}.card{border:1px solid var(--rule);background:#fff;border-radius:6px;padding:20px;box-shadow:0 1px 2px #0b1d3308}.card-title{text-transform:uppercase;letter-spacing:.12em;color:var(--slate-500);margin:0 0 12px;font-size:11px;font-weight:600}.card-kpi{font-family:var(--font-display);letter-spacing:-.02em;color:var(--navy-900);font-size:32px;font-weight:600;line-height:1.1}.card-kpi small{font-family:var(--font-body);color:var(--slate-500);margin-left:4px;font-size:13px;font-weight:400}.card-sub{color:var(--slate-600);margin-top:6px;font-size:12px}.grid-4{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.grid-2{grid-template-columns:1fr 1fr;gap:20px;display:grid}.grid-2-1{grid-template-columns:2fr 1fr;gap:20px;display:grid}.grid-1-2{grid-template-columns:1fr 2fr;gap:20px;display:grid}.pill{letter-spacing:.02em;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:11px;font-weight:500;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.pill-good{color:var(--signal-good);background:#2f7d4f14;border-color:#2f7d4f40}.pill-warn{color:var(--signal-warn);background:#c47a0c14;border-color:#c47a0c40}.pill-bad{color:var(--signal-bad);background:#b3261e14;border-color:#b3261e40}.pill-info{color:var(--signal-info);background:#0a6b8a14;border-color:#0a6b8a40}.pill-neutral{color:var(--slate-600);background:var(--slate-100);border-color:var(--slate-300)}table.data{border-collapse:collapse;width:100%;font-size:13px}table.data th{text-align:left;text-transform:uppercase;letter-spacing:.1em;color:var(--slate-600);border-bottom:1.5px solid var(--navy-900);background:var(--slate-100);padding:10px 12px;font-size:10.5px;font-weight:600}table.data td{border-bottom:1px solid var(--rule);vertical-align:top;padding:11px 12px}table.data tr:hover td{background:#0b1d3305}table.data .mono{font-family:var(--font-mono);font-size:12px}table.data .num-cell{text-align:right;font-variant-numeric:tabular-nums}.bar{background:var(--slate-200);border-radius:2px;height:8px;position:relative;overflow:hidden}.bar-fill{background:var(--navy-700);border-radius:2px;height:100%;transition:width .4s}.bar-fill.warn{background:var(--signal-warn)}.bar-fill.bad{background:var(--signal-bad)}.bar-fill.good{background:var(--signal-good)}.bar-double{background:var(--slate-200);border-radius:2px;height:22px;position:relative}.bar-double .plan{background:repeating-linear-gradient(45deg, var(--slate-300), var(--slate-300) 4px, var(--slate-200) 4px, var(--slate-200) 8px);border-right:2px solid var(--slate-500);height:100%;position:absolute;top:0;left:0}.bar-double .actual{background:var(--navy-700);height:100%;position:absolute;top:0;left:0}.gauge{text-align:center;padding:10px 0}.gauge svg{width:160px;height:100px}.gauge .val{font-family:var(--font-display);fill:var(--navy-900);font-size:22px;font-weight:600}.gauge .lbl{fill:var(--slate-500);text-transform:uppercase;letter-spacing:.1em;font-size:10px}.btn{border:1px solid var(--navy-900);background:var(--navy-900);color:#fff;letter-spacing:.02em;cursor:pointer;border-radius:3px;padding:8px 16px;font-size:12.5px;font-weight:500;text-decoration:none;transition:background .15s;display:inline-block}.btn:hover{background:var(--navy-700);color:#fff;text-decoration:none}.btn-ghost{color:var(--navy-900);background:0 0}.btn-ghost:hover{background:var(--slate-100);color:var(--navy-900)}.btn-sm{padding:5px 11px;font-size:11.5px}.callout{border:1px solid var(--rule);border-left:3px solid var(--tm-steel);color:var(--slate-700);background:#fff;border-radius:0 3px 3px 0;margin:16px 0;padding:14px 18px;font-size:13px}.callout strong{color:var(--navy-900)}.photo-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.photo{border:1px solid var(--rule);background:#fff;border-radius:4px;flex-direction:column;display:flex;overflow:hidden}.photo-img{aspect-ratio:4/3;background:linear-gradient(135deg, var(--slate-300) 0%, var(--slate-400) 100%);color:#fff;letter-spacing:.1em;text-transform:uppercase;justify-content:center;align-items:center;font-size:10px;display:flex;position:relative}.photo-img:after{content:"";background:radial-gradient(at top,#0000 30%,#0b1d334d 100%);position:absolute;inset:0}.photo-img .tag{color:var(--navy-900);letter-spacing:.04em;z-index:1;background:#fffffff2;border-radius:2px;padding:3px 8px;font-size:10px;font-weight:600;position:absolute;top:10px;left:10px}.photo-img .date{color:#fff;font-family:var(--font-mono);z-index:1;text-shadow:0 1px 2px #0006;font-size:10.5px;position:absolute;bottom:10px;right:10px}.photo-cap{color:var(--slate-700);border-top:1px solid var(--rule);padding:10px 12px;font-size:12px;line-height:1.45}.photo-cap strong{color:var(--navy-900);font-weight:600}.beforeafter{background:var(--rule);border:1px solid var(--rule);border-radius:4px;grid-template-columns:1fr 1fr;gap:2px;display:grid;overflow:hidden}.beforeafter .photo-img{aspect-ratio:4/3}.gantt{border:1px solid var(--rule);background:#fff;border-radius:4px;padding:0;position:relative;overflow-x:auto}.gantt-head{background:var(--slate-100);border-bottom:2px solid var(--navy-900);grid-template-columns:280px 1fr;display:grid}.gantt-head .task-col,.gantt-head .time-col{text-transform:uppercase;letter-spacing:.1em;color:var(--slate-600);padding:10px 14px;font-size:10.5px;font-weight:600}.gantt-head .time-col{grid-template-columns:repeat(12,1fr);display:grid}.gantt-head .time-col span{text-align:center;border-left:1px solid var(--rule);padding:0 2px}.gantt-row{border-bottom:1px solid var(--rule);grid-template-columns:280px 1fr;align-items:center;min-height:40px;display:grid}.gantt-row:hover{background:#0b1d3305}.gantt-row .task-col{color:var(--navy-900);padding:8px 14px;font-size:13px;font-weight:500}.gantt-row .task-col .sub{color:var(--slate-500);margin-top:2px;font-size:11px;font-weight:400}.gantt-row .time-col{grid-template-columns:repeat(12,1fr);height:40px;display:grid;position:relative}.gantt-row .time-col>.gridline{border-left:1px solid var(--slate-200);height:100%}.gantt-bar{color:#fff;white-space:nowrap;border-radius:2px;align-items:center;height:18px;padding:0 6px;font-size:10px;font-weight:500;display:flex;position:absolute;top:11px}.gantt-bar.baseline{background:repeating-linear-gradient(45deg, var(--slate-400), var(--slate-400) 4px, var(--slate-300) 4px, var(--slate-300) 8px);opacity:.9;height:8px;top:8px}.gantt-bar.actual{background:var(--navy-700);height:14px;top:18px}.gantt-bar.delayed{background:var(--signal-warn);height:14px;top:18px}.gantt-bar.complete{background:var(--signal-good);height:14px;top:18px}.gantt-today{background:var(--signal-bad);z-index:5;width:2px;position:absolute;top:0;bottom:0}.gantt-today:after{content:"TODAY";font-size:9px;font-family:var(--font-mono);color:var(--signal-bad);font-weight:600;position:absolute;top:-6px;left:4px}.gantt-today-line{background:var(--signal-bad);z-index:8;pointer-events:none;width:2px;position:absolute;top:36px;bottom:0}.gantt-today-line:before{content:"▼ TODAY";font-size:9px;font-family:var(--font-mono);color:var(--signal-bad);letter-spacing:.06em;white-space:nowrap;background:#fff;padding:0 4px;font-weight:700;position:absolute;top:-14px;left:-22px}.mission-hero{background:linear-gradient(135deg, var(--navy-900) 0%, var(--navy-700) 100%);color:#fff;border-radius:4px;margin-bottom:36px;padding:48px 40px;position:relative;overflow:hidden}.mission-hero:before{content:"";background:radial-gradient(circle,#f25c2a1f 0%,#0000 60%);width:400px;height:400px;position:absolute;top:-50%;right:-10%}.mission-hero h2{font-family:var(--font-display);letter-spacing:-.01em;max-width:800px;margin:0 0 16px;font-size:28px;font-style:italic;font-weight:400;position:relative}.mission-hero p{color:var(--slate-200);max-width:720px;margin:0;font-size:15px;line-height:1.7;position:relative}.org{flex-direction:column;align-items:center;gap:0;padding:24px 0;display:flex}.org-level{justify-content:center;gap:16px;display:flex;position:relative}.org-connector{background:var(--slate-400);width:2px;height:28px}.org-connector-h{background:var(--slate-400);height:2px;position:absolute;top:-14px;left:50%;transform:translate(-50%)}.org-card{border:1.5px solid var(--navy-900);text-align:center;background:#fff;border-radius:4px;min-width:180px;padding:14px 18px;position:relative;box-shadow:0 2px 4px #0b1d330f}.org-card.client{background:var(--navy-900);color:#fff;border-color:var(--navy-900)}.org-card.client .role{color:var(--slate-300)}.org-card.lead{border-color:var(--signal);background:#fff}.org-card .role{text-transform:uppercase;letter-spacing:.1em;color:var(--slate-500);margin-bottom:4px;font-size:10px}.org-card .name{font-family:var(--font-display);color:inherit;font-size:15px;font-weight:500}.org-card .org{color:var(--slate-500);margin-top:3px;font-size:11px}.org-card.client .org{color:var(--slate-300)}.divider{border:none;border-top:1px solid var(--rule);margin:32px 0}.tag-mono{font-family:var(--font-mono);background:var(--slate-100);border:1px solid var(--rule);color:var(--slate-700);border-radius:2px;padding:2px 7px;font-size:11px;display:inline-block}.empty{text-align:center;color:var(--slate-600);padding:32px 20px;font-size:13px}.card.empty{background:var(--tm-paper) url(/textures/hatch-fine-paper.svg) repeat;background-size:8px 8px}.empty>span{border:1px solid var(--rule);background:#fff;max-width:100%;padding:10px 16px;display:inline-block}.page-foot{border-top:1px solid var(--rule);color:var(--slate-500);justify-content:space-between;margin-top:60px;padding-top:20px;font-size:11px;display:flex}.page-foot .reg{font-family:var(--font-mono)}@media (max-width:960px){.app{grid-template-columns:1fr}.sidebar{height:auto;position:static}.main{padding:24px}.grid-4,.grid-3,.grid-2,.grid-2-1,.grid-1-2{grid-template-columns:1fr}.photo-grid{grid-template-columns:1fr 1fr}.page-head{flex-direction:column;align-items:flex-start;gap:12px}.page-head .meta{text-align:left}}.sidebar nav a.soon{color:var(--slate-400);opacity:.55;pointer-events:none}.sidebar nav a.soon:after{content:"Soon";letter-spacing:.1em;text-transform:uppercase;color:var(--slate-400);margin-left:auto;font-size:9px}.sidebar nav a .count{background:var(--signal-bad);color:#fff;border-radius:999px;margin-left:auto;padding:0 7px;font-size:10px;font-weight:600}.sidebar-footer form{margin-top:10px}.sidebar-footer button.link{color:var(--slate-300);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.form{gap:16px;max-width:720px;display:grid}.form .row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.field label{text-transform:uppercase;letter-spacing:.1em;color:var(--slate-600);margin-bottom:6px;font-size:11px;font-weight:600;display:block}.field .hint{color:var(--slate-500);margin-top:4px;font-size:12px}.field input,.field select,.field textarea{width:100%;font:inherit;color:var(--ink);border:1px solid var(--slate-300);background:#fff;border-radius:3px;padding:9px 11px;font-size:14px}.field textarea{resize:vertical;min-height:110px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--navy-500);outline-offset:0;border-color:var(--navy-500)}.check{align-items:center;gap:8px;font-size:13px;display:flex}.actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}button.btn{font-family:inherit}.btn-danger{background:var(--signal-bad);border-color:var(--signal-bad)}.btn-good{background:var(--signal-good);border-color:var(--signal-good)}.alert{border-radius:3px;margin-bottom:20px;padding:12px 16px;font-size:13px}.alert-bad{color:var(--signal-bad);background:#b3261e12;border:1px solid #b3261e40}.alert-good{color:var(--signal-good);background:#2f7d4f12;border:1px solid #2f7d4f40}.auth-wrap{background:var(--tm-ink) url(/textures/hatch-ink-soft.svg) repeat;background-size:32px 32px;place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:var(--paper);box-shadow:3px 3px 0 var(--tm-steel);width:100%;max-width:420px;padding:36px}.auth-card .lockup{width:240px;max-width:100%;height:auto;margin-left:-12px;display:block}.auth-card p{color:var(--slate-600)}.detail-grid{background:var(--rule);border:1px solid var(--rule);border-radius:4px;grid-template-columns:repeat(4,1fr);gap:1px;display:grid;overflow:hidden}.detail-grid>div{background:#fff;padding:12px 14px}.detail-grid .k{text-transform:uppercase;letter-spacing:.1em;color:var(--slate-500);font-size:10.5px;font-weight:600}.detail-grid .v{margin-top:4px;font-weight:500}.prose{white-space:pre-wrap}.thread{gap:12px;display:grid}.msg{border:1px solid var(--rule);background:#fff;border-radius:4px;padding:14px 16px}.msg .who{color:var(--slate-500);margin-bottom:6px;font-size:12px}.msg .who strong{color:var(--navy-900)}.msg.system{background:var(--slate-100);color:var(--slate-600);padding:8px 14px;font-size:12.5px}.list-plain{margin:0;padding:0;list-style:none}.list-plain li{border-bottom:1px solid var(--rule);padding:12px 0}.list-plain li.unread{font-weight:600}.table-wrap{overflow-x:auto}@media (max-width:960px){.form .row,.detail-grid{grid-template-columns:1fr 1fr}.sidebar nav{flex-wrap:wrap;display:flex}.sidebar nav a{padding:6px 14px}.sidebar nav a.soon{display:none}}@media (max-width:560px){.form .row,.detail-grid{grid-template-columns:1fr}.main{padding:18px 16px}.page-head h1{font-size:26px}}.btn-provider{background:#fff;justify-content:center;align-items:center;gap:10px;width:100%;padding:11px 16px;font-size:14px;display:flex}.auth-card.legal{max-width:720px}.legal h1{font-family:var(--font-display);color:var(--navy-900);margin:28px 0 0;font-size:28px;font-weight:600}.legal h2{font-family:var(--font-display);color:var(--navy-900);margin:24px 0 6px;font-size:18px;font-weight:600}.legal .stamp{font-family:var(--font-mono);color:var(--slate-500);margin-top:4px;font-size:11px}.legal p,.legal li{color:var(--slate-700)}.legal-foot,.auth-links{color:var(--slate-500);margin-top:28px;font-size:12px}.auth-title{font-family:var(--font-display);color:var(--navy-900);margin:24px 0 4px;font-size:20px;font-weight:600}.divider-or{color:var(--slate-500);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:12px;margin:20px 0;font-size:11px;display:flex}.divider-or:before,.divider-or:after{content:"";border-top:1px solid var(--rule);flex:1}.field .check{text-transform:none;letter-spacing:normal;color:var(--ink);margin:0;font-size:13px;font-weight:400}
