/* KOVAT Chat v1.8 accessibility + theme repair */
:root{--red:#ff224a;--red2:#99001e;--bg:#050507;--panel:#111117;--panel2:#171722;--text:#f7f7fb;--muted:#a8a8b8;--line:#2a2a38;--good:#27d17f;--warn:#ffbf47;--bad:#ff4d6d;--shadow:0 20px 60px rgba(0,0,0,.45)}
html,body{height:100%;min-height:100%;overflow:auto!important;background:radial-gradient(circle at 20% 5%,#2b0715 0,#08080c 36%,#010103 100%)!important;color:var(--text);}
body,button,input,textarea,select{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;}
body.kovat-theme-active{--red:var(--theme-primary,var(--red));--panel:var(--theme-panel,var(--panel));--bg:var(--theme-bg,var(--bg));--text:var(--theme-text,var(--text));--muted:var(--theme-muted,var(--muted));}
.auth-shell{min-height:100svh!important;padding:18px!important;display:grid!important;place-items:center!important;overflow:auto!important;}
.auth-card{width:min(440px,calc(100vw - 28px))!important;padding:clamp(18px,4vw,30px)!important;border-radius:26px!important;max-height:none!important;}
.auth-card .brand,.login-brand,.auth-brand{justify-content:center!important;align-items:flex-end!important;gap:6px!important;margin-bottom:10px!important;max-width:100%!important;overflow:hidden!important;}
.auth-card .brand-main,.login-brand .brand-main,.auth-brand .brand-main{font-size:clamp(30px,10vw,54px)!important;line-height:.85!important;white-space:nowrap!important;}
.auth-card .brand-ai,.login-brand .brand-ai,.auth-brand .brand-ai{font-size:clamp(13px,3vw,20px)!important;color:#a8a8b8!important;white-space:nowrap!important;}
*{box-sizing:border-box} img,video{max-width:100%;height:auto} button,input,textarea,select{font:inherit} button{cursor:pointer;color:inherit}
.primary,.danger,.ghost,.soft,.pill-btn,.nav button,.admin-link,.logout,.big-red-link{border-radius:16px!important;border:1px solid rgba(255,255,255,.08)!important;text-decoration:none!important;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease!important;box-shadow:none;}
.primary{background:linear-gradient(135deg,var(--red),var(--red2))!important;color:white!important;font-weight:900!important;}
.ghost,.soft,.pill-btn{background:linear-gradient(145deg,#14141d,#0c0c12)!important;color:#f7f7fb!important;border-color:var(--line)!important;}
.danger{background:linear-gradient(135deg,#ff315a,#8b001c)!important;color:white!important;font-weight:900!important;}
.primary:hover,.ghost:hover,.danger:hover,.pill-btn:hover{transform:translateY(-1px)!important;border-color:rgba(255,34,74,.55)!important;box-shadow:0 12px 26px rgba(0,0,0,.22)!important;}
.app-shell{height:100svh!important;min-height:100svh!important;display:grid!important;grid-template-columns:minmax(230px,280px) minmax(0,1fr)!important;overflow:hidden!important;}
.sidebar{height:100svh!important;overflow-y:auto!important;overflow-x:hidden!important;background:linear-gradient(180deg,#0d0d13,#050506)!important;border-right:1px solid var(--line)!important;}
.sidebar .brand-main{font-size:clamp(22px,3vw,30px)!important}.sidebar .brand-ai{font-size:14px!important}.sidebar.collapsed{grid-template-columns:80px 1fr!important;width:82px!important;}
.nav button,.admin-link{min-height:48px!important;display:flex!important;align-items:center!important;gap:11px!important;background:#101017!important;color:#f1f1f6!important;}
.nav button[data-tab="sales"],#salesNav{display:none!important;}
.nav button[data-tab="groups"],.nav button[data-tab="calls"]{display:none!important;}
.nav button.active,.nav button:hover,.admin-link:hover{background:linear-gradient(135deg,rgba(255,34,74,.24),rgba(255,34,74,.07))!important;border-color:rgba(255,34,74,.48)!important;}
.content{height:100svh!important;min-height:0!important;overflow:hidden!important;padding:clamp(12px,2.2vw,24px)!important;display:flex!important;flex-direction:column!important;}
.topbar{flex:0 0 auto!important;min-height:48px!important;margin-bottom:12px!important;display:flex!important;gap:12px!important;align-items:center!important;justify-content:space-between!important;}
.topbar h1{font-size:clamp(21px,3vw,32px)!important;margin:0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#topActions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.view{flex:1 1 auto!important;min-height:0!important;overflow:auto!important;padding-bottom:20px!important;scrollbar-color:rgba(255,34,74,.5) transparent;}
.view.v18-chat-view{overflow:hidden!important;display:flex!important;flex-direction:column!important;}
.cards,.shop-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr))!important;gap:14px!important;align-items:stretch!important;}
.chat-card,.friend-card,.activity-card,.update-card,.call-row,.invite-row,.panel,.shop-card,.position-card{background:linear-gradient(145deg,var(--panel2),#0d0d12)!important;border:1px solid var(--line)!important;border-radius:22px!important;color:var(--text)!important;box-shadow:0 10px 28px rgba(0,0,0,.16)!important;}
.toolbar{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin-bottom:14px!important;align-items:center!important;}
.search-wrap{flex:1 1 260px!important;min-width:min(260px,100%)!important;position:relative!important;}
.search-wrap input{width:100%!important;border-radius:999px!important;padding:13px 18px 13px 42px!important;background:#09090e!important;color:var(--text)!important;border:1px solid var(--line)!important;}
.search-wrap:before{content:'⌕';position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:20px;z-index:2;}
.chat-tabs,.tabs{display:flex!important;gap:8px!important;flex-wrap:wrap!important;margin-bottom:12px!important;}
.chat-tabs button,.tabs button{background:#111119!important;color:#f8f8ff!important;border:1px solid var(--line)!important;padding:10px 13px!important;border-radius:14px!important;}
.chat-tabs button.active,.tabs button.active{background:rgba(255,34,74,.24)!important;border-color:var(--red)!important;}
.chat-layout{height:100%!important;min-height:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(220px,270px)!important;gap:14px!important;overflow:hidden!important;}
.chat-main{height:100%!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;}
.messages{flex:1 1 auto!important;min-height:0!important;height:auto!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;border-radius:24px!important;background:#08080c!important;border:1px solid var(--line)!important;padding:14px!important;scroll-behavior:smooth!important;}
.message{display:flex!important;gap:10px!important;margin:9px 0!important;align-items:flex-end!important;max-width:100%!important;}
.message.mine{flex-direction:row-reverse!important}.message .avatar{width:32px!important;height:32px!important;border-radius:50%!important;object-fit:cover!important;flex:0 0 auto!important;}
.message>div:not(.avatar){min-width:0!important}.bubble{max-width:min(680px,74vw)!important;width:max-content!important;background:#15151e!important;border:1px solid #2c2c3b!important;border-radius:18px!important;padding:10px 13px!important;white-space:pre-wrap!important;word-break:break-word!important;overflow-wrap:anywhere!important;line-height:1.35!important;}
.message.mine .bubble{background:linear-gradient(135deg,#701024,#260811)!important;border-color:#a11631!important}.message.mentioned .bubble{border-color:var(--warn)!important;box-shadow:0 0 0 2px rgba(255,191,71,.12)!important;}
.meta{font-size:12px!important;color:var(--muted)!important;margin-bottom:3px!important}.msg-time{font-size:11px!important;color:#8d8da1!important;margin-left:5px!important;}
.composer{display:flex!important;gap:9px!important;margin-top:10px!important;flex:0 0 auto!important;align-items:flex-end!important;background:#0b0b11!important;border:1px solid var(--line)!important;border-radius:20px!important;padding:9px!important;}
.composer textarea{flex:1!important;min-height:48px!important;max-height:128px!important;resize:none!important;border-radius:15px!important;background:#07070b!important;color:var(--text)!important;border:1px solid transparent!important;}
.side-panel{min-height:0!important;overflow:auto!important;background:#0c0c12!important;border:1px solid var(--line)!important;border-radius:24px!important;padding:14px!important;}
.chat-image,.file-preview img{max-width:min(320px,72vw)!important;max-height:240px!important;object-fit:contain!important;border-radius:14px!important;display:block!important;}
.file-preview video,.message video{max-width:min(420px,75vw)!important;max-height:280px!important;border-radius:14px!important;display:block!important;}
.modal{position:fixed!important;inset:0!important;display:grid!important;place-items:center!important;padding:16px!important;background:rgba(0,0,0,.72)!important;z-index:9990!important;}.modal.hidden{display:none!important;}
.modal-card{width:min(820px,94vw)!important;max-height:88svh!important;overflow:auto!important;border-radius:28px!important;background:#12121a!important;border:1px solid var(--line)!important;padding:22px!important;}
.position-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(128px,1fr))!important;gap:10px!important;}.position-card{position:relative;cursor:pointer!important;min-height:118px!important;}.position-card input{position:absolute;opacity:0;pointer-events:none}.position-card.selected{border-color:var(--red)!important;background:linear-gradient(145deg,rgba(255,34,74,.22),#111119)!important;}.position-card.occupied:hover:after{content:attr(data-replace);position:absolute;left:8px;right:8px;bottom:8px;background:#050507;color:white;border:1px solid var(--red);border-radius:12px;padding:8px;font-size:12px;box-shadow:var(--shadow);}
.rarity{display:inline-flex!important;border-radius:999px!important;padding:5px 9px!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase!important;}.rarity.common{background:#2a2a33!important}.rarity.uncommon{background:#0e4d2d!important}.rarity.epic{background:#50258c!important}.rarity.legendary{background:#8f5b00!important}
.toast-stack{position:fixed!important;top:14px!important;right:14px!important;z-index:10000!important;display:grid!important;gap:10px!important;max-width:min(430px,calc(100vw - 28px))!important;}.toast{background:#12121a!important;border:1px solid rgba(255,34,74,.35)!important;border-radius:18px!important;padding:12px 14px!important;color:var(--text)!important;box-shadow:var(--shadow)!important;}
.v18-privacy-cover{position:fixed;inset:0;background:#000;z-index:2147483647;display:none;align-items:center;justify-content:center;color:#fff;font-size:18px;text-align:center;padding:24px}.privacy-cover-on .v18-privacy-cover{display:flex}@media print{body>*{visibility:hidden!important}body:before{content:'KOVAT Chat is protected';visibility:visible!important;display:grid;place-items:center;position:fixed;inset:0;background:#000;color:#fff}}
@media(max-width:920px){html,body{height:100%;overflow:auto!important}.app-shell{display:flex!important;flex-direction:column!important;height:100svh!important;overflow:hidden!important}.sidebar{height:auto!important;max-height:42svh!important;flex:0 0 auto!important}.content{height:auto!important;flex:1 1 auto!important;min-height:0!important;padding:12px!important}.chat-layout{grid-template-columns:1fr!important;height:100%!important}.side-panel{display:none!important}.cards,.shop-grid{grid-template-columns:1fr!important}.bubble{max-width:86vw!important}.topbar{align-items:flex-start!important;flex-direction:column!important}.composer{gap:6px!important}.composer .ghost,.composer .primary{padding:10px!important}.modal-card{max-height:84svh!important}.auth-card .brand-main{font-size:clamp(28px,12vw,46px)!important}}
@media(max-width:520px){.nav{grid-template-columns:repeat(2,1fr);display:grid!important}.nav button,.admin-link{min-height:44px!important;padding:10px!important}.sidebar .brand.small{display:none}.toolbar{display:grid!important}.primary,.ghost,.danger{white-space:normal!important}.chat-card,.shop-card,.panel{padding:13px!important}.message .avatar{width:28px!important;height:28px!important}.bubble{max-width:82vw!important}.composer textarea{min-height:44px!important}.auth-shell{padding:10px!important}.auth-card{border-radius:22px!important}}
