:root{--font: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;--page: #eef2f7;--surface: #fff;--soft: #f8fafc;--ink: #102542;--muted: #54606c;--line: rgba(15, 23, 42, .08);--line-strong: rgba(15, 23, 42, .16);--navy: #1e3a5f;--accent: #1e40af;--accent-light: #3b82f6;--accent-soft: #eaf1ff;--ok: #2f855a;--warn: #b7791f;--bad: #b91c1c;--side: 264px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font:14px/1.4 var(--font);background:var(--page);color:var(--ink)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,input,textarea,select{font:inherit;color:inherit}h1,h2,h3,p,dl,dd{margin:0}:focus-visible{outline:2px solid var(--accent-light);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:12px}.num{font-variant-numeric:tabular-nums;white-space:nowrap}.r{text-align:right}.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:14px}.grow{flex:1;min-width:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.app{display:grid;grid-template-columns:var(--side) minmax(0,1fr);min-height:100vh}.side{position:sticky;top:0;height:100vh;overflow-y:auto;display:flex;flex-direction:column;color:#94a3b8;background:linear-gradient(180deg,#0f172a,#1e293b 52%,#1a2332)}.brand{padding:18px 18px 14px;border-bottom:1px solid rgba(255,255,255,.08)}.brand b{color:#fff;font-size:17px;letter-spacing:.02em}.brand span{display:block;font-size:11.5px;margin-top:3px}.navsec{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;padding:14px 22px 5px;color:#8494ab}.nav{display:flex;align-items:center;gap:10px;padding:7px 18px 7px 19px;color:#cbd5e1;font-size:13.5px;border:0;border-left:3px solid transparent;background:none;min-height:34px;width:100%;text-align:left;cursor:pointer}.nav:hover{color:#fff;text-decoration:none;background:#ffffff0d}.nav svg{flex:none;opacity:.8}.nav.active{background:#3b82f629;border-left-color:var(--accent-light);color:#fff;font-weight:600}.nav .n{margin-left:auto;font-size:11px;font-weight:700;padding:1px 8px;border-radius:999px;border:1px solid rgba(250,204,21,.5);color:#fde68a}.nav.soon{color:#64748b;cursor:default}.nav.soon:hover{background:none;color:#64748b}.nav .tag{margin-left:auto;font-size:9.5px;letter-spacing:.06em;text-transform:uppercase}.sidefoot{margin-top:auto;padding:8px 0 12px;border-top:1px solid rgba(255,255,255,.08)}.nav.out,.nav.out:hover{color:#f87171}.main{min-width:0;display:flex;flex-direction:column}.top{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:12px;padding:11px 20px;background:linear-gradient(135deg,#1e3a5f,#1e40af 56%,#4338ca)}.top .sq{width:38px;height:38px;border-radius:10px;background:#ffffff24;border:1px solid rgba(255,255,255,.18);display:grid;place-items:center;color:#fff;cursor:pointer}.top .me{margin-left:auto;display:flex;align-items:center;gap:9px;height:38px;padding:0 12px 0 6px;border-radius:10px;background:#ffffff24;border:1px solid rgba(255,255,255,.18);color:#fff;font-weight:600;font-size:13.5px}.top .me{margin-left:0}.bell{margin-left:auto;position:relative}.bell .sq{position:relative;display:grid;place-items:center;color:#fff;cursor:pointer}.bell .dot{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:#dc2626;color:#fff;font-size:10.5px;font-weight:700;display:grid;place-items:center;border:2px solid #1e3a8a}.bellmenu{position:absolute;right:0;top:46px;width:min(360px,calc(100vw - 32px));max-height:70vh;overflow-y:auto;background:#fff;color:var(--ink, #0f172a);border-radius:12px;box-shadow:0 12px 32px #0f172a38;border:1px solid var(--line);z-index:30}.bellitem{display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-top:1px solid var(--line);font-size:13px;color:inherit}.bellitem:hover,.bellfoot:hover{background:#f8fafc;text-decoration:none}.bellitem.new{background:#eff6ff}.bellitem span{font-size:12px}.bellfoot{display:block;padding:11px 14px;border-top:1px solid var(--line);font-size:13px;font-weight:600;text-align:center}.linkbtn{background:none;border:0;padding:0;color:var(--accent);cursor:pointer;font:inherit;font-size:12.5px}.top .me:hover{text-decoration:none;background:#fff3}.av{width:26px;height:26px;border-radius:50%;background:#fce7f3;color:#9d174d;display:grid;place-items:center;font-size:10.5px;font-weight:700}.page{padding:18px 20px 48px;display:flex;flex-direction:column;gap:14px}.crumb{font-size:13.5px;color:var(--muted)}.crumb a{color:var(--muted)}.crumb b{color:var(--ink)}.h1{font-size:25px;line-height:1.15;font-weight:700;letter-spacing:-.02em}.sub{color:var(--muted);margin-top:4px;max-width:900px}.side-backdrop,.only-phone,.top .sq.only-phone{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 14px;border-radius:9px;border:1px solid var(--line-strong);background:#fff;color:var(--ink);font-weight:600;font-size:14px;cursor:pointer;white-space:nowrap}.btn:hover{border-color:#94a3b8;text-decoration:none}.btn.pri{background:var(--accent);border-color:var(--accent);color:#fff}.btn.pri:hover{background:#1e3a8a}.btn.danger{color:var(--bad);border-color:#f1b5b5}.btn.sm{min-height:32px;font-size:13px;padding:0 10px}.btn:disabled{opacity:.55;cursor:default}.ib{width:34px;height:34px;border-radius:8px;border:1px solid var(--line-strong);background:#fff;color:#334155;display:grid;place-items:center;padding:0;cursor:pointer}.ib:hover{border-color:var(--accent);color:var(--accent)}.link{border:0;background:none;padding:0;color:var(--accent);font-weight:600;cursor:pointer}.inp{width:100%;min-height:38px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;padding:0 11px;font-size:14px}textarea.inp{padding:9px 11px;resize:vertical;line-height:1.45}.inp.n{text-align:right;font-variant-numeric:tabular-nums}.inp[aria-invalid=true]{border-color:var(--bad)}.lab{font-size:13px;font-weight:600;display:flex;flex-direction:column;gap:5px;min-width:0}.lab small{font-weight:400;color:var(--muted)}.lab .err{font-weight:400;color:var(--bad);font-size:12px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fields .full{grid-column:1 / -1}.check small{font-size:12px}.check{display:flex;gap:9px;align-items:center;font-size:13.5px}.check input{width:18px;height:18px;accent-color:var(--accent)}.card{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 3px #0f172a0d}.cardh{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px}.cardh h2{font-size:16px;font-weight:700}.cardb{padding:0 16px 16px}.kv{display:grid;grid-template-columns:150px minmax(0,1fr);gap:8px 12px;font-size:13.5px}.kv dt{color:var(--muted)}.kv .none{color:var(--muted);font-style:italic}.alert{padding:11px 14px;border-radius:10px;font-size:13.5px}.alert.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.alert.ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.alert.info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a}.alert.warn{background:#fff8e1;border:1px solid #e8c766;color:#6b4a00}.pill{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}.t-blue{background:#dbeafe;color:#1e3a8a}.t-grey{background:#e2e8f0;color:#334155}.t-green{background:#d1fae5;color:#065f46}.t-amber{background:#fef3c7;color:#92400e}.t-red{background:#fee2e2;color:#991b1b}.who{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--navy)}.who:before{content:"";width:6px;height:6px;border-radius:2px;background:currentColor}.who.client{color:#92400e}.ini{width:30px;height:30px;border-radius:8px;background:#e8eef7;color:var(--navy);display:grid;place-items:center;font-size:11px;font-weight:700;flex:none}.code{display:inline-block;font:700 10.5px ui-monospace,Menlo,monospace;letter-spacing:.04em;padding:1px 6px;border-radius:5px;background:#fef3c7;color:#92400e}.empty{padding:36px 16px;text-align:center;color:var(--muted);background:#fff}.empty b{display:block;color:var(--ink);font-size:15px;margin-bottom:4px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.kpi{padding:12px 14px;border-radius:10px;background:#fff;border:1px solid var(--line)}.kpi .v{font-size:21px;font-weight:700;line-height:1.1}.kpi .v small{font-size:12px;margin-left:6px}.kpi .l{font-size:12.5px;font-weight:600;margin-top:3px}.kpi .d{font-size:11.5px;color:var(--muted);margin-top:5px}.views{display:flex;gap:4px;padding:5px;background:#fff;border-radius:10px;border:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.views::-webkit-scrollbar{display:none}.view{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:0 12px;border-radius:8px;font-size:13.5px;font-weight:600;color:#334155;border:0;background:none;cursor:pointer;white-space:nowrap;flex:none}.view i{width:7px;height:7px;border-radius:50%}.view em{font-style:normal;font-size:11px;font-weight:700;background:var(--page);color:#475569;padding:1px 7px;border-radius:999px}.view.on{background:var(--navy);color:#fff}.view.on em{background:#fff3;color:#fff}.toolbar{display:flex;align-items:center;gap:10px;padding:9px 14px;flex-wrap:wrap}.toolbar .inp{max-width:380px}.tablewrap{background:#fff;box-shadow:0 1px 3px #0f172a0d;overflow-x:auto}table.t{width:100%;border-collapse:collapse;font-size:13.5px}.t th{background:var(--navy);color:#fff;font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;text-align:left;padding:11px 12px;font-weight:700;white-space:nowrap}.t td{padding:11px 12px;border-top:1px solid var(--line);vertical-align:top}.t tr.click{cursor:pointer}.t tr.click:hover td{background:#f8fafc}.t tr.grp td{background:#f1f5f9;font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;color:#334155;padding:8px 12px}.ref{font-weight:700}.meter{height:7px;border-radius:4px;background:#e2e8f0;overflow:hidden;margin-top:6px}.meter i{display:block;height:100%;background:var(--accent)}.meter.over i{background:#c53030}.meter.low i{background:#d97706}.tick{width:22px;height:22px;border-radius:6px;border:2px solid #94a3b8;background:#fff;display:grid;place-items:center;color:#fff;cursor:pointer;padding:0}.tick.on{background:var(--ok);border-color:var(--ok)}.done b{text-decoration:line-through;color:var(--muted);font-weight:500}.quick{display:grid;grid-template-columns:minmax(0,1fr) 170px auto;gap:10px;padding:12px 14px;align-items:center}.pager{display:flex;flex-direction:column;gap:12px;padding:12px 4px 4px;font-size:13px;color:var(--ink)}.pager-top{display:flex;align-items:center;justify-content:space-between;gap:12px 16px;flex-wrap:wrap}.pager-top label{display:flex;align-items:center;gap:8px;font-weight:600}.pager-top .inp{width:auto;min-height:30px;padding:0 6px;font-size:13px}.pager-nav{display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap}.pg{min-width:30px;height:30px;padding:0 8px;border:1px solid var(--line-strong);border-radius:7px;background:#fff;color:var(--ink);font:600 13px var(--font);cursor:pointer}.pg:hover:not(:disabled){border-color:var(--accent-light);color:var(--accent)}.pg.on{background:var(--accent-soft);border-color:var(--accent-light);color:var(--accent)}.pg:disabled{opacity:.45;cursor:default}.pg-gap{min-width:22px;text-align:center;color:var(--muted)}.cols{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start}.cols.even{grid-template-columns:repeat(2,minmax(0,1fr))}.band{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.band>div{padding:14px 18px}.band>div+div{border-left:1px solid var(--line)}.cap{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--muted);margin-bottom:5px}.actionbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px 12px 16px;flex-wrap:wrap}.badge-dark{background:var(--navy);color:#fff;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line-strong);overflow-x:auto;scrollbar-width:none}.tab{padding:9px 13px;font-size:14px;font-weight:600;color:#475569;border:0;background:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;white-space:nowrap}.tab.on{color:var(--accent);border-bottom-color:var(--accent)}.tab em{font-style:normal;font-size:11px;font-weight:700;background:#e2e8f0;color:#475569;padding:1px 7px;border-radius:999px;margin-left:5px}.tot{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 24px;font-size:14px}.tot .big{font-size:16.5px;font-weight:700}.hist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:13px}.hist li{display:grid;grid-template-columns:8px minmax(0,1fr);gap:10px;overflow-wrap:anywhere}.hist li:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent-light);margin-top:5px}.hist li.sys:before{background:#94a3b8}.lines td{padding:8px 6px;vertical-align:top}.lines .inp{min-height:36px;font-size:13.5px}.savebar{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;flex-wrap:wrap}.calwrap{overflow-x:auto;background:#fff;box-shadow:0 1px 3px #0f172a0d}.cal{display:grid;grid-template-columns:56px repeat(7,minmax(110px,1fr));min-width:830px}.cal-corner,.cal-head{background:var(--navy);color:#fff;font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;padding:11px 10px}.cal-head{border-left:1px solid rgba(255,255,255,.12)}.cal-head.today{background:var(--accent)}.cal-side{font-size:10.5px;color:var(--muted);padding:8px 6px;text-align:right;border-bottom:1px solid var(--line-strong)}.cal-all{min-height:40px;padding:5px;border-left:1px solid var(--line);border-bottom:1px solid var(--line-strong);display:flex;flex-direction:column;gap:4px}.cal-all.today,.cal-day.today{background-color:#f5f8ff}.cal-chip{display:block;width:100%;text-align:left;border:0;font-size:11.5px;font-weight:600;padding:4px 7px;border-radius:6px;background:#e2e8f0;color:#1e293b;line-height:1.3;cursor:pointer}.cal-chip:hover{text-decoration:none;filter:brightness(.96)}.cal-chip.done{text-decoration:line-through;opacity:.65}.cal-hours div{font-size:10.5px;color:var(--muted);text-align:right;padding:2px 6px 0}.cal-day{position:relative;border-left:1px solid var(--line);background-image:linear-gradient(rgba(15,23,42,.07) 1px,transparent 1px)}.cal-event{position:absolute;left:4px;right:4px;border-radius:7px;padding:4px 7px;background:#e3ecff;border:1px solid #b6cbf7;color:var(--ink);overflow:hidden;display:flex;flex-direction:column;gap:1px;font-size:11.5px;line-height:1.3;text-align:left;cursor:pointer}.cal-event span{color:#3b4a5e;font-size:10.5px}.cal-event.meeting{background:var(--accent);border-color:var(--accent);color:#fff}.cal-event.meeting span{color:#dbe6ff}.cal-event.done{opacity:.6}.cal-now{position:absolute;left:0;right:0;height:2px;background:#c53030;z-index:2}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:39;background:#0f172a80}.drawer{position:fixed;top:0;right:0;bottom:0;z-index:40;width:min(520px,100%);overflow-y:auto;background:#fff;box-shadow:-16px 0 40px #0f172a40;display:flex;flex-direction:column}.drawer-head{position:sticky;top:0;background:#fff;padding:16px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;z-index:1}.drawer-body{padding:18px 20px;display:flex;flex-direction:column;gap:14px;flex:1}.drawer-foot{position:sticky;bottom:0;background:#fff;padding:12px 20px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.auth{min-height:100vh;display:grid;grid-template-columns:420px 1fr}.auth-side{background:linear-gradient(180deg,#0f172a,#1e293b 52%,#1a2332);color:#cbd5e1;padding:44px 40px;display:flex;flex-direction:column;gap:14px}.auth-side b{color:#fff;font-size:20px}.auth-side h2{color:#fff;font-size:26px;line-height:1.2;margin-top:auto;letter-spacing:-.02em}.auth-side ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;font-size:13.5px}.auth-side li{display:flex;gap:9px}.auth-side li svg{color:#93c5fd;flex:none;margin-top:2px}.auth-panel{display:grid;place-items:center;padding:32px 16px}.auth-box{width:min(400px,100%);background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 6px 24px #0f172a14;padding:30px;display:flex;flex-direction:column;gap:16px}.auth-box h1{font-size:23px;letter-spacing:-.02em}.auth-box .btn{min-height:44px;width:100%}.auth-box .inp{min-height:44px}.codes{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;font:600 13.5px ui-monospace,Menlo,monospace}.codes span{padding:7px 10px;background:var(--soft);border:1px solid var(--line);border-radius:7px;text-align:center}@media(max-width:1100px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.cols,.cols.even{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.app{grid-template-columns:minmax(0,1fr)}.side{position:fixed;z-index:31;width:min(290px,86vw);transform:translate(-105%);visibility:hidden;transition:transform .2s ease-out,visibility .2s}.side.open{transform:none;visibility:visible}.side-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#0f172a8c}.only-phone,.top .sq.only-phone{display:grid}.bellmenu{position:fixed;left:16px;right:16px;top:60px;width:auto}.page{padding:14px 12px 40px}.h1{font-size:21px}.fields,.quick{grid-template-columns:minmax(0,1fr)}.kv{grid-template-columns:110px minmax(0,1fr)}.band>div+div{border-left:0;border-top:1px solid var(--line)}.auth{grid-template-columns:minmax(0,1fr)}.auth-side{display:none}.me span:not(.av){display:none}}@media(prefers-reduced-motion:reduce){.side{transition:none}}.modal{position:fixed;z-index:41;top:4vh;left:50%;transform:translate(-50%);width:min(620px,calc(100vw - 24px));max-height:92vh;overflow-y:auto;background:#fff;border-radius:14px;box-shadow:0 24px 64px #0f172a4d;display:flex;flex-direction:column}.modal.wide{width:min(1000px,calc(100vw - 24px))}.modal .drawer-head{border-radius:14px 14px 0 0}.modal-body{padding:18px 20px;display:flex;flex-direction:column;gap:14px}.split{display:grid;grid-template-columns:minmax(0,1fr) 290px}.split>.preview{background:var(--page);padding:20px}.split>.side2{padding:16px;border-left:1px solid var(--line);display:flex;flex-direction:column;gap:14px;font-size:13px}.paper{background:#fff;border-radius:10px;border:1px solid var(--line);box-shadow:0 1px 3px #0f172a0f}.paper .obj{padding:14px 18px;border-bottom:1px solid var(--line)}.paper .obj b{display:block;font-size:15px;margin-top:2px}.paper .txt{padding:18px;white-space:pre-wrap;line-height:1.6;font-size:14px;min-height:260px;overflow-wrap:anywhere}.note{padding:10px 12px;border-radius:10px;border-left:3px solid var(--ok);background:#ecfdf5}.note.custom{border-left-color:var(--accent);background:#eff6ff}.mini{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.mini div{border:1px solid var(--line);border-radius:8px;padding:6px 8px}.mini small{display:block;color:var(--muted);font-size:11px}.mini b{font-size:14px}.var{display:flex;gap:8px;align-items:baseline;width:100%;text-align:left;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;font:inherit;font-size:12px}.var:hover{background:#f8fafc}.var code{color:var(--accent);font-size:11.5px;white-space:nowrap}.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.tcard{display:flex;flex-direction:column;gap:8px;text-align:left;padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:10px;cursor:pointer;font:inherit;color:inherit;min-height:150px}.tcard:hover{border-color:var(--accent-light, #93c5fd);box-shadow:0 2px 8px #0f172a14}.tcard b{font-size:14px}.tcard p{font-size:12.5px;color:#475569;line-height:1.45}.tcard .foot{margin-top:auto;padding-top:8px;border-top:1px solid var(--line);font-size:11.5px;color:var(--muted);display:flex;gap:10px;flex-wrap:wrap}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.steps>div{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;padding:10px 12px;background:#fff;border:1px solid var(--line);border-radius:10px;font-size:12.5px}.steps i{width:22px;height:22px;border-radius:50%;background:var(--navy);color:#fff;font-style:normal;font-weight:700;font-size:12px;display:grid;place-items:center}.tl{background:#fff;border:1px solid var(--line);border-radius:10px}.tl .day{padding:9px 14px;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--muted);background:#f8fafc;border-top:1px solid var(--line)}.tl .day:first-child{border-top:0;border-radius:10px 10px 0 0}.tl .ev{display:grid;grid-template-columns:46px 10px minmax(0,1fr) auto;gap:10px;padding:10px 14px;border-top:1px solid var(--line);font-size:13.5px;align-items:baseline}.tl .ev time{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.tl .ev .pt{width:8px;height:8px;border-radius:50%;background:var(--navy);align-self:start;margin-top:6px}.tl .ev.sys .pt{background:#94a3b8}.tl .ev.imp .pt{background:#c53030}.tl .ev .who{font-size:12.5px;font-weight:600;color:var(--accent);white-space:nowrap}.tl .ev.sys .who{color:var(--muted)}.chip{display:inline-block;padding:1px 8px;border-radius:6px;background:#e8efff;color:#1e3a8a;font-size:11.5px;font-weight:600;margin:4px 6px 0 0}.chip.kind{background:var(--page);color:#475569}.fpanel{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;padding:12px 14px;align-items:end}.seg{display:flex;gap:6px;flex-wrap:wrap}.seg .btn.on{background:var(--navy);color:#fff;border-color:var(--navy)}.helpbar{display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px;padding:12px 14px;border-radius:10px;background:#eaf0ff;border:1px solid #c7d6fb;font-size:13px}.helpbar i{width:26px;height:26px;border-radius:8px;background:var(--navy);color:#fff;font-style:normal;font-weight:700;display:grid;place-items:center}.helpbar ol{margin:4px 0 0;padding-left:18px;line-height:1.6}@media(max-width:900px){.split{grid-template-columns:minmax(0,1fr)}.split>.side2{border-left:0;border-top:1px solid var(--line)}.steps{grid-template-columns:minmax(0,1fr)}.tl .ev{grid-template-columns:40px 10px minmax(0,1fr)}.tl .ev .who{grid-column:3}.modal{top:12px;max-height:calc(100vh - 24px)}}.ledger-head{padding:0}.lh-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr) minmax(180px,.8fr);gap:32px;padding:22px 24px 20px;align-items:center}.ledger-head .big{font-size:34px;font-weight:650;letter-spacing:-.025em;line-height:1.1;margin:4px 0 6px}.charges{margin:0;display:flex;flex-direction:column;gap:6px;font-size:13px}.charges>div:not(.bar){display:flex;justify-content:space-between;gap:16px}.charges dt{color:var(--muted)}.charges dd{margin:0}.charges .total{border-top:1px solid var(--line-strong);padding-top:7px;margin-top:1px}.charges .total dt{color:var(--ink);font-weight:600}.charges .total dd{font-weight:650}.charges .bar{height:3px;border-radius:2px;background:var(--accent);overflow:hidden;display:flex;justify-content:flex-end;margin-top:4px}.charges .bar i{display:block;height:100%;background:#cbd5e1}.trend{margin:0}.trend svg{display:block}.trend figcaption{font-size:11.5px;color:var(--muted);margin-top:2px}.lh-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line)}.lh-stats>div{padding:12px 24px;display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:13px;border-left:1px solid var(--line)}.lh-stats>div:first-child{border-left:0}.lh-stats span{color:var(--muted)}.lh-stats small{opacity:.8}.lh-stats b{font-size:15px;font-weight:650}.lh-stats .alert-num{color:var(--bad)}.sechead{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:10px}.sechead h2{font-size:15px;font-weight:650}.sechead h2 .muted{font-weight:400}.ops{overflow:hidden}.opmonth{padding:7px 24px;background:var(--soft);border-top:1px solid var(--line);font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--muted)}.op{display:grid;grid-template-columns:58px minmax(0,1fr) auto minmax(150px,auto);gap:18px;padding:11px 24px;border-top:1px solid var(--line);align-items:baseline}.opyear{padding:9px 24px;background:var(--navy);color:#fff;font-size:15px;font-weight:700;letter-spacing:.04em;font-variant-numeric:tabular-nums}.opyear+.opmonth{border-top:0}.ops>.op:first-child,.ops>div:first-child>.opmonth{border-top:0}.op:hover{background:var(--soft)}.opday{font-size:12.5px;color:var(--muted);white-space:nowrap}.opwho{font-weight:600;font-size:13.5px;overflow-wrap:anywhere}.op.todo .opwho:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#d69e2e;margin-right:8px;vertical-align:middle}.say{margin-top:2px;font-size:13px;color:var(--muted);overflow-wrap:anywhere}.say .mk{font-style:normal;font-weight:600;color:var(--ink)}.say a.mk{color:var(--accent)}.op .tags{margin-top:5px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.opamt{text-align:right;font-weight:600;font-size:14px;white-space:nowrap}.opamt.in{color:var(--ok)}.opact{display:flex;gap:14px;justify-content:flex-end;align-items:center}.lnk{background:none;border:0;padding:0;font:inherit;font-size:12.5px;font-weight:600;color:var(--accent);cursor:pointer;white-space:nowrap}.lnk:hover{text-decoration:underline}.lnk.quiet{color:var(--muted);font-weight:500}.lnk.strong{color:var(--bad)}.op:not(:hover) .lnk.quiet{opacity:0}.lnk.quiet:focus-visible{opacity:1}.calc{margin-top:3px;font-size:12.5px;color:var(--muted)}.calc span:last-child{color:var(--ink);font-weight:600}.rules{display:flex;flex-direction:column;margin-top:8px}.rule{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:10px 0;border-top:1px solid var(--line);font-size:13px;align-items:center}@media(max-width:1100px){.lh-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.trend{grid-column:1 / -1}}@media(max-width:900px){.lh-main{grid-template-columns:minmax(0,1fr);gap:18px;padding:18px 16px}.lh-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.lh-stats>div{padding:10px 16px}.lh-stats>div:nth-child(odd){border-left:0}.lh-stats>div:nth-child(n+3){border-top:1px solid var(--line)}.op{grid-template-columns:52px minmax(0,1fr) auto;padding:11px 16px;gap:10px}.opact{grid-column:2 / -1;justify-content:flex-start}.op .lnk.quiet{opacity:1}.opmonth{padding:7px 16px}.opyear{padding:9px 16px}}.cmp-page{gap:12px}.cmp-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}.cmp-head h1{font-size:22px;margin-top:2px}.cmp-head .crumbs{font-size:13px;color:var(--muted)}.cmp{display:grid;grid-template-columns:minmax(340px,460px) minmax(0,1fr);gap:14px;height:calc(100vh - 190px);min-height:520px}.cmp-form{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:12px;min-height:0}.cmp-scroll{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;min-height:0}.cmp-total{display:flex;justify-content:space-between;align-items:baseline;padding-top:10px;border-top:1px solid var(--line-strong);font-size:13px}.cmp-total b{font-size:17px}.cmp-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:10px 16px;border-top:1px solid var(--line)}.cmp-actions .lnk{margin-right:auto}.cmp-doc{display:flex;flex-direction:column;background:#1e293b;border-radius:12px;overflow:hidden;min-height:0}.cmp-docbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;background:#0f172a;color:#cbd5e1;font-size:12.5px}.cmp-docbar .lnk{color:#93c5fd}.cmp-docbar .row{gap:14px}.cmp-doc iframe{flex:1;width:100%;border:0;background:#fff;min-height:0}.cmp-img{flex:1;overflow:auto;padding:14px;display:grid;place-items:start center;min-height:0}.cmp-img img{max-width:100%;background:#fff}.cmp-drop{display:grid;place-content:center;justify-items:center;gap:10px;text-align:center;padding:24px;border:2px dashed var(--line-strong);border-radius:12px;background:var(--soft)}.cmp-drop.over{border-color:var(--accent);background:var(--accent-soft)}@media(max-width:900px){.cmp{grid-template-columns:minmax(0,1fr);height:auto}.cmp-doc iframe{min-height:70vh}.cmp-drop{min-height:220px}.cmp-scroll{overflow:visible}}.withdoc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}.withdoc>.cols{grid-template-columns:minmax(0,1fr)}.withdoc>.cmp-doc{position:sticky;top:74px;height:calc(100vh - 96px)}.cmp-wrap{display:flex;flex-direction:column;min-height:0}.cmp-wrap>.cmp-doc{flex:1}@media(max-width:1100px){.withdoc{grid-template-columns:minmax(0,1fr)}.withdoc>.cmp-doc{position:static;height:80vh}}.exercise-pick{display:flex;flex-direction:column;gap:3px;font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.exercise-pick .inp{width:auto;font-weight:600;text-transform:none;letter-spacing:0}.todo-strip{padding:14px 16px;display:flex;flex-direction:column;gap:10px}.todo-strip h2,.section-title{font-size:15px;margin:0}.todo-count{background:var(--bad);color:#fff;font-weight:700;font-size:12px;padding:2px 9px;border-radius:999px}.todo-count.none{background:var(--ok)}.todo-chips{display:flex;gap:8px;flex-wrap:wrap}.todo-chip{border:1px solid var(--line-strong);background:var(--soft);border-radius:8px;padding:6px 10px;font:13px var(--font);color:var(--ink);cursor:pointer;text-align:left}.todo-chip:hover{border-color:var(--accent-light)}.bilan{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.bilan-bloc{padding:16px 18px;display:flex;flex-direction:column;gap:12px;min-width:0}.bilan-bloc h2{font-size:15px;margin:0}.bilan-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px}.bilan-fig{font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1.15}.bilan-pairs{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 16px;font-size:13.5px;margin:0}.bilan-pairs dt{color:var(--muted)}.bilan-pairs dd{margin:0;text-align:right;font-weight:600}.bilan-verdict{border-radius:8px;padding:9px 11px;font-size:13px;margin-top:auto}.bilan-verdict.ok{background:#ecfdf5;color:#065f46}.bilan-verdict.warn{background:#fff8e1;color:#6b4a00}.bilan-verdict.bad{background:#fef2f2;color:#991b1b}.bilan-verdict.grey{background:var(--soft);color:var(--muted)}.bilan-bar{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.bilan-bar i{display:block;height:100%;background:var(--ok)}.seg{display:inline-flex;border:1px solid var(--line-strong);border-radius:8px;overflow:hidden;flex-shrink:0}.seg button{font:600 13px var(--font);color:var(--muted);background:#fff;border:0;padding:7px 12px;cursor:pointer}.seg button+button{border-left:1px solid var(--line-strong)}.seg button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}table.exercise{min-width:1080px}table.exercise th.grp{font-size:11.5px;text-align:center}table.exercise th.r,table.exercise td.r{text-align:right}table.exercise .sep{border-left:1px solid var(--line-strong)}table.exercise td.click{cursor:pointer}table.exercise tr:hover td.click{background:var(--soft)}.pieces{display:inline-flex;gap:4px;vertical-align:middle}.piece{width:20px;height:20px;border-radius:5px;font:700 10px/19px var(--font);text-align:center;border:1px solid var(--line-strong);color:var(--muted);text-decoration:none}.piece.on{background:#dcfce7;color:#166534;border-color:transparent}a.piece.on:hover{text-decoration:none;filter:brightness(.95)}
