:root{--bg: #0b0f19;--bg-mid: #131b2a;--panel: rgba(255, 255, 255, .05);--panel-solid: rgba(19, 27, 42, .72);--text: #e8eef8;--muted: #8b9bb0;--accent: #22d3ee;--accent-blue: #3b82f6;--accent2: #2dd4a8;--danger: #f87171;--border: rgba(255, 255, 255, .1);--glow: 0 0 40px rgba(34, 211, 238, .18);--font: "Inter", system-ui, sans-serif;--font-display: "Outfit", "Inter", system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:var(--font);color:var(--text);background:radial-gradient(ellipse 700px 500px at 12% 8%,rgba(34,211,238,.16),transparent 55%),radial-gradient(ellipse 650px 480px at 88% 12%,rgba(168,85,247,.14),transparent 55%),radial-gradient(ellipse 900px 600px at 50% 100%,rgba(59,130,246,.08),transparent 60%),linear-gradient(165deg,#0b0f19,#131b2a 55%,#0b0f19);background-attachment:fixed;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none;transition:color .2s ease,opacity .2s ease}a:hover{color:#67e8f9}.wrap{max-width:1040px;margin:0 auto;padding:0 20px 72px}.nav-shell{position:sticky;top:0;z-index:50;margin:0 -20px 28px;padding:0 20px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#0000004d;border-bottom:1px solid var(--border)}.nav{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;min-height:64px;padding:10px 0}.brand{font-family:var(--font-display);font-size:1.35rem;font-weight:800;letter-spacing:.04em;background:linear-gradient(90deg,#22d3ee,#3b82f6);-webkit-background-clip:text;background-clip:text;color:transparent}.brand span{background:inherit;-webkit-background-clip:text;background-clip:text;color:transparent}.nav-links{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.nav-links a{color:var(--muted);font-weight:600;font-size:.9rem;padding:8px 12px;border-radius:999px;transition:color .2s,background .2s}.nav-links a:hover,.nav-links a.active{color:var(--text);background:#ffffff0f}.nav .muted{font-size:.85rem;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}button.btn-logout,.btn-logout{background:transparent!important;border:1px solid rgba(148,163,184,.45)!important;color:var(--muted)!important;box-shadow:none!important;border-radius:999px!important;padding:8px 14px!important;font-size:.85rem}button.btn-logout:hover,.btn-logout:hover{border-color:var(--danger)!important;color:var(--danger)!important;background:#f8717114!important;transform:none!important}.card{position:relative;background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:24px;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 8px 32px #00000040}.card-hero{padding:clamp(28px,5vw,48px);text-align:left;box-shadow:var(--glow),0 0 0 1px #22d3ee1f,0 20px 50px #00000059}.card-hero:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:21px;pointer-events:none;background:linear-gradient(135deg,rgba(34,211,238,.35),transparent 40%,rgba(168,85,247,.25));mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:1px;opacity:.7}.card-plan{display:flex;flex-direction:column;min-height:100%;transition:border-color .25s,box-shadow .25s,transform .25s}.card-plan:hover{border-color:#ffffff2e;transform:translateY(-2px)}.card-plan.popular{border-color:#22d3ee80;box-shadow:0 0 28px #22d3ee33,0 12px 36px #0000004d}.plan-badge{position:absolute;top:14px;right:14px;font-family:var(--font-display);font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:5px 10px;border-radius:999px;color:#0b0f19;background:linear-gradient(90deg,#22d3ee,#3b82f6);box-shadow:0 0 16px #22d3ee66}.grid{display:grid;gap:16px}.grid.plans{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}h1,h2,h3{font-family:var(--font-display);font-weight:700}h1{font-size:1.75rem;margin:8px 0 12px}h2{font-size:1.2rem;margin:0 0 8px;padding-right:88px}.muted{color:var(--muted)}label{display:block;font-size:.8rem;color:var(--muted);margin-bottom:8px;font-weight:500}input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:#00000059;color:var(--text);margin-bottom:14px;font-family:var(--font);transition:border-color .2s,box-shadow .2s}input:focus{outline:none;border-color:#22d3ee80;box-shadow:0 0 0 3px #22d3ee1f}button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;padding:12px 18px;background:linear-gradient(135deg,#2563eb,#06b6d4);color:#fff;font-weight:600;font-family:var(--font);font-size:.95rem;cursor:pointer;box-shadow:0 8px 24px #2563eb47;transition:transform .2s ease,box-shadow .2s ease,opacity .2s}button:hover:not(:disabled),.btn:hover{transform:scale(1.03);box-shadow:0 10px 28px #22d3ee59}button:disabled{opacity:.55;cursor:not-allowed;transform:none}button.secondary,.btn.secondary{background:#ffffff0f;border:1px solid var(--border);box-shadow:none;color:var(--text)}button.secondary:hover:not(:disabled),.btn.secondary:hover{background:#ffffff1a;box-shadow:none;transform:scale(1.02)}button.btn-outline,.btn-outline{background:transparent!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:none!important;color:var(--text)!important}button.btn-outline:hover:not(:disabled),.btn-outline:hover{border-color:#22d3ee8c!important;background:#22d3ee14!important}button.btn-pay,.btn-pay{width:100%;margin-top:auto;padding:14px 18px;font-size:1rem;border-radius:14px;background:linear-gradient(135deg,#2563eb,#06b6d4);box-shadow:0 10px 30px #06b6d44d}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.err{color:var(--danger);margin:8px 0}.ok{color:var(--accent2)}.price{font-family:var(--font-display);font-size:1.65rem;font-weight:800;margin:10px 0;letter-spacing:-.02em;background:linear-gradient(90deg,#fff,#a5f3fc);-webkit-background-clip:text;background-clip:text;color:transparent}.badge{display:inline-block;padding:4px 10px;border-radius:999px;background:#ffffff14;font-size:.75rem;color:var(--muted)}.hero-title{font-family:var(--font-display);font-size:clamp(2.2rem,7vw,3.4rem);letter-spacing:.04em;margin:8px 0 14px;font-weight:800;background:linear-gradient(90deg,#22d3ee,#60a5fa,#a78bfa);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-sub{font-size:1.1rem;line-height:1.5;max-width:36rem}.pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.pill{border-radius:999px!important;padding:8px 12px!important;font-size:.78rem!important;font-weight:600;box-shadow:none!important;transform:none!important}.pill.secondary{background:transparent!important;border:1px solid rgba(255,255,255,.18)!important;color:var(--muted)!important}.pill.secondary:hover:not(:disabled){border-color:#22d3ee66!important;color:var(--text)!important;background:#ffffff0a!important;transform:none!important}.pill:not(.secondary){background:linear-gradient(135deg,#2563eb,#06b6d4)!important;border:1px solid transparent!important;color:#fff!important;box-shadow:0 4px 14px #06b6d44d!important}.pill:not(.secondary):hover:not(:disabled){transform:scale(1.04)!important}.device-stepper{display:inline-flex;align-items:center;gap:10px;margin-bottom:16px;padding:6px 10px;border-radius:999px;background:#00000040;border:1px solid var(--border)}.device-stepper .device-count{min-width:28px;text-align:center;font-weight:700;font-family:var(--font-display)}button.btn-round{width:36px;height:36px;padding:0!important;border-radius:50%!important;background:transparent!important;border:1px solid rgba(255,255,255,.2)!important;box-shadow:none!important;color:var(--text)!important;font-size:1.1rem;line-height:1}button.btn-round:hover:not(:disabled){border-color:#22d3ee8c!important;background:#22d3ee1a!important;transform:scale(1.06)!important;box-shadow:none!important}.status-line{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:.98rem}.status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;background:#64748b}.status-dot.active{background:#34d399;box-shadow:0 0 #34d3998c;animation:pulse-dot 1.8s ease-out infinite}.status-dot.expired{background:#f87171;box-shadow:0 0 8px #f8717173}.status-dot.none{background:#64748b}@keyframes pulse-dot{0%{box-shadow:0 0 #34d3998c}70%{box-shadow:0 0 0 10px #34d39900}to{box-shadow:0 0 #34d39900}}.support-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:18px}.support-card{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:16px;background:#ffffff0a;border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text);transition:border-color .2s,transform .2s,box-shadow .2s,background .2s}.support-card:hover{border-color:#22d3ee73;background:#22d3ee0f;transform:translateY(-2px);box-shadow:0 8px 24px #22d3ee1f;color:var(--text)}.support-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#2563eb59,#06b6d459);border:1px solid rgba(255,255,255,.12);font-size:1.15rem;flex-shrink:0}.support-card strong{display:block;font-family:var(--font-display);font-size:.95rem;margin-bottom:2px}.support-card span{font-size:.85rem;color:var(--muted)}.support-note{margin-top:16px;padding:14px 16px;border-radius:14px;background:#ffffff08;border:1px dashed rgba(255,255,255,.12);color:var(--muted);font-size:.9rem;line-height:1.5}.admin-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:16px}@media (max-width: 900px){.admin-layout{grid-template-columns:1fr}}.admin-table{width:100%;border-collapse:collapse;font-size:.9rem}.admin-table th,.admin-table td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--border);vertical-align:top}.admin-table tr{cursor:pointer}.admin-table tr:hover,.admin-table tr.active{background:#22d3ee14}.admin-actions h3{margin:18px 0 8px;font-size:.95rem}@media (max-width: 640px){.nav-shell{margin-bottom:20px}.nav{align-items:flex-start}.nav-links{width:100%;order:3}.card-hero{text-align:left}.grid.plans{grid-template-columns:1fr}h2{padding-right:0}.card-plan.popular .plan-badge{position:static;display:inline-block;margin-bottom:8px}}.card.accordion{padding:0;overflow:hidden}.accordion-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 24px;margin:0;border:0;border-radius:0;background:transparent!important;box-shadow:none!important;color:var(--text);font-family:var(--font-display);font-size:1.15rem;font-weight:700;text-align:left;cursor:pointer;transform:none!important}.accordion-trigger:hover{background:#ffffff0a!important;transform:none!important;box-shadow:none!important}.accordion-chevron{flex-shrink:0;color:var(--muted);transition:transform .25s ease}.accordion.open .accordion-chevron{transform:rotate(180deg);color:var(--accent)}.accordion-content{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease;border-top:1px solid transparent}.accordion.open .accordion-content{grid-template-rows:1fr;border-top-color:var(--border)}.accordion-content-inner{overflow:hidden;min-height:0;padding:0 24px}.accordion.open .accordion-content-inner{padding:8px 24px 20px}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -4px;padding:0 4px}.table-scroll .admin-table{min-width:480px}.pwa-card{display:none}@media (max-width: 900px){.pwa-card{display:block}}@media (display-mode: standalone){.pwa-card{display:none!important}}.pwa-row{display:flex;align-items:flex-start;gap:14px}.pwa-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;flex-shrink:0;color:#22d3ee;background:linear-gradient(135deg,#2563eb59,#06b6d459);border:1px solid rgba(255,255,255,.12)}.pwa-title{margin:0 0 4px;font-size:1.1rem;padding-right:0}.pwa-sub{margin:0;font-size:.92rem;line-height:1.45}.pwa-ios{margin-top:14px;padding:12px 14px;border-radius:12px;background:#00000040;border:1px solid var(--border);font-size:.9rem;line-height:1.5}.pwa-share{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;vertical-align:middle;color:#22d3ee;background:#22d3ee1f;border:1px solid rgba(34,211,238,.35)}.pwa-hint{margin:14px 0 0;font-size:.88rem}.status-paid{color:#34d399;font-weight:600}.status-canceled{color:#f87171;font-weight:600}.status-pending{color:#facc15;font-weight:600}.status-other{color:var(--muted);font-weight:500}
