:root{color:#17231f;font-synthesis:none;text-rendering:optimizelegibility;--surface:#fff;--surface-soft:#e8f1ed;--text:#17231f;--text-primary:#17231f;--text-secondary:#3b4d47;--muted:#53645e;--border:#c4d4cd;--primary:#08765c;--primary-hover:#05634d;--focus:#24ad87;--input-bg:#fff;--input-text:#17231f;--input-border:#b8c9c2;--shadow:0 12px 32px #11362b14;--radius:1.25rem;background:#f3f7f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at top right, #d9eee6 0, transparent 28rem), var(--surface-soft);min-width:320px;min-height:100vh;color:var(--text);margin:0}button,input,select,textarea{font:inherit;color:var(--input-text)}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:2px}a,a:visited{color:var(--primary);text-underline-offset:3px;text-decoration:underline}a:hover{color:var(--primary-hover)}.brand,.brand:visited,.nav-link,.nav-link:visited{color:var(--text)}.button-primary,.button-primary:visited{color:#fff}.button-secondary,.button-secondary:visited{color:var(--primary)}.button-ghost,.button-ghost:visited{color:var(--text)}.brand,.button,.nav-link,.eyebrow a,.card-heading a{text-decoration:none}h1,h2,p{margin-top:0}h1{letter-spacing:-.04em;font-size:clamp(2rem,7vw,3.75rem);line-height:1.04}h2{font-size:1.3rem}p{line-height:1.65}.app-shell{flex-direction:column;min-height:100vh;display:flex}.header{justify-content:space-between;align-items:center;gap:1rem;width:min(72rem,100% - 2rem);min-height:4.5rem;margin:0 auto;display:flex}.brand{letter-spacing:-.02em;color:var(--text);align-items:center;gap:.65rem;font-weight:800;display:inline-flex}.brand-mark{aspect-ratio:1;color:#fff;background:var(--primary);border-radius:.75rem;place-items:center;width:2.15rem;display:grid}.user-menu{align-items:center;gap:.65rem;display:flex}.user-name{white-space:nowrap;text-overflow:ellipsis;max-width:10rem;color:var(--text);overflow:hidden}.page{flex:1;width:min(72rem,100% - 2rem);margin:0 auto;padding:2rem 0 4rem}footer{text-align:center;color:var(--muted);padding:1.5rem;font-size:.875rem}.hero{max-width:50rem;padding:clamp(3rem,11vw,8rem) 0}.hero>p:not(.eyebrow){max-width:40rem;color:var(--muted);font-size:clamp(1.05rem,2vw,1.25rem)}.eyebrow{color:var(--primary);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.55rem;font-size:.78rem;font-weight:800}.content-narrow,.auth-panel{width:min(100%,40rem);margin:2rem auto}.auth-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;padding:clamp(1.5rem,6vw,3rem)}.auth-panel h1{font-size:clamp(2rem,6vw,3rem)}.helper,.muted-text{color:var(--muted);font-size:.9rem}.form-error{color:#b91c1c;font-weight:650}.notice{background:var(--surface);color:var(--primary);border:1px solid var(--border);border-radius:.7rem;padding:.7rem 1rem;font-weight:700}.test-banner{color:#5f3f00;text-align:center;background:#fff0c7;border:2px solid #b46b00;border-radius:.8rem;margin-bottom:1rem;padding:1rem;font-size:1.05rem;font-weight:900}.purchase-form{gap:.7rem;display:grid}.purchase-form>label:first-child{color:var(--text);font-weight:750}.purchase-form input[type=email]{border:1px solid var(--input-border);width:100%;color:var(--input-text);background:var(--input-bg);border-radius:.7rem;padding:.75rem}.purchase-form input[aria-invalid=true]{border-color:#b91c1c}.button{cursor:pointer;border:0;border-radius:.8rem;justify-content:center;align-items:center;min-height:2.85rem;padding:.72rem 1.1rem;font-weight:750;text-decoration:none;transition:background .15s,transform .15s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.55}.button-primary{color:#fff;background:var(--primary)}.button-primary:hover:not(:disabled){background:var(--primary-hover)}.button-secondary{color:var(--primary);background:#d9eee7}.button-ghost{color:var(--text);border:1px solid var(--border);background:0 0}.button-small{min-height:2.35rem;padding:.45rem .75rem}.button-full{width:100%}.button-row{flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;display:flex}.card,.state-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:1.4rem}.card-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.plan-card{gap:1.1rem;display:grid}.price{align-items:baseline;gap:.65rem;margin:0;display:flex}.price strong{letter-spacing:-.04em;color:var(--text);font-size:2rem}.price span{color:var(--muted)}.feature-list{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.feature-list li:before{content:"✓";color:var(--primary);margin-right:.65rem;font-weight:900}.dashboard-grid{gap:1rem;display:grid}.page-title{margin-bottom:1rem}.page-title h1{font-size:clamp(2rem,6vw,3rem)}.details{grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0 0;display:grid}.details div{background:var(--surface-soft);border:1px solid var(--border);border-radius:.8rem;padding:.8rem}.details dt{color:var(--muted);font-size:.82rem}.details dd{color:var(--text);margin:.25rem 0 0;font-weight:750}.badge{white-space:nowrap;border-radius:999px;padding:.35rem .65rem;font-size:.78rem;font-weight:750;display:inline-flex}.badge-success{color:#065f46;background:#d1fae5}.badge-warning{color:#78350f;background:#fef3c7}.badge-danger{color:#991b1b;background:#fee2e2}.badge-info{color:#1e40af;background:#dbeafe}.badge-neutral{color:var(--muted);background:var(--surface-soft);border:1px solid var(--border)}.state-card,.center-state{text-align:center;padding:3rem 1rem}.state-icon{aspect-ratio:1;color:#991b1b;background:#fee2e2;border-radius:50%;place-items:center;width:3rem;margin:0 auto 1rem;font-weight:900;display:grid}.state-icon.muted{background:var(--surface-soft);color:var(--muted)}.spinner{aspect-ratio:1;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:2.5rem;animation:.8s linear infinite spin;display:inline-block}.toast-region{z-index:20;position:fixed;bottom:1rem;right:1rem}.dialog-backdrop{z-index:30;background:#04100c9e;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.dialog{border-radius:var(--radius);background:var(--surface);width:min(100%,28rem);box-shadow:var(--shadow);padding:1.5rem}@keyframes spin{to{transform:rotate(360deg)}}@media (width>=48rem){.dashboard-grid{grid-template-columns:repeat(2,1fr)}.connection-card,.connection-guide-card{grid-column:1/-1}.card{padding:1.75rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (prefers-color-scheme:dark){:root{--surface:#1a2a24;--surface-soft:#12201b;--text:#f0f7f4;--text-primary:#f0f7f4;--text-secondary:#cde0d8;--muted:#9eb5aa;--border:#355247;--primary:#39c99f;--primary-hover:#29b78f;--focus:#62dbb8;--input-bg:#11211c;--input-text:#f0f7f4;--input-border:#355247;--shadow:0 14px 36px #00000038}body{background:radial-gradient(circle at top right, #184538 0, transparent 27rem), var(--surface-soft);color:var(--text)}.form-error{color:#f87171}.button-primary,.button-primary:visited{color:#04241b;font-weight:800}.button-secondary,.button-secondary:visited{color:#a4f0d7;background:#1c453a}.badge-success{color:#6ee7b7;background:#064e3b}.badge-warning{color:#fde047;background:#451a03}.badge-danger{color:#fca5a5;background:#450a0a}.badge-info{color:#93c5fd;background:#1e3a8a}}body.telegram-mini-app{background:var(--tg-theme-bg-color,var(--surface-soft));color:var(--tg-theme-text-color,var(--text));max-width:100vw;overflow-x:hidden}body.telegram-mini-app .page{padding:1.25rem 0 3rem}body.telegram-mini-app .card{background:var(--tg-theme-secondary-bg-color,var(--surface));border-color:var(--border)}.admin-nav-link,.admin-nav-link:visited{color:var(--primary);background:var(--surface-soft);border:1px solid var(--border);font-weight:750}.admin-nav-link:hover{background:var(--primary);color:#fff}@media (prefers-color-scheme:dark){.admin-nav-link:hover{color:#04241b}}.connection-guide-card{grid-column:1/-1}.connection-guide-body{flex-direction:column;gap:1.15rem;margin-top:1rem;display:flex}.connection-url-label{color:var(--text);margin-bottom:.25rem;font-size:.95rem;font-weight:750}.connection-url-box{flex-direction:column;gap:.5rem;display:flex}@media (width>=36rem){.connection-url-box{flex-direction:row;align-items:center}}.connection-url-input{width:100%;color:var(--input-text);background-color:var(--input-bg);border:1px solid var(--input-border);white-space:nowrap;border-radius:.75rem;flex:1;padding:.75rem .9rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.92rem;overflow-x:auto}.connection-url-input:focus-visible{outline:3px solid var(--focus);border-color:var(--focus)}.connection-steps-section h3{color:var(--text);margin-bottom:.5rem;font-size:1.1rem}.connection-steps{flex-direction:column;gap:.75rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.connection-steps li{align-items:flex-start;gap:.75rem;display:flex}.step-number{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:1.65rem;height:1.65rem;font-size:.85rem;font-weight:800;display:grid}@media (prefers-color-scheme:dark){.step-number{color:#04241b}}.step-content{flex-direction:column;gap:.15rem;display:flex}.step-content strong{color:var(--text);font-size:.95rem}.step-content p{color:var(--muted);margin:0;font-size:.88rem}.apps-systems-info{background:var(--surface-soft);border:1px solid var(--border);border-radius:.75rem;flex-direction:column;gap:.4rem;padding:.85rem 1rem;display:flex}.apps-systems-info p{color:var(--text);margin:0;font-size:.9rem}.apps-systems-info .note-line{color:var(--muted);margin-top:.2rem;font-size:.85rem}.connection-security-notice{color:var(--muted);font-size:.88rem}.connection-support-footer{padding-top:.25rem;font-size:.9rem}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
