*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
    --y: #F2D90A;
    --bg: #0A0A0A;
    --white: #F5F5F5;
    --gray: #999;
    --dark: #131313;
    --border: #222;
}
html{scroll-behavior:smooth;scrollbar-width:none}
body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--white);overflow-x:hidden;-webkit-font-smoothing:antialiased}
::-webkit-scrollbar{display:none}
a{color:inherit;text-decoration:none}
.mono{font-family:'Space Mono',monospace}

/* ---------- NAV ---------- */
nav{
    position:fixed;top:0;left:0;width:100%;z-index:100;
    display:flex;justify-content:space-between;align-items:center;
    padding:1.2rem clamp(1.5rem,4vw,4rem);
    transition:all 0.4s;
}
nav.scrolled{
    background:rgba(10,10,10,0.92);
    backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
    border-bottom:1px solid var(--border);
    padding-top:0.8rem;padding-bottom:0.8rem;
}
.logo{font-weight:900;font-size:1.1rem;letter-spacing:-0.03em;text-transform:uppercase}
.logo span{color:var(--y)}
.nav-right{display:flex;gap:2.5rem;align-items:center;font-size:0.8rem;font-weight:500;text-transform:uppercase;letter-spacing:0.08em}
.nav-right a{opacity:0.7;transition:opacity 0.3s}
.nav-right a:hover{opacity:1}
.nav-buy{
    opacity:1!important;
    border:1px solid var(--white);
    padding:0.5rem 1.2rem;
    border-radius:2px;
    transition:all 0.3s;
}
.nav-buy:hover{background:var(--y);border-color:var(--y);color:#000}
.nav-user-btn{
    opacity:1!important;
    border:1px solid var(--y);
    padding:0.5rem 1.2rem;
    border-radius:2px;
    color:var(--y);
    transition:all 0.3s;
    cursor:pointer;
    background:none;
    font-family:inherit;
    font-size:0.8rem;
    font-weight:500;
    text-transform:uppercase;
    letter-spacing:0.08em;
}
.nav-user-btn:hover{background:var(--y);color:#000}
.nav-badge{
    background:var(--y);color:#000;
    font-size:0.55rem;font-weight:900;
    padding:0.15rem 0.4rem;border-radius:99px;
    margin-left:0.3rem;
    min-width:16px;text-align:center;
}
.mob-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;z-index:101;background:none;border:none;padding:0}
.mob-toggle span{width:24px;height:1.5px;background:var(--white);transition:all 0.3s}

/* ---------- SECTION BASE ---------- */
.s-pad{padding:clamp(5rem,10vw,10rem) clamp(1.5rem,4vw,4rem)}
.label{
    font-size:0.65rem;font-weight:700;
    text-transform:uppercase;letter-spacing:0.25em;
    color:var(--y);margin-bottom:2rem;
    display:flex;align-items:center;gap:0.7rem;
}
.label::before{content:'';width:30px;height:1px;background:var(--y)}

/* ---------- FOOTER ---------- */
footer{
    display:flex;justify-content:space-between;align-items:center;
    padding:2rem clamp(1.5rem,4vw,4rem);padding-right:5rem;
    font-size:0.7rem;color:#444;
    flex-wrap:wrap;gap:1rem;
}
footer a{color:#555;transition:color 0.3s}
footer a:hover{color:var(--y)}
.f-links{display:flex;gap:1.5rem}

/* ---------- FORM INPUTS ---------- */
.bc-input{
    width:100%;padding:0.9rem 1rem;
    background:var(--bg);
    border:1px solid var(--border);
    color:var(--white);
    font-family:inherit;font-size:0.9rem;
    margin-bottom:0.75rem;
    outline:none;
    transition:border-color 0.3s;
}
.bc-input:focus{border-color:var(--y);box-shadow:0 0 0 2px rgba(242,217,10,0.1)}
.bc-input::placeholder{color:#666}
.bc-btn{
    width:100%;padding:1rem;
    background:var(--y);color:#000;
    border:none;font-family:inherit;
    font-weight:900;font-size:0.85rem;
    text-transform:uppercase;letter-spacing:0.1em;
    cursor:pointer;transition:all 0.3s;
}
.bc-btn:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 6px 20px rgba(242,217,10,0.2)}
.bc-btn:disabled{opacity:0.5;cursor:not-allowed;transform:none;filter:none}
.bc-btn-outline{
    width:100%;padding:1rem;
    background:transparent;color:var(--white);
    border:1px solid var(--border);
    font-family:inherit;
    font-weight:800;font-size:0.85rem;
    text-transform:uppercase;letter-spacing:0.1em;
    cursor:pointer;transition:all 0.3s;
}
.bc-btn-outline:hover{border-color:var(--y);color:var(--y)}

/* ---------- CARDS / PANELS ---------- */
.bc-card{
    background:var(--dark);
    border:1px solid var(--border);
    padding:clamp(1.5rem,3vw,2.5rem);
    position:relative;
}
.bc-card::before{
    content:'';position:absolute;top:0;left:0;right:0;
    height:2px;background:var(--y);
}

/* ---------- STATUS BADGES ---------- */
.badge-active{background:rgba(0,230,118,0.15);color:#00E676;padding:0.25rem 0.6rem;border-radius:2px;font-size:0.7rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em}
.badge-none{background:rgba(153,153,153,0.15);color:var(--gray);padding:0.25rem 0.6rem;border-radius:2px;font-size:0.7rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em}
.badge-granted{background:rgba(242,217,10,0.15);color:var(--y);padding:0.25rem 0.6rem;border-radius:2px;font-size:0.7rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em}
.badge-canceled{background:rgba(255,68,68,0.15);color:#ff4444;padding:0.25rem 0.6rem;border-radius:2px;font-size:0.7rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em}
.badge-past_due{background:rgba(255,152,0,0.15);color:#FF9800;padding:0.25rem 0.6rem;border-radius:2px;font-size:0.7rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em}

/* ---------- TABLES ---------- */
.bc-table{width:100%;border-collapse:collapse;font-size:0.85rem}
.bc-table th{
    text-align:left;padding:0.8rem 1rem;
    font-size:0.65rem;font-weight:700;
    text-transform:uppercase;letter-spacing:0.12em;
    color:var(--gray);border-bottom:1px solid var(--border);
}
.bc-table td{padding:0.8rem 1rem;border-bottom:1px solid var(--border);vertical-align:middle}
.bc-table tr:hover td{background:rgba(242,217,10,0.03)}
.bc-table-action{
    background:none;border:1px solid var(--border);
    color:var(--white);padding:0.35rem 0.7rem;
    font-family:inherit;font-size:0.7rem;font-weight:600;
    text-transform:uppercase;letter-spacing:0.05em;
    cursor:pointer;transition:all 0.3s;border-radius:2px;
    margin-right:0.3rem;
}
.bc-table-action:hover{border-color:var(--y);color:var(--y)}
.bc-table-action.danger:hover{border-color:#ff4444;color:#ff4444}
.bc-table-action.grant{border-color:rgba(0,230,118,0.4);color:#00E676}
.bc-table-action.grant:hover{border-color:#00E676;background:rgba(0,230,118,0.1)}

/* ---------- MODAL / OVERLAY ---------- */
.bc-overlay{
    position:fixed;inset:0;
    background:rgba(0,0,0,0.8);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
    z-index:9998;display:none;align-items:center;justify-content:center;
}
.bc-overlay.show{display:flex}
.bc-modal{
    background:var(--dark);border:1px solid var(--border);
    width:min(480px,90vw);max-height:85vh;overflow-y:auto;
    padding:2.5rem;position:relative;
}
.bc-modal::before{
    content:'';position:absolute;top:0;left:0;right:0;
    height:2px;background:var(--y);
}

/* ---------- REVEAL ---------- */
.rv{opacity:0;transform:translateY(30px);transition:all 0.7s cubic-bezier(0.16,1,0.3,1)}
.rv.vis{opacity:1;transform:none}
.rv-d1{transition-delay:0.1s}
.rv-d2{transition-delay:0.2s}

/* ---------- COOKIE CONSENT ---------- */
.cookie-bar{
    position:fixed;bottom:0;left:0;right:0;
    background:var(--dark);border-top:1px solid var(--border);
    padding:1.5rem clamp(1.5rem,4vw,4rem);
    display:flex;align-items:center;justify-content:space-between;gap:1.5rem;
    z-index:9998;
    transform:translateY(100%);opacity:0;
    transition:all 0.5s cubic-bezier(0.16,1,0.3,1);
}
.cookie-bar.show{transform:translateY(0);opacity:1}
.cookie-bar-text{flex:1;font-size:0.8rem;color:var(--gray);line-height:1.6}
.cookie-bar-text a{color:var(--white);text-decoration:underline;text-underline-offset:2px;transition:color 0.3s}
.cookie-bar-text a:hover{color:var(--y)}
.cookie-bar-actions{display:flex;gap:0.75rem;flex-shrink:0}
.cookie-btn{
    padding:0.7rem 1.5rem;font-family:inherit;font-weight:700;font-size:0.7rem;
    text-transform:uppercase;letter-spacing:0.1em;cursor:pointer;
    transition:all 0.3s;border:none;white-space:nowrap;
}
.cookie-btn.fill{background:var(--y);color:#000}
.cookie-btn.fill:hover{filter:brightness(1.15)}
.cookie-btn.ghost{background:none;color:var(--white);border:1px solid var(--border)}
.cookie-btn.ghost:hover{border-color:var(--y);color:var(--y)}
.cookie-overlay{
    position:fixed;inset:0;
    background:rgba(0,0,0,0.8);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
    z-index:9998;display:none;align-items:center;justify-content:center;
}
.cookie-overlay.show{display:flex}
.cookie-modal{
    background:var(--dark);border:1px solid var(--border);
    width:min(480px,90vw);max-height:85vh;overflow-y:auto;
    padding:2.5rem;
}
.cookie-modal h3{
    font-family:'Space Mono',monospace;font-size:0.75rem;font-weight:700;
    text-transform:uppercase;letter-spacing:0.15em;color:var(--y);
    margin-bottom:1.5rem;
}
.cookie-cat{
    display:flex;align-items:center;justify-content:space-between;
    padding:1rem 0;border-bottom:1px solid var(--border);
}
.cookie-cat:last-of-type{border-bottom:none}
.cookie-cat-info h4{font-size:0.85rem;font-weight:600;margin-bottom:0.25rem}
.cookie-cat-info p{font-size:0.72rem;color:var(--gray);line-height:1.5}
.cookie-switch{position:relative;width:44px;height:24px;flex-shrink:0;margin-left:1rem}
.cookie-switch input{opacity:0;width:0;height:0}
.cookie-slider{
    position:absolute;inset:0;cursor:pointer;
    background:#333;border-radius:24px;
    transition:background 0.3s;
}
.cookie-slider::before{
    content:'';position:absolute;left:3px;top:3px;
    width:18px;height:18px;background:var(--white);border-radius:50%;
    transition:transform 0.3s;
}
.cookie-switch input:checked+.cookie-slider{background:var(--y)}
.cookie-switch input:checked+.cookie-slider::before{transform:translateX(20px)}
.cookie-switch input:disabled+.cookie-slider{opacity:0.5;cursor:not-allowed}
.cookie-modal-actions{margin-top:2rem;display:flex;gap:0.75rem}

/* ---------- BANANA EASTEREGG ---------- */
.banana-btn{
    position:fixed;bottom:1.5rem;right:1.5rem;
    width:44px;height:44px;
    background:var(--dark);border:1px solid var(--border);
    display:flex;align-items:center;justify-content:center;
    font-size:1.3rem;cursor:pointer;z-index:99;
    transition:all 0.3s;
}
.banana-btn:hover{border-color:var(--y);transform:rotate(-10deg) scale(1.1)}
.rain-container{position:fixed;inset:0;pointer-events:none;z-index:9999;overflow:hidden}
.rain-drop{
    position:absolute;top:-40px;
    font-size:1.5rem;
    animation:drop linear forwards;
}
@keyframes drop{
    to{transform:translateY(110vh) rotate(360deg);opacity:0}
}

/* ---------- RESPONSIVE ---------- */
@media(max-width:900px){
    .nav-right{
        display:none;
        position:fixed;inset:0;
        background:rgba(10,10,10,0.97);
        flex-direction:column;justify-content:center;align-items:center;
        gap:2rem;font-size:1rem;
    }
    .nav-right.open{display:flex}
    .mob-toggle{display:flex}
    footer{flex-direction:column;align-items:flex-start;gap:0.8rem;padding-bottom:5rem;padding-right:clamp(1.5rem,4vw,4rem)}
    .f-links{flex-wrap:wrap;gap:1rem}
    .cookie-bar{flex-direction:column;align-items:stretch;gap:1rem;padding:1.2rem 1.5rem}
    .cookie-bar-actions{justify-content:stretch}
    .cookie-btn{flex:1;text-align:center}
}
