:root {
    --s-bg: #0b0e14;
    --s-bg-soft: #121620;
    --s-surface: rgba(35, 42, 54, .97);
    --s-surface-strong: #29313f;
    --s-stroke: rgba(255, 255, 255, .125);
    --s-stroke-strong: rgba(255, 255, 255, .21);
    --s-text: #f7f8fb;
    --s-text-soft: #c2c7d2;
    --s-text-muted: #949cac;
    --s-accent: #9184ff;
    --s-accent-soft: rgba(145, 132, 255, .17);
    --s-green: #5de0a5;
    --s-green-soft: rgba(93, 224, 165, .12);
    --s-red: #ff7d8d;
    --s-orange: #ffb86c;
    --s-radius-xl: 26px;
    --s-radius-lg: 19px;
    --s-radius-md: 13px;
    --s-shadow: 0 24px 70px rgba(0, 0, 0, .24);
    --accent-purple: #8b7cff;
    --accent-blue: #68b6ff;
    --accent-green: #5de0a5;
    --text-primary: #f7f8fb;
    --text-secondary: #a7adbd;
}

html { min-width: 320px; background: var(--s-bg); }
body {
    min-height: 100vh;
    overflow-x: hidden;
    background:
        radial-gradient(circle at 76% 3%, rgba(145, 132, 255, .085), transparent 28%),
        radial-gradient(circle at 8% 35%, rgba(88, 190, 255, .04), transparent 24%),
        linear-gradient(180deg, #0f131a 0%, #090c12 100%),
        var(--s-bg) !important;
    color: var(--s-text) !important;
    font-family: Outfit, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: 15px;
    line-height: 1.6;
}

body::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
    opacity: .15;
    pointer-events: none;
    background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
    background-size: 56px 56px;
    mask-image: linear-gradient(to bottom, #000, transparent 78%);
}

body * { scrollbar-width: thin; scrollbar-color: #383d4e transparent; }
html { scrollbar-color: #7f70ee #0d121b; scrollbar-width: thin; }
::-webkit-scrollbar { width: 12px; height: 12px; }
::-webkit-scrollbar-track { background: #0d121b; }
::-webkit-scrollbar-thumb { min-height: 48px; border: 3px solid #0d121b; border-radius: 999px; background: linear-gradient(180deg, #9a8cff, #6857d9); }
::-webkit-scrollbar-thumb:hover { background: linear-gradient(180deg, #aea3ff, #7d6bed); }
::-webkit-scrollbar-corner { background: #0d121b; }
::selection { background: rgba(139, 124, 255, .38); color: white; }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
button, .btn, .btn-primary-hero, .btn-secondary-hero, .btn-premium, .platform-btn, .cookie-btn, .action-btn {
    background-clip: padding-box !important;
    -webkit-background-clip: padding-box !important;
}
.btn-primary-hero::before, .btn-premium::before { display: none !important; content: none !important; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid #aaa0ff !important; outline-offset: 3px !important; }
.pulse-container, .background-blobs { display: none !important; }

main { position: relative; padding-top: 108px; }
main > .container { width: min(1280px, calc(100% - 40px)); max-width: none; padding: 0; }
#landing { padding-bottom: 40px; }

/* Navigation */
header.navbar {
    top: 14px !important;
    left: 50% !important;
    right: auto !important;
    width: min(1240px, calc(100% - 32px));
    min-height: 66px;
    padding: 0 !important;
    border: 1px solid var(--s-stroke) !important;
    border-radius: 18px;
    background: rgba(24, 29, 39, .91) !important;
    box-shadow: 0 14px 40px rgba(0, 0, 0, .2), inset 0 1px 0 rgba(255,255,255,.04) !important;
    transform: translateX(-50%);
    backdrop-filter: blur(22px);
}
header.navbar .container-fluid { min-height: 64px; padding: 0 17px !important; }
.navbar-brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0 !important;
    color: white !important;
    font-size: 20px !important;
    font-weight: 760 !important;
    letter-spacing: -.045em;
    background: none !important;
    -webkit-background-clip: initial !important;
    -webkit-text-fill-color: #fff !important;
}
.navbar-brand .brand-mark {
    position: relative;
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 12px;
    background: linear-gradient(145deg, rgba(139,124,255,.35), rgba(139,124,255,.08));
    color: #fff;
    font-size: 17px;
    font-weight: 820;
    line-height: 1;
    letter-spacing: -.04em;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.16);
}
.navbar-brand .brand-mark::after {
    content: "";
    position: absolute;
    top: -2px;
    right: -2px;
    width: 8px;
    height: 8px;
    border: 2px solid #0c0f16;
    border-radius: 50%;
    background: var(--s-green);
}
.navbar-nav { gap: 3px; }
.navbar .nav-link { min-height: 42px; padding: 9px 12px !important; border-radius: 10px; color: #bac0cc !important; font-size: 13px; font-weight: 550; transition: color .18s, background .18s; }
.navbar .nav-link:hover { background: rgba(255,255,255,.075); color: white !important; }
.navbar .nav-link i { margin-right: 3px; font-size: 11px; }
.flag-pl { opacity: .7; transform: scale(.8); }
.navbar-toggler { width: 42px; height: 42px; padding: 8px; border: 1px solid var(--s-stroke) !important; border-radius: 11px; box-shadow: none !important; }
.navbar-toggler-icon { width: 20px; height: 20px; }
.btn.btn-premium, .btn-premium, #header-login-btn {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 18px !important;
    border: 1px solid rgba(160,148,255,.38) !important;
    border-radius: 11px !important;
    background: linear-gradient(135deg, #7666f6, #9486ff) !important;
    box-shadow: 0 10px 25px rgba(118,102,246,.17) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    text-decoration: none;
    transition: transform .18s, filter .18s !important;
    isolation: isolate;
    transform: translateZ(0);
}
.btn.btn-premium:hover, .btn-premium:hover, #header-login-btn:hover { transform: translateY(-1px); filter: brightness(1.06); }
#header-logout-btn {
    display: inline-flex;
    min-width: 142px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 0 18px !important;
    border: 1px solid var(--s-stroke-strong) !important;
    border-radius: 11px !important;
    background: rgba(255,255,255,.055) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035) !important;
    color: #e9ebf2 !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    line-height: 1;
    white-space: nowrap;
    transition: border-color .18s, background .18s, color .18s, transform .18s !important;
}
#header-logout-btn i { color: #ff9ca9; font-size: 15px; line-height: 1; }
#header-logout-btn:hover {
    border-color: rgba(255,142,157,.4) !important;
    background: rgba(255,125,141,.1) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05) !important;
    color: #fff !important;
    transform: translateY(-1px);
}
#header-logout-btn:focus-visible { outline: 3px solid rgba(255,142,157,.2); outline-offset: 2px; }

/* Hero */
.hero-section {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(430px, .88fr);
    min-height: 690px !important;
    align-items: center;
    gap: clamp(42px, 7vw, 100px);
    padding: 60px 10px 76px !important;
    text-align: left !important;
}
.hero-copy { min-width: 0; }
.hero-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 7px 11px;
    border: 1px solid var(--s-stroke);
    border-radius: 999px;
    background: rgba(255,255,255,.028);
    color: #d6d9e2;
    font-size: 11px;
    font-weight: 600;
}
.hero-eyebrow span { width: 6px; height: 6px; border-radius: 50%; background: var(--s-green); box-shadow: 0 0 0 5px rgba(93,224,165,.09); }
.hero-title {
    max-width: 760px !important;
    margin: 27px 0 22px !important;
    color: #fff !important;
    font-size: clamp(54px, 5.6vw, 98px) !important;
    font-weight: 745 !important;
    letter-spacing: -.075em !important;
    line-height: .92 !important;
    text-shadow: none !important;
    background: none !important;
    -webkit-background-clip: initial !important;
    -webkit-text-fill-color: #fff !important;
}
.hero-title .hero-title-line { display: block; color: #fff !important; -webkit-text-fill-color: #fff !important; }
.hero-subtitle { max-width: 650px !important; margin: 0 !important; color: var(--s-text-soft) !important; font-size: clamp(17px, 1.3vw, 20px) !important; line-height: 1.68 !important; }
.hero-buttons { display: flex !important; justify-content: flex-start !important; gap: 10px !important; margin: 31px 0 0 !important; }
.btn-primary-hero, .btn-secondary-hero {
    display: inline-flex !important;
    min-height: 60px;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 0 30px !important;
    border-radius: 14px !important;
    font-size: 17px !important;
    font-weight: 650 !important;
    transition: transform .18s, border-color .18s, background .18s !important;
    isolation: isolate;
    overflow: hidden;
    transform: translateZ(0);
}
.btn-primary-hero { border: 1px solid rgba(190,181,255,.5) !important; background: linear-gradient(135deg, #7566f2, #9b8fff) !important; box-shadow: 0 13px 30px rgba(98,83,220,.23), inset 0 1px 0 rgba(255,255,255,.2) !important; color: white !important; }
.btn-secondary-hero { border: 1px solid var(--s-stroke-strong) !important; background: rgba(255,255,255,.065) !important; box-shadow: inset 0 1px 0 rgba(255,255,255,.035) !important; color: #f0f1f5 !important; }
.btn-primary-hero:hover, .btn-secondary-hero:hover { transform: translateY(-2px) !important; }
.btn-secondary-hero:hover { border-color: rgba(255,255,255,.3) !important; background: rgba(255,255,255,.1) !important; }
.hero-benefits { display: flex !important; flex-wrap: wrap; justify-content: flex-start !important; gap: 18px !important; margin: 28px 0 0 !important; }
.hero-benefit-item { display: flex !important; align-items: center; gap: 8px; color: var(--s-text-muted) !important; font-size: 14px !important; }
.hero-benefit-item i { display: grid; width: 18px; height: 18px; place-items: center; border-radius: 50%; background: var(--s-green-soft); color: var(--s-green) !important; font-size: 11px !important; }

.hero-product { position: relative; }
.hero-product::before { content: ""; position: absolute; inset: 12% -10% -8% 6%; z-index: -1; border-radius: 50%; background: rgba(145,132,255,.16); filter: blur(60px); }
.product-window { overflow: hidden; border: 1px solid rgba(255,255,255,.18); border-radius: 25px; background: rgba(29,34,46,.97); box-shadow: 0 32px 80px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.065); transform: perspective(1200px) rotateY(-3deg) rotateX(1deg); backdrop-filter: blur(24px); }
.product-window-bar { display: grid; grid-template-columns: 1fr auto 1fr; min-height: 49px; align-items: center; padding: 0 16px; border-bottom: 1px solid var(--s-stroke); color: var(--s-text-muted); font-size: 9px; }
.window-dots { display: flex; gap: 5px; }.window-dots i { width: 6px; height: 6px; border-radius: 50%; background: #3a3e4d; }.window-dots i:first-child { background: #6c657c; }
.secure-label { display: flex; justify-self: end; align-items: center; gap: 6px; color: var(--s-green); font-size: 8px; font-weight: 750; letter-spacing: .1em; }.secure-label i { width: 5px; height: 5px; border-radius: 50%; background: var(--s-green); }
.product-profile { display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 12px; padding: 18px 19px; border-bottom: 1px solid var(--s-stroke); }
.product-avatar { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid rgba(139,124,255,.25); border-radius: 13px; background: var(--s-accent-soft); color: #c7c0ff; }
.product-profile small, .product-profile strong, .product-balance small, .product-balance strong { display: block; }.product-profile small, .product-balance small { color: var(--s-text-muted); font-size: 8px; text-transform: uppercase; letter-spacing: .07em; }.product-profile strong { margin-top: 3px; font-size: 11px; font-weight: 620; }
.product-status { padding: 5px 8px; border: 1px solid rgba(93,224,165,.18); border-radius: 7px; background: var(--s-green-soft); color: var(--s-green); font-size: 8px; font-weight: 700; }
.product-balance { display: flex; min-height: 112px; align-items: center; justify-content: space-between; padding: 20px; background: linear-gradient(115deg, rgba(145,132,255,.2), rgba(255,255,255,.025) 68%); }
.product-balance strong { margin-top: 7px; font-size: clamp(17px,2vw,23px); letter-spacing: -.04em; }
.trend-pill { padding: 6px 9px; border-radius: 8px; background: rgba(255,255,255,.075); color: var(--s-green); font-size: 8px; }
.product-flow { margin: 0 15px; overflow: hidden; border: 1px solid var(--s-stroke-strong); border-radius: 14px; background: rgba(8,11,16,.18); }
.product-flow > div { display: grid; grid-template-columns: 34px 1fr auto; min-height: 66px; align-items: center; gap: 10px; padding: 9px 12px; border-bottom: 1px solid var(--s-stroke); }
.product-flow > div:last-child { border-bottom: 0; }.product-flow .flow-active { background: rgba(139,124,255,.055); }
.flow-icon { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 9px; background: rgba(255,255,255,.075); color: #cbc5ff; font-size: 12px; }
.product-flow p { margin: 0; }.product-flow strong, .product-flow small { display: block; }.product-flow strong { font-size: 9px; font-weight: 650; }.product-flow small { margin-top: 2px; color: var(--s-text-muted); font-size: 7px; }.product-flow > div > i { color: var(--s-green); font-size: 11px; }.flow-action { padding: 5px 8px; border-radius: 7px; background: var(--s-accent); color: white; font-size: 7px; font-weight: 700; }
.platform-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 17px 19px 19px; color: var(--s-text-muted); font-size: 8px; }.platform-row div { display: flex; gap: 5px; }.platform-row b { padding: 4px 6px; border-radius: 5px; background: rgba(255,255,255,.035); font-size: 7px; font-weight: 650; }.platform-twitch { color: #b4a7ff; }.platform-youtube { color: #ff929f; }.platform-kick { color: #6be99a; }

/* Landing sections */
#landing > section:not(.hero-section) { position: relative; margin: 15px 0 !important; padding: clamp(54px,7vw,86px) clamp(22px,5vw,64px) !important; border: 1px solid var(--s-stroke) !important; border-radius: var(--s-radius-xl) !important; background: linear-gradient(145deg, rgba(37,43,56,.99), rgba(29,35,46,.99)) !important; box-shadow: 0 18px 54px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.05) !important; }
#landing .section-title, #landing .brands-intro h2, #landing .cta-title { margin: 0 0 14px !important; color: #f6f7fa !important; font-size: clamp(34px,4.2vw,64px) !important; font-weight: 700 !important; letter-spacing: -.055em !important; line-height: 1.04 !important; text-align: center; text-shadow: none !important; }
#landing .section-title, #landing .brands-intro h2, #landing .cta-title { background: none !important; -webkit-background-clip: initial !important; -webkit-text-fill-color: #f6f7fa !important; }
#landing .section-subtitle { max-width: 800px; margin: 0 auto 42px !important; color: var(--s-text-soft) !important; font-size: 16px !important; line-height: 1.7; }
.steps-container, .streamer-benefits-container, .brands-benefits, .features-grid { display: grid !important; gap: 12px !important; margin-top: 42px !important; }
.steps-container { grid-template-columns: repeat(3,1fr) !important; }
.streamer-benefits-container { grid-template-columns: repeat(3,1fr) !important; }
.brands-benefits, .features-grid { grid-template-columns: repeat(4,1fr) !important; }
.step-item, .streamer-benefit-item, .benefit-card, .feature-card {
    min-width: 0;
    min-height: 244px;
    margin: 0 !important;
    padding: 24px !important;
    border: 1px solid var(--s-stroke) !important;
    border-radius: var(--s-radius-lg) !important;
    background: rgba(255,255,255,.07) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.025) !important;
    text-align: left !important;
    transform: none !important;
    transition: border-color .2s, background .2s, transform .2s !important;
}
.step-item:hover, .streamer-benefit-item:hover, .benefit-card:hover, .feature-card:hover { border-color: var(--s-stroke-strong) !important; background: rgba(255,255,255,.095) !important; transform: translateY(-3px) !important; }
.step-icon, .streamer-benefit-icon, .benefit-icon, .feature-icon-circle { display: grid !important; width: 42px !important; height: 42px !important; margin: 0 0 30px !important; place-items: center; border: 1px solid rgba(139,124,255,.2) !important; border-radius: 13px !important; background: var(--s-accent-soft) !important; color: #c6bfff !important; font-size: 17px !important; box-shadow: none !important; }
.step-title, .streamer-benefit-title, .benefit-title, .feature-title { margin: 0 0 11px !important; color: #eef0f5 !important; font-size: 19px !important; font-weight: 640 !important; letter-spacing: -.025em; }
.step-description, .streamer-benefit-description, .benefit-text, .feature-text { margin: 0 !important; color: var(--s-text-muted) !important; font-size: 15px !important; line-height: 1.68 !important; }
.step-item { counter-increment: workflow; position: relative; }.steps-container { counter-reset: workflow; }.step-item::after { content: "0" counter(workflow); position: absolute; top: 23px; right: 24px; color: #4d5363; font-size: 10px; font-weight: 700; letter-spacing: .1em; }

.brands-section > .container { max-width: none !important; padding: 0 !important; }
.brands-intro { max-width: 800px; margin: 0 auto; text-align: center; }.brands-intro p { color: var(--s-text-soft) !important; font-size: 16px !important; line-height: 1.7; }.brands-intro p:nth-of-type(1) { color: #dfe2e9 !important; font-size: 19px !important; }
.brands-cta { margin-top: 34px !important; text-align: center; }
.brands-cta .btn-premium, .cta-section .btn-premium { min-height: 54px; padding-inline: 24px !important; border-radius: 13px !important; font-size: 15px !important; }

.faq-section { background: linear-gradient(145deg, rgba(27,32,43,.98), rgba(20,25,34,.98)) !important; }
.faq-container { max-width: 840px !important; margin: 38px auto 0 !important; }
.faq-item { margin: 8px 0 !important; overflow: hidden; border: 1px solid var(--s-stroke) !important; border-radius: 14px !important; background: rgba(255,255,255,.045) !important; box-shadow: none !important; }
.faq-question { min-height: 66px !important; padding: 18px 20px !important; color: #f0f1f5 !important; font-size: 15px !important; font-weight: 600 !important; }.faq-question:hover { background: rgba(255,255,255,.055) !important; }.faq-question i { color: var(--s-text-muted) !important; }
.faq-answer { padding: 0 20px 20px !important; color: var(--s-text-soft) !important; font-size: 14px !important; line-height: 1.72 !important; }

#landing .cta-section { overflow: hidden; padding-block: 90px !important; background: radial-gradient(circle at 50% 115%, rgba(145,132,255,.3), transparent 43%), linear-gradient(145deg, rgba(36,39,56,.98), rgba(23,28,38,.98)) !important; text-align: center; }
.cta-text { max-width: 720px !important; margin: 0 auto 30px !important; color: var(--s-text-soft) !important; font-size: 16px !important; line-height: 1.7; }

/* Streamer panel */
#panel { padding: 34px 0 70px !important; }
#panel > .row { margin: 0 !important; }
#panel .col-lg-10 { width: 100%; max-width: none; padding: 0; }
.panel-header { position: relative; min-height: 210px; margin: 0 0 14px !important; padding: 43px !important; overflow: hidden; border: 1px solid rgba(168,157,255,.27) !important; border-radius: var(--s-radius-xl) !important; background: radial-gradient(circle at 85% 115%, rgba(145,132,255,.3), transparent 38%), linear-gradient(140deg, rgba(38,41,57,.98), rgba(24,29,39,.98)) !important; box-shadow: 0 18px 54px rgba(0,0,0,.13), inset 0 1px 0 rgba(255,255,255,.05) !important; text-align: left !important; }
.panel-header::after { content: "PANEL STREAMERA"; position: absolute; right: 42px; bottom: 35px; color: rgba(255,255,255,.06); font-size: clamp(30px,5vw,70px); font-weight: 800; letter-spacing: -.05em; pointer-events: none; }
.panel-header h1 { margin: 0 0 10px !important; color: #fff !important; font-size: clamp(37px,4vw,54px) !important; font-weight: 710 !important; letter-spacing: -.055em; text-shadow: none !important; }.panel-header h1 i { color: #a89eff; font-size: .7em; }.panel-header p { color: var(--s-text-soft) !important; font-size: 16px; }.panel-header #username-display { color: #f4f5f8 !important; font-size: inherit !important; font-weight: 650 !important; }
.premium-card { margin-bottom: 14px !important; padding: 27px !important; border: 1px solid var(--s-stroke) !important; border-radius: var(--s-radius-lg) !important; background: var(--s-surface) !important; box-shadow: 0 14px 42px rgba(0,0,0,.1), inset 0 1px 0 rgba(255,255,255,.045) !important; backdrop-filter: blur(18px); }
.premium-card::before, .premium-card::after { display: none !important; }
.premium-card:hover { border-color: var(--s-stroke-strong) !important; box-shadow: 0 14px 42px rgba(0,0,0,.1), inset 0 1px 0 rgba(255,255,255,.06) !important; transform: none !important; }
.balance-label, .ready-balance-label { color: var(--s-text-muted) !important; font-size: 12px !important; font-weight: 650 !important; letter-spacing: .06em; text-transform: uppercase; }.balance-label i, .ready-balance-label i { color: #9e94f8 !important; }
.balance-amount, .ready-balance-amount { margin-top: 12px !important; color: #fff !important; font-size: clamp(31px,4vw,44px) !important; font-weight: 700 !important; letter-spacing: -.055em; }
.ready-balance-section { border-left: 1px solid var(--s-stroke) !important; padding-left: 30px !important; }
#withdraw-btn { min-width: 180px; }
.obs-section { margin-top: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; }
.obs-section h3, #ads-selection { color: #f0f1f5 !important; font-size: 19px !important; font-weight: 640 !important; letter-spacing: -.03em; text-align: left !important; }.obs-section h3 i, #ads-selection i { color: #9f95f8 !important; }
#obs-instructions { display: grid; max-width: 920px; gap: 7px; margin: 0 0 14px !important; font-size: 14px !important; line-height: 1.55; text-align: left !important; }
#obs-instructions p { display: flex; align-items: flex-start; gap: 9px; margin: 0 !important; padding: 0; border: 0; background: transparent; }
#obs-instructions p > i { flex: 0 0 auto; margin-top: 2px; font-size: 15px; }
.obs-instruction-success { color: #70dca9 !important; }
.obs-instruction-important { color: #ff8d9c !important; }
.obs-security-warning { display: flex; max-width: 920px; align-items: flex-start; gap: 9px; margin: 0 0 18px; padding: 0; border: 0; background: transparent; color: #e5bd72; font-size: 13px; line-height: 1.5; }
.obs-security-warning > i { flex: 0 0 auto; margin-top: 2px; color: #ffc766; font-size: 16px; }
.obs-security-warning strong { color: #f2cc86; }
.obs-link-wrapper { min-height: 52px !important; }.obs-link-input, .obs-link-masked { height: 52px !important; border: 1px solid var(--s-stroke-strong) !important; border-radius: 12px !important; background: rgba(10,13,19,.58) !important; color: #eef0f5 !important; font-size: 13px !important; }.obs-link-buttons button { min-height: 40px !important; padding: 0 14px !important; border: 1px solid var(--s-stroke) !important; border-radius: 10px !important; background: rgba(255,255,255,.07) !important; color: #d8d3ff !important; font-size: 12px !important; }
#obs-link { padding: 0 !important; border: 0 !important; background: transparent !important; }
#obs-drag-link { display: inline-flex; min-height: 44px; align-items: center; gap: 7px; margin-top: 12px !important; padding: 0 15px; border: 1px solid var(--s-stroke) !important; border-radius: 11px !important; background: rgba(255,255,255,.04) !important; box-shadow: none !important; color: #d8d5ed !important; font-size: 13px; text-decoration: none; }
#obs-drag-link:hover { border-color: var(--s-stroke-strong) !important; background: rgba(255,255,255,.065) !important; box-shadow: none !important; transform: translateY(-1px) !important; }
#content .content-item { border: 1px solid var(--s-stroke) !important; border-radius: 14px !important; background: rgba(255,255,255,.05) !important; transform: none !important; }
#content .content-item:hover { border-color: var(--s-stroke-strong) !important; background: rgba(255,255,255,.075) !important; transform: none !important; }
#content .ad-item, #content .reklama-item, #content > div { border-color: var(--s-stroke) !important; border-radius: 14px !important; background: rgba(255,255,255,.05) !important; box-shadow: none !important; }
.panel-section { padding: 0 !important; overflow: hidden; }.panel-section-header { min-height: 72px; padding: 0 24px !important; }.panel-section-title { color: #e9ebf0 !important; font-size: 17px !important; }.panel-section-title i { color: #a49afc !important; }.toggle-visibility { display: grid; width: 40px; height: 40px; place-items: center; border: 1px solid var(--s-stroke) !important; border-radius: 11px !important; background: rgba(255,255,255,.035) !important; color: var(--s-text-soft) !important; }.panel-section-content { padding: 0 24px 24px !important; }
.table-responsive { border: 1px solid var(--s-stroke-strong); border-radius: 13px; }
table.table.table-premium { margin: 0 !important; border: 0 !important; border-radius: 13px !important; background: rgba(10,13,18,.3) !important; overflow: hidden; }
table.table.table-premium thead, table.table.table-premium th { background: rgba(255,255,255,.065) !important; }
table.table.table-premium th { height: 49px; padding: 11px 14px !important; color: var(--s-text-muted) !important; border-bottom: 1px solid var(--s-stroke) !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: .07em; text-transform: uppercase; }
table.table.table-premium td { height: 55px; padding: 10px 14px !important; border-bottom: 1px solid rgba(255,255,255,.055) !important; color: #cbd0da !important; font-size: 13px !important; }
.chart-container-wrapper { padding: 15px; border: 1px solid var(--s-stroke); border-radius: 14px; background: rgba(10,13,18,.28); }.chart-container-wrapper h5 { color: var(--s-text-soft) !important; font-size: 12px; }.legend-item { color: var(--s-text-muted); font-size: 10px; }
#logout-button {
    display: inline-flex;
    min-width: 174px;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0 22px !important;
    border: 1px solid var(--s-stroke-strong) !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.055) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035) !important;
    color: #eceef4 !important;
    font-size: 14px !important;
    font-weight: 650 !important;
    line-height: 1;
    transition: border-color .18s, background .18s, color .18s, transform .18s !important;
}
#logout-button i { color: #ff9ca9; font-size: 16px; line-height: 1; }
#logout-button:hover {
    border-color: rgba(255,142,157,.4) !important;
    background: rgba(255,125,141,.1) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05) !important;
    color: #fff !important;
    transform: translateY(-1px) !important;
}
#logout-button:focus-visible { outline: 3px solid rgba(255,142,157,.2); outline-offset: 2px; }

/* Modal + forms */
.login-modal, .cookie-settings-modal { background: rgba(5,7,11,.68) !important; backdrop-filter: blur(12px); }
.login-modal-content, .cookie-settings-content, .modal-content { border: 1px solid var(--s-stroke-strong) !important; border-radius: 22px !important; background: #202632 !important; box-shadow: var(--s-shadow), inset 0 1px 0 rgba(255,255,255,.05) !important; color: var(--s-text) !important; }
.login-modal-content { width: min(460px, calc(100% - 30px)) !important; padding: 32px !important; }.login-modal-content h2 { margin: 0 0 6px !important; font-size: 28px !important; letter-spacing: -.045em; }.login-modal-content > p { color: var(--s-text-soft) !important; font-size: 14px; line-height: 1.65; }.login-modal-close, .cookie-settings-close { border: 1px solid var(--s-stroke) !important; border-radius: 9px !important; background: rgba(255,255,255,.03) !important; color: var(--s-text-soft) !important; }
.platform-buttons { display: grid !important; gap: 8px !important; margin: 24px 0 !important; }.platform-btn { min-height: 54px !important; border: 1px solid var(--s-stroke) !important; border-radius: 13px !important; background: rgba(255,255,255,.065) !important; color: white !important; font-size: 14px !important; box-shadow: inset 0 1px 0 rgba(255,255,255,.025) !important; }.platform-btn:hover { border-color: var(--s-stroke-strong) !important; background: rgba(255,255,255,.095) !important; transform: translateY(-1px); }.platform-btn.twitch i { color: #b5a7ff; }.platform-btn.youtube i { color: #ff929e; }.platform-btn.kick i { color: #6eeaa0; }
.terms-acceptance { padding: 14px !important; border: 1px solid var(--s-stroke) !important; border-radius: 12px !important; background: rgba(9,12,17,.3) !important; }.terms-acceptance label { color: var(--s-text-soft) !important; font-size: 9px !important; }.terms-acceptance a { color: #c2bbff !important; }
.modal-header, .modal-footer { border-color: var(--s-stroke) !important; }.modal-title { color: #f3f4f8 !important; font-weight: 650; letter-spacing: -.03em; }.btn-close { filter: invert(1) grayscale(1); opacity: .65; }
#withdrawalModal .form-control, #withdrawalModal .form-select, #withdrawalModal textarea { min-height: 48px !important; border: 1px solid var(--s-stroke-strong) !important; border-radius: 11px !important; background: rgba(10,13,18,.55) !important; color: #f0f1f5 !important; box-shadow: none !important; font-size: 14px !important; }.form-select { min-width: 0 !important; }.form-select option { background: #202632 !important; }.form-control:focus, .form-select:focus { border-color: rgba(145,132,255,.75) !important; box-shadow: 0 0 0 4px rgba(145,132,255,.11) !important; }

/* Legal, footer, cookies */
#regulamin-page, #polityka-page, #faq-page { padding: 30px 0 60px; }.legal-content { max-width: 900px !important; margin: 0 auto !important; padding: clamp(26px,5vw,58px) !important; border: 1px solid var(--s-stroke) !important; border-radius: var(--s-radius-xl) !important; background: var(--s-surface) !important; color: var(--s-text-soft) !important; box-shadow: none !important; }.legal-content h1 { color: white !important; font-size: clamp(32px,5vw,50px) !important; letter-spacing: -.055em; }.legal-content h2, .legal-content h3 { color: #e9ebf0 !important; }.legal-content p, .legal-content li { font-size: 14px; line-height: 1.8; }.back-button { min-height: 44px; padding: 0 15px; border: 1px solid var(--s-stroke) !important; border-radius: 11px !important; background: rgba(255,255,255,.035) !important; color: var(--s-text-soft) !important; font-size: 13px; }
footer { margin-top: 20px !important; padding: 54px 0 24px !important; border-top: 1px solid var(--s-stroke) !important; background: rgba(12,15,21,.78) !important; color: var(--s-text-muted) !important; }.footer-section h4 { color: #e7e9ee !important; font-size: 14px !important; }.footer-section p, .footer-section a { color: var(--s-text-muted) !important; font-size: 12px !important; }.footer-section a:hover { color: #c4bdff !important; }.footer-bottom { border-color: var(--s-stroke) !important; }
.cookie-consent-banner { right: 18px !important; bottom: 18px !important; left: auto !important; width: min(540px, calc(100% - 36px)) !important; padding: 0 !important; border: 1px solid var(--s-stroke-strong) !important; border-radius: 18px !important; background: rgba(31,37,49,.98) !important; box-shadow: var(--s-shadow), inset 0 1px 0 rgba(255,255,255,.04) !important; backdrop-filter: blur(20px); }.cookie-consent-container { display: block !important; padding: 18px !important; }.cookie-consent-content { align-items: flex-start !important; }.cookie-consent-icon { display: grid; flex: 0 0 35px; width: 35px !important; height: 35px !important; place-items: center; border-radius: 10px; background: var(--s-accent-soft); color: #c6bfff !important; font-size: 15px !important; }.cookie-consent-text h4 { margin: 0 0 4px !important; color: #f4f5f7 !important; font-size: 13px !important; }.cookie-consent-text p { margin: 2px 0 !important; color: var(--s-text-muted) !important; font-size: 9px !important; line-height: 1.55 !important; }.cookie-consent-buttons { display: flex !important; flex-wrap: wrap; justify-content: flex-end; gap: 6px !important; margin-top: 14px; }.cookie-btn { min-height: 36px !important; padding: 0 11px !important; border: 1px solid var(--s-stroke) !important; border-radius: 9px !important; background: rgba(255,255,255,.065) !important; color: #e4e6eb !important; font-size: 9px !important; }.cookie-btn-accept { border-color: rgba(175,164,255,.42) !important; background: var(--s-accent) !important; color: white !important; }
.cookie-consent-banner:not(.show) {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translateY(calc(100% + 36px)) !important;
}
.cookie-consent-banner.show {
    visibility: visible;
    opacity: 1;
    transform: translateY(0) !important;
}

.loading-spinner { background: rgba(15,18,25,.94) !important; backdrop-filter: blur(10px); }.spinner { border-color: rgba(255,255,255,.12) !important; border-top-color: var(--s-accent) !important; }.loading-text { color: #f1f2f6 !important; }.loading-subtext { color: var(--s-text-muted) !important; }
.error-alert, .success-alert { display: none; position: fixed; z-index: 1200; top: 96px; right: 22px; max-width: min(420px,calc(100% - 44px)); padding: 13px 15px; border: 1px solid var(--s-stroke-strong) !important; border-radius: 12px !important; background: rgba(31,37,49,.98) !important; box-shadow: var(--s-shadow) !important; font-size: 11px !important; }.error-alert { color: #ff9da8 !important; }.success-alert { color: var(--s-green) !important; }

@media (max-width: 1100px) {
    .hero-section { grid-template-columns: minmax(0,1fr) minmax(390px,.8fr); gap: 40px; }.hero-title { font-size: clamp(50px,5.4vw,78px) !important; }
    .streamer-benefits-container { grid-template-columns: repeat(2,1fr) !important; }.brands-benefits, .features-grid { grid-template-columns: repeat(2,1fr) !important; }
}

@media (max-width: 850px) {
    header.navbar { top: 8px !important; width: calc(100% - 16px); border-radius: 15px; }.navbar-collapse { margin: 0 -17px; padding: 12px 17px 17px; border-top: 1px solid var(--s-stroke); background: rgba(24,29,39,.98); border-radius: 0 0 15px 15px; }.navbar-nav { align-items: stretch !important; }.navbar .nav-item { margin: 0 !important; }.navbar .nav-link, #header-login-btn, #header-logout-btn { width: 100%; margin-top: 4px; justify-content: center; }
    main { padding-top: 90px; }main > .container { width: min(100% - 24px, 680px); }
    .hero-section { display: flex !important; min-height: 0 !important; flex-direction: column; gap: 56px; padding: 60px 0 72px !important; }.hero-copy { width: 100%; }.hero-product { width: min(540px,100%); }.product-window { transform: none; }.hero-title { font-size: clamp(44px,12vw,69px) !important; }
    .steps-container { grid-template-columns: 1fr !important; }.streamer-benefits-container { grid-template-columns: repeat(2,1fr) !important; }
    .panel-header { min-height: 185px; padding: 30px !important; }.panel-header::after { display: none; }.ready-balance-section { margin-top: 25px; padding: 25px 0 0 !important; border-top: 1px solid var(--s-stroke); border-left: 0 !important; }
}

@media (max-width: 560px) {
    main > .container { width: calc(100% - 20px); }.hero-section { padding-top: 42px !important; }.hero-title { font-size: clamp(42px,12vw,58px) !important; }.hero-subtitle { font-size: 16px !important; }.hero-buttons { align-items: stretch; flex-direction: column; }.btn-primary-hero, .btn-secondary-hero { width: 100%; min-height: 58px; padding-inline: 16px !important; font-size: 15px !important; }.hero-benefits { gap: 11px 14px !important; }.hero-benefit-item { font-size: 13px !important; }
    .product-window-bar { grid-template-columns: 1fr 1fr; }.product-window-bar > span:nth-child(2) { display: none; }.product-profile { grid-template-columns: 38px 1fr; }.product-status { display: none; }.product-balance { min-height: 100px; }.trend-pill { display: none; }.platform-row { align-items: flex-start; flex-direction: column; }
    #landing > section:not(.hero-section) { padding: 45px 17px !important; border-radius: 20px !important; }#landing .section-title, #landing .brands-intro h2, #landing .cta-title { font-size: clamp(32px,9.5vw,48px) !important; }.streamer-benefits-container, .brands-benefits, .features-grid { grid-template-columns: 1fr !important; }.step-item, .streamer-benefit-item, .benefit-card, .feature-card { min-height: 220px; padding: 24px !important; }
    .panel-header { padding: 24px !important; border-radius: 20px !important; }.premium-card { padding: 20px !important; }.panel-section { padding: 0 !important; }.panel-section-header { padding: 0 17px !important; }.panel-section-content { padding: 0 17px 17px !important; }
    .cookie-consent-banner { right: 10px !important; bottom: 10px !important; width: calc(100% - 20px) !important; }.cookie-consent-icon { display: none; }.cookie-consent-buttons { justify-content: stretch; }.cookie-btn { flex: 1; }
}

@media (max-width: 420px) {
    .hero-title { font-size: 42px !important; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Streamovo Signal: editorial public landing */
body:not(.streamer-panel-mode) {
    background:
        radial-gradient(ellipse 74% 48% at 78% 2%, rgba(132, 111, 255, .28), transparent 61%),
        radial-gradient(ellipse 52% 38% at 5% 31%, rgba(63, 211, 158, .1), transparent 68%),
        linear-gradient(180deg, #171d29 0%, #111722 52%, #0e141e 100%),
        var(--s-bg) !important;
}

body::before {
    opacity: .22;
    background-image:
        linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(to bottom, #000 0%, rgba(0,0,0,.72) 42%, transparent 88%);
}

header.navbar {
    width: min(1200px, calc(100% - 32px));
    min-height: 70px;
    border-color: rgba(255,255,255,.11) !important;
    border-radius: 16px;
    background: rgba(12, 15, 22, .9) !important;
    box-shadow: 0 18px 60px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.055) !important;
}

header.navbar .container-fluid { min-height: 68px; padding-inline: 20px !important; }
.navbar-brand { font-size: 20px !important; letter-spacing: -.055em; }
.navbar-brand .brand-mark { background: linear-gradient(145deg, #8979ff, #6555df); box-shadow: 0 10px 24px rgba(101,85,223,.28), inset 0 1px 0 rgba(255,255,255,.22); }
.navbar .nav-link { color: #bec4cf !important; font-size: 15px; }
.navbar .nav-link:hover { background: rgba(255,255,255,.055); color: #fff !important; }
.btn.btn-premium, .btn-premium, #header-login-btn { background: #f3f2ff !important; border-color: #f3f2ff !important; color: #12101e !important; box-shadow: 0 10px 30px rgba(0,0,0,.22) !important; }
#header-login-btn {
    position: relative;
    display: inline-grid !important;
    width: 142px;
    min-width: 142px;
    height: 46px;
    min-height: 46px;
    place-items: center;
    padding: 0 18px !important;
    border-radius: 12px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-align: center;
}
#header-login-btn .header-login-label { display: block; line-height: 1; }

main { padding-top: 96px; }
main > .container { width: min(1240px, calc(100% - 40px)); }
#landing { padding-bottom: 0; overflow-x: clip; }

.hero-section {
    position: relative;
    grid-template-columns: minmax(0, .88fr) minmax(500px, 1.12fr);
    min-height: 790px !important;
    gap: clamp(54px, 6vw, 86px);
    padding: 76px 6px 112px !important;
}

.hero-section::before {
    content: "";
    position: absolute;
    top: 12%;
    right: -12%;
    width: min(720px, 62vw);
    aspect-ratio: 1;
    z-index: -1;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(119,99,255,.21), rgba(84,70,210,.07) 42%, transparent 70%);
    filter: blur(14px);
    pointer-events: none;
}

.hero-copy { position: relative; z-index: 2; }
.hero-eyebrow {
    padding: 8px 12px;
    border-color: rgba(103,224,169,.22);
    background: rgba(70,205,145,.07);
    color: #c6d3cd;
    font-size: 12px;
    letter-spacing: .01em;
}
.hero-eyebrow span { width: 7px; height: 7px; box-shadow: 0 0 0 5px rgba(93,224,165,.1), 0 0 18px rgba(93,224,165,.46); }
.hero-title {
    width: fit-content;
    max-width: 100% !important;
    margin: 30px 0 25px !important;
    font-size: clamp(54px, 5.15vw, 79px) !important;
    font-weight: 760 !important;
    line-height: .96 !important;
    letter-spacing: -.075em !important;
    text-wrap: balance;
}
.hero-title .hero-title-line {
    display: block;
    white-space: nowrap;
}
.hero-title .hero-title-line:first-child { padding-left: .02em; font-size: 1.04em; }
.hero-title .hero-title-accent {
    font-size: .88em;
    letter-spacing: -.065em;
    color: #b8adff !important;
    background: none !important;
    -webkit-background-clip: initial !important;
    background-clip: initial !important;
    -webkit-text-fill-color: #b8adff !important;
}
.hero-subtitle { max-width: 580px !important; color: #c1c7d2 !important; font-size: clamp(17px,1.3vw,19px) !important; line-height: 1.65 !important; }
.hero-buttons { gap: 12px !important; margin-top: 34px !important; }
.btn-primary-hero, .btn-secondary-hero { min-height: 58px; padding-inline: 25px !important; border-radius: 12px !important; font-size: 16px !important; }
.btn-primary-hero { border-color: #8879ff !important; background: linear-gradient(135deg, #8d7cff, #6f5bea) !important; box-shadow: 0 16px 42px rgba(101,80,227,.28), inset 0 1px 0 rgba(255,255,255,.24) !important; }
.btn-secondary-hero { border-color: rgba(255,255,255,.15) !important; background: rgba(255,255,255,.035) !important; }
.hero-benefits { gap: 9px 18px !important; margin-top: 27px !important; }
.hero-benefit-item { color: #b7beca !important; font-size: 15px !important; }
.hero-benefit-item i { width: 21px; height: 21px; font-size: 12px !important; }

.hero-product { isolation: isolate; }
.hero-product::before { inset: 8% -9% -9% 2%; background: rgba(107,86,244,.2); filter: blur(76px); }
.hero-product::after {
    content: "";
    position: absolute;
    inset: -1px;
    z-index: -1;
    border-radius: 28px;
    background: linear-gradient(145deg, rgba(168,154,255,.5), transparent 28%, transparent 70%, rgba(84,229,166,.18));
    filter: blur(1px);
}
.product-window {
    border-color: rgba(255,255,255,.18);
    border-radius: 24px;
    background: #171d29;
    box-shadow: 0 38px 110px rgba(0,0,0,.52), inset 0 1px 0 rgba(255,255,255,.07);
    transform: perspective(1400px) rotateY(-4deg) rotateX(1deg);
}
.product-window-bar { min-height: 52px; background: rgba(255,255,255,.035); }
.product-profile { padding: 20px; background: #1a2130; }
.product-balance { min-height: 126px; background: linear-gradient(110deg, rgba(126,104,250,.34), rgba(25,31,45,.92) 72%); }
.product-flow { margin: 16px; background: #101620; }
.product-flow > div { min-height: 72px; }
.platform-row { border-top: 1px solid rgba(255,255,255,.055); }

#landing > section:not(.hero-section) {
    margin: 0 !important;
    padding: clamp(88px, 10vw, 138px) clamp(6px, 3vw, 34px) !important;
    border: 0 !important;
    border-top: 1px solid rgba(255,255,255,.085) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#landing .section-title, #landing .brands-intro h2, #landing .cta-title {
    max-width: 900px;
    margin: 0 auto 18px !important;
    font-size: clamp(39px, 5vw, 67px) !important;
    font-weight: 740 !important;
    line-height: 1 !important;
    letter-spacing: -.065em !important;
    text-wrap: balance;
}
#landing .section-title::before, #landing .brands-intro h2::before {
    display: block;
    margin-bottom: 20px;
    color: #8f82ff;
    font-size: 11px;
    font-weight: 720;
    letter-spacing: .16em;
    line-height: 1;
}
.how-it-works-section .section-title::before { content: "01 / START"; }
.streamer-benefits-section .section-title::before { content: "02 / TWÓRCY"; }
.brands-intro h2::before { content: "03 / MARKI"; }
.features-section .section-title::before { content: "04 / KONTROLA"; }
#landing .section-subtitle { margin-bottom: 56px !important; color: #b9c0cc !important; font-size: 17px !important; line-height: 1.72; }

.steps-container { grid-template-columns: repeat(3,minmax(0,1fr)) !important; grid-auto-rows: 1fr; align-items: stretch; gap: 0 !important; margin-top: 70px !important; border-top: 1px solid rgba(255,255,255,.09); border-bottom: 1px solid rgba(255,255,255,.09); }
.step-item {
    display: flex;
    width: 100%;
    height: 100%;
    flex-direction: column;
    align-items: flex-start;
    min-height: 290px;
    padding: 40px 36px !important;
    border: 0 !important;
    border-right: 1px solid rgba(255,255,255,.09) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
.step-item:last-child { border-right: 0 !important; }
.step-item:hover { background: rgba(255,255,255,.025) !important; transform: none !important; }
.step-icon { width: 48px !important; height: 48px !important; margin-bottom: 48px !important; border-radius: 12px !important; }
.step-title { display: flex; min-height: 29px; align-items: flex-end; font-size: 22px !important; }
.step-description { width: 100%; max-width: 330px; color: #b9c0cc !important; font-size: 16px !important; line-height: 1.7 !important; }
.step-item::after { top: 42px; right: 34px; color: #656d7c; }

#landing .streamer-benefits-section {
    margin: 24px 0 !important;
    padding-inline: clamp(24px,5vw,70px) !important;
    border: 1px solid rgba(255,255,255,.1) !important;
    border-radius: 28px !important;
    background:
        radial-gradient(circle at 92% 8%, rgba(120,98,255,.2), transparent 30%),
        linear-gradient(145deg, #1c2332, #151b27) !important;
    box-shadow: 0 30px 90px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.045) !important;
}
.streamer-benefits-container { grid-template-columns: repeat(3,minmax(0,1fr)) !important; grid-auto-rows: 1fr; align-items: stretch; gap: 12px !important; margin-top: 58px !important; }
.streamer-benefit-item { display: flex; width: 100%; max-width: none; min-height: 260px; height: 100%; flex-direction: column; align-items: flex-start; padding: 28px !important; background: rgba(255,255,255,.06) !important; }
.streamer-benefit-item:nth-child(1), .streamer-benefit-item:nth-child(6) { grid-column: auto; min-height: 260px; }
.streamer-benefit-item:nth-child(1) { background: linear-gradient(135deg, rgba(137,117,255,.24), rgba(255,255,255,.055)) !important; }
.streamer-benefit-icon, .benefit-icon, .feature-icon-circle { width: 48px !important; height: 48px !important; margin-bottom: 38px !important; border-radius: 12px !important; }
.streamer-benefit-title, .benefit-title, .feature-title { display: flex; min-height: 52px; align-items: flex-end; font-size: 20px !important; line-height: 1.3 !important; }
.streamer-benefit-description, .benefit-text, .feature-text { color: #b8bfcb !important; font-size: 16px !important; line-height: 1.68 !important; }

#landing .brands-section {
    position: relative;
    margin: 24px 0 !important;
    padding-inline: clamp(24px,5vw,70px) !important;
    overflow: hidden;
    border: 1px solid rgba(157,144,255,.24) !important;
    border-radius: 28px !important;
    background: linear-gradient(135deg, #30266b 0%, #202449 50%, #171f2d 100%) !important;
    box-shadow: 0 30px 90px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.055) !important;
}
#landing .brands-section::after { display: none; content: none; }
.brands-intro { position: relative; z-index: 1; max-width: 850px; }
.brands-intro p { color: #c5cad7 !important; font-size: 17px !important; }
.brands-intro p:nth-of-type(1) { color: #fff !important; font-size: 22px !important; }
.brands-benefits { position: relative; z-index: 1; grid-template-columns: repeat(2,minmax(0,1fr)) !important; grid-auto-rows: 1fr; align-items: stretch; gap: 12px !important; margin-top: 58px !important; }
.benefit-card { display: flex; min-height: 260px; height: 100%; flex-direction: column; align-items: flex-start; padding: 30px !important; background: rgba(13,17,27,.48) !important; text-align: left !important; }
.benefit-card:hover { background: rgba(13,17,27,.64) !important; }
.brands-cta { position: relative; z-index: 1; margin-top: 28px !important; }
.brands-cta .btn-premium { min-height: 56px; background: #f2f0ff !important; color: #18122c !important; font-size: 16px !important; }

.features-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; grid-auto-rows: 1fr; align-items: stretch; gap: 12px !important; margin-top: 60px !important; }
.feature-card { display: flex; min-height: 270px; height: 100%; flex-direction: column; align-items: flex-start; padding: 30px !important; background: #171d29 !important; text-align: left !important; }
.feature-card:first-child { grid-column: auto; background: linear-gradient(135deg, rgba(130,109,250,.27), #191f2c 65%) !important; }
.feature-card:last-child { grid-column: auto; min-height: 270px; }

#landing .faq-section { display: grid; grid-template-columns: minmax(240px,.7fr) minmax(460px,1.3fr); grid-template-rows: auto 1fr; align-items: start; gap: 0 72px; text-align: left; }
.faq-badge { justify-self: start; margin: 0 0 24px !important; border-color: rgba(144,128,255,.28) !important; background: rgba(129,108,255,.1) !important; color: #b4aaff !important; }
.faq-section .section-title { grid-column: 1; margin: 0 !important; text-align: left !important; }
.faq-section .section-title::before { display: none !important; }
.faq-container { grid-column: 2; grid-row: 1 / span 2; width: 100%; margin: 0 !important; }
.faq-item { margin: 0 0 9px !important; border-color: rgba(255,255,255,.14) !important; border-radius: 12px !important; background: #171d29 !important; }
.faq-question { min-height: 74px !important; padding: 21px 22px !important; font-size: 17px !important; }
.faq-answer { padding: 0 22px 22px !important; color: #bbc2ce !important; font-size: 16px !important; line-height: 1.72 !important; }

#landing .cta-section {
    margin-top: 24px !important;
    padding: clamp(100px,12vw,160px) 24px !important;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.1) !important;
    border-radius: 28px 28px 0 0 !important;
    background:
        radial-gradient(circle at 50% 110%, rgba(118,91,244,.72), transparent 42%),
        linear-gradient(145deg, #1d2434, #151b27) !important;
}
#landing .cta-title { font-size: clamp(48px,7vw,86px) !important; }
.cta-text { color: #c0c6d1 !important; font-size: 18px !important; }
.cta-section .btn-premium { min-height: 58px; padding-inline: 28px !important; background: #f3f2ff !important; color: #171225 !important; font-size: 16px !important; }

@keyframes streamovoRise {
    from { opacity: 0; transform: translateY(18px); }
    to { opacity: 1; transform: none; }
}
.hero-copy { animation: streamovoRise .72s cubic-bezier(.22,1,.36,1) both; }
.hero-product { animation: streamovoRise .8s .09s cubic-bezier(.22,1,.36,1) both; }

.reveal-enabled .reveal-item {
    opacity: 0;
    translate: 0 28px;
    transition:
        opacity .72s cubic-bezier(.22,1,.36,1) var(--reveal-delay, 0ms),
        translate .72s cubic-bezier(.22,1,.36,1) var(--reveal-delay, 0ms),
        border-color .2s ease,
        background-color .2s ease,
        box-shadow .2s ease;
}
.reveal-enabled .reveal-item.is-visible { opacity: 1; translate: 0 0; }

footer { overflow: hidden; color: #abb3c0 !important; font-size: 14px !important; }
footer .footer-section { text-align: left; }
footer .footer-section h4 { margin-bottom: 16px !important; color: #f0f2f6 !important; font-size: 16px !important; }
footer .footer-section p, footer .footer-section a { color: #adb5c2 !important; font-size: 14px !important; line-height: 1.7 !important; }
footer .footer-bottom, footer .footer-bottom p { color: #929baa !important; font-size: 13px !important; }

@media (max-width: 1100px) {
    .hero-section { grid-template-columns: minmax(0,1fr) minmax(390px,.9fr); gap: 42px; }
    .hero-title { font-size: clamp(48px,5.25vw,65px) !important; }
    .streamer-benefits-container { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
    .streamer-benefit-item, .streamer-benefit-item:nth-child(1), .streamer-benefit-item:nth-child(6) { grid-column: auto; min-height: 260px; }
}

@media (max-width: 850px) {
    header.navbar { width: calc(100% - 18px); }
    main { padding-top: 86px; }
    .hero-section { gap: 64px; padding: 62px 2px 90px !important; }
    .hero-section::before { top: 38%; right: -24%; width: 96vw; }
    .hero-title { font-size: clamp(46px,9.5vw,64px) !important; }
    #landing > section:not(.hero-section) { padding-block: 86px !important; }
    .steps-container { grid-template-columns: 1fr !important; }
    .step-item { min-height: 230px; border-right: 0 !important; border-bottom: 1px solid rgba(255,255,255,.09) !important; }
    .step-item:last-child { border-bottom: 0 !important; }
    #landing .faq-section { display: block; }
    .faq-section .section-title { margin-bottom: 42px !important; }
}

@media (max-width: 560px) {
    main > .container { width: calc(100% - 20px); }
    .hero-section { padding-top: 50px !important; }
    .hero-eyebrow { font-size: 11px; }
    .hero-title { margin-top: 24px !important; font-size: clamp(43px,12vw,53px) !important; }
    .hero-subtitle { font-size: 16px !important; }
    .hero-buttons { display: grid !important; grid-template-columns: 1fr; }
    .btn-primary-hero, .btn-secondary-hero { min-height: 56px; font-size: 14px !important; }
    .hero-benefits { display: grid !important; grid-template-columns: 1fr 1fr; }
    .hero-benefit-item { font-size: 14px !important; }
    .product-window { transform: none; }
    #landing > section:not(.hero-section) { padding: 74px 18px !important; }
    #landing .streamer-benefits-section, #landing .brands-section { border-radius: 22px !important; }
    #landing .section-title, #landing .brands-intro h2, #landing .cta-title { font-size: clamp(36px,10.5vw,46px) !important; }
    .steps-container { margin-top: 48px !important; }
    .step-item { min-height: 220px; padding: 30px 22px !important; }
    .step-icon { margin-bottom: 36px !important; }
    .streamer-benefits-container, .brands-benefits, .features-grid { grid-template-columns: 1fr !important; }
    .streamer-benefit-item, .streamer-benefit-item:nth-child(1), .streamer-benefit-item:nth-child(6), .benefit-card, .feature-card, .feature-card:first-child, .feature-card:last-child { grid-column: auto; min-height: 230px; }
    .streamer-benefit-title, .benefit-title, .feature-title { min-height: 0; }
    .streamer-benefit-icon, .benefit-icon, .feature-icon-circle { margin-bottom: 32px !important; }
    .faq-section .section-title { margin-bottom: 36px !important; }
    #landing .cta-section { padding-block: 92px !important; border-radius: 22px 22px 0 0 !important; }
    .cookie-consent-container { padding: 15px !important; }
    .cookie-consent-buttons { display: grid !important; grid-template-columns: 1fr 1fr; }
    .cookie-btn { width: 100%; max-width: none; min-height: 40px !important; }
    .cookie-btn-settings { grid-column: 1 / -1; }
    .reveal-enabled .reveal-item { translate: 0 18px; }
    .reveal-enabled .reveal-item.is-visible { translate: 0 0; }
}

@media (prefers-reduced-motion: reduce) {
    .reveal-enabled .reveal-item { opacity: 1 !important; translate: none !important; filter: none !important; transition: none !important; }
}

/* Hero choice block */
.choice-window {
    position: relative;
    padding: 0;
    overflow: hidden;
    border-color: rgba(255,255,255,.16);
    background:
        radial-gradient(circle at 100% 0, rgba(113,91,244,.2), transparent 38%),
        linear-gradient(145deg, #1b2230, #131925 72%);
}
.choice-window::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, #000, transparent 72%);
}
.choice-window-top, .choice-footer {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 18px 21px;
    border-bottom: 1px solid rgba(255,255,255,.075);
}
.choice-kicker, .choice-report-ready {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #b7becb;
    font-size: 12px;
    font-weight: 650;
}
.choice-kicker i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--s-green);
    box-shadow: 0 0 0 5px rgba(93,224,165,.09), 0 0 18px rgba(93,224,165,.38);
}
.choice-report-ready { color: #9589f8; font-size: 11px; }
.choice-intro { position: relative; padding: 34px 29px 25px; }
.choice-intro h2 {
    max-width: 470px;
    margin: 0;
    color: #f7f8fb;
    font-size: clamp(30px,3.2vw,44px);
    font-weight: 730;
    letter-spacing: -.055em;
    line-height: 1.02;
}
.choice-intro p { max-width: 460px; margin: 16px 0 0; color: #aeb6c4; font-size: 15px; line-height: 1.6; }
.choice-grid { position: relative; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; padding: 0 20px 20px; }
.choice-card {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 260px;
    flex-direction: column;
    align-items: flex-start;
    padding: 20px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 17px;
    background: rgba(255,255,255,.055);
    color: #f2f4f8;
    text-align: left;
    cursor: pointer;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
    transition: transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}
.choice-card::after {
    content: "";
    position: absolute;
    right: -58px;
    bottom: -72px;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    background: rgba(129,105,255,.12);
    filter: blur(8px);
    pointer-events: none;
}
.choice-card-brand::after { background: rgba(74,211,151,.1); }
.choice-card:hover, .choice-card:focus-visible {
    z-index: 1;
    border-color: rgba(158,145,255,.48);
    background: rgba(255,255,255,.085);
    box-shadow: 0 18px 50px rgba(0,0,0,.2), inset 0 1px 0 rgba(255,255,255,.06);
    transform: translateY(-3px);
    outline: none;
}
.choice-card-brand:hover, .choice-card-brand:focus-visible { border-color: rgba(92,222,165,.35); }
.choice-card-top { display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 12px; }
.choice-card-label {
    padding: 7px 9px;
    border: 1px solid rgba(157,143,255,.2);
    border-radius: 999px;
    background: rgba(126,105,247,.11);
    color: #c8c1ff;
    font-size: 10px;
    font-weight: 720;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.choice-card-brand .choice-card-label { border-color: rgba(92,222,165,.18); background: rgba(72,202,145,.08); color: #9be7c3; }
.choice-card-icon { display: grid; width: 39px; height: 39px; place-items: center; border-radius: 12px; background: rgba(255,255,255,.065); color: #aaa0ff; font-size: 17px; }
.choice-card-brand .choice-card-icon { color: #70dbaa; }
.choice-card > strong { position: relative; z-index: 1; margin-top: 32px; font-size: 20px; font-weight: 680; letter-spacing: -.03em; line-height: 1.2; }
.choice-card > small { position: relative; z-index: 1; margin-top: 11px; color: #aeb6c3; font-size: 13px; line-height: 1.58; }
.choice-card-action { position: relative; z-index: 1; display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 24px; color: #dedaff; font-size: 12px; font-weight: 670; }
.choice-card-brand .choice-card-action { color: #a9e8c9; }
.choice-card-action i { transition: transform .2s ease; }
.choice-card:hover .choice-card-action i { transform: translateX(4px); }
.choice-footer { flex-wrap: wrap; justify-content: flex-start; border-top: 1px solid rgba(255,255,255,.075); border-bottom: 0; color: #969fad; }
.choice-footer span { display: inline-flex; align-items: center; gap: 7px; font-size: 11px; }
.choice-footer i { color: #8e82ef; }

/* Login chooser */
.login-modal {
    padding: 24px !important;
    overflow-y: auto;
    background:
        radial-gradient(circle at 72% 10%, rgba(116,94,245,.17), transparent 34%),
        rgba(6,8,13,.82) !important;
    backdrop-filter: blur(18px) saturate(115%);
}
.login-modal.active ~ .cookie-consent-banner { visibility: hidden !important; opacity: 0 !important; pointer-events: none !important; }
.login-modal-content {
    width: min(680px, calc(100% - 20px)) !important;
    max-width: 680px !important;
    max-height: calc(100vh - 48px);
    padding: 34px !important;
    overflow-y: auto !important;
    border-color: rgba(255,255,255,.15) !important;
    border-radius: 25px !important;
    background:
        radial-gradient(circle at 100% 0, rgba(126,103,250,.17), transparent 34%),
        linear-gradient(145deg, #1d2431, #151b26 72%) !important;
    box-shadow: 0 40px 120px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.06) !important;
    text-align: left !important;
}
.login-modal-content::before {
    content: "";
    position: absolute;
    top: 0;
    right: 72px;
    left: 34px;
    height: 1px;
    background: linear-gradient(90deg, rgba(155,142,255,.8), transparent);
}
.login-modal-close {
    top: 20px !important;
    right: 20px !important;
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    padding: 0;
    border-color: rgba(255,255,255,.11) !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.055) !important;
    color: #c8ced8 !important;
    font-size: 25px !important;
    line-height: 1;
}
.login-modal-close:hover { border-color: rgba(255,255,255,.22) !important; background: rgba(255,255,255,.09) !important; color: #fff !important; }
.login-modal-heading { padding-right: 56px; }
.login-modal-kicker {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #9fa8b6;
    font-size: 11px;
    font-weight: 680;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.login-modal-kicker i { width: 7px; height: 7px; border-radius: 50%; background: var(--s-green); box-shadow: 0 0 0 5px rgba(93,224,165,.09); }
.login-modal-content .login-modal-heading h2 { margin: 17px 0 10px !important; color: #f6f7fa !important; font-size: clamp(31px,4vw,44px) !important; font-weight: 730; letter-spacing: -.055em; line-height: 1.03; -webkit-text-fill-color: currentColor; background: none; }
.login-modal-content .login-modal-heading p { max-width: 570px; margin: 0 !important; color: #adb5c2 !important; font-size: 15px !important; line-height: 1.65; }
.login-modal-content .platform-buttons { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px !important; margin: 28px 0 20px !important; }
.login-modal-content .platform-btn {
    position: relative;
    display: flex !important;
    min-width: 0;
    min-height: 156px !important;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start !important;
    gap: 0 !important;
    padding: 18px !important;
    border-color: rgba(255,255,255,.11) !important;
    border-radius: 16px !important;
    background: rgba(255,255,255,.05) !important;
    text-align: left;
    transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.login-modal-content .platform-btn:hover, .login-modal-content .platform-btn:focus-visible { border-color: rgba(151,137,255,.48) !important; background: rgba(255,255,255,.085) !important; box-shadow: 0 16px 38px rgba(0,0,0,.2) !important; transform: translateY(-3px); outline: none; }
.platform-login-icon { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 12px; background: rgba(255,255,255,.07); font-size: 19px; }
.platform-login-copy { display: block; margin-top: 23px; }
.platform-login-copy strong, .platform-login-copy small { display: block; }
.platform-login-copy strong { color: #f0f2f6; font-size: 16px; font-weight: 680; }
.platform-login-copy small { margin-top: 4px; color: #929cab; font-size: 11px; line-height: 1.35; }
.platform-login-arrow { position: absolute; right: 17px; bottom: 18px; color: #8f98a7 !important; font-size: 13px; }
.login-modal-content .platform-btn.twitch .platform-login-icon i { color: #b5a7ff; }
.login-modal-content .platform-btn.youtube .platform-login-icon i { color: #ff8e9a; }
.login-modal-content .platform-btn.kick .platform-login-icon i { color: #6ee4a0; }
.login-modal-content .terms-acceptance {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin: 0 !important;
    padding: 16px !important;
    border-color: rgba(255,255,255,.09) !important;
    border-radius: 15px !important;
    background: rgba(6,9,14,.28) !important;
}
.terms-acceptance-title { grid-column: 1 / -1; margin: 0 0 4px !important; color: #9da6b3 !important; font-size: 11px !important; font-weight: 670; }
.login-modal-content .terms-acceptance .form-check { min-height: 74px; margin: 0 !important; padding: 13px 13px 13px 41px !important; border: 1px solid rgba(255,255,255,.075); border-radius: 11px; background: rgba(255,255,255,.035); }
.login-modal-content .terms-acceptance .form-check-input { left: 13px !important; top: 16px !important; width: 17px !important; height: 17px !important; border: 1px solid rgba(176,164,255,.55) !important; }
.login-modal-content .terms-acceptance label { padding: 0 !important; color: #adb5c2 !important; font-size: 11px !important; line-height: 1.55 !important; }
.login-modal-content .terms-acceptance a { color: #b8afff !important; font-weight: 650; }
.login-modal-content #terms-error { grid-column: 1 / -1; margin: 4px 0 0 !important; padding: 10px 12px; border: 1px solid rgba(255,113,131,.2); border-left: 3px solid #ff7183; border-radius: 9px; background: rgba(255,93,113,.07); color: #ff9ba8; font-size: 11px; }

/* Obowiązkowe dokończenie rejestracji streamera */
body.registration-email-locked { overflow: hidden !important; }
.registration-email-gate[hidden] { display: none !important; }
.registration-email-gate {
    position: fixed;
    inset: 0;
    z-index: 20000;
    display: grid;
    min-height: 100dvh;
    place-items: center;
    padding: 24px;
    overflow-y: auto;
    background:
        radial-gradient(circle at 68% 12%, rgba(127,105,255,.22), transparent 34%),
        radial-gradient(circle at 20% 88%, rgba(65,203,145,.09), transparent 31%),
        rgba(5,7,11,.9);
    backdrop-filter: blur(22px) saturate(118%);
}
.registration-email-card {
    position: relative;
    width: min(570px, 100%);
    padding: 42px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 26px;
    background:
        radial-gradient(circle at 100% 0, rgba(132,111,255,.17), transparent 34%),
        linear-gradient(145deg, #202734, #151b25 75%);
    box-shadow: 0 42px 130px rgba(0,0,0,.6), inset 0 1px 0 rgba(255,255,255,.06);
    color: #f5f6f9;
}
.registration-email-card::before {
    content: "";
    position: absolute;
    top: 0;
    right: 70px;
    left: 42px;
    height: 1px;
    background: linear-gradient(90deg, rgba(160,146,255,.9), transparent);
}
.registration-email-icon {
    display: grid;
    width: 54px;
    height: 54px;
    margin-bottom: 25px;
    place-items: center;
    border: 1px solid rgba(170,157,255,.24);
    border-radius: 16px;
    background: rgba(139,123,255,.12);
    color: #beb6ff;
    font-size: 23px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}
.registration-email-kicker {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #a3acb9;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
}
.registration-email-kicker i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--s-green);
    box-shadow: 0 0 0 5px rgba(93,224,165,.09);
}
.registration-email-card h2 {
    margin: 15px 0 13px !important;
    color: #f7f8fb !important;
    font-size: clamp(34px,5vw,48px) !important;
    font-weight: 735 !important;
    letter-spacing: -.055em;
    line-height: 1.02;
}
.registration-email-card > p {
    margin: 0;
    color: #adb5c2;
    font-size: 15px;
    line-height: 1.68;
}
#registration-email-form { margin-top: 29px; }
#registration-email-form > label {
    display: block;
    margin-bottom: 9px;
    color: #dce0e7;
    font-size: 12px;
    font-weight: 650;
}
.registration-email-field {
    position: relative;
    display: flex;
    align-items: center;
}
.registration-email-field > i {
    position: absolute;
    left: 16px;
    z-index: 1;
    color: #9c93ec;
    font-size: 16px;
    pointer-events: none;
}
.registration-email-field input {
    width: 100%;
    height: 58px;
    padding: 0 17px 0 47px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 14px;
    outline: none;
    background: rgba(5,8,13,.42);
    color: #f5f6fa;
    font-size: 15px;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.registration-email-field input::placeholder { color: #737d8c; }
.registration-email-field input:focus {
    border-color: rgba(158,143,255,.62);
    background: rgba(8,11,18,.58);
    box-shadow: 0 0 0 4px rgba(137,119,255,.1);
}
.registration-email-field input[aria-invalid="true"] { border-color: rgba(255,112,130,.72); box-shadow: 0 0 0 4px rgba(255,96,117,.09); }
.registration-email-error {
    min-height: 21px;
    margin: 8px 0 5px !important;
    color: #ff9aa7 !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
}
.registration-email-submit {
    display: flex;
    width: 100%;
    min-height: 56px;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 0 19px;
    border: 1px solid rgba(187,178,255,.3);
    border-radius: 14px;
    background: linear-gradient(135deg, #7969f2, #6657dc);
    box-shadow: 0 15px 38px rgba(78,62,200,.27), inset 0 1px 0 rgba(255,255,255,.18);
    color: #fff;
    font-size: 14px;
    font-weight: 690;
    text-align: left;
    transition: transform .2s ease, filter .2s ease, box-shadow .2s ease;
}
.registration-email-submit:hover:not(:disabled), .registration-email-submit:focus-visible:not(:disabled) {
    transform: translateY(-2px);
    filter: brightness(1.07);
    box-shadow: 0 20px 44px rgba(78,62,200,.34), inset 0 1px 0 rgba(255,255,255,.2);
}
.registration-email-submit:disabled { cursor: wait; opacity: .68; }
.registration-email-privacy {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-top: 17px !important;
    color: #8f99a8 !important;
    font-size: 11px !important;
    line-height: 1.55 !important;
}
.registration-email-privacy i { flex: 0 0 auto; margin-top: 2px; color: #6fd8a5; }

@media (max-width: 640px) {
    .registration-email-gate { align-items: start; padding: 10px; }
    .registration-email-card { margin: auto 0; padding: 29px 20px 23px; border-radius: 21px; }
    .registration-email-card::before { right: 40px; left: 20px; }
    .registration-email-icon { width: 48px; height: 48px; margin-bottom: 21px; border-radius: 14px; font-size: 20px; }
    .registration-email-card h2 { font-size: 35px !important; }
    .registration-email-card > p { font-size: 14px; }
    #registration-email-form { margin-top: 23px; }
    .registration-email-field input { height: 56px; font-size: 16px; }
    .registration-email-submit { min-height: 58px; }
}

@media (max-width: 640px) {
    .choice-intro { padding: 28px 21px 22px; }
    .choice-intro h2 { font-size: 33px; }
    .choice-grid { grid-template-columns: 1fr; padding-inline: 14px; }
    .choice-card { min-height: 225px; }
    .choice-window-top, .choice-footer { padding-inline: 16px; }
    .choice-report-ready { display: none; }
    .choice-footer { gap: 11px 16px; }
    .login-modal { align-items: flex-start; padding: 10px !important; }
    .login-modal-content { width: 100% !important; max-height: none; margin: auto 0; padding: 25px 18px 18px !important; border-radius: 20px !important; }
    .login-modal-close { top: 14px !important; right: 14px !important; width: 38px; height: 38px; }
    .login-modal-heading { padding-right: 43px; }
    .login-modal-content .login-modal-heading h2 { font-size: 32px !important; }
    .login-modal-content .login-modal-heading p { font-size: 14px !important; }
    .login-modal-content .platform-buttons { grid-template-columns: 1fr; gap: 8px !important; margin-top: 23px !important; }
    .login-modal-content .platform-btn { min-height: 82px !important; flex-direction: row; align-items: center; padding: 14px !important; }
    .platform-login-copy { margin: 0 0 0 14px; }
    .platform-login-arrow { top: 50%; right: 17px; bottom: auto; transform: translateY(-50%); }
    .login-modal-content .terms-acceptance { grid-template-columns: 1fr; padding: 12px !important; }
    .terms-acceptance-title, .login-modal-content #terms-error { grid-column: 1; }
    .login-modal-content .terms-acceptance .form-check { min-height: 0; }
}

/* Final layout polish: brand, hero, login and streamer overview */
.navbar-brand {
    gap: 9px !important;
    font-size: 1.12rem !important;
    font-weight: 750 !important;
    letter-spacing: -.035em !important;
}
.navbar-brand .brand-mark {
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    padding: 7px;
    overflow: hidden;
    border: 1px solid rgba(190,181,255,.52) !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #8d7cff, #6f5bea) !important;
    box-shadow: 0 12px 28px rgba(101,80,227,.3), inset 0 1px 0 rgba(255,255,255,.28) !important;
}
.navbar-brand .brand-mark::after { display: none !important; content: none !important; }
.navbar-brand .brand-mark img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: brightness(0) invert(1) drop-shadow(0 3px 7px rgba(30,20,80,.2));
}
#header-login-btn {
    width: auto;
    min-width: 142px;
    display: inline-flex !important;
    white-space: nowrap;
}
#header-logout-btn { align-items: center; justify-content: center; }

/* Header scale and controls aligned with the stronger InfluPoint navigation. */
header.navbar {
    width: min(1280px, calc(100% - 32px)) !important;
    min-height: 78px !important;
    border-radius: 20px !important;
    background: rgba(23,30,47,.98) !important;
    box-shadow: 0 14px 38px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.065) !important;
    backdrop-filter: none !important;
}
header.navbar .container-fluid { min-height: 76px !important; padding-inline: 22px !important; }
.navbar-brand { gap: 11px !important; font-size: 21px !important; }
.navbar-brand .brand-mark { width: 42px !important; height: 42px !important; }
.navbar-nav { gap: 7px !important; }
.navbar .nav-link {
    min-height: 48px !important;
    display: inline-flex;
    align-items: center;
    padding: 0 15px !important;
    border-radius: 12px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
}
.navbar .nav-link i { margin-right: 5px; font-size: 14px; }
.header-actions { display: flex; align-items: center; gap: 10px; }
#header-login-btn,
#header-logout-btn {
    min-height: 50px !important;
    height: 50px !important;
    border-radius: 13px !important;
    padding: 0 21px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
}
#header-login-btn {
    min-width: 162px !important;
    border: 1px solid rgba(199,190,255,.38) !important;
    background: linear-gradient(135deg, #8d7cff, #6f5bea) !important;
    box-shadow: 0 11px 28px rgba(101,80,227,.28), inset 0 1px 0 rgba(255,255,255,.24) !important;
    color: #fff !important;
}
#header-login-btn:hover {
    filter: brightness(1.07) saturate(1.05) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 15px 34px rgba(101,80,227,.35), inset 0 1px 0 rgba(255,255,255,.28) !important;
}
#header-logout-btn {
    min-width: 146px !important;
    border-color: rgba(205,214,235,.18) !important;
    background: rgba(255,255,255,.05) !important;
    color: #eef1f7 !important;
}
#header-logout-btn:hover {
    border-color: rgba(255,142,157,.4) !important;
    background: rgba(255,125,141,.1) !important;
    transform: translateY(-2px) !important;
}

/* Interactive chart legend. */
.chart-container-wrapper h5 { font-size: 15px !important; font-weight: 650; }
.chart-series-controls {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 18px;
}
.chart-series-toggle {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 0 16px;
    border: 1px solid var(--s-stroke);
    border-radius: 11px;
    background: rgba(255,255,255,.035);
    color: var(--s-text-muted);
    font-size: 13px;
    font-weight: 650;
    transition: border-color .18s, background .18s, color .18s, transform .18s;
}
.chart-series-toggle:hover { border-color: var(--s-stroke-strong); color: #fff; transform: translateY(-1px); }
.chart-series-toggle.is-active { border-color: var(--s-stroke-strong); background: rgba(255,255,255,.075); color: #f3f5f9; }
.legend-color { width: 10px; height: 10px; flex: 0 0 10px; border-radius: 50%; box-shadow: 0 0 0 4px rgba(255,255,255,.035); }
.legend-color-views { background: #42d392; }
.legend-color-earnings { background: #58a6ff; }
.chart-series-toggle:not(.is-active) .legend-color { opacity: .35; filter: grayscale(.7); }

/* Account controls at the end of the streamer workspace. */
.account-settings-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    margin-top: 12px;
    padding: 24px 26px;
    border: 1px solid var(--s-stroke);
    border-radius: 17px;
    background: linear-gradient(145deg, rgba(31,38,52,.92), rgba(20,26,38,.96));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.045);
    text-align: left;
}
.account-settings-copy { max-width: 650px; }
.account-settings-kicker,
.account-delete-kicker {
    display: block;
    margin-bottom: 6px;
    color: #a9a0ff;
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .09em;
    text-transform: uppercase;
}
.account-settings-card h3 { margin: 0 0 7px; color: #f2f4f8; font-size: 20px; font-weight: 680; letter-spacing: -.025em; }
.account-settings-card p { margin: 0; color: var(--s-text-muted); font-size: 14px; line-height: 1.65; }
.account-settings-actions { display: flex; flex: 0 0 auto; align-items: center; gap: 10px; }
.account-delete-button {
    display: inline-flex;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 0 20px !important;
    border: 1px solid rgba(255,142,157,.26) !important;
    border-radius: 12px !important;
    background: rgba(255,125,141,.07) !important;
    color: #ffb1ba !important;
    font-size: 14px !important;
    font-weight: 650 !important;
}
.account-delete-button:hover { border-color: rgba(255,142,157,.45) !important; background: rgba(255,125,141,.12) !important; color: #fff !important; transform: translateY(-1px); }
.account-delete-modal .modal-header { align-items: flex-start; }
.account-delete-modal .modal-title { font-size: 24px; }
.account-delete-modal .modal-body p { color: var(--s-text-muted); font-size: 14px; line-height: 1.7; }
.account-delete-modal .modal-body label { display: block; margin: 20px 0 9px; color: #e8eaf0; font-size: 14px; }
.account-delete-modal .form-control { min-height: 50px; border-color: var(--s-stroke-strong) !important; background: rgba(10,13,18,.55) !important; color: #fff !important; }
.account-delete-error { margin-top: 10px; color: #ff9ca9; font-size: 13px; }
.account-delete-cancel,
.account-delete-confirm { min-height: 46px; padding: 0 18px !important; border-radius: 11px !important; font-size: 14px !important; font-weight: 650 !important; }
.account-delete-cancel { border: 1px solid var(--s-stroke) !important; background: rgba(255,255,255,.045) !important; color: #e7e9ef !important; }
.account-delete-confirm { display: inline-flex; align-items: center; gap: 8px; border: 1px solid rgba(255,142,157,.38) !important; background: #d94c61 !important; color: #fff !important; }
.account-delete-confirm:disabled { opacity: .38; cursor: not-allowed !important; }

@media (max-width: 850px) {
    header.navbar { min-height: 70px !important; }
    header.navbar .container-fluid { min-height: 68px !important; padding-inline: 17px !important; }
    .header-actions { width: 100%; flex-direction: column; gap: 7px; }
    #header-login-btn, #header-logout-btn { width: 100% !important; }
    .account-settings-card { align-items: stretch; flex-direction: column; }
    .account-settings-actions { align-items: stretch; flex-direction: column; }
    #logout-button, .account-delete-button { width: 100%; }
}

@media (max-width: 560px) {
    .navbar-brand { font-size: 19px !important; }
    .navbar-brand .brand-mark { width: 39px !important; height: 39px !important; }
    .account-settings-card { padding: 20px; }
    .chart-series-toggle { flex: 1 1 150px; }
}

.hero-section {
    display: grid !important;
    grid-template-columns: minmax(0,.88fr) minmax(480px,1.12fr) !important;
    min-height: 760px !important;
    align-items: start;
    gap: clamp(44px,5.5vw,78px);
    padding: 76px 6px 104px !important;
}
.hero-copy { width: 100%; max-width: 900px; }
.hero-title,
.hero-title .hero-title-line {
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
    text-indent: 0 !important;
    transform: none !important;
}
.hero-title .hero-title-line:first-child { padding-left: 0 !important; }
.hero-product { width: 100% !important; margin-top: 28px; align-self: start; }
.hero-product::before { inset: 20% 4% -7%; }
.hero-product .product-window { width: 100%; transform: none !important; }
.choice-intro { padding: 38px 32px 28px; }
.choice-intro h2 { max-width: 720px; }
.choice-intro p { max-width: 720px; font-size: 16px; }
.choice-grid { gap: 13px; padding: 0 24px 24px; }
.choice-card { min-height: 245px; padding: 23px; }
.choice-card > small { max-width: 540px; font-size: 14px; }
.choice-kicker { font-size: 14px; }
.choice-report-ready { font-size: 13px; }
.choice-footer { gap: 18px 28px; padding-block: 20px; }
.choice-footer span { font-size: 13px; }

.panel-overview-card {
    position: relative;
    display: grid;
    grid-template-columns: minmax(250px,.86fr) minmax(310px,1fr) minmax(280px,.92fr);
    grid-template-areas: "welcome finance action";
    align-items: stretch;
    margin: 0 0 14px;
    overflow: hidden;
    border: 1px solid rgba(168,157,255,.25);
    border-radius: var(--s-radius-xl);
    background:
        radial-gradient(circle at 8% 112%, rgba(123,104,240,.22), transparent 38%),
        linear-gradient(140deg, rgba(36,41,55,.99), rgba(23,28,38,.99));
    box-shadow: 0 18px 54px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.055);
}
.panel-overview-card::after {
    content: "";
    position: absolute;
    top: -90px;
    right: -70px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(131,111,249,.13);
    filter: blur(12px);
    pointer-events: none;
}
.panel-overview-welcome {
    grid-area: welcome;
    min-width: 0;
    padding: 27px 26px;
    border-right: 1px solid rgba(255,255,255,.09);
}
.panel-overview-kicker {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #aca3ff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.panel-overview-welcome h1 {
    margin: 15px 0 9px !important;
    color: #f7f8fb !important;
    font-size: clamp(30px,2.5vw,40px) !important;
    font-weight: 730 !important;
    letter-spacing: -.055em;
    line-height: 1.02;
    overflow-wrap: anywhere;
}
.panel-overview-welcome #username-display { color: #c8c1ff !important; font: inherit !important; }
.panel-overview-welcome p { margin: 0; color: var(--s-text-soft); font-size: 15px; line-height: 1.6; }
.panel-overview-finance {
    position: relative;
    z-index: 1;
    grid-area: finance;
    display: grid;
    grid-template-columns: 1fr;
    min-width: 0;
}
.panel-balance-item { min-width: 0; height: 100%; padding: 27px 25px; border-right: 1px solid rgba(255,255,255,.09); }
.panel-balance-ready { border-left: 1px solid rgba(255,255,255,.09); }
.panel-overview-card .balance-label,
.panel-overview-card .ready-balance-label { min-height: 24px; font-size: 12px !important; line-height: 1.45; }
.panel-overview-card .balance-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.panel-overview-card .balance-label > span { display: inline-flex; align-items: center; gap: 8px; }
.balance-help {
    display: grid;
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(177,168,255,.25);
    border-radius: 50%;
    background: rgba(142,126,255,.08);
    color: #bcb4ff;
    cursor: help;
    transition: border-color .18s ease, background .18s ease, color .18s ease;
}
.balance-help:hover,
.balance-help:focus-visible { border-color: rgba(177,168,255,.55); background: rgba(142,126,255,.16); color: #fff; outline: none; }
.panel-overview-card .balance-amount,
.panel-overview-card .ready-balance-amount {
    max-width: 100%;
    margin-top: 13px !important;
    font-size: clamp(24px,2vw,34px) !important;
    font-variant-numeric: tabular-nums;
    line-height: 1.06;
    white-space: nowrap;
}
.balance-caption { margin: 9px 0 0; color: #9da6b4; font-size: 13px; line-height: 1.5; }
.panel-overview-action {
    position: relative;
    z-index: 1;
    grid-area: action;
    display: flex;
    align-items: center;
    justify-content: stretch;
    padding: 25px;
}
.login-modal-content { width: min(650px, calc(100% - 20px)) !important; max-width: 650px !important; }
.login-modal-content .platform-buttons { grid-template-columns: 1fr !important; gap: 9px !important; margin: 25px 0 18px !important; }
.login-modal-content .platform-btn {
    min-height: 88px !important;
    flex-direction: row;
    align-items: center;
    padding: 14px 16px !important;
}
.platform-login-copy { margin: 0 0 0 14px; }
.platform-login-arrow { top: 50%; right: 18px; bottom: auto; transform: translateY(-50%); }
.login-modal-content .terms-acceptance { grid-template-columns: 1fr; gap: 7px; padding: 12px !important; }
.terms-acceptance-title,
.login-modal-content #terms-error { grid-column: 1; }
.login-modal-content .terms-acceptance .form-check { min-height: 0; padding-block: 11px !important; }
.login-modal-content .terms-acceptance label { font-size: 12px !important; }

/* Logowanie: znaki platform, poświaty marek i czytelne zgody */
.login-modal-content .login-modal-kicker { font-size: 12px; }
.login-modal-content .login-modal-heading h2 { font-size: clamp(36px,4.2vw,48px) !important; }
.login-modal-content .login-modal-heading p { max-width: 610px; font-size: 17px !important; line-height: 1.6; }
.login-modal-content .platform-login-icon { width: 46px; height: 46px; border-radius: 13px; font-size: 21px; }
.login-modal-content .platform-login-copy strong { font-size: 18px; }
.login-modal-content .platform-login-copy small { margin-top: 5px; font-size: 13px; }
.platform-login-icon > i,
.platform-login-icon > .kick-brand-mark { transition: transform .2s ease, filter .2s ease; }
.kick-brand-mark {
    width: 22px;
    height: 25px;
    color: #53fc18;
    fill: currentColor;
}
.login-modal-content .platform-btn.twitch:hover,
.login-modal-content .platform-btn.twitch:focus-visible {
    border-color: rgba(145,70,255,.46) !important;
    background: linear-gradient(135deg, rgba(145,70,255,.085), rgba(145,70,255,.025)) !important;
    box-shadow: 0 7px 18px rgba(145,70,255,.09), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
.login-modal-content .platform-btn.youtube:hover,
.login-modal-content .platform-btn.youtube:focus-visible {
    border-color: rgba(255,0,0,.42) !important;
    background: linear-gradient(135deg, rgba(255,0,0,.075), rgba(255,0,0,.02)) !important;
    box-shadow: 0 7px 18px rgba(255,0,0,.08), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
.login-modal-content .platform-btn.kick:hover,
.login-modal-content .platform-btn.kick:focus-visible {
    border-color: rgba(83,252,24,.38) !important;
    background: linear-gradient(135deg, rgba(83,252,24,.07), rgba(83,252,24,.018)) !important;
    box-shadow: 0 7px 18px rgba(83,252,24,.075), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
.login-modal-content .platform-btn:hover .platform-login-icon > i,
.login-modal-content .platform-btn:hover .platform-login-icon > .kick-brand-mark,
.login-modal-content .platform-btn:focus-visible .platform-login-icon > i,
.login-modal-content .platform-btn:focus-visible .platform-login-icon > .kick-brand-mark { transform: scale(1.08); }
.login-modal-content .platform-btn.twitch:hover .platform-login-icon { background: rgba(145,70,255,.09); box-shadow: 0 0 9px rgba(145,70,255,.13); }
.login-modal-content .platform-btn.youtube:hover .platform-login-icon { background: rgba(255,0,0,.075); box-shadow: 0 0 9px rgba(255,0,0,.12); }
.login-modal-content .platform-btn.kick:hover .platform-login-icon { background: rgba(83,252,24,.07); box-shadow: 0 0 9px rgba(83,252,24,.11); }
.login-modal-content .platform-btn.twitch:hover .platform-login-arrow { color: #b68cff !important; }
.login-modal-content .platform-btn.youtube:hover .platform-login-arrow { color: #ff7777 !important; }
.login-modal-content .platform-btn.kick:hover .platform-login-arrow { color: #78ff4a !important; }

.login-modal-content .terms-acceptance {
    display: grid;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    padding: 15px !important;
    border: 1px solid rgba(255,255,255,.1) !important;
    border-radius: 17px !important;
    background: linear-gradient(145deg, rgba(8,11,17,.54), rgba(15,19,28,.42)) !important;
}
.terms-acceptance-heading {
    display: grid;
    grid-template-columns: 38px minmax(0,1fr);
    align-items: center;
    gap: 11px;
    padding: 2px 2px 6px;
}
.terms-acceptance-icon {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid rgba(145,132,255,.24);
    border-radius: 11px;
    background: rgba(145,132,255,.11);
    color: #aaa0ff;
    font-size: 17px;
}
.terms-acceptance-heading .terms-acceptance-title { margin: 0 0 3px !important; color: #f0f2f6 !important; font-size: 16px !important; font-weight: 680; }
.terms-acceptance-heading small { display: block; color: #929baa; font-size: 13px; line-height: 1.45; }
.login-modal-content .terms-acceptance .form-check {
    position: relative;
    min-height: 82px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 13px;
    background: transparent !important;
}
.login-modal-content .terms-acceptance .form-check-label {
    display: grid !important;
    width: 100%;
    min-height: 82px;
    grid-template-columns: 36px minmax(0,1fr);
    align-items: center;
    gap: 11px;
    padding: 13px 52px 13px 13px !important;
    border: 1px solid rgba(255,255,255,.085);
    border-radius: 13px;
    background: rgba(255,255,255,.035);
    cursor: pointer;
    transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.login-modal-content .terms-acceptance .form-check-label:hover { border-color: rgba(145,132,255,.28); background: rgba(255,255,255,.055); }
.login-modal-content .terms-acceptance .form-check-input {
    top: 50% !important;
    right: 16px !important;
    left: auto !important;
    width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
    border: 1px solid rgba(173,163,255,.58) !important;
    border-radius: 6px !important;
    background-color: rgba(7,10,15,.62) !important;
    box-shadow: none !important;
    cursor: pointer;
    transform: translateY(-50%);
}
.login-modal-content .terms-acceptance .form-check-input:checked {
    border-color: #8d7cff !important;
    background-color: #7867ef !important;
}
.login-modal-content .terms-acceptance .form-check-input:checked + .form-check-label {
    border-color: rgba(145,132,255,.4);
    background: rgba(145,132,255,.09);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}
.login-modal-content .terms-acceptance .form-check-input:focus-visible + .form-check-label { outline: 2px solid #aaa0ff; outline-offset: 2px; }
.consent-row-icon {
    display: grid;
    width: 36px;
    height: 36px;
    place-items: center;
    border-radius: 10px;
    background: rgba(255,255,255,.055);
    color: #a9a0fa;
    font-size: 15px;
}
.consent-row-copy { min-width: 0; }
.consent-row-copy strong,
.consent-row-copy small { display: block; }
.consent-row-copy strong { color: #eef0f4; font-size: 15px; font-weight: 650; }
.consent-row-copy small { margin-top: 4px; color: #a0a8b5; font-size: 13px; line-height: 1.45; }
.login-modal-content .consent-row-copy a { color: #b9b1ff !important; text-decoration: underline; text-decoration-color: rgba(185,177,255,.35); text-underline-offset: 2px; }
.login-modal-content #terms-error { margin: 1px 0 0 !important; }
.login-modal-content #terms-error i { margin-right: 7px; }

@media (max-width: 900px) {
    .hero-section {
        display: flex !important;
        min-height: 0 !important;
        flex-direction: column;
        align-items: stretch;
        gap: 54px;
    }
    .hero-product { width: 100% !important; margin-top: 0; }
    .panel-overview-card {
        grid-template-columns: 1fr;
        grid-template-areas: "welcome" "finance" "action";
    }
    .panel-overview-welcome { padding: 31px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.09); }
    .panel-balance-item { padding: 28px 30px 22px; }
    .panel-overview-card .balance-amount,
    .panel-overview-card .ready-balance-amount { font-size: clamp(28px,5vw,40px) !important; }
}

@media (max-width: 560px) {
    .hero-section { gap: 43px; padding-inline: 0 !important; }
    .choice-window-top, .choice-footer { padding-inline: 16px; }
    .choice-intro { padding: 28px 20px 22px; }
    .choice-grid { grid-template-columns: 1fr; padding: 0 14px 14px; }
    .choice-card { min-height: 235px; }
    .choice-report-ready { display: inline-flex; }
    .choice-footer span { font-size: 12px; }
    .panel-overview-welcome { padding: 26px 22px; }
    .panel-overview-finance { grid-template-columns: 1fr; }
    .panel-balance-item { padding: 24px 22px; }
    .panel-balance-ready { border-top: 1px solid rgba(255,255,255,.09); border-left: 0; }
    .panel-overview-card .balance-amount,
    .panel-overview-card .ready-balance-amount { font-size: clamp(27px,8.6vw,38px) !important; }
    .panel-overview-action { padding: 0 22px 24px; }
    .panel-overview-action #withdraw-btn { width: 100%; }
}
/* Streamer workspace — spójny układ z panelem administracyjnym */
body.streamer-panel-mode {
    overflow-x: hidden;
    background: #0a0d12;
}
body.streamer-panel-mode > header.navbar { display: flex !important; }
body.streamer-panel-mode > footer {
    display: block !important;
    width: 100%;
    margin: 0 !important;
    background: #0c1016 !important;
}
body.streamer-panel-mode > footer .footer-content {
    width: min(1280px, calc(100% - 32px));
    max-width: 1280px;
    padding-inline: 0;
}
body.streamer-panel-mode main { padding-top: 0 !important; }
body.streamer-panel-mode main > .container {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

#panel { padding: 0 !important; }
.streamer-dashboard-shell {
    display: block;
    min-height: 100vh;
    padding-top: 104px;
    background:
        radial-gradient(circle at 80% -12%, rgba(139,124,255,.09), transparent 29%),
        linear-gradient(180deg, #10141b 0%, #090c11 100%);
}
.streamer-sidebar {
    position: sticky;
    top: 104px;
    z-index: 40;
    display: block;
    width: min(1280px, calc(100% - 32px));
    height: auto;
    min-width: 0;
    margin: 0 auto;
    padding: 7px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 16px;
    background: rgba(19,24,33,.96);
    box-shadow: 0 14px 38px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.035);
    backdrop-filter: blur(22px);
}
.streamer-sidebar-brand {
    display: flex;
    align-items: center;
    gap: 11px;
    margin: 0 8px 27px;
    color: #f4f5f8;
    font-size: 20px;
    font-weight: 730;
    letter-spacing: -.055em;
    text-decoration: none;
}
.streamer-sidebar-brand:hover { color: #fff; }
.streamer-sidebar-brand {
    display: none;
    min-height: 52px;
    padding: 6px 8px;
    border: 1px solid transparent !important;
    border-radius: 13px;
    transition: border-color .18s, background .18s;
}
.streamer-sidebar-brand:hover { border-color: rgba(255,255,255,.085); background: rgba(255,255,255,.035); }
.streamer-sidebar-brand .brand-mark {
    display: grid;
    width: 39px;
    height: 39px;
    flex: 0 0 39px;
    place-items: center;
    overflow: hidden;
    border: 1px solid rgba(190,181,255,.34);
    border-radius: 12px;
    background: linear-gradient(145deg, #8979ff, #6555df);
    box-shadow: 0 10px 24px rgba(101,85,223,.23), inset 0 1px 0 rgba(255,255,255,.2);
}
.streamer-sidebar-brand .brand-mark img { width: 100%; height: 100%; object-fit: cover; }
.navbar-brand .brand-mark,
.streamer-sidebar-brand .brand-mark {
    padding: 0 !important;
    overflow: visible;
    border-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
}
.navbar-brand .brand-mark img,
.streamer-sidebar-brand .brand-mark img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    object-fit: contain !important;
    filter: drop-shadow(0 8px 16px rgba(112,91,235,.3)) !important;
}
.streamer-sidebar-nav {
    display: grid;
    min-height: 0;
    grid-template-columns: repeat(7,minmax(0,1fr));
    gap: 4px;
}
.streamer-nav-label { display: none; }
.streamer-nav-link {
    display: flex;
    width: 100%;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 0 10px;
    border: 1px solid transparent;
    border-radius: 11px;
    background: transparent;
    color: #fff;
    cursor: pointer;
    font-family: inherit;
    font-size: 13px;
    font-weight: 650;
    text-align: center;
    transition: color .16s ease, background .16s ease;
}
.streamer-nav-link:hover {
    background: rgba(255,255,255,.055);
    color: #fff;
}
.streamer-nav-link.active,
.streamer-nav-link.active:hover,
.streamer-nav-link.active:focus,
.streamer-nav-link.active:active {
    border: 1px solid transparent !important;
    background: linear-gradient(90deg, rgba(145,132,255,.2), rgba(145,132,255,.075)) !important;
    color: #f5f3ff !important;
    box-shadow: inset 0 -2px 0 rgba(157,145,255,.78) !important;
}
.streamer-nav-link:focus {
    border: 1px solid transparent !important;
    outline: none !important;
}
.streamer-nav-link:focus-visible {
    outline: 2px solid rgba(157,145,255,.72) !important;
    outline-offset: 2px !important;
}
.streamer-nav-link i {
    display: grid;
    width: 22px;
    flex: 0 0 22px;
    place-items: center;
    color: currentColor;
    font-size: 16px;
}
.streamer-nav-link.active i { color: #bdb5ff; }
.streamer-multistream-nav { color: #fff; }
.streamer-account-nav { display: flex; }
.streamer-sidebar-footer { display: none; }
.streamer-account-shortcut {
    display: grid;
    width: 100%;
    grid-template-columns: 36px minmax(0,1fr) 14px;
    align-items: center;
    gap: 10px;
    margin-bottom: 9px;
    padding: 10px;
    border: 1px solid rgba(255,255,255,.085);
    border-radius: 13px;
    background: rgba(255,255,255,.045);
    color: #eef0f5;
    cursor: pointer;
    font-family: inherit;
    text-align: left;
    transition: border-color .18s, background .18s;
}
.streamer-account-shortcut:hover { border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.07); }
.streamer-account-shortcut.active { border-color: rgba(145,132,255,.3); background: rgba(145,132,255,.12); }
.streamer-account-shortcut > .bi { color: #747c8e; font-size: 11px; }
.streamer-avatar {
    display: grid;
    width: 36px;
    height: 36px;
    place-items: center;
    border-radius: 10px;
    background: rgba(145,132,255,.18);
    color: #d0caff;
    font-size: 13px;
    font-weight: 750;
    text-transform: uppercase;
}
.streamer-account-copy { min-width: 0; }
.streamer-account-copy strong,
.streamer-account-copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.streamer-account-copy strong { font-size: 11px; font-weight: 650; }
.streamer-account-copy small { margin-top: 3px; color: #7f8798; font-size: 9px; }
.streamer-account-copy small i {
    display: inline-block;
    width: 6px;
    height: 6px;
    margin-right: 5px;
    border-radius: 50%;
    background: #5de0a5;
    box-shadow: 0 0 0 3px rgba(93,224,165,.08);
}
.streamer-sidebar-logout {
    display: flex;
    width: 100%;
    min-height: 43px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid rgba(255,255,255,.085);
    border-radius: 11px;
    background: rgba(255,255,255,.035);
    color: #aab0bd;
    cursor: pointer;
    font-family: inherit;
    font-size: 12px;
    font-weight: 600;
    transition: border-color .18s, background .18s, color .18s;
}
.streamer-sidebar-logout { display: none; }
.streamer-sidebar-logout:hover {
    border-color: rgba(255,125,141,.3);
    background: rgba(255,125,141,.08);
    color: #ffabb5;
}
.streamer-workspace { min-width: 0; padding-top: 0; }
.streamer-panel-destination.streamer-view-hidden { display: none !important; }
.streamer-main-content {
    width: min(1280px, calc(100% - 32px));
    margin: 0 auto;
    padding: 16px 0 70px;
    overflow-anchor: none;
}
.streamer-main-content > .streamer-panel-destination { width: 100%; }
.streamer-panel-destination { scroll-margin-top: 98px; }
.multistream-panel-section { position: relative; overflow: hidden; }
.multistream-panel-heading { display: grid; gap: 8px; }
.multistream-panel-heading h2 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    color: #fff;
    font-size: 24px;
    font-weight: 720;
}
.multistream-panel-heading h2 i { color: #bdb5ff; }
.multistream-panel-heading .multistream-intro { margin: 0; }
.streamer-section-kicker {
    display: block;
    margin-bottom: 8px;
    color: #777f91;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .11em;
    text-transform: uppercase;
}
#panel .premium-card { margin-bottom: 14px !important; }
#panel .account-settings-card { margin-top: 14px; }

.overview-campaigns-card {
    margin-top: 16px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}
.overview-campaigns-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 20px;
}
.overview-campaigns-header h2 {
    margin: 0 !important;
    color: #f2f3f7 !important;
    font-size: 23px !important;
    font-weight: 690;
    letter-spacing: -.035em;
}
.overview-campaigns-header p { margin: 7px 0 0; color: #8992a2; font-size: 13px; }
.overview-campaigns-actions { display: flex; flex: 0 0 auto; align-items: center; gap: 12px; }
.overview-campaigns-count {
    display: inline-flex;
    min-height: 35px;
    align-items: center;
    padding: 0 12px;
    border: 1px solid rgba(145,132,255,.2);
    border-radius: 999px;
    background: rgba(145,132,255,.09);
    color: #bcb5ff;
    font-size: 11px;
    font-weight: 650;
}
.overview-campaigns-link {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    gap: 8px;
    padding: 0 13px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 10px;
    background: rgba(255,255,255,.045);
    color: #d8dce5;
    cursor: pointer;
    font-family: inherit;
    font-size: 12px;
    font-weight: 620;
    transition: border-color .18s, background .18s, color .18s;
}
.overview-campaigns-link:hover { border-color: rgba(145,132,255,.3); background: rgba(145,132,255,.1); color: #fff; }
.overview-campaigns-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.overview-campaign-item {
    display: flex;
    min-width: 0;
    min-height: 0;
    aspect-ratio: 1 / 1;
    flex-direction: column;
    gap: 10px;
    padding: 18px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 16px;
    background: linear-gradient(150deg, rgba(48,57,73,.98), rgba(31,38,51,.98));
    box-shadow: 0 14px 34px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.07);
    transition: border-color .18s, background .18s, transform .18s;
}
.overview-campaign-item:hover { border-color: rgba(173,165,255,.32); background: linear-gradient(150deg, rgba(55,64,82,.99), rgba(35,43,57,.99)); transform: translateY(-2px); }
.overview-campaign-item.active { border-color: rgba(93,224,165,.36); background: linear-gradient(150deg, rgba(43,67,63,.98), rgba(28,48,46,.98)); }
.overview-campaign-item.historical { border-color: rgba(116,154,205,.25); background: linear-gradient(150deg, rgba(43,54,71,.98), rgba(28,36,49,.98)); }
.overview-campaign-topline { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: start; gap: 12px; }
.overview-campaign-icon {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 12px;
    background: rgba(145,132,255,.11);
    color: #ada5ff;
    font-size: 18px;
}
.overview-campaign-item.active .overview-campaign-icon { background: rgba(93,224,165,.1); color: #70e5ae; }
.overview-campaign-item.historical .overview-campaign-icon { background: rgba(116,154,205,.12); color: #9cc4f3; }
.overview-campaign-copy { min-width: 0; }
.overview-campaign-copy small { display: block; overflow: hidden; color: #9d94ef; font-size: 12px; font-weight: 720; letter-spacing: .06em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.overview-campaign-copy h3 { display: -webkit-box; margin: 5px 0 0 !important; overflow: hidden; color: #f0f2f6 !important; font-size: 21px !important; font-weight: 680; line-height: 1.22; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.overview-campaign-status {
    display: inline-flex;
    min-height: 27px;
    align-items: center;
    gap: 6px;
    padding: 0 8px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 999px;
    background: rgba(255,255,255,.035);
    color: #7f8898;
    font-size: 12px;
    font-weight: 620;
    white-space: nowrap;
}
.overview-campaign-item.active .overview-campaign-status { border-color: rgba(93,224,165,.2); background: rgba(93,224,165,.08); color: #70dca9; }
.overview-campaign-item.historical .overview-campaign-status { border-color: rgba(116,154,205,.24); background: rgba(116,154,205,.09); color: #a7caf1; }
.overview-campaign-description { display: -webkit-box; min-height: 58px; margin: 0; overflow: hidden; color: #b5bbc7; font-size: 14px; line-height: 1.4; overflow-wrap: anywhere; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.overview-campaign-meta { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.overview-campaign-meta > span { min-width: 0; padding: 9px; border: 1px solid rgba(255,255,255,.065); border-radius: 10px; background: rgba(7,10,15,.24); }
.overview-campaign-meta small,.overview-campaign-meta strong { display: block; }
.overview-campaign-meta small { color: #9aa3b2; font-size: 11px; letter-spacing: .04em; text-transform: uppercase; }
.overview-campaign-meta strong { margin-top: 5px; overflow: hidden; color: #edf0f5; font-size: 14px; line-height: 1.3; text-overflow: ellipsis; }
.overview-campaign-meta strong em { color: #b4bcc9; font-size: 10px; font-style: normal; font-weight: 650; }
.overview-campaign-buttons { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: auto; }
.overview-campaign-buttons.is-single { grid-template-columns: 1fr; }
.overview-campaign-preview,.overview-campaign-join { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 7px; padding: 8px 11px; border-radius: 10px; cursor: pointer; font: 650 13px/1.3 inherit; text-align: center; transition: border-color .18s,background .18s,color .18s,transform .18s; }
.overview-campaign-preview { border: 1px solid rgba(145,132,255,.24); background: rgba(145,132,255,.08); color: #c5bfff; }
.overview-campaign-preview:hover,.overview-campaign-preview:focus-visible { border-color: rgba(145,132,255,.48); background: rgba(145,132,255,.15); color: #fff; }
.overview-campaign-preview:disabled { border-color: rgba(255,255,255,.06); background: rgba(255,255,255,.025); color: #626a78; cursor: not-allowed; }
.overview-campaign-join { border: 1px solid rgba(93,224,165,.3); background: rgba(93,224,165,.1); color: #91e9bd; }
.overview-campaign-join:hover,.overview-campaign-join:focus-visible { border-color: rgba(93,224,165,.52); background: rgba(93,224,165,.17); color: #d7ffeb; transform: translateY(-1px); }
.overview-campaign-join.is-joined { border-color: rgba(255,125,141,.2); background: rgba(255,125,141,.07); color: #ffabb5; }
.overview-campaign-join.is-joined:hover,.overview-campaign-join.is-joined:focus-visible { border-color: rgba(255,125,141,.42); background: rgba(255,125,141,.13); color: #ffd5da; }
.overview-campaign-consent { display: -webkit-box; overflow: hidden; color: #a3acba; font-size: 12px; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.campaign-card-cpm { display: block; margin-top: 9px; color: #88e7b7; font-size: 11px; font-weight: 700; }
.campaign-card-cpm span { color: #9ca6b5; font-size: .82em; }
.overview-campaigns-empty,
.overview-campaigns-loading {
    grid-column: 1 / -1;
    display: flex;
    min-height: 92px;
    align-items: center;
    justify-content: center;
    gap: 11px;
    border: 1px dashed rgba(255,255,255,.1);
    border-radius: 13px;
    color: #858e9e;
    font-size: 12px;
}
.overview-campaigns-empty > span { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 11px; background: rgba(255,255,255,.045); color: #959dad; }
.overview-campaigns-empty strong,
.overview-campaigns-empty small { display: block; }
.overview-campaigns-empty strong { color: #d9dce4; font-size: 13px; }
.overview-campaigns-empty small { margin-top: 3px; color: #7f8898; font-size: 10px; }

#campaigns-section #content { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
#campaigns-section #content .content-item { display: flex; min-width: 0; min-height: 0; aspect-ratio: 1 / 1; flex-direction: column; gap: 10px; margin: 0; padding: 20px; }
#campaigns-section #content .content-item strong { margin-bottom: 2px; color: #c8c1ff; font-size: 20px; line-height: 1.25; }
#campaigns-section #content .content-item p { display: -webkit-box; overflow: hidden; color: #bec4cf; font-size: 15px; line-height: 1.5; -webkit-box-orient: vertical; -webkit-line-clamp: 5; }
#campaigns-section #content .campaign-card-cpm { color: #9aebc2; font-size: 14px; }
#campaigns-section #content .campaign-preview-hint { color: #b8b0ff !important; font-size: 12px !important; }
#campaigns-section #content .action-btn { min-height: 46px; margin-top: auto; font-size: 14px; }
.my-campaign-history-block { margin-top: 34px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.09); }
.my-campaign-history-heading { margin-bottom: 18px; }
.my-campaign-history-heading h3 { display: flex; align-items: center; gap: 9px; margin: 0 !important; color: #eef1f6 !important; font-size: 20px !important; font-weight: 670; }
.my-campaign-history-heading h3 i { color: #9cc4f3; }
.my-campaign-history-heading p { margin: 7px 0 0; color: #8d96a6; font-size: 13px; }

@media (max-width: 1180px) {
    .overview-campaigns-grid,
    #campaigns-section #content { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 680px) {
    .overview-campaigns-card { padding: 0; }
    .overview-campaigns-header { align-items: stretch; flex-direction: column; gap: 15px; }
    .overview-campaigns-actions { justify-content: space-between; }
    .overview-campaigns-grid,
    #campaigns-section #content { grid-template-columns: 1fr; }
    .overview-campaign-item,
    #campaigns-section #content .content-item { min-height: 360px; aspect-ratio: auto; }
    .overview-campaign-topline { grid-template-columns: 42px minmax(0,1fr); }
    .overview-campaign-status { grid-column: 1 / -1; justify-self: start; }
    .overview-campaign-meta { grid-template-columns: 1fr; }
    .overview-campaign-buttons { grid-template-columns: 1fr; }
}

@media (max-width: 1180px) and (min-width: 901px) {
    body.streamer-panel-mode > footer { width: 100%; margin-left: 0 !important; }
    #panel .panel-overview-card {
        grid-template-columns: minmax(0,1fr) minmax(0,1fr);
        grid-template-areas: "welcome welcome" "finance action";
    }
    #panel .panel-overview-welcome { padding: 31px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.09); }
}

@media (max-width: 900px) {
    body.streamer-panel-mode { padding-bottom: 0; }
    body.streamer-panel-mode > footer { width: 100%; margin-left: 0 !important; padding-bottom: 98px !important; }
    .streamer-dashboard-shell { display: block; min-height: calc(100vh - 74px); padding-top: 92px; }
    .streamer-sidebar {
        position: fixed;
        z-index: 1030;
        top: auto;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        width: auto;
        height: 72px;
        padding: 7px 8px;
        border-top: 1px solid rgba(255,255,255,.1);
        border-right: 0;
        background: rgba(18,23,31,.98);
        box-shadow: 0 -12px 35px rgba(0,0,0,.2);
    }
    .streamer-sidebar-brand,
    .streamer-sidebar-footer,
    .streamer-nav-label { display: none; }
    .streamer-sidebar-nav { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 3px; }
    .streamer-nav-link {
        display: grid;
        min-height: 58px;
        place-items: center;
        gap: 1px;
        padding: 4px 2px;
        border-radius: 10px;
        font-size: 9px;
        font-weight: 650;
        line-height: 1.05;
        text-align: center;
    }
    .streamer-nav-link:hover { transform: none; }
    .streamer-nav-link i { width: auto; font-size: 16px; }
    .streamer-account-nav { display: grid; }
    .streamer-workspace { padding-top: 0; }
    .streamer-main-content { width: calc(100% - 20px); padding: 18px 0 42px; }
    .streamer-panel-destination { scroll-margin-top: 82px; }
}

@media (max-width: 850px) {
    .streamer-workspace { padding-top: 0; }
}

@media (max-width: 560px) {
    .streamer-nav-link span { max-width: 52px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    #panel .panel-overview-welcome { padding: 25px 21px; }
    #panel .premium-card { border-radius: 17px !important; }
    #panel .obs-section h3,
    #panel #ads-selection { font-size: 17px !important; }
}
/* Profil rozliczeń: Useme dla osób bez firmy albo faktura dla firmy. */
.settlement-overview { display: grid; width: 100%; min-width: 0; gap: .6rem; }
.settlement-overview-heading { display: flex; align-items: center; justify-content: space-between; gap: .75rem; }
.settlement-kicker { color: #a5b4fc; font-size: .72rem; font-weight: 850; letter-spacing: .09em; }
.settlement-overview-title { margin: 0; color: #fff; font-size: 1.15rem; }
.settlement-message { margin: 0; color: #cbd5e1; font-size: .86rem; line-height: 1.55; }
.settlement-status { display: inline-flex; padding: .38rem .65rem; border-radius: 999px; font-size: .76rem; font-weight: 800; }
.settlement-status.is-loading { color: #cbd5e1; background: rgba(148, 163, 184, .16); }
.settlement-status.is-pending { color: #fde68a; background: rgba(250, 204, 21, .13); }
.settlement-status.is-ready { color: #bbf7d0; background: rgba(74, 222, 128, .13); }
.settlement-status.is-error { color: #fecaca; background: rgba(248, 113, 113, .14); }
.settlement-profile-modal .modal-dialog { max-width: 760px; }
.settlement-modal-content { overflow: hidden; background: radial-gradient(circle at 100% 0, rgba(99, 102, 241, .16), transparent 38%), #202632 !important; }
.settlement-profile-modal .modal-header { align-items: flex-start; padding: 1.35rem 1.5rem; }
.settlement-modal-heading { display: grid; gap: .35rem; padding-right: 1rem; }
.settlement-modal-heading .modal-title { font-size: 1.45rem; }
.settlement-modal-heading p { margin: 0; color: #94a3b8; font-size: .86rem; line-height: 1.5; }
.settlement-modal-kicker { display: inline-flex; align-items: center; gap: .45rem; color: #a5b4fc; font-size: .7rem; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.settlement-form { display: grid; gap: 1rem; padding: 1.35rem 1.5rem; }
.settlement-profile-modal .form-control,
.settlement-profile-modal .form-select { min-height: 48px; border: 1px solid rgba(255, 255, 255, .14); border-radius: 11px; background: rgba(10, 13, 18, .55); color: #f0f1f5; box-shadow: none; }
.settlement-profile-modal .modal-footer { padding: 1rem 1.5rem; }
.settlement-modal-footer .btn { min-height: 44px; }
.settlement-intro, .settlement-note { margin: 0; color: #cbd5e1; font-size: .86rem; line-height: 1.6; }
.settlement-note { padding: .8rem; border: 1px solid rgba(74, 222, 128, .2); border-radius: 12px; background: rgba(22, 101, 52, .1); }
.settlement-note a { color: #a5b4fc; }
.settlement-method-fields { display: grid; gap: 1rem; }
.settlement-method-fields[hidden] { display: none !important; }
.settlement-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; }
.settlement-field { display: grid; gap: .4rem; color: #dbe4f0; font-size: .82rem; font-weight: 750; }
.settlement-field-wide { grid-column: 1 / -1; }
.settlement-consents { display: grid; gap: .65rem; }
.settlement-consents label { display: flex; align-items: flex-start; gap: .6rem; color: #cbd5e1; font-size: .82rem; line-height: 1.5; cursor: pointer; }
.settlement-consents input { flex: 0 0 auto; margin-top: .2rem; accent-color: #818cf8; }
.settlement-form-message { min-height: 1.3rem; margin: 0; color: #cbd5e1; font-size: .82rem; }
#withdrawals-section .panel-section-header { position: relative; justify-content: center; }
#withdrawals-section .panel-section-title { width: auto; text-align: center; }
.withdrawals-header-actions {
    position: absolute;
    right: 1.25rem;
    display: flex;
    align-items: center;
    gap: .55rem;
}
#request-withdrawal-btn { margin: 0; white-space: nowrap; }
@media (max-width: 720px) {
    .settlement-grid { grid-template-columns: 1fr; }
    .settlement-field-wide { grid-column: auto; }
    .settlement-profile-modal .modal-dialog { margin: .65rem; }
    .settlement-profile-modal .modal-header,
    .settlement-form,
    .settlement-profile-modal .modal-footer { padding-right: 1rem; padding-left: 1rem; }
    .settlement-modal-footer { display: grid; grid-template-columns: 1fr; }
    .settlement-modal-footer .btn { width: 100%; margin: 0; }
    #withdrawals-section .panel-section-header { display: grid; grid-template-columns: 1fr; gap: .8rem; }
    #withdrawals-section .panel-section-title { justify-self: center; }
    .withdrawals-header-actions { position: static; justify-self: center; }
    #request-withdrawal-btn { width: auto; margin: 0; order: initial; }
}
.withdrawal-total-box {
    display: grid;
    gap: 5px;
    margin-bottom: 14px;
    padding: 16px;
    border: 1px solid rgba(88, 166, 255, .28);
    border-radius: 14px;
    background: rgba(88, 166, 255, .08);
}

.withdrawal-total-box > span,
.withdrawal-total-box small { color: var(--text-muted, #9ca7b8); }
.withdrawal-total-box strong { color: #fff; font-size: 1.5rem; }
.withdrawal-campaign-breakdown { display: grid; gap: 7px; margin-bottom: 16px; }
.withdrawal-campaign-breakdown > div {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 9px 12px;
    border-radius: 10px;
    background: rgba(255, 255, 255, .045);
}
.withdrawal-campaign-breakdown span { overflow-wrap: anywhere; }
.withdrawal-campaign-breakdown strong { white-space: nowrap; color: #75e5ae; }
