:root{
  --bg:#07070a;--panel:#111117;--panel2:#17171e;--line:#292932;--text:#f5f5f7;
  --muted:#9696a2;--accent:#a855f7;--accent2:#6d28d9;--green:#63ff9b;--danger:#ff4b55;
  --glass:rgba(14,14,20,.82);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,Helvetica,sans-serif;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 75% 20%,rgba(168,85,247,.16),transparent 28%),radial-gradient(circle at 15% 45%,rgba(92,38,160,.10),transparent 24%);pointer-events:none;z-index:-3}
.bg-grid{position:fixed;inset:0;opacity:.15;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,#000,transparent 90%);z-index:-2}
.noise{position:fixed;inset:0;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");z-index:-1}
a{color:inherit;text-decoration:none}button,input,select{font:inherit}
.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;border-bottom:1px solid rgba(255,255,255,.07);background:rgba(7,7,10,.76);backdrop-filter:blur(16px);position:sticky;top:0;z-index:30}
.brand{display:flex;align-items:center;gap:10px;min-width:260px}.brand-logo{width:72px;height:40px;object-fit:cover;object-position:center;border:1px solid rgba(168,85,247,.45);box-shadow:0 0 18px rgba(168,85,247,.18)}.brand-copy{display:block}.brand strong{display:block;letter-spacing:1.8px;font-size:16px}.brand strong span,footer strong span{color:var(--accent)}.brand small{display:block;font-size:8px;color:var(--muted);letter-spacing:1.5px;margin-top:2px}
nav{display:flex;gap:24px;color:#b7b7c2;font-size:12px}nav a:hover{color:#fff}
.ghost-btn,.secondary-btn{border:1px solid #383841;background:transparent;color:#ddd;padding:11px 16px;cursor:pointer}.ghost-btn:hover,.secondary-btn:hover{border-color:var(--accent);color:var(--accent)}
.hero{max-width:1180px;margin:0 auto;padding:78px 24px 60px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:70px;min-height:650px}
.eyebrow,.section-kicker{color:var(--accent);font-size:10px;font-weight:800;letter-spacing:2.5px}.eyebrow span{display:inline-block;width:28px;height:1px;background:var(--accent);vertical-align:middle;margin-right:8px}
.hero h1{font-size:clamp(54px,8vw,102px);line-height:.87;margin:22px 0;font-weight:950;letter-spacing:-5px}.hero h1 em,h2 em{font-style:normal;color:transparent;-webkit-text-stroke:1px var(--accent);text-shadow:0 0 35px rgba(168,85,247,.16)}.hero p{max-width:560px;color:var(--muted);font-size:17px;line-height:1.7}
.hero-actions{display:flex;gap:12px;margin-top:30px}.primary-btn,.generate-btn,.apply-btn,.copy-btn{border:0;background:linear-gradient(100deg,var(--accent2),var(--accent));color:#090909;font-weight:950;letter-spacing:.7px;padding:15px 21px;cursor:pointer;box-shadow:0 12px 30px rgba(168,85,247,.16)}.primary-btn span{margin-left:20px}.primary-btn:hover,.generate-btn:hover,.apply-btn:hover,.copy-btn:hover{transform:translateY(-2px);filter:brightness(1.08)}.link-btn{display:flex;align-items:center;justify-content:center}
.hero-card{height:430px;background-image:url("knzin-hero.png");background-size:cover;background-position:center;position:relative;border:1px solid #34343d;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.55)}.hero-image-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,5,8,.08),rgba(5,5,8,.7))}.hero-card:after{content:"";position:absolute;inset:18px;border:1px solid rgba(168,85,247,.22);pointer-events:none}.hero-card-top,.hero-card-footer{position:absolute;left:28px;right:28px;display:flex;justify-content:space-between;z-index:2;font-size:9px;letter-spacing:2px}.hero-card-top{top:30px;color:#aaa}.dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 14px var(--green)}.crosshair{position:absolute;left:50%;top:50%;width:180px;height:180px;transform:translate(-50%,-50%);border:1px solid rgba(168,85,247,.35);border-radius:50%;z-index:2}.crosshair:before,.crosshair:after{content:"";position:absolute;background:var(--accent);opacity:.65}.crosshair:before{left:50%;top:-15px;width:1px;height:210px}.crosshair:after{top:50%;left:-15px;height:1px;width:210px}.crosshair i{position:absolute;inset:38px;border:1px dashed rgba(255,255,255,.4);border-radius:50%}.hero-stat{position:absolute;left:50%;top:51%;transform:translate(-50%,-60%);text-align:center;z-index:2}.hero-stat strong{display:block;font-size:92px;line-height:1;text-shadow:0 0 35px rgba(168,85,247,.22)}.hero-stat small{font-size:9px;letter-spacing:5px;color:var(--accent)}.hero-card-footer{bottom:28px;color:#aaa}.hero-card-footer div{text-align:left}.hero-card-footer strong{display:block;color:#fff;font-size:12px;margin-top:4px}.hero-card-footer div:last-child{text-align:right}
.hero-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:560px;margin-top:34px;padding-top:22px;border-top:1px solid var(--line)}.hero-mini-stats strong{display:block;font-size:22px}.hero-mini-stats span{display:block;color:#777;font-size:8px;letter-spacing:1.7px;margin-top:5px}
.section-tight{max-width:1180px;margin:0 auto;padding:0 24px 48px}.quick-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.quick-card{padding:17px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(22,22,29,.9),rgba(12,12,16,.9));display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;transition:.2s ease}.quick-card:hover{border-color:rgba(168,85,247,.65);transform:translateY(-2px)}.quick-card b{font-size:11px}.quick-card small{display:block;color:#777;font-size:8px;margin-top:5px}.quick-card>span:last-child{color:#777}.quick-icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(168,85,247,.45);color:var(--accent);font-weight:900}
.section{max-width:1180px;margin:0 auto;padding:80px 24px}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:34px}.section-head h2{font-size:48px;margin:10px 0 0;letter-spacing:-2px}.section-head>p{max-width:420px;color:var(--muted);line-height:1.6;font-size:14px}
.panel{background:linear-gradient(145deg,rgba(22,22,29,.96),rgba(12,12,16,.96));border:1px solid var(--line);padding:28px}.panel-label{font-size:9px;letter-spacing:1.8px;color:#888;margin-bottom:18px}
.generator-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:16px}.form-panel{position:relative}.step{display:grid;grid-template-columns:42px 1fr;gap:13px;margin-bottom:18px}.step>span{color:var(--accent);font-weight:900;font-size:12px;padding-top:9px}.step label,.style-title label,.result-head span,.result-footer span{display:block;color:#858590;font-size:9px;letter-spacing:1.7px;margin-bottom:7px}.step select,.search-wrap input,.modal-box input{width:100%;background:#0b0b0f;color:#fff;border:1px solid #30303a;padding:14px;outline:0}.step select:focus,.search-wrap input:focus,.modal-box input:focus{border-color:var(--accent)}.search-wrap{position:relative;margin:5px 0 11px}.search-wrap input{padding-right:38px}.search-wrap span{position:absolute;right:14px;top:11px;font-size:22px;color:#777}.detect-btn{width:100%;background:transparent;border:1px solid #36363f;color:#bbb;padding:11px;cursor:pointer;font-size:10px;letter-spacing:1px}.detect-btn:hover{color:var(--accent);border-color:var(--accent)}.style-title{margin-top:28px}.styles{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.style{padding:15px 7px;text-align:left;background:#0b0b0f;border:1px solid #30303a;color:#fff;cursor:pointer}.style b,.style small{display:block}.style b{font-size:10px}.style small{color:#777;font-size:7px;margin-top:5px}.style.active{border-color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent);background:rgba(168,85,247,.05)}.spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.spec-field{background:#0b0b0f;border:1px solid #30303a;padding:11px}.spec-field span{display:block;color:#777;font-size:8px;letter-spacing:1.2px;margin-bottom:6px}.spec-field select{width:100%;background:transparent;border:0;color:#fff;outline:0}.spec-wide{grid-column:1/-1}
.segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.segment{background:#0b0b0f;border:1px solid #30303a;color:#aaa;padding:12px 8px;font-size:9px;cursor:pointer}.segment.active{border-color:var(--accent);color:#fff;background:rgba(168,85,247,.06)}
.generate-btn{width:100%;margin-top:16px;display:flex;justify-content:space-between}.result-panel{display:flex;flex-direction:column}.result-head{display:flex;justify-content:space-between;align-items:start;padding-bottom:20px;border-bottom:1px solid var(--line)}.result-head>div span{margin-bottom:8px}.result-head strong{font-size:20px}.status{color:var(--green)!important}.sensi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.sensi{min-height:112px;background:#0a0a0e;border:1px solid #24242c;padding:18px;display:flex;flex-direction:column;justify-content:space-between}.sensi small{font-size:8px;color:#777;letter-spacing:1.2px}.sensi strong{font-size:42px;color:var(--accent);line-height:1}.result-footer{margin-top:auto;padding-top:18px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;align-items:end}.result-footer strong{font-size:12px}.result-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 2fr;gap:9px}.copy-btn{padding:12px 15px;font-size:10px}.secondary-mini{background:transparent;border:1px solid #3a3a43;color:#ccc;padding:12px 15px;font-size:10px;letter-spacing:.5px;cursor:pointer}.secondary-mini:hover{border-color:var(--accent);color:var(--accent)}
.saved-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:16px}.profile-card{min-height:220px}.profile-card-head{display:grid;grid-template-columns:58px 1fr auto;gap:14px;align-items:center}.avatar{width:58px;height:58px;border:1px solid var(--accent);display:grid;place-items:center;color:#111;background:var(--accent);font-weight:950;font-size:25px}.profile-card-head span,.saved-head span{display:block;color:#777;font-size:8px;letter-spacing:1.8px}.profile-card-head strong{display:block;font-size:16px;margin-top:5px}.edit-profile,.text-btn{background:none;border:0;color:#888;font-size:9px;letter-spacing:1px;cursor:pointer}.edit-profile:hover,.text-btn:hover{color:var(--accent)}.profile-progress{margin:25px 0}.profile-progress>div{display:flex;justify-content:space-between;color:#8a8a96;font-size:9px;letter-spacing:1px}.progress-bar{height:7px;background:#25252c;margin-top:9px}.progress-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--accent2),var(--accent));box-shadow:0 0 16px rgba(168,85,247,.24);transition:.35s}.profile-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.profile-metrics div{padding:14px;background:#0b0b0f;border:1px solid #24242c;text-align:center}.profile-metrics strong{display:block;font-size:22px;color:#fff}.profile-metrics span{display:block;font-size:7px;color:#70707a;letter-spacing:1.5px;margin-top:5px}.saved-panel{min-height:220px}.saved-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:15px;border-bottom:1px solid var(--line)}.saved-list{display:grid;gap:8px;margin-top:14px}.saved-item{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px;background:#0b0b0f;border:1px solid #24242c}.saved-item b{font-size:11px}.saved-item small{display:block;color:#777;margin-top:5px;font-size:8px}.saved-item .saved-actions{display:flex;gap:6px}.saved-actions button{background:transparent;border:1px solid #34343d;color:#aaa;font-size:9px;padding:8px;cursor:pointer}.saved-actions button:hover{border-color:var(--accent);color:#fff}.empty-state{padding:34px;border:1px dashed #30303a;text-align:center;color:#6f6f79;font-size:11px;line-height:1.5}
.training-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:16px}.training-card{padding:20px}.training-head{display:flex;justify-content:space-between;align-items:start}.training-head span{display:block;color:#777;font-size:8px;letter-spacing:1.5px}.training-head strong{display:block;margin-top:6px;font-size:18px}.timer{font-size:22px!important;color:var(--accent)!important}.training-stage{height:420px;margin:18px 0;background:radial-gradient(circle at center,rgba(168,85,247,.08),transparent 48%),#0a0a0e;border:1px solid #24242c;position:relative;overflow:hidden}.stage-center{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:5px;text-align:center;pointer-events:none}.stage-center strong{font-size:18px}.stage-center small{color:#6f6f79;font-size:9px}.start-training{position:absolute;left:50%;top:58%;transform:translateX(-50%);border:1px solid var(--accent);background:rgba(168,85,247,.08);color:#fff;padding:12px 18px;font-weight:800;font-size:10px;letter-spacing:1px;cursor:pointer}.target{position:absolute;width:44px;height:44px;border:2px solid var(--accent);border-radius:50%;background:rgba(168,85,247,.16);box-shadow:0 0 24px rgba(168,85,247,.45);cursor:pointer;animation:targetPulse 1s infinite}.target:after{content:"";position:absolute;inset:10px;border:1px solid #fff;border-radius:50%;opacity:.55}@keyframes targetPulse{0%,100%{transform:scale(.96)}50%{transform:scale(1.05)}}.training-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.training-stats div{background:#0b0b0f;border:1px solid #24242c;padding:13px}.training-stats span{display:block;color:#73737d;font-size:7px;letter-spacing:1.4px}.training-stats strong{display:block;font-size:24px;margin-top:6px}.training-side{display:flex;flex-direction:column;gap:15px}.mini-rule{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:center;border-top:1px solid var(--line);padding-top:14px}.mini-rule b{color:var(--accent)}.mini-rule span{color:#b2b2bc;font-size:11px}.xp-box{margin-top:auto;border:1px solid rgba(168,85,247,.35);background:rgba(168,85,247,.06);padding:18px}.xp-box span{display:block;color:#898995;font-size:8px;letter-spacing:1.6px}.xp-box strong{display:block;font-size:28px;color:var(--accent);margin:5px 0}.xp-box small{color:#777;font-size:9px}
.challenge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.challenge-card{padding:22px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(22,22,29,.92),rgba(12,12,16,.92));position:relative;overflow:hidden}.challenge-card:after{content:"";position:absolute;width:160px;height:160px;border-radius:50%;right:-70px;top:-80px;border:1px solid rgba(168,85,247,.16)}.challenge-tag{color:var(--accent);font-size:8px;letter-spacing:1.8px}.challenge-card h3{margin:10px 0 6px;font-size:17px}.challenge-card p{margin:0;color:#777;font-size:10px;line-height:1.5}.challenge-foot{display:flex;justify-content:space-between;align-items:center;margin-top:18px}.challenge-xp{color:#fff;font-weight:900;font-size:10px}.challenge-action{background:transparent;border:1px solid #383841;color:#ddd;padding:9px 10px;font-size:9px;cursor:pointer}.challenge-action.done{border-color:var(--green);color:var(--green)}
.hud-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:16px}.hud-controls{display:flex;flex-direction:column;gap:22px}.control-block label,.range-row span{display:block;color:#777;font-size:8px;letter-spacing:1.6px;margin-bottom:9px}.preset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.preset{padding:12px 8px;background:#0b0b0f;border:1px solid #30303a;color:#aaa;font-size:9px;cursor:pointer}.preset.active{border-color:var(--accent);color:#fff}.range-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.range-row input{grid-column:1/-1;width:100%;accent-color:var(--accent)}.range-row b{font-size:10px;color:var(--accent)}.apply-btn{align-self:flex-start}.tiny-note{margin-top:auto;color:#62626c;font-size:9px;line-height:1.5}.hud-preview{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center}.phone-frame{width:min(560px,100%);aspect-ratio:16/9;height:auto;border:9px solid #202027;border-radius:35px;background:#050507;box-shadow:0 30px 70px rgba(0,0,0,.45),0 0 0 1px rgba(168,85,247,.16);padding:8px;justify-self:center}.phone-screen{height:100%;position:relative;border-radius:24px;overflow:hidden;background:#050507}.phone-screen:before{content:"KNZIN HUD PREVIEW · PAISAGEM";position:absolute;z-index:3;top:10px;left:14px;color:rgba(255,255,255,.62);font-size:7px;letter-spacing:1.4px;text-shadow:0 1px 8px #000}.hud-art{width:100%;height:100%;display:block;object-fit:cover;transform-origin:center;transition:transform .25s ease,opacity .25s ease}.hud-summary{align-self:end}.hud-summary span{display:block;color:#777;font-size:8px;letter-spacing:1.5px}.hud-summary strong{display:block;font-size:19px;margin:5px 0}.hud-summary small{color:#666;font-size:9px}.hud-summary .hud-disclaimer{display:block;max-width:160px;line-height:1.4;margin-top:8px;color:#555}
.tip-library{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.library-card{border:1px solid var(--line);padding:22px;background:linear-gradient(145deg,rgba(22,22,29,.92),rgba(12,12,16,.92))}.library-card>span{color:var(--accent);font-size:7px;letter-spacing:1.7px}.library-card h3{font-size:16px;margin:12px 0 8px}.library-card p{font-size:10px;line-height:1.6;color:#777;min-height:68px}.tip-open{margin-top:8px;background:none;border:0;color:#ccc;padding:0;font-size:9px;letter-spacing:1px;cursor:pointer}.tip-open:hover{color:var(--accent)}
.plans{border-top:1px solid rgba(255,255,255,.07)}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}.plan-card{position:relative;padding:28px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));box-shadow:0 12px 40px rgba(0,0,0,.2)}.plan-card.featured{border-color:rgba(155,89,255,.65);box-shadow:0 0 0 1px rgba(155,89,255,.12),0 18px 50px rgba(89,32,150,.18)}.plan-tag{display:inline-block;font-size:11px;letter-spacing:.16em;color:#b88cff;margin-bottom:12px}.plan-card h3{margin:0 0 5px;font-size:24px;letter-spacing:.05em}.plan-price{font-size:31px;font-weight:950;margin:4px 0 20px}.plan-card ul{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:9px}.plan-card li{font-size:10px;color:#aaa}.plan-card li:before{content:"✓";color:var(--green);margin-right:8px}.plan-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:46px;border-radius:10px;background:#8b4dff;color:#fff;text-decoration:none;font-weight:800;font-size:12px;letter-spacing:.04em;transition:.2s ease}.plan-btn:hover{transform:translateY(-2px);filter:brightness(1.1)}.plans-note{margin-top:15px;padding:12px 15px;border:1px dashed #31313b;color:#777;display:flex;gap:10px;align-items:flex-start}.plans-note span{color:#f4c16e}.plans-note p{margin:0;font-size:9px;line-height:1.5}
footer{border-top:1px solid var(--line);padding:34px 6vw;display:flex;justify-content:space-between;align-items:center;gap:30px;color:#777}footer strong{display:block;font-size:17px;letter-spacing:1px}footer small{font-size:7px;letter-spacing:1.5px}footer p{font-size:10px}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(10px);display:grid;place-items:center;z-index:60;padding:20pxoverflow-y:auto;}.modal.hidden{display:none}.modal-box{width:min(980px,100%);background:#111117;border:1px solid #3b3b45;padding:32px;position:relative;box-shadow:0 30px 100px #000}.modal-box h2{font-size:42px;margin:10px 0}.modal-box p{color:#888;font-size:12px;line-height:1.6}.modal-box input{margin:14px 0}.close{position:absolute;right:15px;top:10px;background:none;border:0;color:#aaa;font-size:28px;cursor:pointer}.full-btn{width:100%;margin-top:14px}
.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);padding:12px 16px;background:#15151b;border:1px solid #3b3b45;color:#fff;font-size:10px;letter-spacing:.5px;opacity:0;pointer-events:none;transition:.25s;z-index:80}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1000px){nav{display:none}.quick-nav{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr;padding-top:55px;gap:35px}.generator-layout,.saved-layout,.training-grid,.hud-layout{grid-template-columns:1fr}.training-side{min-height:auto}.hud-preview{grid-template-columns:1fr}.hud-summary{text-align:center}.tip-library{grid-template-columns:repeat(2,1fr)}.plans-grid{grid-template-columns:1fr}}
@media(max-width:650px){.topbar{padding:0 18px}.brand{min-width:0}.brand-logo{width:58px;height:34px}.ghost-btn{display:inline-flex}.hero{padding-left:18px;padding-right:18px}.hero h1{font-size:55px;letter-spacing:-3px}.hero p{font-size:14px}.hero-actions{flex-direction:column}.primary-btn,.secondary-btn{text-align:center}.hero-mini-stats{gap:10px}.hero-mini-stats strong{font-size:18px}.hero-mini-stats span{font-size:7px}.hero-card{height:320px}.quick-nav{grid-template-columns:1fr;padding-left:18px;padding-right:18px}.section{padding:64px 18px}.section-head{display:block}.section-head h2{font-size:37px}.section-head>p{margin-top:15px}.panel{padding:20px}.styles{grid-template-columns:1fr}.segmented{grid-template-columns:1fr}.sensi-grid{grid-template-columns:repeat(2,1fr)}.sensi{min-height:105px}.sensi strong{font-size:34px}.result-footer{grid-template-columns:1fr 1fr}.result-actions{grid-column:1/-1;grid-template-columns:1fr}.profile-card-head{grid-template-columns:48px 1fr}.avatar{width:48px;height:48px}.edit-profile{grid-column:2;justify-self:start}.challenge-grid{grid-template-columns:1fr}.tip-library{grid-template-columns:1fr}.plans-grid{grid-template-columns:1fr}.phone-frame{width:min(100%,420px);aspect-ratio:16/9;height:auto}.training-stage{height:330px}.training-stats{grid-template-columns:repeat(3,1fr)}.training-stats strong{font-size:19px}}

/* ===== Supabase access / member gate ===== */
.hidden{display:none!important}
.members-only{position:relative}
.access-lock{position:absolute;inset:0;z-index:8;display:grid;place-items:center;padding:26px;background:rgba(7,7,10,.48);backdrop-filter:blur(3px);border:1px solid rgba(168,85,247,.12)}
.access-lock-inner{width:min(420px,92%);padding:26px;background:rgba(17,17,23,.96);border:1px solid rgba(168,85,247,.35);box-shadow:0 25px 80px rgba(0,0,0,.5);text-align:center}
.access-lock-inner span{display:block;color:var(--accent);font-size:9px;font-weight:800;letter-spacing:2px}
.access-lock-inner h3{margin:10px 0 8px;font-size:24px}
.access-lock-inner p{margin:0;color:#888;font-size:11px;line-height:1.6}
.access-lock-inner button{margin-top:17px}
.members-only.auth-locked> :not(.access-lock){filter:blur(2.5px);opacity:.28;pointer-events:none;user-select:none}
.auth-box{width:min(470px,100%)}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:18px 0 8px}
.auth-tab{background:#0b0b0f;border:1px solid #30303a;color:#aaa;padding:12px 8px;font-size:9px;letter-spacing:1px;cursor:pointer}
.auth-tab.active{border-color:var(--accent);color:#fff;background:rgba(168,85,247,.06)}
.auth-field{display:block;margin-top:13px}
.auth-field span{display:block;color:#858590;font-size:8px;letter-spacing:1.5px;margin-bottom:7px}
.auth-field input{width:100%;background:#0b0b0f;color:#fff;border:1px solid #30303a;padding:14px;outline:0}
.auth-field input:focus{border-color:var(--accent)}
.auth-message{min-height:18px;margin:14px 0 0;color:#aaa;font-size:10px;line-height:1.5}
.auth-message.success{color:var(--green)}
.auth-message.error{color:var(--danger)}
.auth-account{display:grid;gap:10px;margin-top:18px}
.auth-account.hidden{display:none}
.account-status,.account-access{background:#0b0b0f;border:1px solid #2a2a33;padding:15px}
.account-status span{display:block;color:var(--accent);font-size:8px;letter-spacing:1.6px}
.account-status strong{display:block;margin-top:5px;word-break:break-word;font-size:13px}
.account-access{color:#bbb;font-size:11px;line-height:1.6}
.account-access.active{border-color:rgba(99,255,155,.28);color:#ddd}
.account-access.inactive{border-color:rgba(255,75,85,.24)}
.auth-note-hidden{display:none}
.auth-state-badge{display:inline-flex;align-items:center;gap:6px;margin-left:8px;color:#777;font-size:8px;letter-spacing:1px}
.auth-state-badge .mini-dot{width:6px;height:6px;border-radius:50%;background:#666}
.auth-state-badge.active .mini-dot{background:var(--green);box-shadow:0 0 10px var(--green)}
@media(max-width:650px){.access-lock{position:absolute;padding:18px}.access-lock-inner{padding:22px}.auth-box{padding:24px}.auth-tab{font-size:8px}}
#openPlans{display:inline-flex!important}
.modal-box{max-height:calc(100vh - 40px);overflow-y:auto}
