/* 🎯 Пульт собственника / 🗂 Орг структура / 📈 Дашборды (cockpit.js)
   Спокойный монохром; цвет только у отклонений (горит / внимание); норма — тонкая чёрточка, темп — точка-отметка. */
:root{--cc-r1:var(--info);--cc-r2:var(--accent);--cc-r3:var(--warn);--cc-line:var(--border);--cc-soft:var(--panel2);}
.cc{display:flex;flex-direction:column;gap:14px;min-width:0;} .cc>*{min-width:0;}
.cc button{font:inherit;color:inherit;}
.cc-card{background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:16px 18px;display:flex;flex-direction:column;gap:12px;min-width:0;}
.cc-st{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;}
.cc-st>b{font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);display:flex;align-items:center;gap:8px;}
.cc-st>span{font-size:12px;color:var(--text-dim);}
.cnt{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:99px;background:var(--text);color:var(--bg);font-size:12px;letter-spacing:0;}
.cc-ln{border:0;background:none;padding:4px 0;font-size:13px!important;font-weight:700;color:var(--accent-dim)!important;cursor:pointer;min-height:32px;}
.cc-empty{margin:0;color:var(--text-dim);font-size:14px;}
.cc button:focus-visible,.og button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}

/* шапка: дата + одна главная фраза + счётчики */
.cc-hd{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;padding:2px 2px 0;}
.cc-date{font-size:13px;color:var(--text-dim);}
.cc-lead{margin:4px 0 0;font-size:24px;line-height:1.2;font-weight:800;letter-spacing:-.01em;text-wrap:balance;max-width:34ch;}
.cc-sub{margin:4px 0 0;font-size:14px;color:var(--text-dim);max-width:70ch;}
.cc-pills{display:flex;gap:6px;align-items:center;flex-wrap:wrap;}
.cc-pills .p{display:flex;align-items:baseline;gap:6px;padding:7px 12px;border-radius:12px;background:var(--panel);border:1px solid var(--border);font-size:12.5px;color:var(--text-dim);}
.cc-pills .p b{font-size:17px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;}
.cc-pills .p.crit b{color:var(--err);} .cc-pills .p.warn b{color:var(--warn);}
.cc-re{width:40px;height:40px;border-radius:12px;border:1px solid var(--border);background:var(--panel);cursor:pointer;font-size:18px!important;}

/* Светлана: одна строка статуса */
.cc-sv{display:flex;gap:12px;align-items:flex-start;padding:12px 16px;border-radius:18px;background:var(--ai-bg);}
.cc-sv b{font-size:14px;} .cc-sv small{color:var(--text-dim);font-size:12px;}
.cc-sv p{margin:3px 0 0;font-size:14px;line-height:1.45;} .cc-sv p.u{color:var(--err);font-weight:700;}

