:root{--navy:#14213D;--navy2:#1d2f55;--amber:#E3A857;--bg:#f7f6f2;--card:#fff;--ink:#14213D;--mute:#5d6780;--line:#e4e2da;--ok:#2f8f5b;--bad:#c2453b}
[data-theme=dark]{--bg:#0d1526;--card:#15213b;--ink:#eef0f5;--mute:#9aa5bd;--line:#26365a}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--ink);line-height:1.55}
h1,h2,h3,.brand-name{font-family:Sora,Inter,sans-serif;letter-spacing:-.02em;margin:0}
a{color:inherit}
.mono{font-family:'JetBrains Mono',monospace}
.btn{display:inline-block;border:0;border-radius:8px;padding:.7rem 1.2rem;font:600 .95rem Inter,sans-serif;cursor:pointer;text-decoration:none;background:var(--amber);color:var(--navy)}
.btn:hover{filter:brightness(1.06)}
.btn.ghost{background:transparent;border:1px solid var(--line);color:inherit}
.btn.sm{padding:.4rem .75rem;font-size:.82rem}
.btn.danger{background:transparent;border:1px solid var(--bad);color:var(--bad)}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none}
.brand svg{width:38px;height:38px;flex:none}
.brand-name{font-weight:700;font-size:1.25rem;line-height:1}
.brand-sub{font-size:.6rem;letter-spacing:.28em;opacity:.7;margin-top:3px}
.brand-tag{font-size:.72rem;font-style:italic;opacity:.8}
/* site */
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.nav{background:var(--navy);color:#fff;position:sticky;top:0;z-index:5}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:68px}
.nav nav{display:flex;gap:1.4rem;align-items:center;font-size:.92rem}
.nav nav a{text-decoration:none;opacity:.85}
.nav nav a:hover{opacity:1}
.hero{background:var(--navy);color:#fff;padding:80px 0 90px}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
.hero h1{font-size:clamp(2rem,4.5vw,3.2rem);line-height:1.1}
.hero h1 em{color:var(--amber);font-style:normal}
.hero p{font-size:1.1rem;opacity:.85;max-width:34rem}
.hero .cta{display:flex;gap:.8rem;margin-top:1.6rem;flex-wrap:wrap}
.hero .btn.ghost{border-color:#ffffff55;color:#fff}
.phone{background:#0e1830;border:1px solid #ffffff22;border-radius:22px;padding:18px;max-width:320px;margin-left:auto}
.bubble{background:#ffffff14;border-radius:14px 14px 14px 4px;padding:.7rem .9rem;font-size:.86rem;margin-bottom:.7rem}
.bubble small{display:block;opacity:.6;font-size:.7rem;margin-bottom:2px}
.bubble.a{background:var(--amber);color:var(--navy);border-radius:14px 14px 4px 14px;margin-left:30px}
section.s{padding:72px 0}
section.s.alt{background:var(--card)}
.s h2{font-size:1.9rem;margin-bottom:.4rem}
.s .lead{color:var(--mute);max-width:40rem;margin:0 0 2rem}
.grid{display:grid;gap:18px}
.g3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px}
.alt .card{background:var(--bg)}
.card h3{font-size:1.05rem;margin-bottom:.35rem}
.card p{margin:0;color:var(--mute);font-size:.92rem}
.ico{width:38px;height:38px;border-radius:9px;background:var(--navy);color:var(--amber);display:grid;place-items:center;font-weight:700;margin-bottom:.8rem;font-family:Sora}
.price{font-size:2rem;font-family:'JetBrains Mono';font-weight:700}
.price small{font-size:.8rem;font-weight:400;color:var(--mute)}
.card.hl{border:2px solid var(--amber)}
.card ul{padding-left:1.1rem;color:var(--mute);font-size:.9rem}
form.contact{display:grid;gap:12px;max-width:520px}
input,select,textarea{font:inherit;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:.6rem .7rem;width:100%}
textarea{min-height:110px;resize:vertical}
label{font-size:.82rem;font-weight:600;display:block;margin-bottom:4px}
footer.site{background:var(--navy);color:#ffffffb0;padding:34px 0;font-size:.85rem}
footer.site .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
@media(max-width:800px){.hero .wrap{grid-template-columns:1fr}.phone{margin:0}.nav nav a.hide{display:none}}
/* app */
.app{display:grid;grid-template-columns:230px 1fr;min-height:100vh}
.side{background:var(--navy);color:#fff;padding:20px 14px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}
.side .brand{margin:0 6px 24px}
.side button.tab{display:block;width:100%;text-align:left;background:none;border:0;color:#ffffffc0;padding:.65rem .8rem;border-radius:8px;font:500 .93rem Inter;cursor:pointer;margin-bottom:2px}
.side button.tab:hover{background:#ffffff12}
.side button.tab.on{background:var(--amber);color:var(--navy);font-weight:600}
.side .credit{margin-top:auto;font-size:.72rem;opacity:.6;padding:8px}
.main{padding:28px;max-width:1000px;width:100%}
.main h2{font-size:1.5rem;margin-bottom:1rem}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:18px}
.stat .v{font:700 1.7rem 'JetBrains Mono'}
.stat .l{font-size:.78rem;color:var(--mute)}
.tip{border-left:3px solid var(--amber);padding:.5rem .8rem;margin:.5rem 0;background:var(--bg);border-radius:0 8px 8px 0;font-size:.9rem}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}
table{width:100%;border-collapse:collapse;font-size:.88rem}
th{text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--mute)}
th,td{padding:.55rem .5rem;border-bottom:1px solid var(--line);vertical-align:top}
.chip{display:inline-block;background:var(--bg);border:1px solid var(--line);border-radius:99px;padding:.15rem .6rem;font-size:.74rem;cursor:pointer;margin:0 4px 4px 0}
.chip.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.preview{background:var(--bg);border-radius:10px;padding:.8rem;font-size:.9rem;min-height:60px;white-space:pre-wrap}
.bars{display:flex;align-items:flex-end;gap:10px;height:150px;padding-top:10px}
.bars div{flex:1;text-align:center;font-size:.7rem;color:var(--mute)}
.bars i{display:block;background:var(--amber);border-radius:5px 5px 0 0;margin-bottom:4px;min-height:2px}
.ok{color:var(--ok)}.bad{color:var(--bad)}
.toast{position:fixed;bottom:20px;right:20px;background:var(--navy);color:#fff;padding:.7rem 1rem;border-radius:8px;font-size:.88rem;opacity:0;transition:.3s;pointer-events:none;z-index:9}
.toast.show{opacity:1}
.demo-bar{background:var(--amber);color:var(--navy);text-align:center;font-size:.8rem;padding:.35rem;font-weight:600}
@media(max-width:800px){.app{grid-template-columns:1fr}.side{position:static;height:auto;flex-direction:row;flex-wrap:wrap;gap:4px}.side .brand,.side .credit{display:none}.side button.tab{width:auto}.two{grid-template-columns:1fr}.main{padding:16px}}
