:root{
 --ink:#07182b;--ink2:#143653;--muted:#687c90;--muted2:#8594a3;
 --blue:#086ad9;--blue2:#064b9e;--cyan:#1c96f5;--navy:#061b36;
 --paper:#fff;--bg:#f3f7fb;--line:#d9e5ef;--line2:#c9d8e6;
 --green:#117b58;--greenbg:#e8f7f1;--amber:#886017;--amberbg:#faf2df;
 --red:#b6414d;--redbg:#fcebed;--purple:#6550a3;
 --shadow:0 18px 60px rgba(7,43,83,.10);--shadow2:0 7px 24px rgba(7,43,83,.07);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
 margin:0;color:var(--ink);
 background:
  radial-gradient(circle at 8% 0,rgba(20,143,246,.08),transparent 23%),
  radial-gradient(circle at 93% 8%,rgba(8,106,217,.05),transparent 24%),
  linear-gradient(180deg,#fbfdff,#f4f8fc 55%,#eef3f8);
 font:14px/1.5 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 -webkit-font-smoothing:antialiased;
}
body:before{content:"";position:fixed;inset:0;z-index:-3;pointer-events:none;opacity:.22;background-image:linear-gradient(rgba(23,73,124,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(23,73,124,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(#000,transparent 82%)}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.wrap{width:min(1600px,calc(100% - 40px));margin:auto}

.statusbar{background:linear-gradient(90deg,#06182f,#083c79 60%,#075fbe);color:#dcecff}
.statusrow{min-height:34px;display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:10px;text-transform:uppercase;letter-spacing:.095em;font-weight:850}
.statusgroup{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.live:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#55dda7;box-shadow:0 0 0 5px rgba(85,221,167,.11);margin-right:7px}

.nav{position:sticky;top:0;z-index:70;background:rgba(255,255,255,.94);backdrop-filter:blur(20px) saturate(160%);border-bottom:1px solid rgba(187,203,220,.67);box-shadow:0 6px 25px rgba(7,43,83,.035)}
.navrow{height:76px;display:flex;align-items:center;gap:20px}
.logo img{display:block;width:184px;height:52px;object-fit:contain;object-position:left center}
.product{border-left:1px solid #d7e2ec;padding-left:17px}
.product b{display:block;font-size:13px}
.product small{color:#77899b}
.navlinks{display:flex;gap:18px;margin-left:auto;font-size:12px;color:#3b5670;font-weight:800}
.navlinks a:hover{color:var(--blue)}
.actions{display:flex;gap:7px}

.btn{border:1px solid var(--line2);background:#fff;color:#1c405f;border-radius:10px;padding:10px 13px;font-weight:850;box-shadow:0 3px 10px rgba(7,43,83,.035);transition:.16s}
.btn:hover{transform:translateY(-1px);border-color:#78abe0;color:var(--blue);box-shadow:0 9px 22px rgba(8,106,217,.10)}
.btn.primary{color:#fff;border-color:transparent;background:linear-gradient(135deg,#138cf8,#0752ad);box-shadow:0 11px 25px rgba(8,106,217,.21)}
.btn.primary:hover{color:#fff}
.btn.sm{padding:7px 9px;border-radius:8px;font-size:10px}

.hero{padding:39px 0 20px}
.herogrid{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:end}
.kicker{color:var(--blue);text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:950}
.hero h1{font-size:clamp(42px,4.2vw,67px);line-height:.96;letter-spacing:-4px;margin:8px 0 12px}
.hero h1 span{color:var(--blue)}
.hero p{max-width:900px;margin:0;color:#60768c;font-size:16px}
.truth{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.truth span{padding:7px 9px;border:1px solid;border-radius:999px;font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:950}
.truth .open{background:var(--greenbg);border-color:#c7e7dc;color:#0d7252}
.truth .early{background:#eaf4ff;border-color:#cce1f7;color:#0a5aa8}
.truth .active{background:var(--amberbg);border-color:#ead8b1;color:#805914}

.command{padding:12px 0 17px}
.commandbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow2)}
.lanes{display:flex;padding:4px;border:1px solid #d7e2ed;border-radius:11px;background:#f4f8fb}
.lane{border:0;background:transparent;color:#657a8f;border-radius:8px;padding:9px 14px;text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:950}
.lane.active{background:#082d59;color:#fff;box-shadow:0 5px 13px rgba(7,46,91,.17)}
.stages{display:flex;gap:5px;overflow:auto}
.stage{border:0;background:transparent;color:#60758a;padding:9px 11px;border-radius:9px;white-space:nowrap;font-size:11px;font-weight:850}
.stage.active{background:#eaf4ff;color:#075bb5}

.kpis{display:grid;grid-template-columns:repeat(9,1fr);gap:9px;padding-bottom:20px}
.kpi{padding:13px 14px;border:1px solid var(--line);background:rgba(255,255,255,.95);border-radius:13px;box-shadow:var(--shadow2)}
.kpi small{font-size:8px;text-transform:uppercase;letter-spacing:.09em;color:#75879a;font-weight:900}
.kpi b{display:block;font-size:24px;letter-spacing:-1px;margin:5px 0 0;color:#0b2a49}
.kpi em{display:block;font-style:normal;font-size:8px;color:#14805e;text-transform:uppercase;letter-spacing:.07em;font-weight:900}

.workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:13px;padding-bottom:55px}
.board{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}
.filters{padding:12px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(260px,1fr) repeat(5,145px) auto;gap:7px;background:linear-gradient(#fff,#fafcfe)}
.search{position:relative}
.search:before{content:"⌕";position:absolute;left:12px;top:6px;color:#73889c;font-size:20px}
.search input,.select{width:100%;height:39px;border:1px solid #cddce9;border-radius:9px;background:#fff;color:#173956;outline:none;padding:0 10px}
.search input{padding-left:35px}
.search input:focus,.select:focus{border-color:#72aae2;box-shadow:0 0 0 4px rgba(8,106,217,.07)}
#subtypeFilter[hidden]{display:none}
.boardstatus{padding:9px 12px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px;background:#f5f9fd;color:#718397;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}

.tablewrap{overflow:auto}
.table{width:100%;border-collapse:collapse;min-width:1230px}
.table th{padding:10px 11px;text-align:left;background:#f9fbfd;border-bottom:1px solid #dce6ef;color:#74869a;font-size:8px;text-transform:uppercase;letter-spacing:.11em}
.table td{padding:12px 11px;border-bottom:1px solid #e7edf3;vertical-align:middle;color:#2c4863}
.table tbody tr{cursor:pointer;transition:.14s}
.table tbody tr:hover{background:#f5f9fe}
.project strong{display:block;color:#102f4e;font-size:12px;max-width:390px}
.project small{display:block;color:#8091a1;margin-top:2px}
.badge,.grade{display:inline-flex;align-items:center;padding:5px 7px;border:1px solid;border-radius:999px;white-space:nowrap;font-size:8px;text-transform:uppercase;letter-spacing:.05em;font-weight:950}
.grade{border-radius:8px}
.grade.ap{background:#e6f3ff;border-color:#badbf8;color:#075ab6}
.grade.a{background:#edf6ff;border-color:#cfe3f7;color:#29659b}
.grade.b{background:#f6f2e8;border-color:#e9ddbd;color:#82631d}
.badge.open{background:var(--greenbg);border-color:#c6e8dc;color:#0d7353}
.badge.early{background:#eaf4ff;border-color:#cae0f5;color:#075aa7}
.badge.active{background:var(--amberbg);border-color:#ead8b3;color:#805a15}
.badge.neutral{background:#f2f5f8;border-color:#dbe3eb;color:#5c7186}
.deadline.urgent{color:#b73f4b;font-weight:900}
.score{font-weight:950;color:#075dbb}
.scorebar{width:67px;height:4px;margin-top:4px;border-radius:999px;background:#e4edf5;overflow:hidden}
.scorebar i{display:block;height:100%;background:linear-gradient(90deg,#46aaff,#0758ba)}
.fit{font-weight:950;color:#0d7756}

.side{display:grid;gap:11px;align-content:start}
.sidecard{background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow2);overflow:hidden}
.sidehead{padding:12px 13px;border-bottom:1px solid var(--line);font-weight:900;color:#173a59}
.sidebody{padding:13px}
.source{padding:10px 0;border-bottom:1px solid #e8eef4}
.source:last-child{border-bottom:0}
.source strong{display:flex;justify-content:space-between;gap:8px;font-size:11px;color:#173a59}
.source small{display:block;color:#7a8b9c;margin:3px 0 7px}
.state{font-size:8px;text-transform:uppercase;font-weight:950}
.state.live{color:var(--green)}.state.direct{color:#82631d}.state.locked{color:#8c5870}
.guide{display:grid;gap:8px}
.guide div{padding:9px;border:1px solid #dce7f1;border-radius:9px;background:#f8fbfd}
.guide b{display:block;color:#173a59;font-size:10px}
.guide small{color:#73879b}
.apartmentnote{padding:10px;border-radius:10px;background:#f1f7fd;border:1px solid #d4e5f4;color:#49657d;font-size:10px}
.apartmentnote b{color:#135f9f}

.drawerback{position:fixed;inset:0;z-index:100;background:rgba(4,20,39,.34);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:.2s}
.drawerback.open{opacity:1;pointer-events:auto}
.drawer{position:fixed;right:0;top:0;z-index:110;height:100vh;width:min(680px,97vw);overflow:auto;background:#fff;border-left:1px solid #cbd8e5;box-shadow:-30px 0 80px rgba(4,30,59,.20);transform:translateX(102%);transition:.27s}
.drawer.open{transform:translateX(0)}
.drawerhead{position:sticky;top:0;z-index:2;padding:15px 18px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.97);backdrop-filter:blur(16px);display:flex;justify-content:space-between;align-items:center}
.drawerclose{width:35px;height:35px;border:1px solid #cfdeea;background:#fff;border-radius:9px;font-size:20px;color:#476078}
.drawerbody{padding:21px}
.drawerkicker{font-size:9px;text-transform:uppercase;letter-spacing:.11em;font-weight:950;color:#6d8195}
.drawer h2{font-size:30px;line-height:1.07;letter-spacing:-1.5px;margin:7px 0}
.drawerloc{color:#667d93}
.detailgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:17px 0}
.detail{padding:11px;border:1px solid var(--line);border-radius:10px;background:#f9fbfd}
.detail small{display:block;color:#7b8c9e;font-size:8px;text-transform:uppercase;letter-spacing:.1em;font-weight:900}
.detail b{display:block;color:#173957;margin-top:4px}
.assess{padding:14px;border:1px solid #cfe0ef;background:#f2f8fd;border-radius:11px;color:#34536f}
.assess b{display:block;color:#0f4b84;margin-bottom:5px}
.scopefull{white-space:pre-wrap;color:#4e6780}
.draweractions{display:flex;gap:7px;flex-wrap:wrap;margin:15px 0}
.eventbox{padding:14px;border:1px solid #bedbf5;background:#eef7ff;border-radius:11px}
.eventbox small{display:block;color:#66819b;font-size:8px;text-transform:uppercase;letter-spacing:.1em;font-weight:900}
.eventid{display:flex;align-items:center;gap:8px;margin-top:5px}
.eventid code{font-size:18px;font-weight:950;color:#075ab3;letter-spacing:.04em}
.truthbox{padding:10px 12px;margin-top:14px;border:1px solid #d8e3ed;background:#fafcfe;border-radius:9px;color:#74879a;font-size:10px}

.modalback{position:fixed;inset:0;z-index:130;background:rgba(4,20,39,.38);backdrop-filter:blur(4px);display:none;place-items:center;padding:18px}
.modalback.open{display:grid}
.modal{width:min(620px,100%);max-height:90vh;overflow:auto;background:#fff;border:1px solid #cbd9e7;border-radius:18px;box-shadow:0 30px 90px rgba(4,30,59,.25)}
.modalhead{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
.modalbody{padding:18px}
.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.field label{display:block;color:#587087;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;margin-bottom:5px}
.field input,.field select,.field textarea{width:100%;border:1px solid #cfdeea;border-radius:9px;padding:10px;outline:none}
.field textarea{min-height:110px;resize:vertical}
.systemchecks{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.check{display:flex;align-items:center;gap:6px;padding:8px;border:1px solid #dbe6ef;border-radius:8px;background:#f9fbfd;font-size:11px}
.modalfoot{padding:13px 18px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:7px}

.pursuitpanel{position:fixed;right:16px;bottom:78px;z-index:90;width:min(470px,calc(100vw - 25px));max-height:69vh;overflow:auto;background:#fff;border:1px solid #cbd9e7;border-radius:16px;box-shadow:0 25px 75px rgba(4,31,61,.20);display:none}
.pursuitpanel.open{display:block}
.pursuitrow{padding:11px 13px;border-bottom:1px solid #e7edf3}
.pursuitrow strong{display:block;color:#173957;font-size:11px}
.pursuitrow small{display:block;color:#7b8c9e;margin:2px 0 8px}
.pursuitcontrols{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.pursuitcontrols select,.pursuitcontrols input{width:100%;height:32px;border:1px solid #d0dde9;border-radius:8px;padding:0 7px;background:#fff}
.pursuittools{display:flex;gap:8px;margin-top:7px}
.linkbtn{border:0;background:none;padding:0;color:#075ebd;font-size:9px;font-weight:900}
.linkbtn.remove{color:#a44751}
.float{position:fixed;right:18px;bottom:18px;z-index:85}

.footer{padding:34px 0 48px;border-top:1px solid #d6e2ec;background:#fff;color:#6d8194}
.footrow{display:flex;justify-content:space-between;gap:25px;align-items:center;flex-wrap:wrap}
.footer img{width:175px;height:62px;object-fit:contain}
.footer small{max-width:790px}

@media(max-width:1420px){
 .kpis{grid-template-columns:repeat(4,1fr)}
 .filters{grid-template-columns:minmax(250px,1fr) repeat(4,145px) auto}
 #sortFilter{display:none}
}
@media(max-width:1150px){
 .workspace{grid-template-columns:1fr}.side{grid-template-columns:1fr 1fr}
 .filters{grid-template-columns:1fr repeat(3,145px) auto}
 #dueFilter{display:none}
 .navlinks{display:none}
}
@media(max-width:850px){
 .product{display:none}.herogrid{grid-template-columns:1fr}.truth{justify-content:flex-start}
 .commandbar{grid-template-columns:1fr}.stages{order:3}
 .kpis{grid-template-columns:repeat(2,1fr)}.side{grid-template-columns:1fr}
 .filters{grid-template-columns:1fr 1fr}.search{grid-column:1/-1}
 .actions .btn:not(.primary){display:none}
}
@media(max-width:600px){
 .wrap{width:min(100% - 20px,1600px)}.statusgroup:last-child{display:none}.navrow{height:66px}.logo img{width:150px;height:44px}
 .hero{padding-top:28px}.hero h1{font-size:42px;letter-spacing:-2.7px}.hero p{font-size:14px}
 .lanes{width:100%}.lane{flex:1}.filters{grid-template-columns:1fr}.search{grid-column:auto}
 .detailgrid,.formgrid{grid-template-columns:1fr}.systemchecks{grid-template-columns:1fr 1fr}
}

.reviewlane.active{background:#795b16;color:#fff;box-shadow:0 5px 13px rgba(121,91,22,.18)}

.grade.c{background:#f1f4f7;border-color:#d7e0e8;color:#687b8d}