.cc-av{flex:none;width:30px;height:30px;border-radius:50%;display:inline-grid;place-items:center;font-size:11px;font-weight:800;background:var(--cc-soft);color:var(--text);border:1.5px solid var(--panel);}
.cc-av.sm{width:22px;height:22px;font-size:9px;}
.cc-av.ai{background:var(--ai);color:#fff;border-radius:10px;}
.cc-av.vac{background:transparent;border:1.5px dashed var(--text-dim);color:var(--text-dim);}

/* ряд 1: кольца дня + очередь решений */
.cc-r1{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:14px;}
.cc-rgw{display:flex;gap:18px;align-items:center;}
.cc-rg{width:148px;height:148px;flex:none;}
.cc-rg circle{fill:none;stroke-width:13;} .cc-rg .bg{opacity:.16;} .cc-rg .fg{stroke-linecap:round;transition:stroke-dasharray .6s ease;}
.cc-rl{display:flex;flex-direction:column;gap:10px;min-width:0;flex:1;}
.cc-rl>div{display:grid;grid-template-columns:10px 1fr auto;gap:2px 8px;align-items:baseline;}
.cc-rl i{width:10px;height:10px;border-radius:50%;align-self:center;}
.cc-rl span{font-size:13px;font-weight:700;} .cc-rl b{font-size:20px;font-weight:800;font-variant-numeric:tabular-nums;} .cc-rl b small{font-size:13px;color:var(--text-dim);font-weight:600;}
.cc-rl em{grid-column:2/4;font-style:normal;font-size:12px;color:var(--text-dim);}
.cc-rl .st-bad em{color:var(--err);font-weight:700;} .cc-rl .st-warn em{color:var(--warn);font-weight:700;} .cc-rl .st-ok em{color:var(--ok);}
.cc-qi{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--cc-line);}
.cc-qi:first-of-type{border-top:0;padding-top:0;}
.cc-qi.done{opacity:.4;pointer-events:none;}
.cc-qi b{font-size:14.5px;line-height:1.3;} .cc-qi p{margin:3px 0 0;font-size:13px;color:var(--text-dim);line-height:1.4;} .cc-qi small{display:block;margin-top:4px;font-size:12px;color:var(--text-dim);}
.cc-qi .b{display:flex;gap:4px;}
.cc-qi .b button{border:1px solid var(--border);background:var(--panel);border-radius:10px;min-height:38px;padding:0 12px;font-weight:700;font-size:13px;cursor:pointer;}
.cc-qi .b button.y{background:var(--text);color:var(--bg)!important;border-color:var(--text);}
.cc-lc{display:flex;flex-direction:column;gap:14px;min-width:0;}
.cc-mine{display:flex;flex-direction:column;gap:2px;}
.cc-mine>b{font-size:12px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px;}
.cc-ti{display:flex;gap:10px;align-items:center;text-align:left;border:0;background:none;padding:6px 0;cursor:pointer;font-size:14px!important;min-height:36px;}
.cc-ti i{flex:none;width:18px;height:18px;border-radius:6px;border:2px solid var(--err);}
.cc-ti.on i{background:var(--ok);border-color:var(--ok);}

/* проблемы */
.cc-pl{display:flex;flex-direction:column;}
.cc-pi{display:grid;grid-template-columns:10px 1fr auto;gap:12px;align-items:start;padding:11px 0;border-top:1px solid var(--cc-line);}
.cc-pi:first-child{border-top:0;padding-top:2px;}
.cc-pi.done{opacity:.35;} .cc-pi[hidden]{display:none;}
.cc-pi .dot{width:10px;height:10px;border-radius:50%;margin-top:5px;background:var(--warn);}
.cc-pi.sev-crit .dot{background:var(--err);box-shadow:0 0 0 4px var(--err-bg);}
.cc-pi b{font-size:14.5px;line-height:1.3;} .cc-pi p{margin:3px 0 0;font-size:13px;color:var(--text-dim);line-height:1.4;} .cc-pi p.a{color:var(--text);}
.cc-pi .m{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end;max-width:280px;}
.cc-tag{border:1px solid var(--border);background:var(--cc-soft);border-radius:8px;padding:3px 8px;font-size:12px!important;font-weight:700;cursor:pointer;}
.cc-who{font-size:12px;color:var(--text-dim);}
.cc-ok{width:34px;height:34px;border-radius:10px;border:1px solid var(--border);background:var(--panel);cursor:pointer;font-weight:800;}
.cc-ok:hover{background:var(--ok-bg);color:var(--ok)!important;border-color:var(--ok);}
.cc-more{align-self:flex-start;border:0;background:var(--cc-soft);border-radius:10px;padding:8px 14px;font-weight:700;font-size:13px!important;cursor:pointer;}

