:root { --surface-border: rgba(255,255,255,.09); --surface-soft: rgba(255,255,255,.025); }
body { background: radial-gradient(circle at 12% 0,rgba(130,61,255,.11),transparent 26%),radial-gradient(circle at 92% 24%,rgba(40,215,244,.07),transparent 24%),#070910; }
.header { top: 12px; padding: 10px 13px 10px 16px; border-color: rgba(255,255,255,.1); border-radius: 8px; background: rgba(8,10,17,.9); }
.nav a { position: relative; padding: 9px 1px; letter-spacing: 0; transition: color .18s; }
.nav a::after { content: ""; position: absolute; right: 50%; bottom: 2px; left: 50%; height: 2px; border-radius: 2px; background: #45d9ef; box-shadow: 0 0 10px rgba(69,217,239,.55); transition: right .18s,left .18s; }
.nav a:hover::after,.nav a.active::after { right: 0; left: 0; }
.btn { border-radius: 8px; letter-spacing: 0; }
.mini-panel,.stat,.panel,.account-panel-v4,.pricing-card-v4,.support-card,.legal-section { border-radius: 8px; }
.portal { padding: 14px; border-radius: 10px; }
.portal-top { padding: 4px 3px 14px; }
.stats { gap: 8px; margin: 12px 0; }
.stat { position: relative; overflow: hidden; }
.stat::before { content: ""; position: absolute; top: 0; left: 12px; width: 28px; height: 2px; background: #45eeb0; }
.stat:nth-child(2)::before { background: #f6be4f; }
.stat:nth-child(3)::before { background: #5f8cff; }
.portal-grid { gap: 8px; }
.download-card { position: relative; min-height: 205px; overflow: hidden; }
.portal-download-mark { display: grid; place-items: center; width: 100%; height: 54px; margin-bottom: 2px; }
.portal-download-mark img { width: 76px; height: 76px; object-fit: contain; opacity: .24; filter: saturate(.72); }
.download-card h3 { position: relative; margin: 4px 0 0; }
.download-card .btn { position: relative; width: 100%; }
.page-hero { max-width: 820px; padding: 82px 0 40px; }
.page-hero h1 { margin-top: 14px; margin-bottom: 16px; font-size: 3.65rem; letter-spacing: 0; }
.page-hero .lead { margin-bottom: 0; }
.legal-layout { grid-template-columns: 230px minmax(0,1fr); gap: 18px; }
.legal-nav { top: 94px; gap: 4px; padding: 10px; border-radius: 8px; border-color: var(--surface-border); background: rgba(10,13,22,.9); }
.legal-nav a { position: relative; padding: 11px 12px; border-radius: 6px; }
.legal-nav a::before { content: ""; position: absolute; top: 50%; left: 0; width: 2px; height: 0; background: #45d9ef; transform: translateY(-50%); transition: height .18s; }
.legal-nav a:hover,.legal-nav a.active { color: #fff; background: rgba(69,217,239,.065); }
.legal-nav a.active::before { height: 22px; }
.legal-document { gap: 12px; }
.legal-section { padding: 24px 26px; scroll-margin-top: 110px; border-color: var(--surface-border); background: linear-gradient(145deg,rgba(18,22,34,.82),rgba(9,12,20,.88)); }
.legal-section h2 { letter-spacing: 0; }
.legal-section p,.legal-section li { color: #a2aabc; }
.support-layout { gap: 16px; }
.support-stack { gap: 12px; }
.support-card { border-color: var(--surface-border); background: linear-gradient(145deg,rgba(17,21,32,.88),rgba(9,12,20,.9)); }
.support-card:nth-child(2) .icon { color: #45eeb0; border-color: rgba(69,238,176,.22); background: rgba(69,238,176,.07); }
.support-card:nth-child(3) .icon { color: #f6be4f; border-color: rgba(246,190,79,.22); background: rgba(246,190,79,.07); }
.support-card:nth-child(4) .icon { color: #f06daa; border-color: rgba(240,109,170,.22); background: rgba(240,109,170,.07); }
.faq { margin-bottom: 90px; }
.faq details { padding: 19px 2px; }
.faq summary { letter-spacing: 0; }
.footer { margin-top: 28px; }
.footer nav a { position: relative; padding-bottom: 4px; }
.footer nav a:hover,.footer nav a.active { color: #fff; }
.footer nav a.active::after { content: ""; position: absolute; right: 0; bottom: 0; left: 0; height: 1px; background: #45d9ef; }
.account-sidebar-v4 { border-radius: 8px; }
.account-sidebar-v4 a { border-radius: 6px; }
.account-sidebar-v4 a.active { box-shadow: inset 2px 0 #45d9ef; }
.current-plan-v4,.account-plan-card-v4,.promo-redeem-v5 { border-radius: 8px; }
@media(max-width:900px) { .page-hero h1 { font-size: 3rem; } }
@media(max-width:860px) { .legal-layout,.support-layout { grid-template-columns: 1fr; } }
@media(max-width:600px) { .header { border-radius: 8px; } .page-hero { padding-top: 64px; } .page-hero h1 { font-size: 2.4rem; } .legal-section { padding: 20px; } .portal-download-mark img { width: 68px; height: 68px; } }
