:root{color-scheme:light;--bg: #f4f4f2;--surface-1: #fcfcfb;--surface-2: #f0efec;--border: #e3e2de;--grid: #e8e7e3;--text-primary: #0b0b0b;--text-secondary: #52514e;--text-muted: #77766f;--accent: #2a78d6;--series-1: #2a78d6;--series-2: #eb6834;--good: #0f7a3d;--bad: #c2312f;--radius: 12px;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #121211;--surface-1: #1a1a19;--surface-2: #242422;--border: #2e2e2b;--grid: #2b2b29;--text-primary: #ffffff;--text-secondary: #c3c2b7;--text-muted: #96958c;--accent: #3987e5;--series-1: #3987e5;--series-2: #d95926;--good: #4cc27c;--bad: #ef6b69}}:root[data-theme=dark]{color-scheme:dark;--bg: #121211;--surface-1: #1a1a19;--surface-2: #242422;--border: #2e2e2b;--grid: #2b2b29;--text-primary: #ffffff;--text-secondary: #c3c2b7;--text-muted: #96958c;--accent: #3987e5;--series-1: #3987e5;--series-2: #d95926;--good: #4cc27c;--bad: #ef6b69}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text-primary);font-size:14px;line-height:1.45}a{color:var(--accent);text-decoration:none}h2,h3{margin:0}h3{font-size:14px;font-weight:600}.muted{color:var(--text-muted)}.small{font-size:12px}.error-text{color:var(--bad)}.page{max-width:1200px;margin:0 auto;padding:16px}.topbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;padding-bottom:8px}.brand{font-weight:700;font-size:16px;color:var(--text-primary)}.tabs{display:flex;gap:4px}.tabs a{padding:6px 10px;border-radius:8px;color:var(--text-secondary)}.tabs a.active{background:var(--surface-2);color:var(--text-primary);font-weight:600}.controls{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}.segmented{display:inline-flex;background:var(--surface-2);border-radius:8px;padding:2px}.segmented button{border:0;background:transparent;color:var(--text-secondary);padding:5px 10px;border-radius:6px;font:inherit;cursor:pointer}.segmented button.on{background:var(--surface-1);color:var(--text-primary);box-shadow:0 1px 2px #0000001f;font-weight:600}.btn{border:1px solid var(--border);background:var(--surface-1);color:var(--text-primary);padding:6px 12px;border-radius:8px;font:inherit;cursor:pointer}.btn:disabled{opacity:.6;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.statusline{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:14px}.pill{background:var(--surface-2);border-radius:999px;padding:2px 8px;color:var(--text-secondary)}.warnings summary{cursor:pointer}.warnings ul{margin:6px 0 0;padding-left:18px}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);padding:16px;min-width:0}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:12px;flex-wrap:wrap}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:12px}.kpi-label{color:var(--text-secondary);font-size:13px}.kpi-value{font-size:28px;font-weight:700;letter-spacing:-.02em;margin:2px 0;font-variant-numeric:tabular-nums}.kpi-delta{font-size:12px}.kpi-delta.up{color:var(--good)}.kpi-delta.down{color:var(--bad)}.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-bottom:12px}.split-item{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;padding:12px 16px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}.grid-wide-left{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}.stack{display:grid;gap:12px}@media(max-width:860px){.grid-2,.grid-wide-left{grid-template-columns:minmax(0,1fr)}.controls{margin-left:0}}.legend{display:flex;gap:12px;color:var(--text-secondary);font-size:12px}.legend-item{display:inline-flex;align-items:center;gap:6px}.legend-swatch{display:inline-block;width:10px;height:10px;border-radius:3px;flex:none}.tooltip{background:var(--surface-1);border:1px solid var(--border);border-radius:8px;padding:8px 10px;box-shadow:0 4px 12px #0000001f;font-size:12px}.tooltip-title{color:var(--text-secondary);margin-bottom:4px}.tooltip-row{display:flex;align-items:center;gap:6px}.tooltip-row strong{margin-left:auto;padding-left:12px;font-variant-numeric:tabular-nums}.badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--text-secondary);white-space:nowrap}.badge .dot{width:8px;height:8px;border-radius:50%}.badge-ios .dot{background:var(--series-1)}.badge-android .dot{background:var(--series-2)}.stars{color:#e3a008;letter-spacing:1px;white-space:nowrap}.stars-off{color:var(--grid)}.table-wrap{overflow-x:auto;margin:0 -16px;padding:0 16px}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}th{text-align:left;font-weight:500;color:var(--text-muted);font-size:12px;padding:0 8px 8px;border-bottom:1px solid var(--border)}td{padding:10px 8px;border-bottom:1px solid var(--border);white-space:nowrap}tr:last-child td{border-bottom:0}.num{text-align:right}tr.clickable{cursor:pointer}tr.clickable:hover td{background:var(--surface-2)}.app-cell{display:flex;align-items:center;gap:10px;color:var(--text-primary)}.app-cell>span{display:flex;flex-direction:column;gap:2px}.app-name{font-weight:600}.app-icon{width:32px;height:32px;border-radius:8px;object-fit:cover;flex:none}.app-icon-fallback{display:inline-grid;place-items:center;background:var(--surface-2);color:var(--text-secondary);font-weight:700}.app-header{display:flex;align-items:center;gap:12px;margin:8px 0 16px}.app-header .app-icon{width:56px;height:56px;border-radius:14px;font-size:22px}.back{display:inline-block;margin-bottom:4px}.bars{list-style:none;margin:0;padding:0;display:grid;gap:8px}.bars li{display:grid;grid-template-columns:minmax(70px,120px) 1fr auto auto;align-items:center;gap:10px;font-variant-numeric:tabular-nums}.bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.bar-track{height:8px;background:var(--surface-2);border-radius:4px;overflow:hidden}.bar-fill{display:block;height:100%;background:var(--series-1);border-radius:4px}.bar-value{text-align:right;min-width:40px}.review{padding:12px 0;border-bottom:1px solid var(--border)}.review:first-of-type{padding-top:0}.review:last-of-type{border-bottom:0}.review header{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.review p{margin:6px 0;white-space:pre-wrap}.reply{margin:8px 0 0;padding:8px 12px;background:var(--surface-2);border-radius:8px}.reply p{margin:2px 0 0}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}select,input{font:inherit;color:var(--text-primary);background:var(--surface-1);border:1px solid var(--border);border-radius:8px;padding:6px 10px}.login{max-width:360px;margin:15vh auto;display:grid;gap:12px}.login label{display:grid;gap:6px;color:var(--text-secondary)}.loading,.empty{padding:40px;text-align:center;color:var(--text-muted)}.foot{margin-top:24px}.ok-text{color:var(--good)}.danger{color:var(--bad)}.btn-quiet{background:transparent;border-color:transparent;color:var(--text-secondary)}.btn-quiet:hover{border-color:var(--border)}.settings{display:grid;gap:12px;max-width:820px}.settings-card .card-head{align-items:flex-start}.howto{margin-bottom:14px;color:var(--text-secondary)}.howto summary{cursor:pointer;color:var(--accent)}.howto ol{margin:8px 0 0;padding-left:20px;display:grid;gap:6px}.howto code{background:var(--surface-2);border-radius:4px;padding:1px 4px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid label{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;gap:6px;color:var(--text-secondary);align-content:start}.form-grid .span-2{grid-column:1 / -1}.form-actions{display:flex;flex-wrap:wrap;gap:8px}textarea{font:inherit;color:var(--text-primary);background:var(--surface-1);border:1px solid var(--border);border-radius:8px;padding:6px 10px;resize:vertical}input[type=file]{padding:6px;max-width:100%;min-width:0;box-sizing:border-box}.sync-state{min-width:0;max-width:100%}.sync-state .hint,.issues{margin:6px 0 0;color:var(--text-secondary)}.issues summary{cursor:pointer;color:var(--text-muted)}.issues ul{margin:4px 0 0;padding-left:18px}.issues li,.error-text,.ok-text,.hint{overflow-wrap:anywhere}.welcome{max-width:640px;margin:24px auto;padding:28px}.welcome h2{margin-bottom:8px}.welcome .btn-primary{display:inline-block}.login .segmented{justify-self:start}@media(max-width:640px){.form-grid{grid-template-columns:minmax(0,1fr)}}.settings-card h4{margin:18px 0 8px;font-size:14px}.notice{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px 12px;margin:8px 0}.notice p{margin:0 0 8px}.plain-list{list-style:none;margin:0;padding:0}.plain-list li{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-top:1px solid var(--grid)}.plain-list li:first-child{border-top:0}.inline{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.inline input{flex:1 1 160px;min-width:0}.copy-row{display:flex;gap:8px}.copy-row input{flex:1;min-width:0;font-family:ui-monospace,monospace;font-size:12px}.team-switch{max-width:200px}.lang-select{display:grid;gap:6px;color:var(--text-secondary)}.link-button{background:none;border:0;padding:0;color:var(--accent);cursor:pointer;font:inherit}.page.narrow{max-width:560px}.chart-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:4px 0 12px}.segmented.small button{font-size:13px;padding:4px 10px}th.pick,td.pick{width:28px;padding-right:0}td.pick input{width:16px;height:16px;margin:0;cursor:pointer;accent-color:var(--series-1)}tr.off td:not(.pick){opacity:.45}.legend-swatch.dashed{background:repeating-linear-gradient(90deg,currentColor 0 4px,transparent 4px 6px)!important}.segmented.toggles .check{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-right:6px;border-radius:4px;border:1.5px solid var(--text-muted);font-size:10px;line-height:1}.segmented.toggles .on .check.ios{background:var(--series-1);border-color:var(--series-1);color:#fff}.segmented.toggles .on .check.android{background:var(--series-2);border-color:var(--series-2);color:#fff}.card-head .inline{gap:12px}@media(max-width:700px){input,select,textarea,.copy-row input{font-size:16px}}.public{max-width:1000px;margin:0 auto;padding:16px}.public-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0 8px}.hero{text-align:center;padding:48px 0 24px}.hero h1{font-size:clamp(30px,6vw,48px);line-height:1.1;letter-spacing:-.03em;margin:0 auto 16px;max-width:760px}.hero .lead{font-size:18px;color:var(--text-secondary);max-width:640px;margin:0 auto 24px}.hero-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px;margin-bottom:36px}.btn-big{display:inline-block;font-size:16px;padding:10px 20px;font-weight:600}.preview{max-width:720px;margin:0 auto;text-align:left;display:grid;gap:12px}.preview .kpis{margin:0}.preview-chart{width:100%;height:120px;display:block}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px 32px;padding:40px 0}.feature h3{font-size:16px;margin-bottom:6px}.feature p{margin:0;color:var(--text-secondary)}.pricing{max-width:440px;margin:0 auto 32px;text-align:center;padding:28px}.pricing .price{font-size:32px;font-weight:700;letter-spacing:-.02em;margin:12px 0 4px}.pricing p{margin:4px 0}.checks{list-style:none;padding:0;margin:20px 0;display:grid;gap:8px;color:var(--text-secondary)}.checks li:before{content:"✓";color:var(--good);font-weight:700;margin-right:8px}.public-lang{display:flex;justify-content:center;margin:16px 0}.public-lang .lang-select{grid-auto-flow:column;align-items:center}.public-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;padding:24px 0 8px;border-top:1px solid var(--border);margin-top:16px}.legal{max-width:760px;margin:16px auto;padding:28px;line-height:1.6}.legal h1{font-size:26px;margin:0 0 4px}.legal h2{font-size:16px;margin:24px 0 8px}.legal p{margin:0 0 10px}.legal ul{margin:0 0 10px;padding-left:20px}.legal li{margin-bottom:4px}.brand-link{color:var(--text-primary)}@media(max-width:640px){.hero{padding-top:28px}.hero .lead{font-size:16px}.legal,.pricing{padding:20px 16px}}