/* рычаги: название · факт/норма · буллет + остаток · спарклайн */
.cc-lv{display:flex;flex-direction:column;}
.cc-lr{display:grid;grid-template-columns:minmax(150px,1.3fr) 150px minmax(160px,2fr) 150px;gap:16px;align-items:center;text-align:left;border:0;border-top:1px solid var(--cc-line);background:none;padding:10px 0;cursor:pointer;}
.cc-lr:first-child{border-top:0;}
.cc-lr:hover .n b{text-decoration:underline;text-underline-offset:3px;}
.cc-lr .n b{display:block;font-size:14px;} .cc-lr .n small{font-size:12px;color:var(--text-dim);}
.cc-lr .v{white-space:nowrap;} .cc-lr .v b{font-size:22px;font-weight:800;font-variant-numeric:tabular-nums;} .cc-lr .v small{font-size:12px;color:var(--text-dim);margin-left:4px;white-space:nowrap;}
.cc-lr .bb{display:flex;flex-direction:column;gap:5px;min-width:0;}
.cc-lr .g{font-size:12.5px;font-weight:700;color:var(--text-dim);}
.cc-lr.st-ok .g{color:var(--ok);} .cc-lr.st-warn .g{color:var(--warn);} .cc-lr.st-bad .g{color:var(--err);}
.cc-lr .sp{display:flex;flex-direction:column;align-items:flex-end;gap:2px;} .cc-lr .sp small{font-size:11px;color:var(--text-dim);font-variant-numeric:tabular-nums;}
.cc-bl{position:relative;height:10px;border-radius:3px;background:var(--cc-soft);overflow:visible;}
.cc-bl.none{background:repeating-linear-gradient(90deg,var(--cc-soft) 0 6px,transparent 6px 10px);}
.cc-bl .band{position:absolute;top:0;bottom:0;left:0;background:var(--border);opacity:.55;border-radius:3px 0 0 3px;} .cc-bl .band.b2{opacity:.3;border-radius:0;}
.cc-bl i{position:absolute;left:0;top:2px;bottom:2px;border-radius:2px;background:var(--text);}
.cc-bl.st-warn i{background:var(--warn);} .cc-bl.st-bad i{background:var(--err);} .cc-bl.st-ok i{background:var(--ok);}
.cc-bl b{position:absolute;top:-4px;bottom:-4px;width:2.5px;margin-left:-1px;background:var(--text);border-radius:2px;}
.cc-bl em{position:absolute;top:50%;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:var(--panel);border:2px solid var(--text-dim);}
.cc-sp{width:120px;height:28px;display:block;overflow:visible;}
.cc-sp .a{fill:var(--accent);fill-opacity:.13;} .cc-sp .l{fill:none;stroke:var(--accent-dim);stroke-width:1.6;vector-effect:non-scaling-stroke;}
.cc-sp .n{stroke:var(--text-dim);stroke-dasharray:3 3;stroke-width:1;vector-effect:non-scaling-stroke;} .cc-sp .e{fill:var(--accent-dim);}

