:root{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Arial,sans-serif;
  color:#172033;
  background:#eef3f7;
  --bg:#eef3f7;--card:#fff;--text:#172033;--muted:#6f7b8d;--line:#dfe7ee;
  --navy:#11263b;--navy2:#183a4e;--ink:#1b2634;
  --red:#b42318;--redbg:#fff0ef;--amber:#a15c07;--amberbg:#fff6df;--green:#067647;--greenbg:#eaf8f1;
  --blue:#175cd3;--bluebg:#eef5ff;--purple:#6941c6;--purplebg:#f5f1ff;--teal:#0b7d73;--tealbg:#e9f8f6;
  --shadow:0 12px 34px rgba(36,56,76,.08);--shadow-sm:0 4px 14px rgba(36,56,76,.06);
}
*{box-sizing:border-box}
html{min-height:100%;background:var(--bg)}
body{margin:0;min-height:100vh;background:
  radial-gradient(circle at 10% -10%,rgba(43,143,126,.12),transparent 25%),
  radial-gradient(circle at 88% 3%,rgba(42,103,151,.10),transparent 26%),
  linear-gradient(180deg,#f7fafc 0,#eef3f7 340px,#eef3f7 100%);color:var(--text)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.shell{max-width:1760px;margin:auto;padding:18px 22px 34px}
.hero{position:relative;isolation:isolate;display:flex;justify-content:space-between;gap:22px;align-items:center;overflow:hidden;min-height:112px;margin-bottom:12px;padding:20px 22px;border-radius:22px;background:linear-gradient(118deg,#10273b 0%,#17394a 54%,#14675f 125%);box-shadow:0 16px 40px rgba(18,42,57,.18);color:#fff}
.hero:before{content:"";position:absolute;inset:0;z-index:-2;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(90deg,#000 30%,transparent 88%)}
.hero:after{content:"";position:absolute;width:420px;height:420px;right:-130px;top:-240px;border:1px solid rgba(255,255,255,.15);border-radius:50%;box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.018);z-index:-1}
.brand{display:flex;align-items:center;gap:14px;min-width:300px;position:relative;z-index:2}
.brandmark{width:54px;height:54px;filter:drop-shadow(0 8px 14px rgba(0,0,0,.16))}
h1{margin:0;font-size:31px;line-height:1;letter-spacing:-.045em}
.hero .sub{color:rgba(255,255,255,.72);font-size:12px;margin-top:7px;letter-spacing:.01em}
.hero-art{position:absolute;right:270px;bottom:-14px;width:290px;height:100px;opacity:.14;background:
  linear-gradient(90deg,transparent 0 7%,rgba(255,255,255,.9) 7% 12%,transparent 12% 18%,rgba(255,255,255,.9) 18% 30%,transparent 30% 35%,rgba(255,255,255,.9) 35% 42%,transparent 42% 49%,rgba(255,255,255,.9) 49% 64%,transparent 64% 70%,rgba(255,255,255,.9) 70% 78%,transparent 78% 84%,rgba(255,255,255,.9) 84% 95%,transparent 95%);
  clip-path:polygon(0 76%,7% 76%,7% 42%,12% 42%,12% 62%,18% 62%,18% 28%,30% 28%,30% 55%,35% 55%,35% 12%,42% 12%,42% 64%,49% 64%,49% 38%,64% 38%,64% 72%,70% 72%,70% 20%,78% 20%,78% 57%,84% 57%,84% 32%,95% 32%,95% 76%,100% 76%,100% 100%,0 100%)}
.small{font-size:11px;color:var(--muted)}
.muted{color:var(--muted)}
.hero .small{color:rgba(255,255,255,.72)}
.userbox,.actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.userbox{justify-content:flex-end;position:relative;z-index:3}
.tabs{display:flex;gap:7px;overflow:auto;padding:5px 2px 8px;margin:0}
.tab,.btn{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:11px;padding:9px 12px;min-height:40px;transition:.16s ease;box-shadow:0 1px 0 rgba(17,38,59,.02)}
.tab{font-weight:650;white-space:nowrap}
.tab span{margin-right:4px;color:#718096}
.tab:hover,.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm);border-color:#cbd7e1}
.tab.active{background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 7px 18px rgba(17,38,59,.18)}
.tab.active span{color:#8fe1d2}
.btn.primary{background:linear-gradient(135deg,#152e43,#17675f);color:#fff;border-color:transparent;font-weight:700}
.btn.danger{color:var(--red);background:#fff;border-color:#f2c8c3}
.btn.small{min-height:32px;padding:6px 9px;font-size:11px;border-radius:9px}
.btn.glass{background:rgba(255,255,255,.10);color:#fff;border-color:rgba(255,255,255,.19);box-shadow:none}
.btn.glass:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.30)}
.focusbar{display:grid;grid-template-columns:auto minmax(230px,360px) minmax(260px,1fr) auto;gap:10px;align-items:center;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:15px;padding:10px 12px;margin:2px 0 14px;box-shadow:var(--shadow-sm)}
.focus-title{display:flex;align-items:center;gap:7px;white-space:nowrap}
.focus-dot{width:9px;height:9px;border-radius:50%;background:#16a085;box-shadow:0 0 0 4px rgba(22,160,133,.10)}
.focus-help{font-size:11px;color:var(--muted)}
.view-title,.section-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin:14px 2px 10px}
.view-title h2,.section-heading h2{margin:2px 0 0;font-size:23px;letter-spacing:-.035em}
.eyebrow{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--teal)}
.work-summary{margin-top:2px}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:12px}
.kpi,.panel{background:rgba(255,255,255,.95);border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow-sm)}
.kpi{display:flex;align-items:center;gap:12px;padding:13px 14px;min-height:88px;position:relative;overflow:hidden}
.kpi:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#dce4ea}
.kpi.accent-blue:after{background:#4d8fe9}.kpi.accent-red:after{background:#e36b60}.kpi.accent-purple:after{background:#8b6be8}.kpi.accent-amber:after{background:#e5a33b}.kpi.accent-green:after{background:#38a978}
.kicon{display:grid;place-items:center;width:38px;height:38px;min-width:38px;border-radius:12px;background:#f0f4f7;color:#536578;font-weight:850;font-size:17px}
.accent-blue .kicon{background:var(--bluebg);color:var(--blue)}.accent-red .kicon{background:var(--redbg);color:var(--red)}.accent-purple .kicon{background:var(--purplebg);color:var(--purple)}.accent-amber .kicon{background:var(--amberbg);color:var(--amber)}.accent-green .kicon{background:var(--greenbg);color:var(--green)}
.kl{font-size:10px;text-transform:uppercase;color:var(--muted);letter-spacing:.055em;font-weight:700}
.kv{font-size:27px;font-weight:820;margin-top:2px;letter-spacing:-.035em}
.ks{font-size:10px;color:var(--muted);margin-top:1px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.panel{overflow:hidden}
.panel-danger{border-color:#f0d5d1}
.panelhead{padding:11px 13px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:9px;align-items:center;flex-wrap:wrap;background:linear-gradient(180deg,#fff,#fcfdfe)}
.panelbody{padding:12px 13px}
.filters{display:grid;gap:7px;margin-bottom:9px}
.project-filters{grid-template-columns:2fr repeat(4,1fr) auto}.app-filters{grid-template-columns:2fr 2fr repeat(5,1fr) auto}.task-filters{grid-template-columns:2fr repeat(5,1fr) auto}.manager-filters{grid-template-columns:minmax(240px,360px) 1fr;align-items:center}.filter-note{font-size:11px;color:var(--muted)}
input,select,textarea{width:100%;border:1px solid #d7e0e8;border-radius:10px;padding:9px 10px;background:#fff;min-height:41px;color:var(--text);outline:none;transition:.16s ease}
input:focus,select:focus,textarea:focus{border-color:#6eb8ab;box-shadow:0 0 0 3px rgba(24,136,119,.10)}
textarea{min-height:94px;resize:vertical}
.tablepanel{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:var(--shadow-sm)}
.tabletop{padding:10px 12px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}
.tablewrap{overflow:auto;max-height:690px}
table{width:100%;border-collapse:collapse;min-width:1120px}
th{position:sticky;top:0;background:#f8fafc;z-index:2;padding:10px;text-align:left;color:#6d7889;font-size:10.5px;border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.035em}
td{padding:10px;font-size:12px;border-bottom:1px solid #edf1f4;vertical-align:top;max-width:330px}
tbody tr{cursor:pointer;transition:.12s ease}
tbody tr:hover{background:#f8fbfc}
.clip{max-width:290px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.owner{font-weight:760;color:#263a4d}
.project-main{display:grid;gap:3px;max-width:370px}.project-main b{font-size:12.5px}.project-main span{font-size:10.5px;color:var(--muted);line-height:1.25}
.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border-radius:999px;font-size:10px;font-weight:780;white-space:nowrap}
.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.red{color:var(--red);background:var(--redbg)}.amber{color:var(--amber);background:var(--amberbg)}.green{color:var(--green);background:var(--greenbg)}.blue{color:var(--blue);background:var(--bluebg)}.purple{color:var(--purple);background:var(--purplebg)}.gray{color:#596575;background:#f0f3f5}
.queue{padding:4px 13px 12px}
.qrow{display:grid;grid-template-columns:78px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid #edf1f4;cursor:pointer}
.qrow:last-child{border-bottom:0}.qrow:hover .qmain{color:var(--teal)}
.qmain{font-size:12px;font-weight:760}.qmeta{font-size:10.5px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:600px}
.deadline-cell{text-align:right;display:grid;gap:3px;justify-items:end}
.empty-state{padding:26px 12px;color:var(--muted);font-size:12px;text-align:center}.empty-state.compact{padding:18px 8px}
.kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.kcol{background:rgba(255,255,255,.80);border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:var(--shadow-sm)}
.khead{padding:10px 11px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;background:#fbfcfd}
.kbody{padding:8px;min-height:150px}
.tcard{border:1px solid var(--line);border-radius:11px;padding:10px;margin-bottom:8px;cursor:pointer;background:#fff;box-shadow:0 2px 6px rgba(36,56,76,.035);transition:.15s ease}
.tcard:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm);border-color:#cbd9e2}.tcard.is-overdue{border-left:3px solid #da5e52}
.ttitle{font-size:12.5px;font-weight:780;line-height:1.3}.tmeta{font-size:10.5px;color:var(--muted);margin-top:3px}.task-link{margin:8px 0 6px;padding:7px 8px;border-radius:8px;background:#f7fafb;display:grid;gap:2px}.task-link b{font-size:10.5px}.task-link span{font-size:9.5px;color:var(--muted)}.task-footer{margin-top:8px;display:flex;gap:5px;align-items:center;flex-wrap:wrap}
.calendar-tools{align-items:center}.calendar-controls{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.calendar-controls select{width:auto;min-width:150px;min-height:32px;padding:5px 8px}.month-title{min-width:145px;text-align:center;text-transform:capitalize}
.calendar-legend{display:flex;gap:15px;padding:8px 13px;border-bottom:1px solid var(--line);font-size:10.5px;color:var(--muted)}.calendar-legend span{display:flex;gap:6px;align-items:center}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.app-dot{background:#5e92e8}.task-dot{background:#8c70dc}.overdue-dot{background:#db6256}
.calendar{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));min-width:840px;border-left:1px solid var(--line);border-top:1px solid var(--line)}.cscroll{overflow:auto}
.chead{padding:8px;text-align:center;background:#f7f9fb;font-size:10px;color:var(--muted);border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:750}
.cday{min-height:125px;padding:7px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.cday.today{box-shadow:inset 0 0 0 2px #268d7d}.cday.out{background:#fafbfc;color:#a8afb8}
.cnum{font-size:11px;font-weight:800;display:flex;justify-content:space-between}.cnum span{font-size:9px;display:grid;place-items:center;min-width:18px;height:18px;border-radius:8px;background:#eef2f5;color:#607083}
.cevent{font-size:9.5px;padding:4px 5px;border-radius:7px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;border:1px solid transparent}.cevent.app{background:var(--bluebg);color:var(--blue);border-color:#dceaff}.cevent.task{background:var(--purplebg);color:var(--purple);border-color:#e9e1ff}.cevent.over{background:var(--redbg);color:var(--red);border-color:#f3d4cf}.unscheduled-panel{margin-top:10px}
.profiles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.profile{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;text-align:left;color:inherit;box-shadow:var(--shadow-sm)}.profile h3{font-size:14px;margin:0 0 3px}.manager-card{appearance:none;width:100%;transition:.16s ease}.manager-card:hover{transform:translateY(-2px);border-color:#b9d7d1;box-shadow:var(--shadow)}.manager-card.selected{border-color:#55aa9d;box-shadow:0 0 0 3px rgba(31,143,126,.10),var(--shadow-sm)}
.manager-head{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center}.avatar{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#15364a,#1a7d70);color:#fff;font-size:16px;font-weight:850}.arrow{font-size:18px;color:#8a98a7}.manager-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:12px}.manager-metrics>div{padding:7px 6px;border-radius:9px;background:#f7f9fb;text-align:center}.manager-metrics b{display:block;font-size:17px}.manager-metrics span{font-size:8.5px;color:var(--muted);text-transform:uppercase}.manager-metrics .metric-alert{background:var(--redbg);color:var(--red)}.manager-action{margin-top:10px;font-size:10.5px;font-weight:760;color:var(--teal)}
.drawerbg{display:none;position:fixed;inset:0;background:rgba(10,22,32,.36);backdrop-filter:blur(2px);z-index:50}.drawerbg.open{display:block}.drawer{position:absolute;right:0;top:0;height:100%;width:min(720px,96vw);background:#fff;padding:18px;overflow:auto;box-shadow:-12px 0 36px rgba(0,0,0,.18)}
.dhead{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--line);padding-bottom:11px;margin-bottom:10px}.dhead h2{margin:2px 0 0;font-size:21px;letter-spacing:-.025em}.close{width:40px;height:40px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:20px}
.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}.full{grid-column:1/-1}.field label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.035em;font-weight:750;color:var(--muted);margin-bottom:4px}.field-help{font-size:9.5px;color:var(--muted);margin-top:4px}
.notice{font-size:12px;line-height:1.55;padding:11px;border:1px solid var(--line);background:#f9fbfc;border-radius:10px}.project-details{line-height:1.65}
.project-choice{margin-top:7px;padding:10px 11px;border:1px solid #d9e8e5;background:linear-gradient(180deg,#f8fdfc,#f4faf8);border-radius:10px}.choice-title{font-weight:800;font-size:12px;color:#173f42}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px 12px;margin-top:5px}.choice-grid span{font-size:10.5px;color:#58687a;line-height:1.35}
.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 18% 16%,rgba(34,151,130,.18),transparent 25%),linear-gradient(145deg,#edf4f7,#f8fbfc)}.loginbox{width:min(480px,100%);background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:22px;padding:25px;box-shadow:0 22px 60px rgba(25,48,66,.14)}.loginbox form{display:grid;gap:9px;margin-top:16px}.login-brand{display:flex;align-items:center;gap:12px}.login-brand img{width:54px;height:54px}.login-brand h1{font-size:27px}.error{font-size:12px;color:var(--red)}
.toast{display:none;position:fixed;right:18px;bottom:18px;background:var(--navy);color:#fff;padding:11px 13px;border-radius:11px;z-index:90;max-width:440px;box-shadow:var(--shadow)}.toast.show{display:block}
.metricgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:10px}.metric{padding:9px;border:1px solid var(--line);border-radius:10px;background:#f9fbfc}.metric b{display:block;font-size:18px}.metric span{font-size:9px;color:var(--muted);text-transform:uppercase}.metric.metric-alert{background:var(--redbg);border-color:#efd1cd;color:var(--red)}
.linklist{border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-top:7px}.linkrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:9px;border-bottom:1px solid #edf1f4;cursor:pointer}.linkrow:last-child{border-bottom:0}.linkrow:hover{background:#f8fbfc}.linkmain{font-size:11.5px;font-weight:760}.linkmeta{font-size:10px;color:var(--muted);margin-top:2px}

.relation-section{border:1px solid #cddbe7;background:linear-gradient(180deg,#f8fbfd,#f2f8fb);border-radius:16px;padding:12px;margin-top:2px}.relation-title{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px;color:#173b52}.relation-title>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#e1f2f4;color:#087e80;font-size:18px;font-weight:800}.relation-project{margin-bottom:10px}
@media(max-width:1320px){.kpis{grid-template-columns:repeat(2,1fr)}.project-filters,.app-filters,.task-filters,.manager-filters{grid-template-columns:repeat(3,1fr)}.profiles{grid-template-columns:repeat(2,1fr)}.hero-art{display:none}.focusbar{grid-template-columns:auto minmax(220px,1fr) auto}.focus-help{display:none}}
@media(max-width:980px){.shell{padding:12px}.hero{align-items:flex-start;flex-direction:column}.userbox{justify-content:flex-start}.grid2{grid-template-columns:1fr}.kanban{grid-template-columns:repeat(2,1fr)}.focusbar{grid-template-columns:1fr}.project-filters,.app-filters,.task-filters,.manager-filters{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.shell{padding:8px}.hero{border-radius:16px;padding:16px}.brandmark{width:44px;height:44px}h1{font-size:25px}.kpis{grid-template-columns:1fr}.project-filters,.app-filters,.task-filters,.manager-filters{grid-template-columns:1fr}.kanban{grid-template-columns:1fr}.profiles{grid-template-columns:1fr}.formgrid{grid-template-columns:1fr}.full{grid-column:auto}.metricgrid{grid-template-columns:repeat(2,1fr)}.choice-grid{grid-template-columns:1fr}.view-title,.section-heading{align-items:flex-start;flex-direction:column}.qrow{grid-template-columns:68px minmax(0,1fr)}.deadline-cell{grid-column:2;justify-items:start;text-align:left}.manager-metrics{grid-template-columns:repeat(2,1fr)}}
button:disabled{cursor:default;opacity:.42;transform:none!important;box-shadow:none!important}


/* v14.1 — searchable project picker */
.project-picker{position:relative}
.project-searchbox{position:relative;display:flex;align-items:center}
.project-searchbox input{width:100%;padding-left:34px;padding-right:38px;background:#fff}
.project-searchbox input:focus{border-color:#6db9ac;box-shadow:0 0 0 3px rgba(29,139,122,.11);outline:none}
.project-search-icon{position:absolute;left:11px;top:50%;transform:translateY(-50%);z-index:1;color:#60778a;font-size:18px;pointer-events:none}
.project-clear{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:27px;height:27px;border:0;border-radius:8px;background:#eef3f5;color:#647586;font-size:17px;line-height:1;display:grid;place-items:center}
.project-clear:hover{background:#e4ebef;color:#1b3445}
.project-results{position:absolute;left:0;right:0;top:43px;z-index:80;max-height:410px;overflow:auto;background:#fff;border:1px solid #cfdde4;border-radius:12px;box-shadow:0 18px 40px rgba(31,50,66,.18);padding:5px}
.project-result{appearance:none;width:100%;display:grid;gap:2px;text-align:left;padding:9px 10px;border:0;border-bottom:1px solid #edf1f4;background:#fff;color:inherit;border-radius:8px}
.project-result:last-of-type{border-bottom:0}.project-result:hover{background:#f0f9f7}
.project-result-title{font-size:12px;font-weight:820;color:#173b43}.project-result-address{font-size:10.5px;color:#405466}.project-result-meta{font-size:9.5px;color:#7a8794}
.project-search-help{display:grid;gap:3px;padding:13px 12px;color:#657687}.project-search-help b{font-size:11.5px;color:#30485a}.project-search-help span{font-size:10.5px;line-height:1.4}
.project-result-more{padding:8px 10px;font-size:9.5px;color:#71808d;background:#f8fafb;border-radius:7px;margin-top:3px}


/* v14.2 — drill-down по контрольным показателям */
.kpi-link{appearance:none;width:100%;text-align:left;color:inherit;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;background:rgba(255,255,255,.97)}
.kpi-link:hover{transform:translateY(-2px);border-color:#bfd5d1;box-shadow:0 10px 25px rgba(36,56,76,.11)}
.kpi-link:focus-visible{outline:3px solid rgba(27,142,124,.22);outline-offset:2px;border-color:#54a99b}
.kpi-link .kcontent{min-width:0;flex:1}
.kgo{position:absolute;right:11px;bottom:8px;font-size:9px;font-weight:780;color:#738293;opacity:.72;transition:.16s ease}
.kpi-link:hover .kgo{color:var(--teal);opacity:1;transform:translateX(2px)}
.drill-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 9px;padding:8px 10px;border:1px solid #cfe6e1;border-radius:11px;background:linear-gradient(180deg,#f3fbf9,#f8fcfb);box-shadow:0 2px 8px rgba(30,80,72,.035)}
.drill-banner>div{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.drill-banner b{font-size:11.5px;color:#174e48}.drill-banner span{font-size:9.5px;color:#6c7f7b}.drill-dot{width:8px;height:8px;border-radius:50%;background:#1a9a86;box-shadow:0 0 0 3px rgba(26,154,134,.11)}
.calendar-controls #calendarTiming{min-width:155px}
@media(max-width:650px){.drill-banner{align-items:flex-start;flex-direction:column}.kgo{right:9px}}

/* v14.4 — сквозные фильтры по услугам + явная связь задач с проектами */
.focusbar{grid-template-columns:auto minmax(190px,280px) minmax(170px,220px) minmax(240px,1fr) auto auto}
#globalManager,#globalServiceType{min-width:0}
.service-facets{display:flex;gap:7px;align-items:center;overflow-x:auto;padding:1px 1px 9px;margin-top:-2px;margin-bottom:3px;scrollbar-width:thin}
.service-chip{appearance:none;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;border:1px solid #d8e2e8;background:rgba(255,255,255,.94);color:#415568;border-radius:999px;padding:7px 10px;min-height:34px;box-shadow:0 1px 2px rgba(25,47,65,.035);font-size:10.5px;font-weight:720;transition:.14s ease}
.service-chip b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#eef3f5;color:#566b7c;font-size:9.5px}
.service-chip:hover{border-color:#a9cec7;background:#f7fcfb;transform:translateY(-1px)}
.service-chip.active{background:linear-gradient(135deg,#15364a,#167365);border-color:transparent;color:#fff;box-shadow:0 5px 14px rgba(23,91,82,.17)}
.service-chip.active b{background:rgba(255,255,255,.16);color:#fff}
.service-subject{margin-top:4px;max-width:260px;line-height:1.25;color:#607082}
.task-application{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:5px}.task-application .badge{font-size:8.5px;padding:3px 6px}.task-application span{color:var(--muted)}

.relation-section{border:1px solid #cddbe7;background:linear-gradient(180deg,#f8fbfd,#f2f8fb);border-radius:16px;padding:12px;margin-top:2px}.relation-title{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px;color:#173b52}.relation-title>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#e1f2f4;color:#087e80;font-size:18px;font-weight:800}.relation-project{margin-bottom:10px}
@media(max-width:1320px){.focusbar{grid-template-columns:auto minmax(180px,1fr) minmax(160px,220px) auto auto}.focus-help{display:none}}
@media(max-width:980px){.focusbar{grid-template-columns:1fr 1fr}.focus-title,.focus-help{grid-column:1/-1}}
@media(max-width:650px){.focusbar{grid-template-columns:1fr}.focus-title,.focus-help{grid-column:auto}.service-facets{margin-left:-1px;margin-right:-1px}.service-chip{font-size:10px}}

/* v15 — управленческая аналитика: aging, workload, service flow, throughput */
.analytics-title{margin-bottom:8px}
.analytics-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;padding:8px 10px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.92);box-shadow:0 2px 8px rgba(31,50,66,.035)}
.analytics-subtabs{display:flex;gap:5px;flex-wrap:wrap}.ana-sub{appearance:none;border:1px solid #d9e3e8;background:#f8fafb;color:#405569;border-radius:9px;padding:8px 12px;font-size:10.5px;font-weight:780;cursor:pointer}.ana-sub:hover{background:#f0f8f6;border-color:#bfd9d4}.ana-sub.active{background:#12384a;border-color:#12384a;color:#fff;box-shadow:0 4px 12px rgba(18,56,74,.14)}
.period-select{display:flex;align-items:center;gap:7px;font-size:9.5px;font-weight:760;color:var(--muted);white-space:nowrap}.period-select select{min-width:120px}
.ana-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:10px}.ana-kpi{appearance:none;text-align:left;min-height:105px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.97);padding:12px;display:flex;flex-direction:column;justify-content:center;gap:3px;color:inherit}.ana-kpi[data-ana-action]{cursor:pointer;transition:.15s ease}.ana-kpi[data-ana-action]:hover{transform:translateY(-2px);border-color:#b9d7d1;box-shadow:0 10px 24px rgba(34,55,72,.09)}.ana-kpi span{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#738294;font-weight:800}.ana-kpi b{font-size:25px;letter-spacing:-.035em;color:#173244}.ana-kpi small{font-size:9.5px;color:#7b8997}.ana-kpi.danger{background:linear-gradient(180deg,#fff9f8,#fff);border-color:#f1d3cf}.ana-kpi.danger b{color:#c34136}.ana-kpi.purple{background:linear-gradient(180deg,#faf8ff,#fff);border-color:#e1d9f3}.ana-kpi.purple b{color:#6650bb}.ana-kpi.amber{background:linear-gradient(180deg,#fffbf2,#fff);border-color:#efdfb9}.ana-kpi.amber b{color:#a86a09}
.analytics-grid{display:grid;gap:10px;margin-bottom:10px}.analytics-grid.two{grid-template-columns:1fr 1fr}.ana-panel{border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.97);box-shadow:0 3px 12px rgba(28,49,65,.035);overflow:hidden}.ana-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid #e9eef1}.ana-head>div:first-child{display:grid;gap:2px}.ana-head b{font-size:12.5px;color:#20384a}.ana-head span{font-size:9.5px;color:var(--muted);line-height:1.35}.ana-bars{padding:11px 14px;display:grid;gap:6px}.ana-bar-row{appearance:none;border:0;background:transparent;width:100%;display:grid;grid-template-columns:90px minmax(100px,1fr) 42px;align-items:center;gap:9px;padding:5px 2px;text-align:left;color:inherit;border-radius:8px}.ana-bar-row[data-ana-app],.ana-bar-row[data-ana-service]{cursor:pointer}.ana-bar-row[data-ana-app]:hover,.ana-bar-row[data-ana-service]:hover{background:#f5faf9}.ana-bar-label{font-size:10.5px;font-weight:720;color:#425568}.ana-bar-row>b{text-align:right;font-size:11px}.ana-track{height:9px;background:#edf2f4;border-radius:99px;overflow:hidden;display:block}.ana-fill{display:block;height:100%;border-radius:99px;background:#4d91d9}.ana-fill.blue{background:#4d91d9}.ana-fill.red{background:#dd6459}.ana-fill.amber{background:#d9a13e}.ana-fill.green{background:#39a680}.ana-fill.purple{background:#7867cf}
.quality-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:12px}.quality-grid>*{appearance:none;border:1px solid #e3eaee;background:#f9fbfc;border-radius:10px;padding:10px;text-align:left;color:inherit;display:grid;gap:2px}.quality-grid button{cursor:pointer}.quality-grid button:hover{border-color:#bfd8d2;background:#f4faf8}.quality-grid b{font-size:19px;color:#203c4d}.quality-grid span{font-size:9.5px;line-height:1.25;color:#738293}
.heat-wrap,.ana-table-wrap{overflow:auto}.heat-table,.ana-table{width:100%;border-collapse:collapse}.heat-table th,.heat-table td,.ana-table th,.ana-table td{padding:9px 10px;border-bottom:1px solid #edf1f3;font-size:10px;text-align:left;white-space:nowrap}.heat-table th,.ana-table th{font-size:8.5px;text-transform:uppercase;letter-spacing:.035em;color:#788694;background:#fafcfd;position:sticky;top:0}.heat-table tbody tr,.ana-table tbody tr{cursor:pointer}.heat-table tbody tr:hover,.ana-table tbody tr:hover{background:#f6faf9}.heat{text-align:center!important;font-weight:800;border-left:3px solid transparent}.heat.hot{background:#fff0ee;color:#bd3f35;border-left-color:#db6258}.heat.warm{background:#fff8e9;color:#99620d;border-left-color:#e0a644}.heat.soft{background:#f4f0ff;color:#6552a7;border-left-color:#8b77cf}.num-danger{color:#c6473c;font-weight:850}.ana-table td:first-child span{display:block;margin-top:2px;font-size:8.5px;color:#7b8997}.ana-table td:first-child{min-width:155px}
.funnel-list{padding:10px 13px;display:grid;gap:7px}.funnel-row{appearance:none;border:0;background:transparent;display:grid;grid-template-columns:100px minmax(100px,1fr) 180px;align-items:center;gap:10px;text-align:left;color:inherit;padding:5px;border-radius:8px;cursor:pointer}.funnel-row:hover{background:#f5faf9}.funnel-row>b{font-size:10.5px}.funnel-row>span{font-size:9px;color:var(--muted)}.stack{height:11px;border-radius:99px;background:#edf2f4;overflow:hidden;display:flex}.stack i{display:block;height:100%}.stack .active{background:#4e91d8}.stack .waiting{background:#d7a03d}.stack .done{background:#3ba27c}
.month-bars{padding:11px 13px;display:grid;gap:8px}.month-row{display:grid;grid-template-columns:60px repeat(3,1fr);gap:8px;align-items:center}.month-row>b{font-size:9.5px;color:#526577}.month-row>div{display:grid;grid-template-columns:70px 1fr;gap:4px;align-items:center}.month-row span{font-size:8.5px;color:#72808e}.mbar{height:8px;border-radius:99px;display:block;min-width:1px}.mbar.incoming{background:#4d91d9}.mbar.outgoing{background:#39a680}.mbar.task{background:#7867cf}
.trend-svg{width:100%;height:230px;padding:8px 10px 4px;overflow:visible}.trend-svg text{font-size:8px;fill:#80909c}.gridline{stroke:#dfe7eb;stroke-width:1}.trend-line{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.trend-line.apps{stroke:#4d91d9}.trend-line.overdue{stroke:#d95850}.trend-line.tasks{stroke:#7867cf}.trend-dot.apps{fill:#4d91d9}.trend-legend{display:flex;gap:10px;flex-wrap:wrap}.trend-legend span{font-size:8.8px!important;font-weight:760}.trend-legend .apps{color:#397fc4}.trend-legend .overdue{color:#c4453d}.trend-legend .tasks{color:#6755be}.analytics-empty{padding:45px 20px;text-align:center;font-size:10.5px;color:#768695}.analytics-note{padding:10px 12px;border:1px solid #d8e7e3;border-radius:12px;background:#f5faf9;color:#516a68;font-size:9.5px;line-height:1.45}
@media(max-width:1450px){.ana-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1080px){.analytics-grid.two{grid-template-columns:1fr}.analytics-toolbar{align-items:flex-start;flex-direction:column}.quality-grid{grid-template-columns:repeat(2,1fr)}.month-row{grid-template-columns:55px 1fr}.month-row>div{grid-column:2}.funnel-row{grid-template-columns:90px 1fr}.funnel-row>span{grid-column:2}}
@media(max-width:650px){.ana-kpis{grid-template-columns:1fr 1fr}.quality-grid{grid-template-columns:1fr}.analytics-subtabs{width:100%}.ana-sub{flex:1}.period-select{width:100%;justify-content:space-between}.ana-bar-row{grid-template-columns:72px minmax(80px,1fr) 34px}.trend-svg{height:190px}}
.timeline-list{display:grid;gap:0;margin-top:7px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.timeline-item{display:grid;grid-template-columns:18px 1fr;gap:8px;padding:8px 10px;border-bottom:1px solid #edf1f4}.timeline-item:last-child{border-bottom:0}.timeline-item i{width:8px;height:8px;border-radius:50%;background:#3ba188;margin-top:4px;box-shadow:0 0 0 3px #e8f6f2}.timeline-item div{display:grid;gap:2px}.timeline-item b{font-size:10.5px;color:#314759}.timeline-item span{font-size:9px;color:#7a8896}


/* v15.1 — быстрый поиск, оперативный контроль сроков */
.attention-btn{display:inline-flex!important;align-items:center;gap:6px}.attention-btn span{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:rgba(255,255,255,.18);font-size:9px;font-weight:850}.attention-btn.has-alert{border-color:rgba(255,185,174,.45);box-shadow:inset 0 0 0 1px rgba(230,92,76,.16)}.attention-btn.has-alert span{background:#fff0ed;color:#bd3e32}
.attention-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:8px 0 14px}.attention-summary>div{border:1px solid var(--line);border-radius:12px;padding:11px;background:#f8fafb}.attention-summary b{display:block;font-size:22px;color:#17384a}.attention-summary span{font-size:9px;color:var(--muted);text-transform:uppercase;font-weight:760}.attention-group{border:1px solid var(--line);border-radius:13px;overflow:hidden;margin:9px 0;background:#fff}.attention-group-head{display:flex;justify-content:space-between;align-items:center;padding:9px 11px;background:#f8fafb;border-bottom:1px solid #edf1f3}.attention-group-head b{font-size:11px}.attention-group-head span{display:grid;place-items:center;min-width:23px;height:23px;border-radius:99px;background:#eaf0f3;font-size:9px;font-weight:850}.attention-row{appearance:none;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;border:0;border-bottom:1px solid #edf1f3;background:#fff;padding:10px 11px;color:inherit;cursor:pointer}.attention-row:last-child{border-bottom:0}.attention-row:hover{background:#f5faf9}.attention-row>div:first-child{display:grid;gap:2px}.attention-row b{font-size:11.5px;color:#294152}.attention-row small{font-size:9.5px;color:#748391}.attention-kind{font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#277e75}.attention-empty{padding:22px 14px;text-align:center;color:#7a8997;font-size:10px}
.global-search input{width:100%;font-size:15px;padding:13px 14px;border-radius:12px;border:1px solid #cfdbe2;box-shadow:0 3px 12px rgba(30,50,66,.05)}.global-search input:focus{outline:3px solid rgba(31,143,126,.12);border-color:#70b7ab}.global-search-results{margin-top:8px;border:1px solid var(--line);border-radius:12px;overflow:hidden;max-height:65vh;overflow-y:auto}.global-result{appearance:none;width:100%;display:grid;gap:2px;text-align:left;border:0;border-bottom:1px solid #edf1f3;background:#fff;padding:10px 12px;color:inherit;cursor:pointer}.global-result:last-child{border-bottom:0}.global-result:hover{background:#f3f9f8}.global-result span{font-size:8px;text-transform:uppercase;font-weight:820;color:#248375;letter-spacing:.045em}.global-result b{font-size:11.5px;color:#263f51}.global-result small{font-size:9.5px;color:#758391}
@media(max-width:650px){.attention-summary{grid-template-columns:1fr}.userbox .attention-btn,.userbox #globalSearchBtn{display:none!important}}

/* v16 — операционная автоматизация: уведомления, сохранённые виды, недельный отчёт */
.saved-view-list{display:grid;gap:7px}.saved-view-row{display:grid;grid-template-columns:1fr 38px;gap:6px;align-items:stretch}.saved-view-open{appearance:none;border:1px solid var(--line);border-radius:11px;background:#fff;padding:10px 12px;text-align:left;display:grid;gap:2px;color:inherit}.saved-view-open:hover{background:#f4faf8;border-color:#bcd8d2}.saved-view-open span{font-size:8px;text-transform:uppercase;color:var(--teal);font-weight:820;letter-spacing:.05em}.saved-view-open b{font-size:11.5px}.saved-view-open small{font-size:9px;color:var(--muted)}.saved-view-del{border:1px solid #f0d8d4;border-radius:10px;background:#fff8f7;color:#b42318;font-size:18px}.saved-view-del:hover{background:#fff0ee}
.weekly-report{display:grid;gap:12px}.report-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.report-kpis>div{border:1px solid var(--line);border-radius:12px;padding:11px;background:#f8fafb}.report-kpis>div.danger{background:#fff6f4;border-color:#f0d4cf}.report-kpis b{display:block;font-size:23px;color:#19394c}.report-kpis .danger b{color:#b42318}.report-kpis span{font-size:8.5px;color:var(--muted);text-transform:uppercase;font-weight:780}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.weekly-report section{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.weekly-report section h3{margin:0;padding:10px 11px;border-bottom:1px solid var(--line);font-size:11px;background:#f8fafb}.mini-report{min-width:0!important;width:100%;border-collapse:collapse}.mini-report th,.mini-report td{position:static;padding:7px 8px;font-size:9px;border-bottom:1px solid #edf1f3;white-space:nowrap}.mini-report th{background:#fbfcfd;color:#738291;font-size:8px}.report-overdue{display:grid}.report-overdue>div{display:grid;gap:2px;padding:8px 10px;border-bottom:1px solid #edf1f3}.report-overdue>div:last-child{border-bottom:0}.report-overdue b{font-size:10px;color:#344b5d}.report-overdue span{font-size:8.8px;color:var(--muted)}.report-actions{margin-top:12px}
@media(max-width:900px){.report-kpis{grid-template-columns:1fr 1fr}.report-grid{grid-template-columns:1fr}}
@media(max-width:650px){.report-kpis{grid-template-columns:1fr}.userbox #savedViewsBtn,.userbox #weeklyReportBtn{display:none!important}}

/* v16.1 Telegram */
.telegram-card{display:grid;gap:11px}.telegram-card>label:not(.tg-toggle){font-size:10px;font-weight:800;color:#334b5c;margin-top:3px}.telegram-card input[type="text"],.telegram-card input[type="password"],.telegram-card input:not([type]){width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:11px;padding:11px 12px;background:#fff;color:var(--text);font:inherit}.tg-status{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#f8fafb;font-size:10px}.status-dot{width:9px;height:9px;border-radius:50%;background:#c5cbd1;box-shadow:0 0 0 3px #edf0f2}.status-dot.ok{background:#2e9b6f;box-shadow:0 0 0 3px #e1f3eb}.tg-toggle{display:flex!important;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fbfcfd;cursor:pointer}.tg-toggle input{width:auto!important;margin-top:3px}.tg-toggle span{display:grid;gap:3px}.tg-toggle b{font-size:10px}.tg-toggle small{font-size:9px;color:var(--muted)}.tg-chat-list{display:grid;gap:6px;margin-top:6px}.tg-chat{display:grid;gap:3px;text-align:left;border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 10px;cursor:pointer}.tg-chat:hover{border-color:#9bb4c6;background:#f7fafc}.tg-chat b{font-size:10px;color:#253d4e}.tg-chat span{font-size:8.5px;color:var(--muted)}.tg-actions{margin-top:-2px}.tg-error{border:1px solid #f0d4cf;background:#fff6f4;color:#9a2b23;border-radius:10px;padding:9px 10px;font-size:9px}
/* v16.2 Telegram diagnostics */
.tg-diag{display:grid;gap:7px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fbfcfd}.tg-diag-row{display:flex;justify-content:space-between;gap:12px;padding:8px 9px;border-radius:9px;font-size:9px;background:#fff;border:1px solid #e6ebef}.tg-diag-row b{font-size:9px}.tg-diag-row span{color:var(--muted);text-align:right;overflow-wrap:anywhere}.tg-diag-row.ok{border-color:#cce9dc;background:#f6fcf9}.tg-diag-row.bad{border-color:#f1cbc5;background:#fff7f5}.tg-diag-row.warn{border-color:#f1dfb5;background:#fffaf0}.tg-diag-note{font-size:9px;line-height:1.45;color:#405565;padding:8px 9px;border-radius:9px;background:#f3f7fa}.btn.danger{border-color:#e5b4ad;color:#a4332a;background:#fff7f5}

/* v16.6 Telegram subscribers */
.telegram-team-card{display:grid;gap:12px;margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#ffffff,#f8fbfd)}
.telegram-team-card h3{margin:2px 0 3px;font-size:15px}.telegram-team-card .section-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.tg-howto,.tg-commands{font-size:9.5px;line-height:1.5;padding:9px 10px;border-radius:10px;background:#f2f7fa;color:#334b5c}.tg-commands{background:#f7f6fb}.tg-howto code,.tg-commands code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#fff;border:1px solid #dfe8ee;border-radius:5px;padding:1px 4px}.tg-subs-list{display:grid;gap:8px}.tg-sub{display:grid;gap:9px;padding:11px;border:1px solid var(--line);border-radius:12px;background:#fff}.tg-sub.pending{border-color:#ecd9aa;background:#fffdf7}.tg-sub.approved{border-color:#d3e8df}.tg-sub-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.tg-sub-head>div{display:grid;gap:2px;min-width:0}.tg-sub-head b{font-size:10px;color:#213847}.tg-sub-head span{font-size:8.5px;color:#526d7f}.tg-sub-head small{font-size:8.5px;color:var(--muted);overflow-wrap:anywhere}.tg-sub-controls{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:10px;align-items:end}.tg-sub-controls>label:first-child{display:grid;gap:5px}.tg-sub-controls label>span{font-size:8.5px;font-weight:700;color:#405565}.tg-sub-controls select{width:100%;border:1px solid var(--line);border-radius:9px;padding:8px 9px;background:#fff;color:var(--text);font:inherit}.tg-mini-toggle{display:flex;align-items:center;gap:6px;font-size:9px;padding:8px 9px;border:1px solid var(--line);border-radius:9px;background:#fbfcfd;white-space:nowrap}.tg-mini-toggle input{width:auto!important}.btn.small.danger{border-color:#e5b4ad;color:#a4332a;background:#fff7f5}
@media(max-width:850px){.tg-sub-controls{grid-template-columns:1fr}.telegram-team-card .section-head{display:grid}.tg-sub-head{display:grid}.tg-sub-head .badge{justify-self:start}}

/* v16.7 — рассмотренные заявки и итоги рассмотрения */
.status-sub{margin-top:5px}.status-sub .badge{font-size:10px}
.substatus-disabled{opacity:.55}.substatus-disabled select{background:#f3f5f6;color:#8a9299}


/* v16.8 — motion-friendly construction hero */
.construction-hero{position:relative;display:grid;grid-template-columns:minmax(320px,1.08fr) minmax(320px,.92fr);gap:18px;align-items:stretch;margin:4px 0 14px;padding:20px 22px;border:1px solid rgba(17,38,59,.08);border-radius:22px;background:linear-gradient(135deg,#ffffff 0%,#f7fbfc 46%,#edf5f7 100%);box-shadow:0 18px 40px rgba(36,56,76,.08);overflow:hidden}
.construction-hero:before{content:"";position:absolute;inset:auto auto -120px -80px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(17,103,95,.10),transparent 70%);pointer-events:none}.construction-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.55),transparent 35%,transparent 65%,rgba(17,38,59,.03));pointer-events:none}
.construction-copy{position:relative;z-index:2;display:grid;align-content:center;gap:10px;min-width:0}.construction-copy h3{margin:0;font-size:28px;line-height:1.05;letter-spacing:-.045em;color:#17384a}.construction-copy p{margin:0;font-size:13px;line-height:1.6;color:#536578;max-width:62ch}.construction-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.construction-tag{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid #dce7ec;border-radius:999px;background:#fff;font-size:11px;font-weight:700;color:#294557;box-shadow:0 2px 8px rgba(23,56,74,.04)}.construction-tag b{font-size:12px;color:#0e6f64}
.construction-scene{position:relative;min-height:230px;border-radius:18px;background:linear-gradient(180deg,#eaf4fb 0%,#f6fbfd 48%,#e2ebef 100%);border:1px solid rgba(147,175,195,.28);overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
.scene-sun{position:absolute;right:26px;top:18px;width:60px;height:60px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fffef2 0%,#ffe18f 42%,rgba(255,225,143,.18) 62%,rgba(255,225,143,0) 74%);opacity:.9}
.scene-cloud,.scene-cloud:before,.scene-cloud:after{position:absolute;background:rgba(255,255,255,.85);border-radius:999px}.scene-cloud{top:32px;left:38px;width:70px;height:24px;filter:drop-shadow(0 8px 10px rgba(42,103,151,.08));animation:krtCloud 16s linear infinite}.scene-cloud:before,.scene-cloud:after{content:""}.scene-cloud:before{width:30px;height:30px;left:10px;top:-14px}.scene-cloud:after{width:26px;height:26px;right:12px;top:-10px}.scene-cloud.c2{top:68px;left:130px;transform:scale(.8);opacity:.72;animation-duration:20s;animation-direction:reverse}
.scene-ground{position:absolute;left:0;right:0;bottom:0;height:52px;background:linear-gradient(180deg,#ccd8df 0%,#becbd4 100%)}.scene-ground:before{content:"";position:absolute;left:0;right:0;top:0;height:14px;background:repeating-linear-gradient(90deg,#90a3af 0 18px,#a9bac5 18px 36px);opacity:.45}
.scene-road{position:absolute;left:0;right:0;bottom:16px;height:7px;background:linear-gradient(90deg,transparent 0 7%,rgba(255,255,255,.7) 7% 12%,transparent 12% 20%,rgba(255,255,255,.7) 20% 25%,transparent 25% 33%,rgba(255,255,255,.7) 33% 38%,transparent 38% 46%,rgba(255,255,255,.7) 46% 51%,transparent 51% 59%,rgba(255,255,255,.7) 59% 64%,transparent 64% 72%,rgba(255,255,255,.7) 72% 77%,transparent 77% 100%);opacity:.7}
.skyline{position:absolute;left:18px;right:18px;bottom:34px;height:160px}
.building{position:absolute;bottom:0;width:74px;border-radius:10px 10px 0 0;background:linear-gradient(180deg,#dbe5ec 0%,#b8c8d3 100%);box-shadow:0 10px 20px rgba(38,68,87,.12);transform-origin:bottom center;animation:krtRise 1.6s cubic-bezier(.22,1,.36,1) both, krtFloat 7s ease-in-out infinite 1.8s}
.building:before{content:"";position:absolute;left:8px;right:8px;top:14px;bottom:12px;border-radius:6px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.92) 0 8px,transparent 8px 14px),repeating-linear-gradient(180deg,rgba(17,38,59,.08) 0 10px,transparent 10px 18px)}
.building:after{content:"";position:absolute;left:10px;right:10px;top:10px;height:4px;border-radius:999px;background:rgba(255,255,255,.75)}
.building .scaffold{position:absolute;inset:-4px -4px 0 -4px;border:2px dashed rgba(27,38,52,.18);border-bottom:0;border-radius:12px 12px 0 0;opacity:.7;animation:krtPulse 3.6s ease-in-out infinite}
.building .lift{position:absolute;right:-7px;bottom:18px;width:12px;height:26px;border-radius:7px;background:linear-gradient(180deg,#ffd36c,#e6a832);box-shadow:0 2px 8px rgba(135,96,20,.25);animation:krtLift 4.8s ease-in-out infinite}
.building.b1{left:8px;height:92px;animation-delay:.08s,.8s}.building.b2{left:82px;height:134px;animation-delay:.18s,1s}.building.b3{left:170px;height:110px;animation-delay:.28s,1.15s}.building.b4{left:252px;height:148px;animation-delay:.38s,1.25s}.building.b5{left:340px;height:100px;animation-delay:.48s,1.35s}
.building.b2,.building.b4{background:linear-gradient(180deg,#d4e0e9 0%,#afc0cc 100%)}.building.b3{background:linear-gradient(180deg,#cfdde7 0%,#a9bbc7 100%)}
.crane{position:absolute;right:30px;bottom:42px;width:170px;height:172px;z-index:3;transform:translateZ(0)}.crane-tower{position:absolute;right:36px;bottom:0;width:16px;height:136px;border-radius:10px 10px 0 0;background:repeating-linear-gradient(180deg,#f0b342 0 12px,#d78e17 12px 24px);box-shadow:0 8px 18px rgba(119,86,25,.18)}.crane-cabin{position:absolute;right:24px;bottom:126px;width:38px;height:18px;border-radius:6px;background:linear-gradient(180deg,#fbcd6d,#ebac34)}
.crane-arm-wrap{position:absolute;right:44px;bottom:133px;width:150px;height:14px;transform-origin:112px 7px;animation:krtCrane 16s ease-in-out infinite}.crane-arm{position:absolute;left:0;top:5px;width:132px;height:4px;border-radius:999px;background:linear-gradient(90deg,#efb74c,#da8f17)}.crane-counter{position:absolute;left:120px;top:4px;width:28px;height:6px;border-radius:999px;background:#c67d0d}.crane-cable{position:absolute;left:63px;top:9px;width:2px;height:58px;background:rgba(38,58,70,.45);transform-origin:top center;animation:krtCable 4.8s ease-in-out infinite}.crane-hook{position:absolute;left:56px;top:64px;width:16px;height:18px;border:3px solid #db9520;border-top-width:0;border-radius:0 0 12px 12px;box-sizing:border-box;background:transparent;animation:krtCable 4.8s ease-in-out infinite}
.scene-caption{position:absolute;left:16px;right:16px;top:14px;display:flex;justify-content:space-between;gap:10px;align-items:flex-start;z-index:2}.scene-caption .badge{box-shadow:0 4px 12px rgba(17,38,59,.06)}.scene-caption .small{max-width:180px;text-align:right}
.scene-pill{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.88);border:1px solid rgba(17,38,59,.08);font-size:10px;font-weight:700;color:#264459}
@keyframes krtRise{0%{transform:translateY(24px) scaleY(.82);opacity:.2}100%{transform:translateY(0) scaleY(1);opacity:1}}
@keyframes krtFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes krtLift{0%,100%{transform:translateY(0);opacity:.95}50%{transform:translateY(-48px);opacity:1}}
@keyframes krtCrane{0%,100%{transform:rotate(-2.2deg)}50%{transform:rotate(2.2deg)}}
@keyframes krtCable{0%,100%{transform:translateY(0)}50%{transform:translateY(12px)}}
@keyframes krtCloud{0%{transform:translateX(0)}50%{transform:translateX(16px)}100%{transform:translateX(0)}}
@keyframes krtPulse{0%,100%{opacity:.55}50%{opacity:.9}}
@media (prefers-reduced-motion: reduce){.construction-scene *, .construction-hero *{animation:none!important;transition:none!important}.construction-hero{scroll-behavior:auto}.building,.crane-arm-wrap,.building .lift,.scene-cloud{transform:none!important;opacity:1!important}}
@media(max-width:1080px){.construction-hero{grid-template-columns:1fr}.construction-copy p{max-width:none}}
@media(max-width:650px){.construction-hero{padding:16px}.construction-copy h3{font-size:22px}.construction-tags{gap:6px}.construction-tag{font-size:10px;padding:7px 9px}.construction-scene{min-height:210px}.crane{right:10px;transform:scale(.92)}.skyline{left:10px;right:10px}}
.review-outcomes{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:12px 14px}.review-outcomes button,.review-outcomes div{border:1px solid var(--line);border-radius:12px;background:#fff;padding:11px 12px;text-align:left}.review-outcomes b{display:block;font-size:22px;color:#183b4e}.review-outcomes span{font-size:9px;color:var(--muted);text-transform:uppercase;font-weight:760}.review-outcomes small{display:block;margin-top:4px;font-size:9px;color:#6d7a88}
@media(max-width:900px){.review-outcomes{grid-template-columns:1fr 1fr}}@media(max-width:560px){.review-outcomes{grid-template-columns:1fr}}


/* v16.9 — animated construction scene moved into the top-right hero */
.hero-art{display:none!important}
.hero{min-height:124px;padding:18px 20px;align-items:flex-start}
.brand{align-self:center;z-index:4;min-width:330px}
.userbox{margin-left:auto;max-width:min(1020px,72%);z-index:5;align-content:flex-start}
.hero-construction{position:absolute;right:16px;bottom:0;width:610px;height:118px;z-index:1;pointer-events:none;overflow:visible;opacity:.34;filter:drop-shadow(0 10px 14px rgba(0,0,0,.12))}
.hero-construction:before{content:"";position:absolute;right:0;bottom:0;width:100%;height:100%;background:radial-gradient(circle at 76% 26%,rgba(255,217,119,.20),transparent 26%),linear-gradient(90deg,transparent 0 12%,rgba(255,255,255,.035) 12% 12.4%,transparent 12.4% 100%);pointer-events:none}
.hc-ground{position:absolute;left:0;right:0;bottom:0;height:13px;border-radius:7px 7px 0 0;background:linear-gradient(180deg,rgba(173,199,206,.45),rgba(107,154,160,.18))}
.hc-city{position:absolute;left:12px;right:104px;bottom:12px;height:92px}
.hc-building{position:absolute;bottom:0;display:block;width:48px;border:1px solid rgba(203,238,241,.48);border-bottom:0;border-radius:5px 5px 0 0;background:linear-gradient(180deg,rgba(207,235,238,.28),rgba(116,190,188,.16));box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);transform-origin:bottom center;animation:hcRise 1.15s cubic-bezier(.22,1,.36,1) both,hcBreathe 6s ease-in-out 1.2s infinite}
.hc-building:before{content:"";position:absolute;left:7px;right:7px;top:9px;bottom:8px;background:repeating-linear-gradient(90deg,rgba(255,236,168,.55) 0 4px,transparent 4px 10px),repeating-linear-gradient(180deg,rgba(197,233,237,.15) 0 7px,transparent 7px 14px);opacity:.8}
.hc-building:after{content:"";position:absolute;left:-4px;right:-4px;top:-4px;bottom:0;border:1px dashed rgba(255,255,255,.18);border-bottom:0;border-radius:7px 7px 0 0;animation:hcScaffold 3.4s ease-in-out infinite}
.hb1{left:0;height:51px;animation-delay:.05s,1.2s}.hb2{left:58px;height:79px;animation-delay:.12s,1.32s}.hb3{left:119px;height:61px;animation-delay:.19s,1.44s}.hb4{left:181px;height:91px;animation-delay:.26s,1.56s}.hb5{left:246px;height:67px;animation-delay:.33s,1.68s}
.hc-crane{position:absolute;right:12px;bottom:11px;width:232px;height:111px}
.hc-tower{position:absolute;right:37px;bottom:0;width:10px;height:91px;border-radius:3px 3px 0 0;background:repeating-linear-gradient(180deg,#f4b544 0 8px,#d88c17 8px 16px);box-shadow:0 0 0 1px rgba(255,224,147,.22)}
.hc-cabin{position:absolute;right:29px;bottom:82px;width:26px;height:12px;border-radius:3px;background:linear-gradient(180deg,#ffd06c,#e39a21)}
.hc-arm-wrap{position:absolute;right:41px;bottom:88px;width:188px;height:14px;transform-origin:150px 7px;animation:hcCraneSwing 13s ease-in-out infinite}
.hc-arm{position:absolute;left:0;top:6px;width:166px;height:3px;border-radius:99px;background:linear-gradient(90deg,#f7c65a,#df941e)}
.hc-arm:before{content:"";position:absolute;inset:-4px 0 -4px 0;background:repeating-linear-gradient(135deg,transparent 0 9px,rgba(255,226,153,.35) 9px 11px,transparent 11px 20px);clip-path:polygon(0 45%,100% 45%,100% 62%,0 62%)}
.hc-counter{position:absolute;right:0;top:4px;width:26px;height:7px;border-radius:3px;background:#ca7f13}
.hc-cable{position:absolute;left:68px;top:8px;width:1px;height:43px;background:rgba(219,239,241,.58);transform-origin:top center;animation:hcHook 4.6s ease-in-out infinite}
.hc-hook{position:absolute;left:62px;top:49px;width:13px;height:14px;border:2px solid #ffc95a;border-top:0;border-radius:0 0 9px 9px;animation:hcHook 4.6s ease-in-out infinite}
@keyframes hcRise{0%{transform:translateY(15px) scaleY(.80);opacity:.05}100%{transform:translateY(0) scaleY(1);opacity:1}}
@keyframes hcBreathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
@keyframes hcCraneSwing{0%,100%{transform:rotate(-2.3deg)}50%{transform:rotate(2.3deg)}}
@keyframes hcHook{0%,100%{transform:translateY(0)}50%{transform:translateY(10px)}}
@keyframes hcScaffold{0%,100%{opacity:.30}50%{opacity:.70}}
@media(prefers-reduced-motion:reduce){.hero-construction *{animation:none!important;transition:none!important;transform:none!important}.hero-construction{opacity:.28}}
@media(max-width:1350px){.hero-construction{width:500px;opacity:.23}.userbox{max-width:75%}.hb5{display:none}}
@media(max-width:1080px){.hero{min-height:140px}.brand{min-width:270px}.hero-construction{right:0;width:420px;opacity:.18}.userbox{max-width:68%}}
@media(max-width:820px){.hero-construction{display:none}.userbox{max-width:100%}.hero{align-items:center;flex-direction:column}.brand{align-self:flex-start}}
/* v16.9: old large dashboard scene is retired completely */
.construction-hero{display:none!important}


/* v17.0 — hero aligned to approved render */
.construction-hero{display:none!important}
.hero.hero-premium{position:relative;display:grid;grid-template-columns:minmax(320px,.9fr) minmax(520px,1.1fr);gap:26px;align-items:stretch;min-height:260px;padding:26px 28px 24px;border-radius:28px;background:radial-gradient(circle at 72% 22%,rgba(255,223,138,.12),transparent 11%),linear-gradient(90deg,#0d2b42 0%,#0f3450 38%,#124f6d 100%);overflow:hidden;box-shadow:0 22px 52px rgba(15,36,56,.22)}
.hero.hero-premium:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(180deg,rgba(0,0,0,.95),rgba(0,0,0,.95));pointer-events:none}
.hero.hero-premium:after{content:"";position:absolute;inset:auto -120px -160px auto;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.08),rgba(255,255,255,.015) 48%,transparent 64%);pointer-events:none}
.hero-left,.hero-right{position:relative;z-index:2;min-width:0}.hero-left{display:flex;flex-direction:column;justify-content:center;padding:12px 0 18px 4px}.hero-right{display:grid;grid-template-rows:auto 1fr;min-width:0}
.hero.hero-premium .brand{position:relative;z-index:2;align-items:center;gap:18px}.hero.hero-premium .brandmark{width:102px;height:102px;padding:14px;border-radius:26px;background:rgba(255,255,255,.95);box-shadow:0 12px 24px rgba(0,0,0,.16)}
.hero.hero-premium h1{font-size:64px;line-height:.96;letter-spacing:-.055em;margin:0 0 10px;text-shadow:0 8px 30px rgba(0,0,0,.22)}
.hero.hero-premium .sub{max-width:560px;font-size:18px;line-height:1.32;color:rgba(255,255,255,.82);margin-top:0}
.hero-cta{margin:28px 0 0 28px;align-self:flex-start;display:inline-flex;align-items:center;gap:14px;padding:16px 26px;border-radius:999px;border:1px solid rgba(109,185,255,.42);background:rgba(15,69,106,.28);backdrop-filter:blur(8px);color:#e7f6ff;font-size:18px;font-weight:700;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);cursor:pointer}.hero-cta span{font-size:24px;line-height:1;opacity:.86}.hero-cta:hover{transform:translateY(-1px);background:rgba(17,79,123,.42)}
.hero.hero-premium .userbox{justify-content:flex-end;align-items:flex-start;gap:10px;max-width:none;position:relative;z-index:5}.hero.hero-premium .btn.glass{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.18);color:#fff}.hero.hero-premium .btn.primary{box-shadow:0 10px 18px rgba(12,80,72,.22)}.hero.hero-premium .small{color:rgba(255,255,255,.76)}
.hero-stage{position:relative;min-height:170px;margin-top:10px;border-radius:20px;overflow:hidden}
.hero-note{position:absolute;right:34px;top:10px;z-index:4;color:rgba(239,247,255,.82);font-size:16px;line-height:1.08;font-style:italic;transform:rotate(-8deg);text-align:right;text-shadow:0 4px 18px rgba(0,0,0,.18)}
.hero-mini-stats{position:absolute;right:18px;bottom:16px;z-index:4;display:grid;gap:6px;min-width:180px}.hero-mini-stats div{display:flex;align-items:baseline;justify-content:flex-end;gap:10px;color:#eef7ff;text-shadow:0 4px 16px rgba(0,0,0,.24)}.hero-mini-stats b{font-size:26px;line-height:1;min-width:34px;text-align:right}.hero-mini-stats span{font-size:13px;color:rgba(238,247,255,.86)}
.hero-construction{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:1;filter:drop-shadow(0 20px 22px rgba(0,0,0,.18))}
.hc-moon{position:absolute;right:92px;top:8px;width:58px;height:58px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fffef2 0%,#f8e3a8 54%,rgba(248,227,168,.18) 68%,rgba(248,227,168,0) 76%);box-shadow:0 0 26px rgba(251,227,160,.24)}
.hc-cloud,.hc-cloud:before,.hc-cloud:after{position:absolute;background:rgba(170,201,229,.18);border-radius:999px}.hc-cloud{width:92px;height:26px;top:46px;animation:hcCloud 22s ease-in-out infinite}.hc-cloud:before,.hc-cloud:after{content:""}.hc-cloud:before{width:36px;height:36px;left:10px;top:-18px}.hc-cloud:after{width:42px;height:30px;right:10px;top:-12px}.hcc1{right:270px}.hcc2{right:400px;top:72px;transform:scale(.7);opacity:.7;animation-duration:26s}.hcc3{right:150px;top:88px;transform:scale(.82);opacity:.6;animation-duration:19s}
.hc-backline{position:absolute;left:70px;right:36px;bottom:74px;height:88px;background:linear-gradient(180deg,transparent 0%,rgba(28,67,99,.24) 20%,rgba(16,52,80,.65) 100%);clip-path:polygon(0% 100%,6% 56%,10% 68%,16% 26%,19% 74%,23% 38%,28% 70%,34% 35%,40% 78%,47% 40%,54% 72%,61% 30%,67% 82%,74% 42%,81% 78%,88% 48%,93% 66%,100% 100%)}
.hc-city{position:absolute;right:120px;bottom:18px;width:520px;height:175px}
.hc-building{position:absolute;bottom:0;width:68px;border-radius:8px 8px 0 0;background:linear-gradient(180deg,#e6edf3 0%,#b7c8d6 100%);box-shadow:0 16px 24px rgba(10,27,44,.18),inset 0 -5px 18px rgba(255,198,112,.06);animation:hcRise 1.2s cubic-bezier(.19,1,.22,1) both}
.hc-building:before{content:"";position:absolute;left:8px;right:8px;top:10px;bottom:14px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.92) 0 8px,transparent 8px 15px),repeating-linear-gradient(180deg,rgba(36,67,95,.08) 0 10px,transparent 10px 18px);border-radius:4px}
.hc-building:after{content:"";position:absolute;left:8px;right:8px;bottom:0;height:8px;background:rgba(238,174,83,.22)}
.hb1{left:24px;height:102px;animation-delay:.05s}.hb2{left:106px;height:146px;animation-delay:.15s}.hb3{left:220px;height:114px;animation-delay:.28s}.hb4{left:304px;height:165px;animation-delay:.38s}.hb5{left:420px;height:112px;animation-delay:.48s}
.hb2,.hb4{width:78px}.hb1,.hb3,.hb5{width:60px}
.hc-building .roof,.hc-building .core{display:none}
.hc-building{transform-origin:bottom center}.hb2,.hb4{background:linear-gradient(180deg,#d8e4ee 0%,#afbfcd 100%)}.hb3{background:linear-gradient(180deg,#d3e1eb 0%,#a5b8c6 100%)}
.hc-building{outline:1px solid rgba(255,255,255,.08)}
.hc-crane{position:absolute;bottom:16px}.hc-crane-main{right:138px;width:270px;height:188px}.hc-crane-back{right:26px;width:126px;height:110px;opacity:.42;transform:scale(.74);transform-origin:bottom right}
.hc-tower{position:absolute;right:36px;bottom:0;width:20px;height:158px;background:repeating-linear-gradient(180deg,#f6c55f 0 10px,#dd9724 10px 20px);border-radius:10px 10px 0 0;box-shadow:0 0 0 1px rgba(255,216,122,.18),0 10px 20px rgba(0,0,0,.18)}
.hc-cabin{position:absolute;right:24px;bottom:144px;width:44px;height:22px;border-radius:6px;background:linear-gradient(180deg,#ffd67b,#eda628);box-shadow:0 6px 12px rgba(0,0,0,.14)}
.hc-arm-wrap{position:absolute;right:46px;bottom:152px;width:228px;height:18px;transform-origin:176px 9px;animation:hcCraneSwing 12.8s ease-in-out infinite}.hc-crane-back .hc-arm-wrap{bottom:78px;width:118px;transform-origin:96px 9px;animation-duration:14s}
.hc-arm{position:absolute;left:0;top:8px;width:192px;height:4px;background:linear-gradient(90deg,#ffcf72,#eda523);border-radius:999px;box-shadow:0 0 0 1px rgba(255,227,164,.14)}
.hc-arm:before{content:"";position:absolute;inset:-8px 0;background:repeating-linear-gradient(135deg,transparent 0 10px,rgba(255,229,170,.9) 10px 12px,transparent 12px 22px);opacity:.85}
.hc-counter{position:absolute;left:174px;top:7px;width:44px;height:6px;border-radius:999px;background:#cd8613}.hc-crane-back .hc-arm{width:96px}.hc-crane-back .hc-counter{left:88px;width:20px}
.hc-cable{position:absolute;left:90px;top:12px;width:2px;height:60px;background:rgba(245,246,248,.72);animation:hcCable 4.6s ease-in-out infinite}.hc-hook{position:absolute;left:83px;top:68px;width:16px;height:18px;border:3px solid #f1ae2c;border-top-width:0;border-radius:0 0 14px 14px;animation:hcCable 4.6s ease-in-out infinite}.hc-load{position:absolute;left:66px;top:88px;width:40px;height:14px;border-radius:3px;background:linear-gradient(180deg,#e1ddd2,#bbb4a4);box-shadow:0 6px 12px rgba(0,0,0,.18);animation:hcCable 4.6s ease-in-out infinite}
.hc-trees{position:absolute;left:136px;right:124px;bottom:8px;height:28px;display:flex;gap:18px;align-items:flex-end}.hc-trees i{display:block;width:20px;height:20px;border-radius:50% 50% 42% 42%;background:linear-gradient(180deg,#1e6c65,#123d47);box-shadow:0 6px 12px rgba(0,0,0,.16)}.hc-trees i:nth-child(2){width:26px;height:24px}.hc-trees i:nth-child(3){width:18px;height:18px}.hc-trees i:nth-child(4){width:24px;height:21px}.hc-trees i:nth-child(5){width:16px;height:16px}
.hc-ground{position:absolute;left:68px;right:0;bottom:0;height:38px;background:linear-gradient(180deg,#73879a 0%,#5f7488 100%)}.hc-ground:before{content:"";position:absolute;left:0;right:0;top:0;height:14px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.07) 0 22px,rgba(255,255,255,.18) 22px 40px)}.hc-ground:after{content:"";position:absolute;left:34px;right:44px;bottom:10px;height:7px;background:repeating-linear-gradient(90deg,transparent 0 26px,rgba(255,255,255,.74) 26px 56px);opacity:.72}
@keyframes hcRise{0%{transform:translateY(26px) scaleY(.82);opacity:0}100%{transform:translateY(0) scaleY(1);opacity:1}}
@keyframes hcCloud{0%,100%{transform:translateX(0)}50%{transform:translateX(18px)}}
@keyframes hcCraneSwing{0%,100%{transform:rotate(-2.6deg)}50%{transform:rotate(2.6deg)}}
@keyframes hcCable{0%,100%{transform:translateY(0)}50%{transform:translateY(14px)}}
@media (prefers-reduced-motion:reduce){.hero.hero-premium *{animation:none!important;transition:none!important}}
@media(max-width:1500px){.hero.hero-premium{grid-template-columns:minmax(280px,.82fr) minmax(460px,1.18fr)}.hero.hero-premium h1{font-size:56px}.hero-stage{min-height:160px}.hc-city{right:90px;transform:scale(.92);transform-origin:bottom right}.hc-crane-main{right:118px;transform:scale(.92);transform-origin:bottom right}}
@media(max-width:1280px){.hero.hero-premium{min-height:232px;padding:22px}.hero.hero-premium h1{font-size:48px}.hero.hero-premium .sub{font-size:16px}.hero-cta{margin-left:16px}.hero-note{display:none}.hero-mini-stats{right:8px}.hc-city{right:66px;transform:scale(.82)}.hc-crane-main{right:96px;transform:scale(.84)}.hc-crane-back{display:none}}
@media(max-width:1024px){.hero.hero-premium{grid-template-columns:1fr;min-height:unset}.hero-right{grid-template-rows:auto}.hero-stage{min-height:190px;margin-top:14px}.hero.hero-premium .userbox{justify-content:flex-start}.hero-mini-stats{right:16px;bottom:14px}.hero.hero-premium h1{font-size:42px}.hc-city{left:40px;right:auto;transform:scale(.84);transform-origin:bottom left}.hc-crane-main{right:24px;transform:scale(.78)}.hc-moon{right:18px}}
@media(max-width:760px){.hero.hero-premium{padding:18px 16px;border-radius:20px}.hero.hero-premium .brand{gap:12px}.hero.hero-premium .brandmark{width:72px;height:72px;border-radius:18px}.hero.hero-premium h1{font-size:34px}.hero.hero-premium .sub{font-size:14px;max-width:100%}.hero-cta{margin:18px 0 0 0;padding:12px 18px;font-size:15px}.hero-stage{min-height:138px}.hc-city{left:10px;transform:scale(.6)}.hc-crane-main{right:-16px;transform:scale(.56)}.hero-mini-stats b{font-size:18px}.hero-mini-stats span{font-size:11px}.hero-mini-stats{min-width:140px}.hcc1,.hcc2,.hcc3,.hc-moon{opacity:.75}}
@media(max-width:560px){.hero-stage{display:none}.hero.hero-premium .userbox{gap:8px}.hero.hero-premium{gap:18px}}


/* v17.0.3 — hero layout rebalance */
.hero.hero-premium{grid-template-columns:minmax(420px,.92fr) minmax(720px,1.08fr);min-height:320px;padding:26px 30px 24px}
.hero-left{justify-content:center;padding:18px 0 24px 8px}
.hero.hero-premium h1{max-width:680px}
.hero.hero-premium .sub{max-width:620px}
.hero-cta{margin:30px 0 0 26px}
.hero-right{grid-template-rows:auto 1fr;row-gap:16px;align-content:start}
.hero.hero-premium .userbox{justify-content:flex-end;align-items:flex-start;align-content:flex-start;gap:10px 10px;max-width:100%;padding-left:18px}
.hero-stage{position:relative;min-height:170px;margin-top:2px;border-radius:20px;overflow:hidden;padding-right:230px}
.hero-scene-copy{position:absolute;top:0;right:0;bottom:0;width:220px;z-index:4;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;padding:10px 16px 18px 8px;text-align:right}
.hero-note{position:relative;right:auto;top:auto;max-width:200px;font-size:18px;line-height:1.08;font-style:italic;transform:rotate(-7deg);margin-top:4px}
.hero-mini-stats{position:relative;right:auto;bottom:auto;min-width:0;width:100%;display:grid;gap:8px;justify-items:end}
.hero-mini-stats div{justify-content:flex-end}
.hero-mini-stats b{font-size:28px;min-width:38px}
.hero-construction{position:absolute;left:0;right:210px;top:0;bottom:0;z-index:1;pointer-events:none;opacity:1;filter:drop-shadow(0 20px 22px rgba(0,0,0,.18))}
.hc-city{right:44px;bottom:18px;width:500px;height:176px}
.hc-crane-main{right:72px;width:270px;height:188px}
.hc-crane-back{right:-12px;width:126px;height:110px;opacity:.34}
.hc-ground{left:26px;right:10px;bottom:0;height:40px;border-radius:0 0 16px 16px}
.hc-backline{left:28px;right:26px;bottom:76px}
.hc-moon{right:74px;top:2px}
.hcc1{right:320px}.hcc2{right:446px}.hcc3{right:210px}
@media(max-width:1700px){.hero.hero-premium{grid-template-columns:minmax(380px,.94fr) minmax(650px,1.06fr)}.hero.hero-premium h1{font-size:58px}.hero-stage{padding-right:210px}.hero-scene-copy{width:204px}.hero-construction{right:192px}.hc-city{transform:scale(.94);transform-origin:bottom right}.hc-crane-main{transform:scale(.94);transform-origin:bottom right}}
@media(max-width:1500px){.hero.hero-premium{grid-template-columns:minmax(340px,.9fr) minmax(560px,1.1fr);min-height:298px}.hero.hero-premium h1{font-size:52px}.hero-stage{padding-right:188px}.hero-scene-copy{width:182px}.hero-note{font-size:16px}.hero-mini-stats b{font-size:24px}.hero-mini-stats span{font-size:12px}.hero-construction{right:170px}.hc-city{right:12px;transform:scale(.86)}.hc-crane-main{right:36px;transform:scale(.84)}}
@media(max-width:1280px){.hero.hero-premium{min-height:278px;padding:22px 24px}.hero-right{row-gap:12px}.hero-stage{padding-right:164px;min-height:150px}.hero-scene-copy{width:158px;padding-right:8px}.hero-note{font-size:14px}.hero-mini-stats b{font-size:22px}.hero-construction{right:145px}.hc-city{right:-8px;transform:scale(.76)}.hc-crane-main{right:18px;transform:scale(.74)}.hc-crane-back{display:none}}
@media(max-width:1024px){.hero.hero-premium{grid-template-columns:1fr;min-height:unset}.hero-right{grid-template-rows:auto auto}.hero.hero-premium .userbox{padding-left:0;justify-content:flex-start}.hero-stage{min-height:190px;padding-right:164px}.hero-scene-copy{width:160px}.hero-note{transform:rotate(-5deg)}.hero-construction{right:150px}.hc-city{left:28px;right:auto;transform:scale(.80);transform-origin:bottom left}.hc-crane-main{right:14px;transform:scale(.76)}.hc-moon{right:18px}}
@media(max-width:760px){.hero-stage{min-height:150px;padding-right:0}.hero-scene-copy{position:relative;width:auto;display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;padding:0 4px 8px 4px}.hero-note{transform:none;max-width:140px;font-size:13px}.hero-mini-stats{width:auto;gap:4px}.hero-mini-stats b{font-size:18px}.hero-mini-stats span{font-size:11px}.hero-construction{left:0;right:0;top:34px}.hc-city{left:10px;transform:scale(.6)}.hc-crane-main{right:-10px;transform:scale(.54)}}


/* v17.0.3 balanced hero */

.hero.hero-premium.hero-balanced{display:grid;grid-template-columns:minmax(440px,.94fr) minmax(520px,1.08fr) 250px;gap:26px;align-items:stretch;min-height:286px;padding:26px 30px 24px;border-radius:28px;background:radial-gradient(circle at 73% 20%,rgba(255,225,149,.10),transparent 12%),linear-gradient(100deg,#0d2b42 0%,#0f3b59 54%,#145c77 100%);overflow:hidden}
.hero-balanced .hero-left{display:flex;flex-direction:column;justify-content:center;padding:10px 0 18px 4px;z-index:3}.hero-balanced .brand{gap:18px}.hero-balanced .brandmark{width:96px;height:96px;padding:13px;border-radius:25px;background:rgba(255,255,255,.96)}.hero-balanced h1{font-size:60px;line-height:.98;margin:0 0 10px;white-space:nowrap}.hero-balanced .sub{font-size:18px;line-height:1.3;max-width:560px}.hero-balanced .hero-cta{margin:28px 0 0 26px;padding:15px 25px;font-size:17px}
.hero-scene{position:relative;min-height:224px;align-self:end;z-index:2;overflow:hidden;border-radius:18px}.hero-scene .hc-moon{right:34px;top:10px}.hero-scene .hcc1{right:250px}.hero-scene .hcc2{right:376px}.hero-scene .hcc3{right:132px}.hero-scene .hc-backline{left:8px;right:6px;bottom:52px}.hero-scene .hc-city{left:8px;right:auto;bottom:10px;width:500px;height:180px;transform:none}.hero-scene .hc-crane-main{right:4px;bottom:12px;transform:scale(.88);transform-origin:bottom right}.hero-scene .hc-crane-back{right:-34px;bottom:14px;transform:scale(.62);opacity:.28}.hero-scene .hc-trees{left:56px;right:42px;bottom:8px}.hero-scene .hc-ground{left:0;right:0;bottom:0;height:38px;border-radius:0 0 16px 16px}
.hero-side{position:relative;z-index:4;display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;padding:4px 0 18px;text-align:right}.hero-user{display:flex;align-items:center;gap:9px;justify-content:flex-end}.hero-user>div{display:grid;justify-items:end;gap:2px}.hero-user b{font-size:12px}.hero-user .small{font-size:10px}.hero-side .hero-note{position:relative;right:auto;top:auto;margin:10px 4px 4px;max-width:220px;font-size:18px;line-height:1.04;transform:rotate(-6deg)}.hero-side .hero-mini-stats{position:relative;right:auto;bottom:auto;display:grid;gap:8px;width:100%;min-width:0}.hero-side .hero-mini-stats div{justify-content:flex-end}.hero-side .hero-mini-stats b{font-size:28px;min-width:40px}.hero-side .hero-mini-stats span{font-size:13px;min-width:130px;text-align:left}
.utilitybar{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;overflow-x:auto;padding:8px 2px 9px;margin:0 0 1px;scrollbar-width:thin}.utilitybar .btn{white-space:nowrap;box-shadow:var(--shadow-sm)}.utilitybar .utility-spacer{flex:1 1 auto;min-width:14px}.utilitybar .attention-btn span{background:#fff0ed;color:#bd3e32}
@media(max-width:1700px){.hero.hero-premium.hero-balanced{grid-template-columns:minmax(390px,.88fr) minmax(470px,1fr) 220px}.hero-balanced h1{font-size:54px}.hero-balanced .brandmark{width:88px;height:88px}.hero-side .hero-mini-stats span{min-width:112px}.hero-scene .hc-city{transform:scale(.9);transform-origin:bottom left}.hero-scene .hc-crane-main{transform:scale(.80)}}
@media(max-width:1450px){.hero.hero-premium.hero-balanced{grid-template-columns:minmax(340px,.9fr) minmax(410px,1fr) 198px;gap:18px;min-height:264px;padding:22px}.hero-balanced h1{font-size:48px}.hero-balanced .sub{font-size:16px}.hero-balanced .hero-cta{margin-left:14px}.hero-scene .hc-city{transform:scale(.78)}.hero-scene .hc-crane-main{transform:scale(.72);right:-8px}.hero-side .hero-note{font-size:15px}.hero-side .hero-mini-stats b{font-size:23px}.hero-side .hero-mini-stats span{font-size:11px;min-width:94px}}
@media(max-width:1120px){.hero.hero-premium.hero-balanced{grid-template-columns:1fr 1fr;min-height:unset}.hero-side{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:0}.hero-side .hero-note{margin:0;justify-self:center}.hero-side .hero-mini-stats{display:flex;width:auto;gap:14px}.hero-side .hero-mini-stats span{min-width:0}.hero-scene{min-height:190px}.hero-balanced h1{font-size:42px}}
@media(max-width:760px){.hero.hero-premium.hero-balanced{grid-template-columns:1fr;padding:18px 16px}.hero-scene{min-height:150px}.hero-side{grid-template-columns:1fr}.hero-side .hero-note{display:none}.hero-side .hero-mini-stats{display:grid;grid-template-columns:1fr 1fr;width:100%}.hero-side .hero-mini-stats div{justify-content:flex-start}.hero-side .hero-mini-stats span{min-width:0}.hero-user{justify-content:flex-start}.utilitybar{gap:6px}.hero-balanced h1{font-size:34px}.hero-balanced .brandmark{width:72px;height:72px}.hero-balanced .sub{font-size:14px}.hero-balanced .hero-cta{margin-left:0;font-size:14px;padding:12px 17px}.hero-scene .hc-city{transform:scale(.58)}.hero-scene .hc-crane-main{transform:scale(.55);right:-34px}}
@media(prefers-reduced-motion:reduce){.hero-scene *{animation:none!important;transition:none!important}}


/* v17.0.3 final — non-interactive hero slogan */
.hero-slogan{margin:28px 0 0 26px;align-self:flex-start;display:inline-flex;align-items:center;gap:14px;padding:16px 26px;border-radius:999px;border:1px solid rgba(109,185,255,.42);background:rgba(15,69,106,.28);backdrop-filter:blur(8px);color:#e7f6ff;font-size:18px;font-weight:700;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);cursor:default;user-select:none}
.hero-slogan:hover{transform:none;background:rgba(15,69,106,.28)}
.hero-balanced .hero-slogan{margin:28px 0 0 26px;padding:15px 25px;font-size:17px}
@media(max-width:1450px){.hero-balanced .hero-slogan{margin-left:14px}}
@media(max-width:760px){.hero-balanced .hero-slogan{margin-left:0;font-size:14px;padding:12px 17px}}


/* v17.1 — application export report */
.tabletop-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.application-report{padding-top:4px}.app-report-kpis .success{background:#f3fbf7;border-color:#cfe8db}.app-report-kpis .success b{color:#067647}.report-review-outcomes{padding:0;grid-template-columns:repeat(4,1fr)}.report-review-outcomes>div{background:#fbfcfd}.report-tablewrap{max-height:290px}.application-report .report-grid{align-items:start}.application-report .mini-report{min-width:680px}.application-report .mini-report th,.application-report .mini-report td{font-size:9px}.application-report .report-actions{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:900px){.report-review-outcomes{grid-template-columns:1fr 1fr}.tabletop-actions{width:100%;justify-content:space-between}}
@media(max-width:560px){.report-review-outcomes{grid-template-columns:1fr}.application-report .report-actions .btn{width:100%}}


/* v17.2 — admin manager directory */
.manager-directory{align-items:stretch}.manager-admin-card{display:grid;gap:10px;cursor:default;text-align:left}.manager-admin-card.manager-inactive{opacity:.66}.manager-identity{min-width:0}.manager-identity h3{margin:0 0 2px}.manager-contact{display:flex;gap:8px;flex-wrap:wrap;margin-top:5px;font-size:9px;color:var(--muted)}.manager-state{margin-left:auto}.manager-card-actions{display:flex;gap:7px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:9px}.manager-notes{font-size:9.5px;line-height:1.4;color:#536578;background:#f7fafb;border:1px solid #e7eef2;border-radius:9px;padding:8px 9px}.manager-admin-card .manager-metrics{grid-template-columns:repeat(3,1fr)}
@media(max-width:650px){.manager-admin-card .manager-metrics{grid-template-columns:repeat(2,1fr)}.manager-state{margin-left:0}.manager-head{flex-wrap:wrap}}


/* v17.2.1 — explicit team focus and manager admin controls */
.focusbar-live{position:relative;z-index:6}.focus-all-team{font-weight:760;border-color:#b9d9d3;background:#f2faf8;color:#0b6a60}.focus-all-team:hover{background:#e7f6f2;border-color:#94c9bf}.dashboard-heading-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.manager-card-actions .danger{margin-left:auto}.manager-card-actions .btn{white-space:nowrap}
@media(max-width:980px){.dashboard-heading-actions{justify-content:flex-start}.manager-card-actions .danger{margin-left:0}}
