:root{--font:system-ui,-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;--radius:20px;
color-scheme:dark;--bg:#0b1020;--bg-glow:#1c2842;--panel:#131b2e;--panel-2:#182239;--surface-3:#1a253b;--line:#29354d;--line-2:#35415a;
--text:#f1f5fb;--text-2:#aab7cc;--muted:#98a6bd;--muted-2:#8190a8;--accent:#9ce9cb;--accent-soft:#8acdb9;--accent-dark:#1f5e52;--on-accent:#102b27;
--purple:#b8a4ff;--purple-soft:#d6c7ff;--danger:#ff9292;--danger-soft:#ffb7b7;--danger-text:#d88d97;--suit-red:#ff777e;--ink:#ffffff;}
@media (prefers-color-scheme: light){:root:not([data-theme="dark"]){color-scheme:light;--bg:#f3f5fa;--bg-glow:#e0e8f7;--panel:#ffffff;--panel-2:#f0f3fa;--surface-3:#e8edf7;--line:#d5dce9;--line-2:#b7c2d8;
--text:#162036;--text-2:#34425e;--muted:#566580;--muted-2:#5b6a85;--accent:#0d7a5f;--accent-soft:#0b6a53;--accent-dark:#cfeee3;--on-accent:#ffffff;
--purple:#6a4bd1;--purple-soft:#5a3dc0;--danger:#b3261e;--danger-soft:#9b1c1c;--danger-text:#a3262e;--suit-red:#c0392b;--ink:#162036;}}
:root[data-theme="light"]{color-scheme:light;--bg:#f3f5fa;--bg-glow:#e0e8f7;--panel:#ffffff;--panel-2:#f0f3fa;--surface-3:#e8edf7;--line:#d5dce9;--line-2:#b7c2d8;
--text:#162036;--text-2:#34425e;--muted:#566580;--muted-2:#5b6a85;--accent:#0d7a5f;--accent-soft:#0b6a53;--accent-dark:#cfeee3;--on-accent:#ffffff;
--purple:#6a4bd1;--purple-soft:#5a3dc0;--danger:#b3261e;--danger-soft:#9b1c1c;--danger-text:#a3262e;--suit-red:#c0392b;--ink:#162036;}
:root[data-theme="dark"]{color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 15% 0%,var(--bg-glow) 0,transparent 34%),var(--bg);color:var(--text);font-family:var(--font);font-size:15px;line-height:1.5}.page-shell{max-width:1240px;margin:auto;padding:0 30px}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid color-mix(in srgb, var(--ink) 7.1%, transparent)}.brand{display:flex;align-items:center;gap:12px;color:var(--text);font:800 17px var(--font);letter-spacing:1.8px;text-decoration:none}.brand small{display:block;color:var(--muted);font:500 10px var(--font);letter-spacing:.3px;margin-top:2px}.brand-mark{width:42px;height:42px;border-radius:14px;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;font:800 23px var(--font);box-shadow:0 6px 25px color-mix(in srgb, var(--accent) 13.3%, transparent)}.wallet{display:flex;align-items:center;gap:10px;padding:9px 14px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb, var(--ink) 2.0%, transparent)}.wallet-label{font-size:12px;color:var(--muted)}.wallet strong{font:800 18px var(--font);font-variant-numeric:tabular-nums}.coin{color:var(--accent)}.hero{padding:54px 0 36px;max-width:800px}.eyebrow,.section-kicker{font-size:10px;font-weight:700;letter-spacing:1.8px;color:var(--muted)}.eyebrow{display:flex;align-items:center;gap:9px}.eyebrow-dot{height:7px;width:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px color-mix(in srgb, var(--accent) 50.2%, transparent)}.hero h1{font:800 clamp(32px,4.5vw,52px)/1.12 var(--font);letter-spacing:-1.7px;margin:18px 0 14px}.hero h1 span{color:var(--accent)}.hero p{max-width:670px;color:var(--text-2);font-size:16px;margin:0}.game-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px;align-items:start}.panel{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,color-mix(in srgb, var(--panel-2) 96.1%, transparent),color-mix(in srgb, var(--panel) 96.1%, transparent));box-shadow:0 18px 50px color-mix(in srgb, #000 5.1%, transparent)}.mode-panel{padding:22px 15px}.mode-panel>.section-kicker{padding:0 9px 15px}.mode-button{width:100%;display:flex;align-items:center;gap:12px;padding:12px 10px;background:transparent;border:1px solid transparent;border-radius:13px;color:var(--text);text-align:left;cursor:pointer;margin:3px 0;font:inherit;transition:.18s}.mode-button:hover{background:color-mix(in srgb, var(--ink) 2.7%, transparent)}.mode-button.active{background:color-mix(in srgb, var(--accent) 5.1%, transparent);border-color:color-mix(in srgb, var(--accent) 25.9%, transparent)}.mode-button>span:nth-child(2){flex:1}.mode-button strong,.mode-button small{display:block}.mode-button strong{font-size:14px}.mode-button small{font-size:11px;color:var(--muted);margin-top:2px}.mode-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;font-size:22px}.numbers-icon{color:var(--accent);background:color-mix(in srgb, var(--accent) 7.1%, transparent)}.cards-icon{color:var(--purple-soft);background:color-mix(in srgb, var(--purple) 9.0%, transparent)}.roulette-icon{color:var(--danger-soft);background:color-mix(in srgb, var(--danger) 7.1%, transparent)}.mode-arrow{font-size:25px;color:var(--muted)}.panel-note{border-top:1px solid var(--line);margin:22px 2px 0;padding:17px 8px 0;display:flex;gap:10px;color:var(--muted)}.note-icon{color:var(--accent);font-size:18px}.panel-note p{font-size:11px;line-height:1.6;margin:0}.play-panel{padding:26px 28px 25px;min-width:0}.play-heading,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.play-heading h2,.section-heading h2{font:700 22px var(--font);letter-spacing:-.5px;margin:5px 0 0}.status-pill{white-space:nowrap;border:1px solid color-mix(in srgb, var(--accent) 25.9%, transparent);background:color-mix(in srgb, var(--accent) 5.5%, transparent);color:var(--accent);padding:6px 10px;border-radius:999px;font-size:11px}.round-progress{height:3px;background:color-mix(in srgb, var(--ink) 4.7%, transparent);border-radius:99px;margin:20px 0 19px;overflow:hidden}.round-progress span{display:block;height:100%;width:0;background:var(--accent);transition:width .3s}.instruction{color:var(--text-2);font-size:13px;margin:0 0 19px}.numbers-grid{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:8px}.number-button{aspect-ratio:1;border:1px solid var(--line-2);background:var(--surface-3);color:var(--text);border-radius:11px;font:600 13px var(--font);cursor:pointer;transition:transform .12s,border-color .12s,background .12s}.number-button:hover{border-color:var(--accent-soft);transform:translateY(-1px)}.number-button.selected{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:800;box-shadow:0 3px 15px color-mix(in srgb, var(--accent) 11.0%, transparent)}.number-button:disabled{cursor:default;opacity:.95}.choice-controls{min-height:192px}.field-label{display:block;color:var(--muted);font-size:11px;margin:0 0 7px}select{width:100%;border:1px solid var(--line-2);border-radius:10px;background:var(--surface-3);color:var(--text);padding:11px 12px;font:inherit;font-size:13px;outline:none}select:focus{border-color:var(--accent)}.choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:13px}.choice-card,.roulette-choice{min-height:75px;border:1px solid var(--line-2);border-radius:12px;background:var(--surface-3);color:var(--text);font:500 12px var(--font);display:flex;align-items:center;justify-content:center;gap:7px;flex-direction:column;cursor:pointer}.choice-card.selected,.roulette-choice.selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 5.5%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 14.9%, transparent)}.playing-card{font:32px Georgia,serif}.red-suit{color:var(--suit-red)}.choice-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.roulette-choice{flex-direction:row;min-height:58px;font-size:13px}.red-choice .color-dot{background:#e85c67}.black-choice .color-dot{background:#30384c;border:1px solid #68758b}.color-dot{height:12px;width:12px;border-radius:50%}.roulette-numbers{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;margin-top:13px}.roulette-number{aspect-ratio:1;border:1px solid var(--line-2);border-radius:8px;color:var(--text);background:#252e40;font-size:11px;cursor:pointer}.roulette-number.red{background:#722f40}.roulette-number.black{background:#151b27}.roulette-number.zero{background:#276b56}.roulette-number.selected{outline:2px solid var(--accent);outline-offset:1px}.card-exact-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.confidence-row{margin-top:23px;padding:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:14px}.confidence-row strong,.confidence-row small{display:block}.confidence-row strong{font-size:12px}.confidence-row small{font-size:10px;color:var(--muted);margin-top:3px}.confidence-options{display:flex;gap:5px}.confidence-options button{height:32px;width:32px;border-radius:9px;border:1px solid var(--line-2);background:var(--surface-3);color:var(--text-2);cursor:pointer;font-weight:600}.confidence-options button.selected{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.action-row{display:flex;gap:10px;margin-top:20px}.primary-button,.secondary-button{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:46px;padding:0 17px;border-radius:11px;font:700 12px var(--font);cursor:pointer;transition:.15s;text-decoration:none}.primary-button{flex:1;border:1px solid var(--accent);background:var(--accent);color:var(--on-accent)}.primary-button:hover{background:color-mix(in srgb, var(--accent) 78%, white);transform:translateY(-1px)}.primary-button span{font-size:18px}.secondary-button{border:1px solid var(--line-2);background:var(--surface-3);color:var(--text)}.secondary-button:hover{border-color:var(--muted)}.form-message{min-height:17px;margin:8px 0 0;font-size:11px;color:var(--muted)}.form-message.error{color:var(--danger)}.hidden{display:none!important}.result-panel{border:1px solid color-mix(in srgb, var(--accent) 23.1%, transparent);background:color-mix(in srgb, var(--accent) 2.7%, transparent);border-radius:15px;margin-top:14px;padding:17px}.result-topline{display:flex;justify-content:space-between;align-items:center}.result-badge{color:var(--accent);font-size:11px;font-weight:700}.result-visual{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;min-height:65px;padding:15px 0}.result-number{height:39px;width:39px;border-radius:50%;display:grid;place-items:center;background:var(--panel-2);border:1px solid color-mix(in srgb, var(--accent) 45%, var(--line));color:var(--accent);font:700 13px var(--font)}.result-card{width:48px;height:65px;border-radius:8px;background:#f6f5f0;color:#1b2433;display:grid;place-items:center;font:28px Georgia,serif;box-shadow:0 5px 15px #0003}.result-card.red{color:#d94251}.result-roulette{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;border:4px double #a4b5c7;font:800 22px var(--font)}.result-roulette.red{background:#7b2e3b}.result-roulette.black{background:#111722}.result-roulette.green{background:#237557}.result-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px}.result-summary>div{background:color-mix(in srgb, var(--ink) 2.0%, transparent);border:1px solid color-mix(in srgb, var(--ink) 3.9%, transparent);border-radius:10px;padding:10px 12px}.summary-label{display:block;font-size:10px;color:var(--muted)}.result-summary strong{font:800 19px var(--font)}.result-summary strong small{font:500 10px var(--font);color:var(--muted)}.result-explanation{font-size:11px;color:var(--text-2);margin:12px 0 0}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.stats-panel,.history-panel,.data-panel{padding:24px}.subtle-icon{font-size:23px;color:var(--muted-2)}.stat-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:21px}.stat-card{border:1px solid color-mix(in srgb, var(--ink) 4.3%, transparent);background:color-mix(in srgb, var(--ink) 1.6%, transparent);border-radius:12px;padding:13px 12px}.stat-card span{display:block;color:var(--muted);font-size:10px;line-height:1.4;min-height:29px}.stat-card strong{display:block;font:800 23px var(--font);margin-top:7px;font-variant-numeric:tabular-nums}.accuracy-row{margin-top:18px}.accuracy-row>div:first-child{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-bottom:8px}.accuracy-row strong{color:var(--accent)}.accuracy-track{height:6px;background:color-mix(in srgb, var(--ink) 4.3%, transparent);border-radius:99px;overflow:hidden}.accuracy-track span{display:block;height:100%;width:0;background:var(--accent);border-radius:99px;transition:width .25s}.microcopy{color:var(--muted-2);font-size:10px;line-height:1.6;margin:15px 0 0}.text-button{border:0;background:transparent;color:var(--muted);font:600 11px var(--font);cursor:pointer;padding:7px}.text-button:hover{color:var(--text)}.history-list{margin-top:15px;display:grid;gap:8px;max-height:235px;overflow:auto}.history-item{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid color-mix(in srgb, var(--ink) 4.3%, transparent);background:color-mix(in srgb, var(--ink) 1.6%, transparent);border-radius:11px}.history-symbol{width:34px;height:34px;flex:none;border-radius:10px;background:color-mix(in srgb, var(--accent) 6.3%, transparent);color:var(--accent);display:grid;place-items:center;font-size:17px}.history-detail{min-width:0;flex:1}.history-detail strong{display:block;font-size:11px}.history-detail small{display:block;font-size:10px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-points{font:700 12px var(--font);color:var(--accent);white-space:nowrap}.empty-state{min-height:120px;display:grid;place-content:center;text-align:center;color:var(--muted)}.empty-state span{font-size:25px;color:var(--muted-2)}.empty-state p{font-size:11px}.data-panel{margin-top:20px}.data-panel>p{font-size:12px;color:var(--muted);max-width:760px}.data-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:17px}.import-button{cursor:pointer}.danger-text{margin-left:auto;color:var(--danger-text)}footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:28px 0 32px;color:var(--muted-2);font-size:10px}footer span:first-child{letter-spacing:1.5px;font-weight:800;color:var(--text-2)}
@media(min-width:1100px){.play-panel{min-height:495px}}@media(max-width:850px){.page-shell{padding:0 18px}.game-layout{grid-template-columns:1fr}.mode-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:12px}.mode-panel>.section-kicker,.panel-note{grid-column:1/-1}.mode-panel>.section-kicker{padding:2px 8px 4px}.mode-button{padding:10px 7px;gap:8px}.mode-icon{width:32px;height:32px}.mode-button small{font-size:10px}.mode-arrow{display:none}.panel-note{margin:8px 2px 0;padding-top:12px}.dashboard-grid{grid-template-columns:1fr}.hero{padding-top:38px}.play-panel{padding:23px 20px}}@media(max-width:540px){.page-shell{padding:0 12px}.topbar{height:72px}.brand{font-size:15px}.brand-mark{height:36px;width:36px}.wallet{padding:7px 9px;gap:7px}.wallet-label{font-size:10px}.wallet strong{font-size:16px}.hero{padding:32px 0 25px}.hero h1{letter-spacing:-1px}.hero p{font-size:14px}.mode-panel{padding:9px;gap:3px}.mode-button{display:flex;flex-direction:column;text-align:center;gap:5px;padding:9px 3px}.mode-button>span:nth-child(2){flex:auto}.mode-button strong{font-size:11px}.mode-button small{font-size:9px}.mode-icon{height:31px;width:31px}.play-panel,.stats-panel,.history-panel,.data-panel{padding:18px 14px}.play-heading h2,.section-heading h2{font-size:19px}.status-pill{font-size:9px;padding:5px 7px}.numbers-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.number-button{border-radius:9px}.choice-grid{gap:6px}.choice-card{min-height:66px}.roulette-numbers{grid-template-columns:repeat(7,minmax(0,1fr))}.confidence-row{align-items:flex-start;flex-direction:column}.confidence-options{width:100%}.confidence-options button{flex:1}.action-row{flex-direction:column}.primary-button,.secondary-button{width:100%}.stat-cards{gap:6px}.stat-card{padding:10px 8px}.stat-card span{font-size:9px}.stat-card strong{font-size:20px}.data-actions{align-items:stretch;flex-direction:column}.danger-text{margin-left:0}footer{flex-direction:column;align-items:flex-start;gap:5px}}
.seal-line{margin:2px 0 8px;word-break:break-all}
.seal-line.error{color:var(--danger)}
.seal-details{margin-top:12px;font-size:13px}
.seal-details code{display:block;margin-top:6px;padding:8px;border-radius:8px;background:rgba(127,127,127,.12);word-break:break-all;font-size:11px}
.hidden{display:none!important}
select:disabled{opacity:.6}
button,select,input{font:inherit}
.period-tabs{display:flex;gap:4px;flex-wrap:wrap}
.period-tabs button{padding:6px 10px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;font-size:12px}
.period-tabs button.selected{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.verdict{margin:14px 0;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2);font-size:14px;line-height:1.5}
.verdict-insufficient{color:var(--muted)}
.verdict-notable{border-color:var(--purple)}
.verdict-strong{border-color:var(--danger)}
.chart-box{margin:12px 0;padding:0}
.chart-box svg{width:100%;height:auto;display:block;background:var(--panel-2);border-radius:12px}
.chart-band{fill:rgba(152,166,189,.18);stroke:none}
.chart-zero{stroke:var(--muted);stroke-width:1;stroke-dasharray:4 4}
.chart-line{stroke:var(--accent);stroke-width:2;stroke-linejoin:round}
.chart-label{fill:var(--muted);font-size:11px}
.tbl{margin:10px 0;font-size:13px}
.tbl-row{display:grid;grid-template-columns:2fr 1fr 1.6fr 1fr;gap:8px;padding:7px 4px;border-bottom:1px solid var(--line)}
.calibration .tbl-row{grid-template-columns:1fr 1fr 2fr}
.tbl-head{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}
.sub-heading{margin:18px 0 4px;font-size:15px}
.records-list{display:flex;flex-direction:column}
.record-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}
.record-row span{color:var(--muted)}
.ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.ach-card{display:flex;flex-direction:column;gap:4px;padding:10px;border-radius:12px;border:1px dashed var(--line);opacity:.55}
.ach-card.earned{opacity:1;border:1px solid var(--accent);background:var(--panel-2)}
.ach-card small{color:var(--muted);font-size:11px;line-height:1.35}
.ach-date{font-size:10px;color:var(--accent)}
@media(max-width:540px){.tbl-row{grid-template-columns:1.6fr .8fr 1.4fr .8fr;font-size:12px}}
.session-badge{font-size:12px;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:var(--panel-2);color:var(--muted);white-space:nowrap}
.session-badge.warn{border-color:var(--purple);color:var(--purple)}
.session-badge.depleted{border-color:var(--danger);color:var(--danger)}
.topbar{flex-wrap:wrap;gap:8px}
.access-banner{margin:12px 0;padding:10px 14px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2);font-size:13px;line-height:1.5}
.access-banner.blocked{border-color:var(--danger)}
.access-banner.info{border-color:var(--purple)}
.primary-button:disabled{opacity:.45;cursor:not-allowed}
.filter-row{display:flex;align-items:center;gap:8px;margin:10px 0;font-size:13px;color:var(--muted)}
.filter-row select{padding:6px 10px;border-radius:10px;border:1px solid var(--line);background:var(--panel-2);color:var(--text)}
.period-tabs button.locked{opacity:.4;cursor:not-allowed}
.locked-note{padding:10px 12px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:13px;margin:10px 0}
.history-more{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.tier-table{margin:12px 0;font-size:13px;overflow-x:auto}
.tier-row{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:8px;padding:7px 4px;border-bottom:1px solid var(--line);min-width:420px}
.tier-head{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}
.tier-row .current{color:var(--accent);font-weight:600}
.tier-name{color:var(--muted)}
.dev-tier{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px}
.ach-card.locked{opacity:.35;border-style:dotted}
.ach-tier{font-size:10px;color:var(--purple)}

/* Цвета рулетки и граней карт одинаковы в обеих темах; подписи на них всегда светлые. */
.roulette-number,.result-roulette{color:#f6f7fb}

/* ---------- v0.8: навигация, экраны, диалог ---------- */
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:8px;top:-48px;z-index:20;padding:8px 14px;border-radius:10px;background:var(--accent);color:var(--on-accent);border:0;font:inherit;cursor:pointer}
.skip-link:focus{top:8px}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.main-nav{display:flex;gap:6px;margin:6px 0 14px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.main-nav a{padding:8px 14px;border-radius:999px;border:1px solid var(--line);color:var(--muted);text-decoration:none;font-size:14px;white-space:nowrap}
.main-nav a:hover{color:var(--text);border-color:var(--line-2)}
.main-nav a[aria-current="page"]{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:600}
.global-message{margin:0 0 12px;padding:10px 14px;border-radius:12px;border:1px solid var(--purple);background:var(--panel-2);font-size:14px}
.global-message.error{border-color:var(--danger)}
main:focus{outline:none}
.screen>.panel,.screen>article{margin-bottom:16px}
.screen-title{margin:6px 0 4px;font-size:clamp(26px,4vw,34px);outline:none}
.screen-lead{margin:0 0 16px;color:var(--text-2);max-width:62ch}
.hero h1{outline:none}
.filters{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:12px}
.filter{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}
.filter select,.filter-row select{padding:8px 10px;border-radius:10px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font:inherit}
.pager{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}
.pager button:disabled{opacity:.4;cursor:not-allowed}
.history-item{display:grid;grid-template-columns:1fr;gap:0;padding:0;border-bottom:1px solid var(--line)}
.history-item summary{display:flex;align-items:center;gap:12px;padding:10px 4px;cursor:pointer;list-style:none}
.history-item summary::-webkit-details-marker{display:none}
.history-item summary::after{content:'▾';color:var(--muted-2);margin-left:4px;transition:transform .15s}
.history-item[open] summary::after{transform:rotate(180deg)}
.history-detail{flex:1;min-width:0}
.history-detail small{display:block;color:var(--muted)}
.history-points{font-weight:700;color:var(--accent)}
.history-facts{display:grid;grid-template-columns:max-content 1fr;gap:4px 14px;padding:4px 8px 14px 44px;font-size:13px}
.history-facts dt{color:var(--muted)}
.history-facts dd{margin:0;word-break:break-word}
.seal-ok{color:var(--accent)}
.seal-bad{color:var(--danger)}
.radio-row{display:flex;flex-wrap:wrap;gap:18px;border:0;padding:0;margin:0}
.radio-row label,.check-row{display:flex;gap:8px;align-items:center;cursor:pointer}
.prose h2{margin:22px 0 6px;font-size:18px}
.prose h2:first-child{margin-top:0}
.prose p,.prose li{line-height:1.6;color:var(--text-2)}
.prose code{padding:2px 6px;border-radius:6px;background:var(--surface-3);font-size:.92em}
.prose ul,.prose ol{padding-left:22px}
dialog{border:1px solid var(--line-2);border-radius:var(--radius);background:var(--panel);color:var(--text);max-width:min(520px,92vw);padding:0}
dialog::backdrop{background:rgba(0,0,0,.55)}
.dialog-body{padding:22px}
.dialog-body h2{margin:0 0 10px}
.dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.import-facts{margin:8px 0;padding-left:18px;font-size:14px;line-height:1.6}
.rules-note{font-size:12px;color:var(--muted)}
@media(max-width:540px){.history-facts{padding-left:8px}.filters{gap:8px}}
.tbl-3{grid-template-columns:2.4fr 1fr 1fr}
.screen>.panel,.screen>article.panel{padding:clamp(16px,3vw,26px)}
.history-panel .history-list{margin-top:6px}
/* Полный экран истории: без ограничения высоты, читаемые размеры шрифта */
.history-panel .history-list{max-height:none;overflow:visible}
.history-panel .history-detail strong{font-size:14px}
.history-panel .history-detail small{font-size:12px;white-space:normal}
.history-panel .history-points{font-size:14px}
html,body{min-height:100%}
body{min-height:100vh}
input[type=radio],input[type=checkbox]{accent-color:var(--accent)}

/* ---------- v0.9: доступ и оплата ---------- */
.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-bottom:16px}
.product-card{display:flex;flex-direction:column;gap:8px}
.product-card h2{margin:0}
.product-card.owned{border-color:var(--accent)}
.product-price{font-size:28px;font-weight:800;margin:0;color:var(--accent)}
.product-features{margin:6px 0;padding-left:18px;font-size:13px;color:var(--text-2);line-height:1.6}
.owned-note{color:var(--accent);font-weight:600;margin-top:auto}
.product-card .primary-button{margin-top:auto}
.order-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}
.order-row small{flex-basis:100%;color:var(--muted)}
.footer-link{color:inherit;text-decoration:underline}
.screen-lead:empty{display:none}

.product-card{padding:clamp(16px,3vw,24px)}
.prose a,.footer-link{color:var(--accent-soft)}
.prose a:hover{color:var(--accent)}
