:root{--bg:#f2f0ea;--card:#fff;--text:#3a3a3a;--muted:#8a8a8a;--line:#e3dfd4;--badge:#777;--pink:#f0d9d9;--accent:#3a3a3a;--accent-text:#fff;--stamp-empty:#cfcbc0;--overlay:#1e1c1873;--danger:#b23b3b;--ok:#3f7a57;--chart:#b85f6d}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#1d1c1a;--card:#292826;--text:#f2f0ea;--muted:#a5a196;--line:#3a3936;--accent:#f2f0ea;--accent-text:#1d1c1a;--stamp-empty:#4a4844;--overlay:#0009;--danger:#e27c7c;--ok:#7cc79a;--chart:#c86f7c}}:root[data-theme=dark]{--chart:#c86f7c;--bg:#1d1c1a;--card:#292826;--text:#f2f0ea;--muted:#a5a196;--line:#3a3936;--accent:#f2f0ea;--accent-text:#1d1c1a;--stamp-empty:#4a4844;--overlay:#0009;--danger:#e27c7c;--ok:#7cc79a}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);margin:0;font-family:-apple-system,Segoe UI,system-ui,Arial,sans-serif}.wrap{max-width:430px;margin:0 auto;padding:28px 20px 36px}.brand{text-align:center;margin-bottom:20px}.brand svg{width:64px;height:64px}.brand h1{margin:4px 0 0;font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:700}.brand .sub{letter-spacing:4px;color:var(--muted);margin-top:4px;font-size:11px}.badge-fill{fill:var(--badge)}.pink-fill{fill:var(--pink)}.card{background:var(--card);border-radius:22px;margin-bottom:14px;padding:20px 20px 22px}.card h2{margin:0 0 6px;font-size:17px}.lead{color:var(--muted);margin:0 0 16px;font-size:13.5px;line-height:1.5}input[type=text],input[type=tel],input[type=password],input[type=search],textarea{border:1px solid var(--line);background:var(--bg);width:100%;color:var(--text);border-radius:12px;margin-bottom:12px;padding:12px 14px;font-family:inherit;font-size:16px}.err{color:var(--danger);margin:-2px 0 12px;font-size:13px}button{cursor:pointer;-webkit-tap-highlight-color:transparent;font-family:inherit}.primary{background:var(--accent);width:100%;color:var(--accent-text);border:none;border-radius:14px;padding:14px;font-size:15px;font-weight:600;transition:opacity .15s}.primary:active{opacity:.85}.primary:disabled{opacity:.5;cursor:default}.ghost{text-align:center;color:var(--text);border:1px solid var(--line);background:0 0;border-radius:12px;flex:1;padding:10px 8px;font-size:13px;font-weight:600;text-decoration:none}.ghost:active{background:var(--bg)}label.f{color:var(--muted);margin:0 0 5px;font-size:12.5px;display:block}.check{color:var(--muted);align-items:flex-start;gap:10px;margin:2px 0 12px;font-size:13px;line-height:1.45;display:flex}.check input{flex-shrink:0;width:18px;height:18px;margin-top:2px}.actions{gap:8px;margin-top:8px;display:flex}.release{margin-bottom:14px}.release .err{margin:8px 0 0}.primary.live{background:var(--ok);color:var(--accent-text)}.center{text-align:center}.greet{text-align:center;color:var(--muted);margin:0 0 12px;font-size:15px}.greet b{color:var(--text)}.banner{text-align:center;background:var(--card);border-radius:14px;margin-bottom:12px;padding:12px 14px;font-size:14px;line-height:1.4}.banner.ok{color:var(--ok);font-weight:600}.banner.info{color:var(--muted)}.loyalty{text-align:center}.ring{width:200px;height:200px;margin:2px auto 4px;display:block}.st-on{fill:var(--badge)}.st-check{stroke:var(--pink);fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.st-off{fill:none;stroke:var(--stamp-empty);stroke-width:2.5px;stroke-dasharray:3 4}.st-fresh .st-on{transform-box:fill-box;transform-origin:50%;animation:.52s cubic-bezier(.34,1.56,.64,1) .45s both stamp-in}.st-fresh .st-check{stroke-dasharray:1;animation:.32s ease-out .9s both check-draw}.fresh-count{animation:.4s ease-out .9s both count-in}@keyframes stamp-in{0%{opacity:0;transform:scale(1.8)}to{opacity:1;transform:scale(1)}}@keyframes check-draw{0%{stroke-dashoffset:1px;opacity:0}15%{opacity:1}to{stroke-dashoffset:0}}@keyframes count-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.count{margin:4px 0 2px;font-size:17px;font-weight:600}.hint{color:var(--muted);margin:0;font-size:13px}.hint.ready{color:var(--ok);font-weight:600}.list{background:var(--card);border-radius:22px;overflow:hidden}.row-link{border:none;border-top:1px solid var(--line);width:100%;color:var(--text);text-align:left;background:0 0;align-items:center;gap:14px;padding:15px 18px;font-size:15px;text-decoration:none;display:flex}.list>:first-child{border-top:none}.row-link:active{background:var(--bg)}.ico{background:var(--pink);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.ico svg{stroke:#5b4a4a;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.row-text{flex:1;min-width:0}.row-title{font-weight:600;display:block}.row-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:12.5px;display:block;overflow:hidden}.chev{width:16px;height:16px;stroke:var(--muted);fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.privacy{margin-top:16px}.sheet{background:var(--card);width:100%;max-width:430px;color:var(--text);padding:12px 22px calc(26px + env(safe-area-inset-bottom,0px));max-height:88vh;transition:transform .26s cubic-bezier(.2, .8, .2, 1), overlay .26s allow-discrete, display .26s allow-discrete;border:none;border-radius:24px 24px 0 0;outline:none;margin:0 auto;position:fixed;inset:auto 0 0;overflow-y:auto;transform:translateY(105%)}.sheet[open]{transform:translateY(0)}@starting-style{.sheet[open]{transform:translateY(105%)}}.sheet::backdrop{background:var(--overlay);opacity:0;transition:opacity .22s ease, overlay .22s allow-discrete, display .22s allow-discrete}.sheet[open]::backdrop{opacity:1}@starting-style{.sheet[open]::backdrop{opacity:0}}.grab{background:var(--line);border-radius:4px;width:40px;height:4px;margin:0 auto 14px}.sheet h3{text-align:center;margin:0 0 6px;font-size:18px}.sheet .lead{text-align:center}.close{color:var(--muted);background:0 0;border:none;margin:14px auto 0;padding:8px 16px;font-size:14px;display:block}.skel{background:var(--bg);border-radius:12px;height:46px;margin-bottom:10px}.note{color:var(--muted);text-align:center;margin:4px 0 0;font-size:11.5px}.thanks{text-align:center;padding:10px 0 4px}.thanks strong{margin-bottom:4px;font-size:16px;display:block}textarea{resize:vertical;min-height:110px}.result{background:var(--card);border-radius:18px;margin-top:4px;padding:16px}.result .ok{color:var(--ok);margin:0 0 8px;font-weight:700}input[type=text].linkbox{width:100%;margin:6px 0 0;padding:9px 10px;font-size:12px}.fine{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.45}.tabs{gap:5px;margin-bottom:14px;display:flex}.tab{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:12px;flex:1;padding:10px 2px;font-size:12.5px;font-weight:600}.tab[aria-selected=true]{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.cust{background:var(--card);border-radius:18px;margin-bottom:10px;padding:14px 16px}.cust-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.cust-name{font-size:16px;font-weight:700;display:block}.cust-phone{color:var(--muted);font-size:13px}.dots{flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:50%;padding-top:4px;display:flex}.dot{border:1.5px solid var(--stamp-empty);border-radius:50%;width:11px;height:11px}.dot.on{background:var(--badge);border-color:var(--badge)}.cust-meta{color:var(--muted);margin:8px 0 10px;font-size:12.5px}.cust .primary{padding:12px;font-size:14px}.erase{color:var(--muted);text-underline-offset:3px;background:0 0;border:none;margin:10px auto 0;padding:6px 10px;font-size:12.5px;text-decoration:underline;display:block}.erase:disabled{opacity:.5}.ghost.warn{color:var(--danger)}.ghost:disabled{opacity:.5}.empty{text-align:center;color:var(--muted);padding:26px 10px;font-size:14px;line-height:1.5}.kpi{color:var(--muted);margin:0 0 10px;font-size:13px}.item{background:var(--card);border-radius:16px;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;padding:12px 16px;display:flex}.item .name{font-weight:600}.item .ph{color:var(--muted);font-size:12.5px;display:block}.item .when{color:var(--muted);white-space:nowrap;font-size:12px}.fb{background:var(--card);overflow-wrap:anywhere;white-space:pre-line;border-radius:16px;margin-bottom:8px;padding:12px 16px;font-size:14px;line-height:1.45}.fb .when{color:var(--muted);margin-top:6px;font-size:12px;display:block}.toast{left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));background:var(--accent);color:var(--accent-text);opacity:0;pointer-events:none;z-index:20;text-align:center;border-radius:22px;max-width:90vw;padding:11px 18px;font-size:14px;transition:opacity .2s,transform .2s;position:fixed;transform:translate(-50%,20px)}.toast.show{opacity:1;transform:translate(-50%)}.numbers-link{margin-top:14px;padding:12px 8px;display:block}.back{margin:-6px 0 6px;font-size:13px}.back a{color:var(--muted);text-decoration:none}.page-title{margin:0 0 14px;font-size:19px}.numbers-link+.numbers-link{margin-top:8px}.ok-note{color:var(--ok);margin:-2px 0 12px;font-size:13px;font-weight:600}.warn-note{margin:-4px 0 12px}.example-note{text-align:left}.is-example{outline:1.5px dashed var(--stamp-empty);outline-offset:-1.5px}.hero-stat{flex-direction:column;gap:2px;margin-bottom:16px;display:flex}.stat-value.hero{font-size:48px;font-weight:700;line-height:1}.stat-label{color:var(--muted);font-size:13px}.kpis{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:14px 12px;margin:0;padding-top:14px;display:grid}.kpis dt{color:var(--muted);font-size:12.5px}.kpis dd{margin:2px 0 0;font-size:22px;font-weight:600}.kpi-hint{color:var(--muted);font-size:11.5px}.chart{margin:0}.chart-title{margin:0 0 10px;font-size:14px;font-weight:600}.chart-plot{position:relative}.chart-plot svg{width:100%;height:auto;display:block;overflow:visible}.chart-bar{fill:var(--chart)}.chart-bar.on{opacity:.75}.chart-base{stroke:var(--line);stroke-width:1px}.chart-value{fill:var(--text);font-size:11px;font-weight:600}.chart-axis{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:10px}.chart-hit{fill:#0000;outline:none}.chart-hit:focus-visible{stroke:var(--text);stroke-width:1.5px}.chart-tip{background:var(--accent);color:var(--accent-text);white-space:nowrap;pointer-events:none;z-index:2;border-radius:10px;flex-direction:column;align-items:center;padding:6px 10px;font-size:12px;display:flex;position:absolute;top:-6px;transform:translate(-50%,-100%)}.chart-tip strong{font-size:13px}.chart-table{color:var(--muted);margin-top:8px;font-size:12.5px}.chart-table summary{cursor:pointer}.chart-table table{border-collapse:collapse;width:100%;color:var(--text);margin-top:6px}.chart-table th,.chart-table td{text-align:left;border-top:1px solid var(--line);padding:4px 0;font-weight:400}.chart-table td{text-align:right;font-variant-numeric:tabular-nums}.ranking{margin:0;padding-left:22px}.ranking li{border-top:1px solid var(--line);padding:7px 0;font-size:14px}.ranking li:first-child{border-top:none}.ranking li::marker{color:var(--muted);font-variant-numeric:tabular-nums}.ranking li{display:list-item}.rank-name{font-weight:600}.rank-value{float:right;color:var(--muted);font-variant-numeric:tabular-nums}.logout{margin-top:14px}.logout .ghost{width:100%}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}footer{text-align:center;color:var(--muted);margin-top:22px;font-size:11px;line-height:1.6}@media (prefers-reduced-motion:reduce){.primary{transition:none}.st-fresh .st-on,.st-fresh .st-check,.fresh-count{animation:none}.sheet,.sheet::backdrop,.toast{transition:none}}
