:root{--k1-red:#e11b22;--k1-black:#0d0d0f;--k1-bg:#f5f5f6;--k1-side:272px}*{box-sizing:border-box}body{margin:0;background:var(--k1-bg);color:#17181a;font-family:Arial,sans-serif}.k1-shell{min-height:100vh}.k1-sidebar{position:fixed;inset:0 auto 0 0;width:var(--k1-side);z-index:1045;display:flex;flex-direction:column;background:radial-gradient(circle at 100% 0,rgba(225,27,34,.16),transparent 35%),var(--k1-black);color:#fff}.k1-brand{height:82px;display:flex;align-items:center;gap:12px;padding:15px 20px;border-bottom:1px solid #ffffff14}.k1-brand img{width:46px;height:52px;object-fit:contain}.k1-brand strong,.k1-brand small{display:block}.k1-brand strong{font-size:17px;font-style:italic;font-weight:900;letter-spacing:.08em}.k1-brand small{margin-top:4px;color:var(--k1-red);font-size:9px;font-weight:900;letter-spacing:.13em}.k1-nav{padding:18px 12px;overflow:auto}.k1-nav-label{padding:0 12px 8px;color:#ffffff59;font-size:10px;font-weight:900;letter-spacing:.15em}.k1-nav a{display:flex;align-items:center;gap:12px;min-height:46px;margin:3px 0;padding:10px 12px;border-radius:9px;color:#ffffffbd;text-decoration:none;font-weight:700}.k1-nav a i{width:22px;color:#ffffff70}.k1-nav a:hover{background:#ffffff0c;color:#fff}.k1-nav a.active{background:var(--k1-red);color:#fff}.k1-nav a.active i{color:#fff}.k1-sidebar-foot{margin-top:auto;padding:18px 22px;border-top:1px solid #ffffff14;font-size:12px}.k1-sidebar-foot span,.k1-sidebar-foot a{display:block}.k1-sidebar-foot a{margin-top:4px;color:#aaa}.k1-main{min-height:100vh;margin-left:var(--k1-side);display:flex;flex-direction:column}.k1-topbar{position:sticky;top:0;z-index:1030;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 28px;background:#fffffff2;border-bottom:1px solid #e2e3e5;backdrop-filter:blur(12px)}.k1-topbar small,.k1-topbar strong{display:block}.k1-topbar small{color:var(--k1-red);font-size:9px;font-weight:900;letter-spacing:.15em}.k1-topbar strong{font-size:21px;font-style:italic;text-transform:uppercase}.k1-content{width:100%;max-width:1700px;margin:0 auto;padding:28px}.k1-footer{display:flex;justify-content:space-between;padding:20px 28px;color:#888;font-size:11px}.k1-footer b{color:var(--k1-red)}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:24px}.page-head h1{margin:0;font-size:clamp(30px,4vw,46px);font-style:italic;font-weight:900;text-transform:uppercase}.page-head p{margin:5px 0 0;color:#6d7075}.btn-k1{--bs-btn-color:#fff;--bs-btn-bg:var(--k1-red);--bs-btn-border-color:var(--k1-red);--bs-btn-hover-bg:#c8171d;--bs-btn-hover-border-color:#c8171d;font-weight:800}.k1-card{height:100%;padding:22px;border:1px solid #e2e3e5;border-radius:15px;background:#fff;box-shadow:0 8px 28px #0d0d0f0b}.k1-card h2,.k1-card h3{font-style:italic;font-weight:900;text-transform:uppercase}.stat{display:flex;align-items:center;gap:15px;padding:20px;border:1px solid #e2e3e5;border-radius:14px;background:#fff}.stat i{width:48px;height:48px;display:grid;place-items:center;border-radius:11px;background:#0d0d0f;color:var(--k1-red);font-size:21px}.stat small,.stat strong{display:block}.stat small{color:#84878c;font-size:10px;font-weight:900;text-transform:uppercase}.stat strong{font-size:28px;font-style:italic}.status{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:#eceef0;color:#555;font-size:10px;font-weight:900;text-transform:uppercase}.status.ready,.status.live{background:#e7f6ec;color:#1f753b}.status.live:before{content:'';width:7px;height:7px;margin-right:6px;border-radius:50%;background:#dc1d27}.status.draft{background:#fff4d8;color:#895f00}.readiness{display:flex;gap:8px;flex-wrap:wrap}.ready-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:7px;background:#eef7f0;color:#256c38;font-size:11px;font-weight:700}.ready-chip.missing{background:#fff1f1;color:#9c272d}.broadcast-row{display:grid;grid-template-columns:minmax(260px,1.2fr) 170px minmax(240px,1fr) auto;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid #eee}.broadcast-row:last-child{border:0}.broadcast-title strong,.broadcast-title small{display:block}.broadcast-title strong{font-size:16px}.broadcast-title small{margin-top:4px;color:#777}.broadcast-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.form-control,.form-select{min-height:45px;border-color:#d7d9dd}.form-control:focus,.form-select:focus{border-color:var(--k1-red);box-shadow:0 0 0 .2rem #e11b221f}.wizard-steps{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-bottom:22px}.wizard-step{padding:11px 8px;border-radius:9px;background:#e8e9eb;color:#777;font-size:10px;font-weight:900;text-align:center;text-transform:uppercase}.wizard-step.active{background:#0d0d0f;color:#fff}.wizard-step.done{background:#e11b22;color:#fff}.wizard-panel{display:none}.wizard-panel.active{display:block}.choice-card{position:relative;height:100%;padding:22px;border:2px solid #e4e5e7;border-radius:14px;background:#fff;cursor:pointer}.choice-card:hover,.choice-card.selected{border-color:var(--k1-red)}.choice-card input{position:absolute;opacity:0}.choice-card i{font-size:30px;color:var(--k1-red)}.preflight-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #eee}.preflight-row i{font-size:19px}.control-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr);gap:22px}.control-section{padding:20px;border:1px solid #e2e3e5;border-radius:14px;background:#fff}.control-section h2{margin:0 0 15px;font-size:20px;font-style:italic;font-weight:900;text-transform:uppercase}.score-team{display:grid;grid-template-columns:1fr auto;align-items:center;gap:15px;padding:18px;border:1px solid #e4e5e7;border-radius:12px}.score-value{min-width:80px;font-size:52px;font-weight:900;text-align:center}.score-buttons{display:flex;gap:6px;flex-wrap:wrap}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.quick-grid .btn{min-height:52px;font-weight:800}.sponsor-preview{display:flex;align-items:center;gap:12px;min-height:70px;padding:10px 14px;border:1px solid #e4e5e7;border-radius:10px}.sponsor-preview img{width:90px;height:50px;object-fit:contain}.login-body{min-height:100vh;display:grid;grid-template-columns:1fr minmax(460px,.7fr);background:#0d0d0f}.login-brand{display:flex;flex-direction:column;justify-content:center;padding:9vw;color:#fff;background:radial-gradient(circle at 80% 30%,#e11b2233,transparent 28%),#0d0d0f}.login-brand h1{font-size:clamp(70px,11vw,150px);font-style:italic;font-weight:900;letter-spacing:-.08em}.login-brand h1 b{color:var(--k1-red)}.login-brand h2{font-style:italic;letter-spacing:.12em}.login-brand p{max-width:520px;color:#ffffff90}.login-panel{display:grid;place-items:center;padding:35px;background:#f5f5f6}.login-card{width:min(100%,440px);padding:38px;border-radius:18px;background:#fff}.overlay-body{margin:0;overflow:hidden;background:transparent;font-family:Arial,sans-serif}.overlay-layer{position:fixed;inset:0;width:1920px;height:1080px;transform-origin:top left}.scorebug{position:absolute;left:70px;bottom:62px;display:flex;background:#0d0d0ff2;color:#fff;border-radius:10px;overflow:hidden;box-shadow:0 10px 35px #0005}.scorebug-team{display:grid;grid-template-columns:125px 62px;align-items:center;min-height:62px;padding-left:18px;border-right:1px solid #ffffff22}.scorebug-team strong{font-size:19px}.scorebug-score{display:grid;place-items:center;height:100%;background:#fff;color:#111;font-size:31px;font-weight:900}.scorebug-meta{min-width:155px;display:grid;place-items:center;padding:8px 14px;text-align:center}.scorebug-meta strong{font-size:22px}.sponsor-watermark{position:absolute;display:flex;align-items:center;gap:15px;min-width:320px;max-width:460px;padding:13px 18px;border-radius:14px;background:#0d0d0fd9;color:#fff;box-shadow:0 8px 30px #0004}.sponsor-watermark.top-right{top:38px;right:38px}.sponsor-watermark.top-left{top:38px;left:38px}.sponsor-watermark.bottom-right{right:38px;bottom:38px}.sponsor-watermark img{width:160px;height:85px;object-fit:contain}.sponsor-watermark small,.sponsor-watermark strong{display:block}.sponsor-watermark small{color:#ffffffa8;font-size:12px;font-weight:900}.sponsor-watermark strong{font-size:23px}.ticker{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;height:48px;background:#0d0d0ff0;color:#fff;font-size:20px;font-weight:800;overflow:hidden}.ticker b{height:100%;display:grid;place-items:center;padding:0 22px;background:var(--k1-red)}.ticker span{padding-left:24px}.message-card{position:absolute;left:50%;bottom:150px;min-width:720px;max-width:1100px;padding:18px 30px;transform:translateX(-50%);border-left:8px solid var(--k1-red);background:#0d0d0fe8;color:#fff}.message-card strong,.message-card span{display:block}.message-card strong{font-size:36px}.message-card span{margin-top:4px;font-size:20px;color:#ffffffb5}.takeover{position:absolute;inset:0;display:grid;place-items:center;background:#0d0d0ff2;color:#fff;text-align:center}.takeover img{max-width:650px;max-height:360px;object-fit:contain}.takeover h1{margin-top:25px;font-size:62px;font-weight:900}.k1-bug{position:absolute;right:34px;bottom:64px;width:74px;opacity:.78}
@media(max-width:991.98px){.k1-sidebar{transform:translateX(-105%);transition:.2s}.sidebar-open .k1-sidebar{transform:none}.k1-main{margin-left:0}.k1-backdrop{display:none}.sidebar-open .k1-backdrop{position:fixed;inset:0;z-index:1040;display:block;background:#0008}.k1-content{padding:20px 15px}.broadcast-row{grid-template-columns:1fr}.broadcast-actions{justify-content:flex-start}.control-grid{grid-template-columns:1fr}.wizard-steps{grid-template-columns:repeat(3,1fr)}.login-body{grid-template-columns:1fr}.login-brand{display:none}}@media(max-width:575.98px){.wizard-steps{grid-template-columns:repeat(2,1fr)}.quick-grid{grid-template-columns:repeat(2,1fr)}.k1-topbar{padding:10px 14px}.page-head{flex-direction:column}}

/* K1 Streaming v2 Patch 2 - sponsor role cards */
.sponsor-slot-card{
    height:100%;
    padding:20px;
    border:1px solid #e2e3e5;
    border-radius:14px;
    background:#fff;
}
.sponsor-slot-kicker{
    margin-bottom:5px;
    color:var(--k1-red);
    font-size:10px;
    font-weight:900;
    letter-spacing:.13em;
    text-transform:uppercase;
}
.sponsor-slot-card h3{
    margin-bottom:6px;
    font-style:italic;
    font-weight:900;
    text-transform:uppercase;
}
.sponsor-slot-preview{
    min-height:92px;
    display:flex;
    align-items:center;
    gap:16px;
    padding:13px 15px;
    border:1px solid #e4e5e7;
    border-radius:11px;
    background:#f8f9fa;
}
.sponsor-slot-preview img{
    width:125px;
    height:68px;
    object-fit:contain;
    flex:0 0 auto;
}
.sponsor-slot-preview i{
    width:62px;
    text-align:center;
    color:var(--k1-red);
    font-size:30px;
}
.sponsor-slot-preview span{
    min-width:0;
    font-weight:800;
}


/* K1 Streaming v2 Patch 2.1 - Broadcast Setup layout correction */
.broadcast-edit-page .k1-card{
    height:auto;
}
.broadcast-edit-page .broadcast-core-card,
.broadcast-edit-page .broadcast-obs-card,
.broadcast-edit-page .broadcast-sponsors-card{
    min-height:0;
}
.broadcast-edit-page .sponsor-slot-card{
    height:auto;
    padding:18px;
    background:#fafafa;
}
.broadcast-edit-page .sponsor-slot-preview{
    min-height:78px;
}
.broadcast-edit-page .sponsor-slot-preview img{
    width:112px;
    height:60px;
}
.broadcast-edit-page textarea.form-control{
    min-height:130px;
}
@media (min-width:1200px){
    .broadcast-edit-page .broadcast-obs-card{
        position:sticky;
        top:96px;
    }
}


/* K1 Streaming v2 Patch 2.4 */
.timeout-control {
    min-height: 76px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 14px 16px;
    border: 1px solid #dee2e6;
    border-radius: 12px;
    background: #fafafa;
}

.timeout-value {
    min-width: 42px;
    text-align: center;
    font-size: 1.65rem;
    line-height: 1;
    font-weight: 900;
}

.team-library-logo {
    width: 72px;
    height: 58px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border: 1px solid #dee2e6;
    border-radius: 9px;
    background: #fff;
}

.team-library-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.team-library-logo span {
    font-weight: 900;
    color: #555;
}
