
:root{
  --bg:#07090d;--panel:#111720;--panel2:#17202b;--line:#283746;
  --text:#edf2f7;--muted:#8d98a7;--gold:#e8b12d;--gold2:#ffd66a;
  --blue:#2e95ff;--red:#e35b5b;--green:#68ce8d
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:
radial-gradient(circle at 8% -10%,rgba(232,177,45,.09),transparent 32rem),
radial-gradient(circle at 92% 0%,rgba(46,149,255,.08),transparent 34rem),
#07090d;color:var(--text);font:13px/1.5 Arial,Helvetica,sans-serif}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
.hidden{display:none!important}
a{text-decoration:none;color:#73b8ff}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.16;
background-image:linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),
linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px);background-size:30px 30px}
.guest-shell{min-height:100vh;display:grid;place-items:start center;padding:8vh 16px}
.auth-card{width:min(620px,100%);background:rgba(17,23,32,.96);border:1px solid var(--line);
border-radius:14px;overflow:hidden;box-shadow:0 30px 100px #000b;position:relative}
.auth-card:before,.site-header:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;
background:linear-gradient(90deg,var(--blue),var(--gold),var(--blue))}
.brand{display:flex;align-items:center;gap:15px;padding:24px;background:
radial-gradient(circle at 12% 20%,rgba(232,177,45,.08),transparent 16rem),#141c26}
.brand img{width:56px;height:56px;object-fit:contain}
.brand-name{font-size:28px;font-weight:800;letter-spacing:.08em}.brand-name span{color:var(--gold2)}
.brand-sub{color:var(--muted);font-size:10px;letter-spacing:.24em}
.auth-tabs{display:flex;background:#17212b;padding:0 12px}
.tab{border:0;background:transparent;color:#9faab8;padding:13px 18px;border-bottom:3px solid transparent}
.tab.active{color:#fff;border-bottom-color:var(--gold)}
.auth-panel{display:none;padding:24px}.auth-panel.active{display:grid;gap:15px}
label{display:grid;gap:6px;color:#aab3c0;font-size:12px}
input,textarea,select{width:100%;background:#091018;border:1px solid #2e3d4c;color:#edf2f7;
border-radius:7px;padding:11px;outline:none}
input:focus,textarea:focus,select:focus{border-color:#bc8b20;box-shadow:0 0 0 2px rgba(232,177,45,.06)}
.btn{display:inline-flex;justify-content:center;align-items:center;border:1px solid #344658;border-radius:7px;
padding:10px 14px;background:linear-gradient(#1f2b38,#17212b);color:#e7edf4;font-weight:700}
.btn.primary{background:linear-gradient(#f0c75c,#d99c1d);border-color:#f2ce68;color:#201705}
.btn.discord{background:linear-gradient(#4a8bd2,#2d69ab);border-color:#5ba7f1;color:#fff}
.btn.ghost{background:#111820;color:#acb5c1}
.text-btn{border:0;background:transparent;color:#7dbdff;padding:0}
.fineprint{color:#727e8c;font-size:11px;margin:2px 0 0}
.notice{padding:11px;border:1px solid #354454;background:#0c131b;border-left:3px solid var(--blue);border-radius:7px}
.toast{display:none;position:fixed;right:18px;bottom:18px;z-index:9999;max-width:390px;padding:11px 14px;
background:#151d27;border:1px solid #3a4c60;border-radius:8px;box-shadow:0 15px 45px #000b}
.toast.show{display:block}.toast.error{border-color:#7c3535;color:#ffb5b5}
.site-header{position:sticky;top:0;z-index:50;background:rgba(10,14,19,.94);backdrop-filter:blur(16px);
border-bottom:1px solid #202d3a;box-shadow:0 8px 30px #0006}
.header-inner{width:min(1280px,calc(100% - 30px));min-height:66px;margin:auto;display:flex;align-items:center;gap:22px}
.brand-mini{display:flex;align-items:center;gap:9px;background:transparent;border:0;color:#fff;font-size:18px;font-weight:800;letter-spacing:.06em}
.brand-mini img{width:36px;height:36px}.brand-mini b{color:var(--gold2)}
#mainNav{display:flex;align-items:stretch;gap:2px;flex:1;height:66px}
#mainNav button{border:0;background:transparent;color:#9da8b5;padding:0 12px;border-bottom:3px solid transparent}
#mainNav button:hover,#mainNav button.active{color:#fff;background:#121a23;border-bottom-color:var(--gold)}
.header-user{text-align:right;color:#929daa;font-size:11px}.header-user span{display:block}.header-user #headerUser{color:#fff;font-weight:700}
.access-banner{text-align:center;padding:8px 16px;background:linear-gradient(90deg,#d89b1b,#f0c34e);color:#201705;font-weight:800}
.access-banner.active{background:linear-gradient(90deg,#1a6e45,#309662);color:#eafff1}
.access-banner.expired{background:linear-gradient(90deg,#702626,#a33a3a);color:#fff}
.layout{width:min(1280px,calc(100% - 30px));margin:22px auto 60px;display:grid;grid-template-columns:230px 1fr;gap:18px}
.sidebar{display:grid;align-content:start;gap:14px}.panel{background:rgba(17,23,32,.96);border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 10px 35px #0004}
.panel-title{position:relative;padding:10px 12px;background:linear-gradient(90deg,#182331,#121923);border-bottom:1px solid #2a3948;font-weight:800;font-size:11px;letter-spacing:.12em}
.panel-title:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold)}
.profile-summary{text-align:center;padding:18px}.avatar{width:82px;height:82px;margin:auto auto 10px;border-radius:50%;
display:grid;place-items:center;font-size:29px;font-weight:800;color:var(--gold2);border:2px solid #364a5e;
background:radial-gradient(circle at 30% 20%,rgba(232,177,45,.13),transparent 40%),#111923}
.profile-summary span{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.status-row{display:flex;justify-content:space-between;padding:9px 11px;border-bottom:1px solid #202c38}.status-row b.ok{color:var(--green)}.status-row b.bad{color:#e8b95b}
.content{min-width:0}.page-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:14px}.eyebrow{color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.2em}
h1{font-size:30px;margin:3px 0 0}h2{margin:0 0 8px}.locked-card{padding:70px 20px;text-align:center;border:1px solid #2c3947;background:#0f151d;border-radius:12px}.lock-icon{font-size:42px;color:var(--gold);margin-bottom:10px}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.stat{padding:18px;background:#111720;border:1px solid var(--line);border-radius:9px}.stat span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.stat strong{display:block;margin-top:4px;font-size:20px;color:var(--gold2)}
.shoutbox-panel{margin-bottom:14px}.shoutbox{height:230px;overflow:auto;padding:12px;background:#0a1017}.shout-line{padding:4px 0;border-bottom:1px solid #141e28}.shout-line time{color:#576576;font-size:10px}.shout-line b{color:#79bbff;margin:0 6px}.shout-form{display:grid;grid-template-columns:1fr auto;gap:8px;padding:9px}
.list>div{padding:12px;border-bottom:1px solid #202d39}.list>div:last-child{border-bottom:0}.list small{color:#718091}.list p{color:#9ba6b4;margin:5px 0 0}
.two-col{display:grid;grid-template-columns:1.15fr .85fr;gap:14px}.payment-card{padding-bottom:14px}.payment-card>label,.payment-placeholder,.deadline,.price{margin-left:15px;margin-right:15px}.price{font-size:38px;color:var(--gold2);font-weight:800;margin-top:14px}.deadline{display:flex;justify-content:space-between;padding:12px;background:#0a1017;border:1px solid #293949;border-radius:8px;margin-bottom:14px}.deadline strong{color:var(--gold2)}
.payment-placeholder{margin-top:14px;padding:13px;background:#1e180b;border:1px solid #584415;border-radius:8px;color:#cdae55}.payment-placeholder p{margin:4px 0 0}
.requirement{display:flex;justify-content:space-between;padding:12px;border-bottom:1px solid #202d39}.requirement.ok span{color:var(--green)}.requirement.bad span{color:#e9b94e}.panel>.btn{margin:13px}
.info-table>div{display:grid;grid-template-columns:180px 1fr;padding:12px;border-bottom:1px solid #202d39}.info-table span{color:var(--muted)}
.forum-section{margin-bottom:14px}.forum-section-title{padding:10px 12px;border:1px solid #2b3b4b;border-bottom:0;background:#16202b;border-radius:8px 8px 0 0;font-weight:800;color:var(--gold2)}
.topic-row{display:grid;grid-template-columns:1fr 100px 160px;gap:10px;padding:12px;background:#101720;border:1px solid #263442;border-top:0}.topic-row:hover{background:#14202b}.topic-row button{border:0;background:transparent;color:#f0f4f8;text-align:left;font-weight:700}.topic-row small{color:#788696}
.posts{display:grid;gap:12px}.post{display:grid;grid-template-columns:150px 1fr;background:#111720;border:1px solid var(--line);border-radius:9px;overflow:hidden}.post-user{padding:14px;background:#0e151d;border-right:1px solid #202e3a}.post-user b{display:block;color:#79bbff}.post-body{padding:14px}.post-body time{display:block;color:#667484;font-size:10px;margin-bottom:10px}.post-body p{white-space:pre-wrap;margin:0}
.reply-form{margin-top:14px;padding-bottom:12px}.reply-form textarea,.reply-form .btn{margin:12px;width:calc(100% - 24px)}
.member-table{width:100%;border-collapse:collapse}.member-table th,.member-table td{text-align:left;padding:11px;border-bottom:1px solid #202d39}.member-table th{color:#778594;background:#0e151d}.member-table td:first-child{color:var(--gold2)}
.code-output{margin:12px;padding:12px;background:#090f15;border:1px dashed #a77c1f;border-radius:7px;color:var(--gold2);font-family:monospace;word-break:break-all}
.admin-update{margin-top:14px}.admin-update form{padding:12px;display:grid;gap:12px}
dialog{border:0;padding:0;background:transparent;color:var(--text)}dialog::backdrop{background:#000c}.dialog-card{width:min(620px,calc(100vw - 30px));background:#111720;border:1px solid #324354;border-radius:10px;overflow:hidden;padding-bottom:12px}.dialog-card label{margin:12px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin:12px}
@media(max-width:900px){.layout{grid-template-columns:1fr}.sidebar{grid-template-columns:1fr 1fr}.stats-grid{grid-template-columns:1fr 1fr}.two-col{grid-template-columns:1fr}#mainNav{overflow:auto}.header-inner{align-items:flex-start;padding:9px 0;flex-wrap:wrap}#mainNav{order:3;width:100%;height:auto}.header-user{margin-left:auto}.topic-row{grid-template-columns:1fr}.topic-row>*:not(:first-child){display:none}}
@media(max-width:560px){.sidebar{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr}.post{grid-template-columns:1fr}.post-user{border-right:0;border-bottom:1px solid #202e3a}.info-table>div{grid-template-columns:1fr}.auth-card{border-radius:9px}.brand-name{font-size:23px}}