/* здоровье отделов */
.cc-hg{display:grid;grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:8px;}
.cc-ht{display:flex;flex-direction:column;gap:8px;text-align:left;border:1px solid var(--border);background:var(--panel);border-radius:16px;padding:12px 13px;cursor:pointer;position:relative;overflow:hidden;}
.cc-ht::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:transparent;}
.cc-ht.st-crit{border-color:var(--err);background:var(--err-bg);} .cc-ht.st-crit::before{background:var(--err);}
.cc-ht.st-warn::before{background:var(--warn);}
.cc-ht.st-planned,.cc-ht.st-none{background:transparent;border-style:dashed;}
.cc-ht:hover{border-color:var(--text-dim);}
.cc-ht .h{display:flex;justify-content:space-between;gap:6px;align-items:baseline;} .cc-ht .h b{font-size:14px;line-height:1.25;}
.cc-ht .s{flex:none;font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim);}
.cc-ht.st-crit .s{color:var(--err);} .cc-ht.st-warn .s{color:var(--warn);} .cc-ht.st-ok .s{color:var(--ok);}
.cc-ht .k b{font-size:20px;font-weight:800;font-variant-numeric:tabular-nums;} .cc-ht .k b small{font-size:13px;color:var(--text-dim);font-weight:600;} .cc-ht .k span{display:block;font-size:12px;color:var(--text-dim);}
.cc-ht .k.e{font-size:12.5px;color:var(--text-dim);}
.cc-ht .f{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;min-height:24px;} .cc-ht .f .cc-av{width:22px;height:22px;font-size:9px;}
.cc-ht .f em{margin-left:auto;font-style:normal;min-width:22px;height:22px;border-radius:99px;display:grid;place-items:center;background:var(--err);color:#fff;font-size:11.5px;font-weight:800;}
.cc-ht.st-warn .f em{background:var(--warn);}
.cc-ht .vac{color:var(--text-dim);font-weight:500;}
/* история 14 дней */
.cc-hi{display:flex;flex-direction:column;gap:4px;overflow-x:auto;padding-top:6px;min-width:0;max-width:100%;}
.cc-hir{display:grid;grid-template-columns:170px repeat(14,minmax(10px,1fr));gap:3px;align-items:center;}
.cc-hir span{font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cc-hir i{height:18px;border-radius:4px;background:var(--cc-soft);}
.cc-hir.hd i{height:auto;background:none;font-style:normal;font-size:10.5px;color:var(--text-dim);text-align:center;} .cc-hir.hd i.we{opacity:.55;}
.cc-hir i.c-ok{background:var(--ok);opacity:.75;} .cc-hir i.c-warn{background:var(--warn);} .cc-hir i.c-crit{background:var(--err);}
.cc-hil{font-size:11.5px;color:var(--text-dim);margin-top:4px;}

/* ─── Орг структура: дерево слева направо + боковая карточка ─── */
.og{display:flex;flex-direction:column;gap:14px;}
.og button{font:inherit;color:inherit;}
.og-hd{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;}
.og-sum{display:flex;gap:6px;flex-wrap:wrap;}
.og-sum span{display:flex;align-items:baseline;gap:6px;padding:7px 12px;border-radius:12px;background:var(--panel);border:1px solid var(--border);font-size:12.5px;color:var(--text-dim);}
.og-sum b{font-size:17px;font-weight:800;color:var(--text);} .og-sum .ai b{color:var(--ai);} .og-sum .vac b{color:var(--warn);}
.og-seg{display:flex;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:3px;}
.og-seg button{border:0;background:none;border-radius:9px;padding:7px 14px;font-weight:700;font-size:13px;cursor:pointer;color:var(--text-dim)!important;min-height:36px;}
.og-seg button.on{background:var(--text);color:var(--bg)!important;}
.og-body{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start;}
.og-chart{background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:20px 12px 16px;min-width:0;}
.og-top{display:flex;justify-content:center;position:relative;padding-bottom:22px;}
.og-top::after{content:"";position:absolute;left:50%;bottom:0;height:22px;border-left:1.5px solid var(--cc-line);}
.og-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:relative;padding-top:22px;}
.og-cols::before{content:"";position:absolute;top:0;left:16.67%;right:16.67%;border-top:1.5px solid var(--cc-line);}
.og-col{position:relative;display:flex;flex-direction:column;gap:10px;padding:0 6px;min-width:0;}
.og-col::before{content:"";position:absolute;top:-22px;left:50%;height:22px;border-left:1.5px solid var(--cc-line);}
.og-ch{align-self:center;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--text-dim);background:var(--cc-soft);border-radius:99px;padding:4px 10px;margin-bottom:2px;text-align:center;}
.og-br{display:flex;flex-direction:column;}
.og-kids{display:flex;flex-direction:column;margin-left:16px;border-left:1.5px solid var(--cc-line);padding-top:10px;}
.og-kid{position:relative;padding:0 0 10px 14px;}
.og-kid::before{content:"";position:absolute;left:0;top:26px;width:14px;border-top:1.5px solid var(--cc-line);}
.og-kid:last-child{padding-bottom:0;}
.og-kid:last-child::after{content:"";position:absolute;left:-1.5px;top:27px;bottom:0;border-left:3px solid var(--panel);}
.og-root{display:flex;gap:10px;align-items:center;background:var(--text);color:var(--bg);border-radius:16px;padding:12px 16px;min-width:170px;}
.og-root .cc-av{background:var(--bg);color:var(--text);border-color:var(--text);}
.og-root b{display:block;font-size:15px;font-weight:800;} .og-root small{font-size:12px;opacity:.7;}
.og-n{width:100%;display:flex;flex-direction:column;gap:8px;text-align:left;border:1px solid var(--border);background:var(--panel);border-radius:16px;padding:11px 13px 11px 15px;cursor:pointer;position:relative;overflow:hidden;transition:border-color .15s,box-shadow .15s;}
.og-n::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:transparent;}
.og-n.st-crit::before{background:var(--err);} .og-n.st-warn::before{background:var(--warn);}
.og-n.st-crit{border-color:color-mix(in srgb,var(--err) 45%,var(--border));}
.og-n.pl{background:transparent;border-style:dashed;} .og-n.pl .h b{color:var(--text-dim);}
.og-n:hover{border-color:var(--text-dim);} .og-n.sel{border-color:var(--text);box-shadow:0 0 0 3px color-mix(in srgb,var(--text) 12%,transparent);}
.og-n .h{display:flex;justify-content:space-between;gap:6px;align-items:baseline;} .og-n .h b{font-size:14px;line-height:1.25;font-weight:800;}
.og-n .s{flex:none;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim);}
.og-n.st-crit .s{color:var(--err);} .og-n.st-warn .s{color:var(--warn);} .og-n.st-ok .s{color:var(--ok);}
.og-n .hd{display:flex;gap:8px;align-items:center;font-size:13px;font-weight:700;min-height:30px;} .og-n .hd small{display:block;font-size:11px;color:var(--text-dim);font-weight:500;}
.og-n .hd .vt{color:var(--warn);font-size:12.5px;} .og-n .hd .pl{color:var(--text-dim);font-weight:500;font-size:12.5px;}
.og-n .k b{font-size:19px;font-weight:800;font-variant-numeric:tabular-nums;} .og-n .k b small{font-size:12px;color:var(--text-dim);font-weight:600;} .og-n .k span{font-size:12px;color:var(--text-dim);margin-left:6px;}
.og-n .pp{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12px;} .og-n .pp span{display:flex;align-items:center;gap:5px;}
.og-n .ch{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:22px;}
.og-n .ch>span{display:flex;align-items:center;font-size:11.5px;font-weight:700;}
.og-n .ch>span .cc-av.sm{margin-left:-6px;} .og-n .ch>span .cc-av.s:first-child{margin-left:0;}
.og-n .ch em{font-style:normal;color:var(--text-dim);margin-left:6px;}
.og-n .ch .ai{padding:2px 8px;border-radius:8px;background:var(--ai-bg);color:var(--ai);}
.og-n .ch .pr{padding:2px 8px;border-radius:8px;background:var(--err-bg);color:var(--err);}
.og-n.st-warn .ch .pr{background:var(--warn-bg);color:var(--warn);}
/* боковая карточка */
.og-side{position:sticky;top:70px;}
.og-sd{background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:16px;display:flex;flex-direction:column;gap:12px;}
.og-sd .t{font-size:18px;font-weight:800;line-height:1.25;} .og-sd .d{margin:0;font-size:13px;color:var(--text-dim);line-height:1.45;}
.og-sh{display:flex;justify-content:space-between;align-items:center;}
.og-sh .s{font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:3px 8px;border-radius:99px;background:var(--cc-soft);color:var(--text-dim);}
.og-sh .s.st-crit{background:var(--err-bg);color:var(--err);} .og-sh .s.st-warn{background:var(--warn-bg);color:var(--warn);} .og-sh .s.st-ok{background:var(--ok-bg);color:var(--ok);}
.og-x{border:0;background:var(--cc-soft);width:32px;height:32px;border-radius:10px;cursor:pointer;}
.og-k b{font-size:28px;font-weight:800;font-variant-numeric:tabular-nums;} .og-k b small{font-size:14px;color:var(--text-dim);} .og-k span{display:block;font-size:12.5px;color:var(--text-dim);}
.og-m{display:grid;grid-template-columns:1fr auto;gap:4px 8px;align-items:baseline;} .og-m>span{font-size:13px;font-weight:700;} .og-m>b{font-size:16px;font-weight:800;} .og-m>b small{font-size:12px;color:var(--text-dim);}
.og-m .cc-bl{grid-column:1/3;} .og-m .g{grid-column:1/3;font-size:12px;font-weight:700;color:var(--text-dim);} .og-m .g.st-bad{color:var(--err);} .og-m .g.st-warn{color:var(--warn);} .og-m .g.st-ok{color:var(--ok);}
.og-g{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--cc-line);padding-top:12px;}
.og-g>b{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);}
.og-p{display:flex;gap:10px;align-items:center;font-size:14px;font-weight:600;} .og-p small{display:block;font-size:12px;color:var(--text-dim);font-weight:500;}
.og-pb{display:flex;gap:10px;font-size:13.5px;line-height:1.35;} .og-pb i{flex:none;width:8px;height:8px;border-radius:50%;margin-top:6px;background:var(--warn);} .og-pb.sev-crit i{background:var(--err);}
.og-pb small{display:block;color:var(--text-dim);font-size:12px;margin-top:2px;}
.og-li{display:flex;align-items:center;gap:10px;border:0;background:var(--cc-soft);border-radius:12px;padding:10px 12px;cursor:pointer;font-weight:700;font-size:14px;text-align:left;}
.og-li i{width:8px;height:8px;border-radius:50%;background:var(--warn);} .og-li.st-crit i{background:var(--err);}
.og-li em{margin-left:auto;font-style:normal;font-size:12px;color:var(--text-dim);}
.og-go{border:0;background:var(--text);color:var(--bg)!important;border-radius:12px;min-height:44px;font-weight:800;cursor:pointer;}

