/* Дизайн сайта: лендинг, вход, кабинет, документы. Без внешних шрифтов и CDN; без inline-стилей (CSP style-src 'self'). */
:root{
  --ink:#0f1730;--ink2:#3b4560;--muted:#6b7590;--line:#e4e8f2;--bg:#f6f7fb;--card:#fff;
  --brand:#3a5bff;--brand2:#7b5cff;--mint:#12b886;--amber:#f59f00;
  --navy:#0b1230;--navy2:#141c44;--r:18px;
  --ok:#0a8f5e;--bad:#d9480f;--warn:#a35c00;
  --shadow:0 1px 2px rgba(15,23,48,.05),0 8px 24px rgba(15,23,48,.06);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
.btn:hover,.logo:hover,.nav a:hover,.side a:hover,.mobilebar a:hover,footer a:hover,.tabs span:hover{text-decoration:none}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.num{font-variant-numeric:tabular-nums}
.sprite{position:absolute;width:0;height:0;overflow:hidden}
.muted{color:var(--muted)}
.small{font-size:.88rem}
.center{text-align:center}
.ok{color:var(--ok)}
.bad{color:var(--bad)}
.inline{display:inline}
h1,h2,h3{letter-spacing:-.02em}
/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;padding:12px 20px;font-family:inherit;font-weight:600;font-size:15px;line-height:1.2;border:1px solid transparent;cursor:pointer;transition:transform .15s,box-shadow .15s;white-space:nowrap;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;box-shadow:0 6px 20px rgba(58,91,255,.28)}
.btn:hover{transform:translateY(-1px)}
.btn:disabled,.btn[disabled]{background:#aab2cc;box-shadow:none;cursor:not-allowed;transform:none}
.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.24);box-shadow:none}
.btn-light{background:#fff;color:var(--ink);border-color:var(--line);box-shadow:none}
.btn-sm,.btn.small{padding:8px 14px;font-size:14px;border-radius:10px}
.btn.danger{background:var(--bad);box-shadow:none}
.link{background:none;border:0;color:var(--brand);cursor:pointer;font:inherit;padding:0}
.link.danger{color:var(--bad)}
/* ---------- logo ---------- */
.logo{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:19px;letter-spacing:-.02em;color:#fff}
.logo svg{flex:none}
.logo span{white-space:nowrap}
/* ---------- top nav ---------- */
.nav{position:sticky;top:0;z-index:20;background:rgba(11,18,48,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.06)}
.nav .wrap{display:flex;align-items:center;gap:26px;height:64px}
.nav .links{display:flex;gap:22px;align-items:center;color:#c3cbe6;font-size:15px}
.nav .links a{color:#c3cbe6}
.nav .links a:hover,.nav .links a.on{color:#fff}
.nav .sp{flex:1}
.nav .acts{display:flex;gap:10px;align-items:center}
.nav .who{color:#9aa5c9;font-size:13px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nav form .btn{margin:0}
.burger{display:none;position:relative}
.burger summary{list-style:none;display:grid;place-items:center;width:40px;height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.22);color:#fff;cursor:pointer}
.burger summary::-webkit-details-marker{display:none}
.burger summary:after{content:none}
.burger .menu{position:absolute;right:0;top:48px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:8px;min-width:220px;display:grid}
.burger .menu a,.burger .menu button{padding:10px 12px;border-radius:8px;color:var(--ink);font-size:15px;text-align:left}
.burger .menu a:hover{background:var(--bg)}
/* ---------- landing hero ---------- */
.hero{background:radial-gradient(1200px 600px at 85% -10%,rgba(123,92,255,.45),transparent 60%),radial-gradient(900px 500px at 0% 110%,rgba(18,184,134,.22),transparent 60%),linear-gradient(180deg,var(--navy),var(--navy2));color:#fff;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center;padding-top:72px;padding-bottom:96px}
.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);font-size:13px;color:#d6dcf5}
.pill i{width:8px;height:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgba(18,184,134,.25)}
.hero h1{font-size:54px;line-height:1.06;letter-spacing:-.035em;margin:20px 0 18px}
.hero h1 em{font-style:normal;background:linear-gradient(90deg,#9fb0ff,#c9b8ff 50%,#7ce0c0);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .lead{font-size:19px;color:#c3cbe6;max-width:560px;margin:0 0 30px}
.hero .demo-links{margin:22px 0 0;color:#9aa5c9;font-size:14px}
.hero .demo-links a{color:#c9d2ff}
.cta{display:flex;gap:12px;flex-wrap:wrap}
.trust{display:flex;gap:22px;flex-wrap:wrap;margin-top:30px;color:#9aa5c9;font-size:14px}
.trust span{display:flex;align-items:center;gap:8px}
.hero-art svg{width:100%;height:auto;display:block;filter:drop-shadow(0 30px 60px rgba(0,0,0,.35))}
.hero-art .cap{display:block;text-align:right;font-size:12px;color:#8d98c4;margin-top:8px}
/* ---------- landing sections ---------- */
section.blk{padding:88px 0}
section.blk.alt{background:#fff;border-block:1px solid var(--line)}
section.blk.tight{padding-top:0}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand)}
.blk h2{font-size:40px;line-height:1.12;letter-spacing:-.03em;margin:10px 0 14px}
.sub{color:var(--muted);font-size:18px;max-width:680px;margin:0 0 40px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px;box-shadow:var(--shadow);margin:0 0 20px;min-width:0}
.grid3>.card,.grid2>.card,.steps>.card,.plans>.card,.kpi-grid>.card,.row2>.card{margin:0}
.card h2{font-size:21px;margin:0 0 12px}
.card h3{font-size:17px;margin:0 0 8px}
.feat .ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#eef1ff;color:var(--brand);margin-bottom:16px}
.feat h3{font-size:19px;letter-spacing:-.01em}
.feat p{margin:0;color:var(--ink2);font-size:15px}
.feat.big{grid-column:span 2;background:linear-gradient(135deg,#101a45,#1e2a6b);color:#fff;border:0;display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center}
.feat.big p{color:#c3cbe6}.feat.big .ic{background:rgba(255,255,255,.1);color:#b9c4ff}
.tag{display:inline-block;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:#e7f8f1;color:#0a7a59;margin-bottom:12px}
.feat.big .tag{background:rgba(124,224,192,.15);color:#7ce0c0}
.ledger{font:13px/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:14px}
.ledger div{display:grid;grid-template-columns:56px 1fr 40px 40px 90px;gap:8px;padding:6px 0;border-bottom:1px dashed rgba(255,255,255,.1)}
.ledger div:last-child{border:0}.ledger .h{color:#8d98c4}.ledger .r{text-align:right}
.ledger .lcap{display:block;border:0;color:#8d98c4;font-family:system-ui,sans-serif;font-size:12px;padding:0 0 6px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;counter-reset:s}
.step{position:relative;padding-top:68px}
.step:before{counter-increment:s;content:counter(s);position:absolute;left:26px;top:22px;width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;font-weight:800;display:grid;place-items:center}
.step p{margin:0 0 16px;color:var(--ink2);font-size:15px}
.mini{background:var(--bg);border-radius:12px;padding:12px;font-size:13px;color:var(--ink2)}
.brokers{display:flex;gap:8px;flex-wrap:wrap}
.brokers span{padding:6px 10px;border-radius:8px;background:#fff;border:1px solid var(--line);font-weight:600;font-size:13px;color:var(--ink)}
.brokers span.soon{color:var(--muted);border-style:dashed}
.howto{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.howto>div{background:var(--bg);border-radius:14px;padding:16px;font-size:14px;color:var(--ink2)}
.howto b{display:block;color:var(--ink);font-size:15px;margin-bottom:4px}
/* report preview */
.report{background:var(--navy);border-radius:24px;padding:28px;color:#fff;display:grid;grid-template-columns:240px 1fr;gap:24px}
.tabs{display:flex;flex-direction:column;gap:6px}
.tabs span{padding:10px 14px;border-radius:10px;color:#aab4d8;font-size:15px;display:flex;justify-content:space-between;gap:10px}
.tabs span.on{background:rgba(255,255,255,.08);color:#fff}
.tabs small{color:#6f7aa3}
.tabs .more{margin-top:10px;color:#c9d2ff;font-size:14px;padding:0 14px}
.sheet{background:#fff;color:var(--ink);border-radius:16px;overflow:hidden}
.sheet table{width:100%;border-collapse:collapse;font-size:14px}
.sheet th,.sheet td{padding:11px 16px;border-bottom:1px solid var(--line);text-align:left}
.sheet th{background:#f3f5fb;color:var(--muted);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.sheet td.r,.sheet th.r{text-align:right;white-space:nowrap}
.sheet tr.tot td{font-weight:700;background:#f8f9fd}
.sheet .cap{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 16px;border-bottom:1px solid var(--line)}
.sheet .cap b{font-size:16px}
.chip{display:inline-block;font-size:12px;padding:3px 8px;border-radius:6px;background:#eef1ff;color:var(--brand);font-weight:600}
.chip.warn{background:#fff4e0;color:var(--warn)}
.pos{color:var(--ok)}.neg{color:var(--bad)}
/* compare strip */
.vs{display:grid;grid-template-columns:1.3fr 1fr 1fr;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#fff}
.vs div{padding:14px 20px;border-bottom:1px solid var(--line);font-size:15px}
.vs .hd{font-weight:700;background:#f3f5fb}
.vs .us{background:#f5f7ff;font-weight:600}
.more-link{margin-top:18px}
/* pricing */
.plans{display:grid;grid-template-columns:repeat(2,minmax(0,420px));gap:20px}
.plan{display:flex;flex-direction:column}
.plan h3{margin:0;font-size:20px}
.plan .price{font-size:30px;font-weight:800;letter-spacing:-.03em;margin:12px 0 2px}
.plan ul{list-style:none;padding:0;margin:18px 0 24px;display:grid;gap:10px;font-size:15px;color:var(--ink2)}
.plan li{display:flex;gap:10px}
.plan li svg{flex:none;margin-top:3px;color:var(--mint)}
.plan .btn{margin-top:auto}
.plan.hot{border:2px solid var(--brand)}
.note{font-size:13px;color:var(--muted);margin-top:16px}
/* faq */
.faq{display:grid;gap:12px;max-width:860px;margin-top:28px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 22px}
.faq summary{cursor:pointer;font-weight:600;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";color:var(--brand);font-size:22px;line-height:1}
.faq details[open] summary:after{content:"–"}
.faq details p{margin:12px 0 0;color:var(--ink2)}
.band{background:linear-gradient(135deg,var(--brand),var(--brand2));border-radius:28px;color:#fff;padding:48px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;margin-top:8px}
.band h2{margin:0;font-size:34px;letter-spacing:-.03em}.band p{margin:6px 0 0;color:#e2e6ff}
/* ---------- footer ---------- */
footer.foot{background:var(--navy);color:#9aa5c9;padding:56px 0 32px;margin-top:96px;font-size:14px}
footer.foot a{color:#c3cbe6}
footer.foot .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}
footer.foot h4{color:#fff;margin:0 0 12px;font-size:14px}
footer.foot ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
footer.foot .about{max-width:320px;margin-top:14px}
footer.foot .legal{border-top:1px solid rgba(255,255,255,.08);margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
/* ---------- inner pages ---------- */
.page{padding-top:32px;padding-bottom:8px}
.page>h1,.page-head h1{font-size:34px;line-height:1.15;margin:8px 0 14px}
.page .lead{font-size:18px;color:var(--ink2);max-width:820px}
.page-hero{padding:24px 0 8px}
.page-hero h1{font-size:40px;line-height:1.12;margin:0 0 14px;max-width:880px;letter-spacing:-.03em}
.page-hero .lead{font-size:18px;color:var(--ink2);max-width:820px}
.back{display:inline-block;margin:0 0 8px;font-size:14px}
.narrow{max-width:460px;margin:40px auto}
.doc{max-width:900px;margin-left:auto;margin-right:auto}
.doc h1{font-size:32px;margin:8px 0 12px}
.doc h2{margin-top:2em;border-bottom:1px solid var(--line);padding-bottom:6px;font-size:22px}
.doc h3{margin-top:1.6em}
.doc h4{margin-top:1.6em;font-size:1.05rem}
.doc .tablewrap{overflow-x:auto;margin:8px 0}
.doc table{font-size:.86rem}
.doc code{background:#f0f3fa;padding:1px 5px;border-radius:5px}
.doc .toc{background:var(--bg);border-radius:12px;padding:12px 16px;margin:12px 0 20px}
.doc .toc ul{margin:4px 0;padding-left:18px}
.st-ok{color:var(--ok)}.st-part{color:var(--warn)}.st-no{color:var(--bad)}
/* auth */
.auth{display:grid;grid-template-columns:1fr 460px;gap:0;max-width:980px;margin:40px auto;border-radius:24px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line);background:#fff}
.auth-side{background:radial-gradient(600px 400px at 100% 0%,rgba(123,92,255,.45),transparent 60%),linear-gradient(160deg,var(--navy),#1e2a6b);color:#fff;padding:44px}
.auth-side h2{font-size:28px;line-height:1.2;margin:18px 0 12px}
.auth-side p{color:#c3cbe6;margin:0 0 22px}
.auth-side ul{list-style:none;padding:0;margin:0;display:grid;gap:12px;color:#d6dcf5;font-size:15px}
.auth-side li{display:flex;gap:10px}
.auth-side li svg{flex:none;margin-top:4px;color:#7ce0c0}
.auth-form{padding:40px}
.auth-form h1{font-size:28px;margin:0 0 8px}
.auth-form .btn{width:100%;margin-top:8px}
/* forms */
label{display:block;margin:14px 0;font-size:15px;font-weight:500}
label input[type=email],label input[type=password],label input[type=text]{display:block;width:100%;padding:11px 14px;margin-top:6px;border:1px solid #cfd6e6;border-radius:10px;font:inherit;font-weight:400;background:#fff;color:var(--ink)}
label input:focus,select:focus{outline:2px solid rgba(58,91,255,.35);border-color:var(--brand)}
label.check{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;font-weight:400;color:var(--ink2)}
label.check input{margin-top:4px}
select{display:block;width:100%;padding:9px 12px;margin-top:6px;border:1px solid #cfd6e6;border-radius:10px;font:inherit;background:#fff}
/* flash */
.flash{padding:12px 16px;border-radius:12px;margin:0 0 18px;background:#e7f8f1;color:#0a6b4b;border:1px solid #c8eedf}
.flash.err{background:#fdecea;color:#b42318;border-color:#f6cfc9}
.flash.warn{background:#fff4e0;color:var(--warn);border-color:#ffe2b0}
/* tables */
table{border-collapse:collapse;width:100%;font-size:.92rem}
th,td{text-align:left;padding:9px 10px;border-bottom:1px solid #eef1f6;vertical-align:top}
th{font-size:12px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:#f8f9fd}
td.num,th.num{text-align:right;white-space:nowrap}
tr.total td{font-weight:700;border-top:2px solid #d5dbe7}
.scroll{overflow-x:auto}
.compare th{background:#f3f5fb;text-transform:none;font-size:13px;color:var(--ink)}
.compare td:first-child{font-weight:600;width:22%}
.compare td.yes{color:var(--ok)}
.compare td.no{color:var(--muted)}
.compare td:nth-child(2),.compare th:nth-child(2){background:#f5f7ff}
.files{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:8px}
.files li{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px}
.sheets{columns:2;padding-left:18px}
details summary{cursor:pointer;font-weight:600}
.badge{display:inline-block;font-size:.75rem;padding:2px 9px;border-radius:99px;background:#eef1ff;color:var(--brand);vertical-align:3px;font-weight:600;letter-spacing:0}
/* results / analytics (общие для демо, итогов и кабинета) */
.grid3.kpi{margin-bottom:20px}
.kpi .big{font-size:1.5rem;font-weight:800;letter-spacing:-.02em;margin:6px 0 2px;font-variant-numeric:tabular-nums}
.kpis{display:flex;flex-wrap:wrap;gap:28px;margin:6px 0 8px}
.kpis div b{display:block;font-size:1.3rem;letter-spacing:-.01em}
.src{font-size:.8rem;color:var(--muted)}
.legend{display:flex;flex-wrap:wrap;gap:14px;font-size:.88rem;color:var(--muted);margin:6px 0}
.legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.chart{width:100%;height:auto;display:block;margin:8px 0}
.chart .grid{stroke:#eef1f7;stroke-width:1}
.chart .grid.zero{stroke:#9aa3bd}
.chart .ax{font-size:11px;fill:#8a93ab}
.chart .ln{fill:none;stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round}
.chart .ln.dash{stroke-dasharray:6 5}
.s1{stroke:#3a5bff;fill:#3a5bff}
.s2{stroke:#9aa3bd;fill:#9aa3bd}
.s3{stroke:#f59f00;fill:#f59f00}
.s4{stroke:#12b886;fill:#12b886}
.s5{stroke:#a6e6cf;fill:#a6e6cf}
.chart .ln.s1,.chart .ln.s2,.chart .ln.s3,.chart .ln.s4{fill:none}
.chart.share{height:30px;border-radius:8px;overflow:hidden}
.legend i.s1{background:#3a5bff}.legend i.s2{background:#9aa3bd}.legend i.s3{background:#f59f00}.legend i.s4{background:#12b886}.legend i.s5{background:#a6e6cf}
.sec-title,.card .sec-title{font-size:18px;margin:24px 0 10px}
/* ---------- cabinet (app layout) ---------- */
.app{display:grid;grid-template-columns:248px 1fr;min-height:100vh;background:linear-gradient(90deg,var(--navy) 248px,var(--bg) 248px)}
.side{background:var(--navy);color:#aab4d8;padding:22px 16px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh;overflow:auto}
.side .logo{padding:0 10px 22px}
.side a{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;font-size:15px;color:#aab4d8}
.side a.on{background:rgba(255,255,255,.08);color:#fff}
.side a:hover{color:#fff}
.side .grp{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#5d688f;margin:18px 12px 6px}
.side .user{margin-top:auto;display:flex;gap:10px;align-items:center;padding:12px;border-radius:12px;background:rgba(255,255,255,.05);font-size:13px;line-height:1.35}
.side .user .em{color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}
.side .user .link{color:#9fb0ff;font-size:13px}
.ava{flex:none;width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;display:grid;place-items:center;font-weight:700;font-size:14px;text-transform:uppercase}
.main{padding:28px 36px 48px;min-width:0}
.main-foot{margin-top:32px;padding-top:16px;border-top:1px solid var(--line);font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap;gap:16px}
.main-foot a{color:var(--muted)}
.head{display:flex;align-items:center;gap:14px;margin-bottom:22px;flex-wrap:wrap}
.head h1{font-size:28px;margin:0;color:var(--ink);letter-spacing:-.02em}
.head .sp{flex:1}
.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}
.kpi-grid .l{font-size:13px;color:var(--muted)}
.kpi-grid .v{font-size:26px;font-weight:800;letter-spacing:-.02em;margin:6px 0 2px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.kpi-grid .d{font-size:13px;color:var(--muted)}
.empty{display:flex;gap:20px;align-items:center;background:linear-gradient(135deg,#101a45,#1e2a6b);color:#fff;border:0}
.empty .ic{flex:none;width:56px;height:56px;border-radius:16px;background:rgba(255,255,255,.1);display:grid;place-items:center;color:#b9c4ff}
.empty h2{color:#fff;margin:0 0 4px;font-size:20px}
.empty p{margin:0;color:#c3cbe6}
.row2{display:grid;grid-template-columns:1fr 1.5fr;gap:16px;margin-bottom:20px}
.chd{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:12px;flex-wrap:wrap}
.chd h2{margin:0}
.drop{display:block;border:2px dashed #c7cff0;border-radius:16px;background:linear-gradient(180deg,#f8f9ff,#f2f4ff);padding:22px;text-align:center;margin:0 0 12px;font-weight:400;cursor:pointer}
.drop .ic{width:56px;height:56px;margin:0 auto 10px;border-radius:16px;background:#fff;display:grid;place-items:center;color:var(--brand);box-shadow:var(--shadow)}
.drop b{display:block;font-size:17px;margin-bottom:4px}
.drop span{display:block;color:var(--muted);font-size:14px}
.drop input[type=file]{display:block;margin:14px auto 0;max-width:100%;font-size:14px}
.drop:hover{border-color:var(--brand)}
.uploads table td,.uploads table th{padding:11px 8px}
.brk{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;font-size:12px;font-weight:800;color:#fff;margin-right:8px;vertical-align:middle;background:var(--brand)}
.brk.sber{background:#21a038}.brk.tinkoff{background:#2b2d33}.brk.alfa{background:#ef3124}.brk.manual{background:var(--brand2)}
.st{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:3px 10px;border-radius:99px}
.st.ok{background:#e7f8f1;color:#0a7a59}.st.warn{background:#fff4e0;color:#a35c00}
.danger-zone summary{color:var(--bad)}
.mtop{display:none}
.mobilebar{display:none}
/* ---------- responsive ---------- */
@media (max-width:1100px){
  .kpi-grid{grid-template-columns:1fr 1fr}
  .row2{grid-template-columns:1fr}
}
@media (max-width:980px){
  .hero .wrap,.grid2,.feat.big,.report,.auth{grid-template-columns:1fr}
  .grid3,.steps,.plans,.howto{grid-template-columns:1fr}
  .feat.big{grid-column:auto}
  footer.foot .cols{grid-template-columns:1fr 1fr}
  .nav .links{display:none}
  .burger{display:block}
  .auth-side{padding:28px}
}
@media (max-width:640px){
  .wrap{padding:0 18px}
  .nav .wrap{gap:10px}
  .nav .acts .btn-ghost,.nav .who{display:none}
  .nav .acts .btn{padding:8px 12px;font-size:13px}
  .hero .wrap{padding-top:40px;padding-bottom:56px;gap:32px}
  .hero h1{font-size:36px}.hero .lead{font-size:17px}
  .blk h2{font-size:29px}.sub{font-size:16px}
  section.blk{padding:60px 0}
  .vs{grid-template-columns:1.2fr 1fr 1fr}.vs div{padding:10px;font-size:13px}
  .ledger div{grid-template-columns:44px 1fr 28px 28px 70px;font-size:11px}
  .band{padding:28px}.band h2{font-size:25px}
  .report{padding:16px}.tabs{flex-direction:row;overflow:auto}.tabs span{white-space:nowrap}
  .sheet th,.sheet td{padding:8px 7px;font-size:12px}
  .auth{margin:20px auto;border-radius:18px}
  .auth-side{display:none}
  .auth-form{padding:26px}
  .page-hero h1,.page>h1{font-size:28px}
  .card{padding:18px}
  .app{grid-template-columns:1fr;background:var(--bg)}
  .nav .logo{font-size:16px}
  .side{display:none}
  .main{padding:0 16px 88px}
  .mtop{display:flex;align-items:center;justify-content:space-between;background:var(--navy);color:#fff;padding:12px 16px;margin:0 -16px 16px}
  .mtop .link{color:#c9d2ff;font-size:14px}
  .head h1{font-size:22px}
  .kpi-grid{gap:10px}
  .kpi-grid .v{font-size:19px}
  .hide-m{display:none}
  .empty{flex-direction:column;align-items:flex-start}
  .mobilebar{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);justify-content:space-around;padding:8px 0 12px;z-index:15}
  .mobilebar a{display:flex;flex-direction:column;align-items:center;font-size:11px;color:var(--muted);gap:2px}
  .mobilebar a.on{color:var(--brand)}
  footer.foot .cols{grid-template-columns:1fr}
  footer.foot{margin-top:64px}
  .sheets{columns:1}
}
/* settings */
.settings .setting h2{margin:0 0 6px}
.settings .opts{display:grid;gap:10px;margin:14px 0 6px}
.settings label.opt{display:flex;gap:12px;align-items:flex-start;margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:12px;font-weight:400;cursor:pointer;background:#fff}
.settings label.opt:has(input:checked){border-color:var(--brand);background:#f5f7ff}
.settings label.opt input{margin-top:4px;flex:none}
.settings label.opt .d{display:block;margin-top:4px}
.settings .when{display:flex;gap:8px;align-items:flex-start;color:var(--ink2);margin:10px 0 0}
.settings .when svg{flex:none;margin-top:2px;color:var(--muted)}
.settings-actions{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 18px}
.setting-line{margin:10px 0 14px}

.deals{margin-top:20px}.deals h3{font-size:21px;margin-top:10px}.deals>p{color:var(--ink2);max-width:860px}
.deal-ex{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:18px 0 10px}
.dx{border:1px solid var(--line);border-radius:14px;padding:18px;background:#fafbff}
.dx-h{font-weight:700;margin-bottom:10px}.dx-h small{font-weight:400;color:var(--ink2);margin-left:6px}
.dx-r{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px dashed var(--line);font-size:15px}
.dx-r b{white-space:nowrap}.dx-f{font-size:15px;padding:6px 0;color:var(--ink2)}.dx-f b{color:var(--ink)}
@media(max-width:760px){.deal-ex{grid-template-columns:1fr}.dx{padding:14px}}

.deal-filter{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.deal-filter a{padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink2);font-size:14px}
.deal-filter a.on{background:var(--brand);border-color:var(--brand);color:#fff}.deal-filter a span{opacity:.7;margin-left:4px}
.deals-tbl{padding:18px}.deals-tbl table{font-size:12.5px}.deals-tbl td{white-space:nowrap}.deals-tbl th{white-space:normal;vertical-align:bottom;font-size:10.5px;line-height:1.2}.deals-tbl td:first-child{white-space:normal;min-width:110px}.deals-tbl td,.deals-tbl th{padding-left:6px;padding-right:6px}
.deals-tbl .good{color:#0a7a59}.deals-tbl .bad{color:#c0392b}
@media(max-width:760px){.deals-tbl{padding:6px 14px}.dtab,.dtab tbody,.dtab tr,.dtab td{display:block;width:100%}.dtab tr:first-child{display:none}
.dtab tr{border-bottom:1px solid var(--line);padding:10px 0}.dtab td{display:flex;justify-content:space-between;gap:12px;border:0;padding:3px 0;text-align:right}
.dtab td::before{content:attr(data-l);color:var(--muted);text-align:left;white-space:normal}.dtab td:first-child{display:block;text-align:left}.dtab td:first-child::before{content:none}}
.deals-tbl td.small{white-space:normal;min-width:90px}

.import-addr{display:inline-block;padding:8px 12px;background:#f3f5ff;border-radius:8px;font-size:15px;word-break:break-all}