/* ─── Дашборды ─── */
.db-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;}
.db-c{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:15px;display:flex;flex-direction:column;gap:7px;min-width:0;}
.db-c.st-bad{border-color:var(--err);}
.db-t{display:flex;justify-content:space-between;gap:8px;align-items:baseline;} .db-t b{font-size:14px;} .db-t span{font-size:12px;color:var(--text-dim);white-space:nowrap;}
.db-v{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;} .db-v>b{font-size:32px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;}
.db-n{border:0;background:none;padding:0;font-size:13px!important;color:var(--text-dim)!important;font-weight:600;border-bottom:1px dashed var(--text-dim)!important;cursor:text;}
.db-n input{width:80px;font:inherit;font-size:14px;padding:4px 6px;border:1px solid var(--accent);border-radius:8px;background:var(--panel);color:var(--text);}
.db-gap{font-size:13.5px;font-weight:800;color:var(--text-dim);}
.db-c.st-ok .db-gap{color:var(--ok);} .db-c.st-warn .db-gap{color:var(--warn);} .db-c.st-bad .db-gap{color:var(--err);}
.db-p{font-size:12px;color:var(--text-dim);}
.db-c .cc-sp{width:100%;height:52px;margin-top:4px;}
.db-f{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11.5px;color:var(--text-dim);font-variant-numeric:tabular-nums;}

@media (max-width:900px){
  .cc-q{order:-1;}
  .cc-r1{grid-template-columns:1fr;}
  .og-body{grid-template-columns:1fr;}
  .og-side{position:static;}
  .cc-lr{grid-template-columns:1fr auto;gap:6px 12px;}
  .cc-lr .bb{grid-column:1/3;} .cc-lr .sp{display:none;}
}
@media (max-width:640px){
  .cc-lead{font-size:20px;}
  .cc-card{padding:14px;border-radius:18px;}
  .cc-rg{width:116px;height:116px;}
  .cc-qi{grid-template-columns:1fr;} .cc-qi .b button{flex:1;}
  .cc-pi{grid-template-columns:10px 1fr;} .cc-pi .m{grid-column:2;justify-content:flex-start;max-width:none;}
  .cc-hg{grid-template-columns:repeat(2,minmax(0,1fr));}
  .cc-hir{grid-template-columns:96px repeat(14,minmax(10px,1fr));gap:2px;} .cc-hir.hd i{font-size:9px;}
  .og-cols{grid-template-columns:1fr;padding-top:0;gap:14px;} .og-cols::before,.og-col::before,.og-top::after{display:none;} .og-top{padding-bottom:12px;}
  .og-chart{padding:14px 10px;}
  .og-n{width:100%;}
}
@media (prefers-reduced-motion:reduce){.cc-rg .fg{transition:none;}}
