:root {
      --bg: #0a0e1a;
      --surface: #111827;
      --surface2: #1a2235;
      --primary: #4FC3F7;
      --border: rgba(255,255,255,0.08);
      --text1: #e2e8f0;
      --text2: #94a3b8;
      --green: #22c55e;
      --red: #ef4444;
      --orange: #f59e0b;
      --r: 8px;
    }
    * { box-sizing: border-box; margin: 0; padding: 0; }
    body { background: var(--bg); color: var(--text1); font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; min-height: 100vh; font-size: 14px; }

    .header { background: var(--surface); border-bottom: 1px solid var(--border); padding: 0 20px; height: 54px; display: flex; align-items: center; justify-content: space-between; position: sticky; top: 0; z-index: 100; }
    .logo { font-size: 16px; font-weight: 800; letter-spacing: 2px; color: var(--primary); }
    .logo span { color: var(--text1); }
    .site-update { margin-right: auto; margin-left: 22px; color: var(--text2); font-size: 12px; letter-spacing: .4px; white-space: nowrap; }
    .moderation-lease-timer { display:inline-flex;align-items:center;gap:7px;margin-right:12px;padding:6px 10px;border:1px solid rgba(245,158,11,.48);border-radius:999px;background:rgba(245,158,11,.12);color:#fbbf24;font-size:11px;font-weight:800;white-space:nowrap; }
    .moderation-lease-timer[hidden] { display:none; }
    .moderation-lease-timer strong { min-width:34px;color:#fff;font-variant-numeric:tabular-nums;text-align:center; }
    .moderation-lease-timer.expiring { border-color:rgba(239,68,68,.65);background:rgba(239,68,68,.13);color:#ff6b75; }
    .header-telegram { display:inline-flex;align-items:center;gap:7px;margin-right:14px;padding:7px 11px;border:1px solid rgba(79,195,247,.42);border-radius:999px;background:rgba(34,158,217,.12);color:#4fc3f7;text-decoration:none;font-size:12px;font-weight:900;letter-spacing:.03em;white-space:nowrap;transition:background .16s,border-color .16s,transform .16s; }
    .header-telegram:hover { background:rgba(34,158,217,.22);border-color:#4fc3f7;transform:translateY(-1px); }
    .header-telegram-icon { font-size:15px;line-height:1;transform:rotate(-12deg); }
    .user-info { display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--text2); }
    .user-info img { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; }
    .btn-out { background: transparent; border: 1px solid var(--border); color: var(--text2); padding: 5px 12px; border-radius: var(--r); cursor: pointer; font-size: 12px; transition: .15s; }
    .btn-out:hover { border-color: var(--primary); color: var(--primary); }
    .site-update-banner { position: fixed; left: 50%; top: 66px; z-index: 1000; transform: translate(-50%, -12px); display: flex; align-items: center; gap: 12px; width: min(560px, calc(100vw - 24px)); padding: 12px 14px; border-radius: var(--r); border: 1px solid rgba(79,195,247,.65); background: rgba(17,24,39,.98); box-shadow: 0 18px 48px rgba(0,0,0,.52); color: var(--text1); font-size: 13px; font-weight: 700; opacity: 0; pointer-events: none; transition: opacity .18s, transform .18s; }
    .site-update-banner.show { opacity: 1; pointer-events: auto; transform: translate(-50%, 0); }
    .site-update-banner span { flex: 1; line-height: 1.35; }
    .site-update-banner button { flex-shrink: 0; border: 0; background: var(--primary); color: #fff; border-radius: var(--r); padding: 8px 12px; font-size: 12px; font-weight: 900; cursor: pointer; }

    .center-screen { display: flex; align-items: center; justify-content: center; min-height: calc(100vh - 54px); padding: 24px; }
    .auth-card { background: var(--surface); border: 1px solid var(--border); border-radius: 12px; padding: 40px 36px; max-width: 380px; width: 100%; }
    .auth-title { font-size: 22px; font-weight: 800; color: var(--primary); letter-spacing: 2px; margin-bottom: 4px; text-align: center; }
    .auth-sub { color: var(--text2); font-size: 12px; text-align: center; margin-bottom: 28px; }
    .auth-tabs { display: flex; background: var(--surface2); border-radius: var(--r); padding: 3px; gap: 3px; margin-bottom: 22px; }
    .auth-tab { flex: 1; padding: 7px; border: none; background: transparent; color: var(--text2); border-radius: 6px; cursor: pointer; font-size: 13px; font-weight: 600; transition: .15s; }
    .auth-tab.active { background: var(--primary); color: #fff; }
    .btn-google { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; background: #fff; color: #111; border: none; padding: 12px; border-radius: var(--r); font-size: 14px; font-weight: 600; cursor: pointer; transition: opacity .15s; margin-bottom: 8px; }
    .btn-google:hover { opacity: .88; }
    .btn-google:disabled { opacity: .4; cursor: default; }
    .btn-yandex { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; background: #FC3F1D; color: #fff; border: none; padding: 12px; border-radius: var(--r); font-size: 14px; font-weight: 600; cursor: pointer; transition: opacity .15s; }
    .btn-yandex:hover { opacity: .88; }
    .btn-yandex:disabled { opacity: .4; cursor: default; }
    .y-icon { display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; background: #fff; color: #FC3F1D; border-radius: 50%; font-weight: 800; font-size: 13px; }
    .g-icon { font-size: 15px; font-weight: 900; color: #4285F4; }
    .field-group { margin-bottom: 14px; }
    .flabel { display: block; color: var(--text2); font-size: 11px; font-weight: 700; letter-spacing: .5px; margin-bottom: 5px; }
    .finput { width: 100%; background: var(--surface2); border: 1px solid var(--border); color: var(--text1); padding: 10px 12px; border-radius: var(--r); font-size: 13px; outline: none; transition: border-color .15s; }
    .finput:focus { border-color: var(--primary); }
    .btn-primary { width: 100%; background: var(--primary); color: #fff; border: none; padding: 12px; border-radius: var(--r); font-size: 14px; font-weight: 700; cursor: pointer; transition: opacity .15s; }
    .btn-primary:hover { opacity: .88; }
    .btn-primary:disabled { opacity: .4; cursor: default; }
    .auth-err { color: var(--red); font-size: 12px; margin-top: 10px; text-align: center; display: none; }
    .upload-gate { margin: 12px 0; padding: 12px 14px; border: 1px solid rgba(245,158,11,.32); background: rgba(245,158,11,.10); color: #facc15; border-radius: var(--r); font-size: 13px; line-height: 1.45; }

    .author-shell { max-width: 1320px; margin: 0 auto; padding: 22px 16px 0; }
    .workspace-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
    .workspace-kicker { color: var(--primary); font-size: 11px; font-weight: 800; letter-spacing: 1.4px; text-transform: uppercase; margin-bottom: 5px; }
    .workspace-head h1 { color: var(--text1); font-size: 24px; line-height: 1.1; letter-spacing: .2px; }
    .workspace-refresh { flex-shrink: 0; padding: 8px 13px; }
    .workspace-tabs { display: flex; gap: 8px; overflow-x: auto; padding: 3px 0 10px; scrollbar-width: thin; }
    .workspace-tab { border: 1px solid var(--border); background: var(--surface); color: var(--text2); border-radius: var(--r); padding: 9px 13px; font-size: 13px; font-weight: 800; white-space: nowrap; cursor: pointer; transition: border-color .15s, color .15s, background .15s; }
    .workspace-tab:hover { border-color: rgba(79,195,247,.45); color: var(--text1); }
    .workspace-tab.active { border-color: var(--primary); color: var(--primary); background: rgba(79,195,247,.12); }
    .workspace-panel { display: none; }
    .workspace-panel.active { display: block; }
    .resubmit-banner { max-width: 1320px; margin: 12px auto 0; padding: 12px 16px; border: 1px solid rgba(245,158,11,.35); background: rgba(245,158,11,.1); border-radius: var(--r); color: var(--text1); display: flex; justify-content: space-between; align-items: center; gap: 12px; }
    .resubmit-banner strong { display: block; color: var(--orange); font-size: 13px; margin-bottom: 3px; }
    .resubmit-banner span { display: block; color: var(--text2); font-size: 12px; line-height: 1.35; overflow-wrap: anywhere; }
    .author-list-shell { max-width: 980px; margin: 0 auto; padding: 14px 16px 60px; }
    .list-tools { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
    .list-filter-row { display: flex; flex-wrap: wrap; gap: 7px; }
    .filter-chip { border: 1px solid var(--border); background: var(--surface); color: var(--text2); border-radius: 999px; padding: 7px 11px; font-size: 12px; font-weight: 800; cursor: pointer; transition: border-color .15s, color .15s, background .15s; }
    .filter-chip:hover { border-color: rgba(79,195,247,.45); color: var(--text1); }
    .filter-chip.active { border-color: var(--primary); color: var(--primary); background: rgba(79,195,247,.12); }
    .list-search { max-width: 320px; flex: 1; }
    .lineup-list { display: grid; gap: 10px; }
    .lineup-card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--r); padding: 14px; display: grid; grid-template-columns: 1fr auto; gap: 12px; align-items: center; }
    .lineup-card.clickable { cursor: pointer; transition: border-color .15s, transform .15s; }
    .lineup-card.clickable:hover { border-color: rgba(79,195,247,.45); transform: translateY(-1px); }
    .lineup-title { color: var(--text1); font-size: 15px; font-weight: 800; margin-bottom: 6px; }
    .lineup-meta { display: flex; flex-wrap: wrap; gap: 6px; color: var(--text2); font-size: 12px; }
    .lineup-chip { background: var(--surface2); border: 1px solid var(--border); border-radius: 999px; padding: 4px 8px; }
    .lineup-date-chip { display: inline-flex; flex-direction: column; gap: 1px; align-items: center; line-height: 1.05; min-width: 72px; }
    .lineup-date-chip b { color: var(--text1); font-size: 12px; }
    .lineup-date-chip span { color: var(--text2); font-size: 11px; }
    .status-chip { border-radius: 999px; padding: 5px 9px; font-size: 11px; font-weight: 900; text-transform: uppercase; white-space: nowrap; }
    .status-chip.approved { background: rgba(34,197,94,.12); color: var(--green); border: 1px solid rgba(34,197,94,.28); }
    .status-chip.pending { background: rgba(245,158,11,.12); color: var(--orange); border: 1px solid rgba(245,158,11,.28); }
    .status-chip.rejected { background: rgba(239,68,68,.12); color: var(--red); border: 1px solid rgba(239,68,68,.28); }
    .lineup-card-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
    .moderator-tab { border-color: rgba(255,70,85,.38); }
    .moderator-tab.active { color: #ff7180; border-color: #ff4655; background: rgba(255,70,85,.11); }
    .moderation-shell { max-width:980px; margin:0 auto; padding:14px 16px 60px; }
    .moderation-head { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px; border:1px solid var(--border); border-radius:var(--r); background:var(--surface); }
    .moderation-head h2 { margin:3px 0 6px; color:var(--text); font-size:20px; letter-spacing:0; }
    .moderation-head p { max-width:680px; margin:0; color:var(--text2); font-size:12px; line-height:1.5; }
    .moderation-kicker { color:#ff7180; font-size:10px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
    .moderation-security-note { margin:10px 0; padding:9px 12px; border:1px solid var(--border); border-radius:var(--r); color:var(--text2); background:var(--surface); font-size:11px; }
    .moderation-status { padding:28px 14px; color:var(--text2); text-align:center; font-size:13px; }
    .moderation-list { display:grid; gap:14px; }
    .moderation-card { overflow:hidden; border:1px solid var(--border); border-radius:var(--r); background:var(--surface); }
    .moderation-card-main { display:grid; grid-template-columns:minmax(260px,1fr) minmax(300px,1.15fr); gap:0; }
    .moderation-video { min-height:260px; width:100%; height:100%; background:#050a12; object-fit:contain; }
    .moderation-info { padding:18px; }
    .moderation-meta { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:12px; }
    .moderation-chip { padding:5px 8px; border:1px solid var(--border); border-radius:999px; color:var(--text2); font-size:11px; font-weight:700; }
    .moderation-title { margin:0 0 8px; color:var(--text); font-size:19px; }
    .moderation-description { margin:0; color:var(--text2); white-space:pre-wrap; line-height:1.55; font-size:13px; }
    .moderation-author { margin-top:14px; color:var(--primary); font-size:12px; }
    .moderation-actions { display:flex; gap:10px; padding:14px 18px; border-top:1px solid var(--border); background:rgba(5,10,18,.22); }
    .moderation-action { flex:1; min-height:42px; border:0; border-radius:9px; font-weight:800; cursor:pointer; }
    .moderation-action:disabled { opacity:.45; cursor:wait; }
    .moderation-lock-status { padding:10px 18px; border-top:1px solid rgba(245,158,11,.28); background:rgba(245,158,11,.09); color:#fbbf24; font-size:12px; font-weight:800; }
    .moderation-card-locked { border-color:rgba(245,158,11,.42); }
    .moderation-card-locked .moderation-metadata-form,
    .moderation-card-locked .moderation-actions { display:none; }
    .moderation-card-editing .moderation-card-main { grid-template-columns:1fr; }
    .moderation-card-editing .moderation-video { display:none; }
    .moderation-promote { color:#07140b; background:#66bb6a; }
    .moderation-complete { color:#04131c; background:#50d6ff; }
    .moderation-reject { color:#ffd5d9; border:1px solid rgba(255,70,85,.5); background:rgba(255,70,85,.11); }
    .moderation-empty { padding:50px 20px; border:1px dashed var(--border); border-radius:14px; color:var(--text2); text-align:center; }
    .chat-tab-badge { margin-left:4px; min-width:17px; height:17px; padding:0 5px; border-radius:999px; background:var(--red); color:#fff; font-size:10px; line-height:17px; text-align:center; }
    .chat-tab-badge[hidden] { display:none; }
    .admin-chat-shell { max-width:860px; margin:18px auto 60px; border:1px solid var(--border); border-radius:14px; background:var(--surface); overflow:hidden; }
    .admin-chat-head { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:16px 18px; border-bottom:1px solid var(--border); }
    .admin-chat-head h2 { margin:3px 0 0; font-size:19px; color:var(--text1); }
    #admin-chat-status { color:var(--text2); font-size:11px; }
    .admin-chat-thread { height:min(58vh,560px); min-height:360px; overflow-y:auto; padding:18px; background:rgba(5,10,18,.24); }
    .admin-chat-row { display:flex; margin:0 0 10px; }
    .admin-chat-row.mine { justify-content:flex-end; }
    .admin-chat-bubble { max-width:min(76%,620px); padding:10px 12px 7px; border:1px solid var(--border); border-radius:13px 13px 13px 4px; color:var(--text1); background:var(--surface2); white-space:pre-wrap; line-height:1.45; }
    .admin-chat-row.mine .admin-chat-bubble { border-color:rgba(79,195,247,.38); border-radius:13px 13px 4px 13px; background:rgba(79,195,247,.13); }
    .admin-chat-bubble time { display:block; margin-top:5px; color:var(--text2); font-size:9px; text-align:right; }
    .admin-chat-empty { padding:50px 20px; color:var(--text2); text-align:center; }
    .admin-chat-compose { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; padding:12px; border-top:1px solid var(--border); }
    .admin-chat-compose textarea { resize:none; border:1px solid var(--border); border-radius:10px; padding:10px 12px; background:var(--surface2); color:var(--text1); font:inherit; }
    .admin-chat-compose button { min-width:120px; border:0; border-radius:10px; background:var(--primary); color:#061019; font-weight:900; cursor:pointer; }
    .empty-state { background: var(--surface); border: 1px dashed var(--border); border-radius: var(--r); padding: 24px; color: var(--text2); font-size: 14px; line-height: 1.5; }
    .empty-state strong { display: block; color: var(--text1); font-size: 16px; margin-bottom: 4px; }
    .cabinet-stats-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
    .cabinet-stat { background: var(--surface); border: 1px solid var(--border); border-radius: var(--r); padding: 14px; }
    .cabinet-stat span { display: block; color: var(--text2); font-size: 11px; font-weight: 800; text-transform: uppercase; margin-bottom: 8px; }
    .cabinet-stat b { display: block; color: var(--primary); font-size: 28px; line-height: 1; }
    .materials-toolbar { background: var(--surface); border: 1px solid var(--border); border-radius: var(--r); padding: 14px; margin-bottom: 10px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
    .materials-toolbar strong { display: block; color: var(--text1); font-size: 15px; margin-bottom: 4px; }
    .materials-toolbar span { display: block; color: var(--text2); font-size: 12px; line-height: 1.4; }
    .materials-add-btn { width: auto; padding: 10px 14px; flex-shrink: 0; }
    .materials-list { display: grid; gap: 10px; margin-bottom: 16px; }
    .material-form-shell { background: var(--surface); border: 1px solid rgba(79,195,247,.28); border-radius: var(--r); padding: 14px; margin-bottom: 10px; }
    .material-form-grid { display: grid; grid-template-columns: 1fr 260px; gap: 10px; margin-bottom: 10px; }
    .material-form-shell textarea { min-height: 96px; resize: vertical; }
    .material-upload-state { border: 1px dashed var(--border); border-radius: var(--r); padding: 10px 12px; color: var(--text2); font-size: 12px; margin-bottom: 10px; }
    .material-video-preview { margin-bottom: 10px; }
    .material-form-actions { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
    .material-item { background: var(--surface); border: 1px solid var(--border); border-radius: var(--r); padding: 14px; display: grid; grid-template-columns: 1fr auto; gap: 12px; align-items: start; }
    .material-item-head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 7px; }
    .material-item h3 { color: var(--text1); font-size: 16px; line-height: 1.25; overflow-wrap: anywhere; }
    .material-badge { border: 1px solid rgba(79,195,247,.28); background: rgba(79,195,247,.12); color: var(--primary); border-radius: 999px; padding: 4px 8px; font-size: 11px; font-weight: 900; }
    .material-badge.hidden { border-color: rgba(245,158,11,.30); background: rgba(245,158,11,.12); color: var(--orange); }
    .material-desc { color: var(--text2); font-size: 13px; line-height: 1.5; white-space: pre-wrap; overflow-wrap: anywhere; }
    .material-video { display: block; width: min(100%, 520px); max-height: 320px; margin-top: 12px; border-radius: var(--r); background: #000; border: 1px solid var(--border); }
    .material-preview-warning { margin-top: 8px; border: 1px solid rgba(245,158,11,.32); border-radius: var(--r); background: rgba(245,158,11,.10); color: #fed7aa; padding: 9px 10px; font-size: 12px; line-height: 1.45; }
    .material-link { display: inline-flex; margin-top: 9px; color: var(--primary); font-size: 13px; font-weight: 800; text-decoration: none; overflow-wrap: anywhere; }
    .material-link:hover { text-decoration: underline; }
    .material-actions { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
    .materials-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
    .material-card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--r); padding: 16px; display: flex; gap: 12px; align-items: flex-start; }
    .material-icon { width: 34px; height: 34px; border-radius: var(--r); background: rgba(79,195,247,.12); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
    .material-card h3 { color: var(--text1); font-size: 15px; margin-bottom: 5px; }
    .material-card p { color: var(--text2); font-size: 13px; line-height: 1.45; }
    .modal-close { width: 32px; height: 32px; border: 1px solid var(--border); border-radius: var(--r); background: transparent; color: var(--text2); cursor: pointer; font-size: 16px; flex-shrink: 0; }
    .modal-close:hover { border-color: var(--primary); color: var(--primary); }
    .lineup-detail-card { background: var(--surface); border: 1px solid rgba(79,195,247,.25); border-radius: 14px; width: min(720px, calc(100vw - 28px)); max-height: min(86vh, 820px); overflow: auto; padding: 20px; box-shadow: 0 24px 64px rgba(0,0,0,.62); }
    .lineup-detail-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
    .lineup-detail-head h2 { color: var(--text1); font-size: 22px; line-height: 1.15; }
    .detail-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-bottom: 14px; }
    .detail-tile { background: var(--surface2); border: 1px solid var(--border); border-radius: var(--r); padding: 10px; min-width: 0; }
    .detail-tile span { display: block; color: var(--text2); font-size: 10px; font-weight: 800; text-transform: uppercase; margin-bottom: 4px; }
    .detail-tile b { display: block; color: var(--text1); font-size: 13px; overflow-wrap: anywhere; }
    .detail-id-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 14px; color: var(--text2); font-size: 11px; }
    .detail-id-row code { color: var(--text2); overflow-wrap: anywhere; }
    .copy-id-btn { border: 1px solid var(--border); background: transparent; color: var(--text2); border-radius: var(--r); padding: 6px 10px; font-size: 11px; font-weight: 800; cursor: pointer; flex-shrink: 0; }
    .copy-id-btn:hover { border-color: var(--primary); color: var(--primary); }
    .copy-id-btn.danger { color: #fecaca; border-color: rgba(239,68,68,.35); }
    .copy-id-btn.danger:hover { border-color: var(--red); color: var(--red); }
    .draft-actions { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
    .detail-section { margin-top: 14px; }
    .detail-section-title { color: var(--primary); font-size: 11px; font-weight: 900; text-transform: uppercase; letter-spacing: .8px; margin-bottom: 8px; }
    .detail-text { background: var(--bg); border: 1px solid var(--border); border-radius: var(--r); padding: 12px; color: var(--text1); line-height: 1.55; white-space: pre-wrap; }
    .detail-warning { background: rgba(239,68,68,.1); border: 1px solid rgba(239,68,68,.28); color: #fecaca; border-radius: var(--r); padding: 12px; line-height: 1.45; }
    .detail-video { width: 100%; border-radius: var(--r); background: #000; max-height: 380px; }
    .detail-shots { display: grid; grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); gap: 8px; }
    .detail-shots a { display: block; border-radius: var(--r); overflow: hidden; border: 1px solid var(--border); background: var(--bg); }
    .detail-shots img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; display: block; }
    .detail-actions { margin-top: 16px; display: flex; justify-content: flex-end; align-items: center; gap: 8px; flex-wrap: wrap; }
    .detail-action-primary { width: auto; padding: 10px 14px; font-size: 13px; }

    .section-title { font-size: 11px; font-weight: 700; letter-spacing: 1px; color: var(--primary); margin-bottom: 8px; margin-top: 24px; }
    .card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--r); padding: 16px; margin-bottom: 14px; }
    select.finput { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; padding-right: 32px; cursor: pointer; }

    /* Agents grid */
    .agents-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(80px, 1fr)); gap: 8px; justify-items: center; }
    .agent-card { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 8px 4px; background: var(--surface2); border: 1.5px solid var(--border); border-radius: 8px; cursor: pointer; transition: border-color .15s, background .15s; width: 100%; aspect-ratio: 1; max-width: 90px; }
    .agent-card:hover { border-color: var(--primary); }
    .agent-card.selected { border-color: var(--primary); background: rgba(79,195,247,0.1); }
    .agent-card img { width: 48px; height: 48px; border-radius: 6px; object-fit: cover; }
    .agent-card span { font-size: 10px; color: var(--text2); text-align: center; max-width: 64px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .agent-card.selected span { color: var(--primary); }

    /* Abilities */
    .abilities-row { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 4px; }
    .ability-empty-hint { color: var(--text2); font-size: 13px; }
    .ability-btn { min-width:72px; min-height:78px; background: var(--surface2); color:var(--text2); border: 1.5px solid var(--border); border-radius: var(--r); padding: 8px 7px 7px; cursor: pointer; transition: border-color .15s, background .15s; display: flex; flex-direction: column; align-items: center; justify-content:center; gap:4px; }
    .ability-btn:hover { border-color: var(--primary); }
    .ability-btn.selected { border-color: var(--primary); background: rgba(79,195,247,0.12); }
    .ability-icon-wrap { position:relative; width:34px; height:34px; display:grid; place-items:center; flex:0 0 34px; }
    .ability-icon-wrap img { position:absolute; inset:0; width:34px; height:34px; object-fit:contain; opacity:0; transition:opacity .12s; }
    .ability-icon-wrap.loaded img { opacity:1; }
    .ability-icon-fallback { display:grid; place-items:center; width:28px; height:28px; border:1px solid var(--border); border-radius:50%; color:var(--text2); font-size:11px; font-weight:900; }
    .ability-icon-wrap.loaded .ability-icon-fallback { visibility:hidden; }
    .ability-btn .ability-name { font-size:11px; color:var(--text2); display:block; text-align:center; max-width:62px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .ability-btn.selected .ability-name { color:#fff; }
    .extra-ability-picker { display: flex; flex-wrap: wrap; gap: 8px; }
    .extra-ability-pick { position: relative; width:72px; min-width:72px; min-height:78px; }
    .extra-ability-pick > img { width:34px; height:34px; object-fit:contain; flex:0 0 34px; }
    .extra-ability-pick > span { display:block; max-width:62px; overflow:hidden; color:var(--text2); font-size:11px; text-align:center; text-overflow:ellipsis; white-space:nowrap; }
    .extra-ability-pick:disabled { opacity: .45; cursor: not-allowed; }
    .extra-ability-list { display: grid; gap: 8px; }
    .extra-ability-item { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 8px; align-items: center; min-width: 0; max-width: 100%; overflow: hidden; border: 1px solid var(--border); border-radius: var(--r); background: var(--surface2); padding: 8px; }
    .extra-ability-item.selected { border-color: var(--primary); background: rgba(79,195,247,.12); box-shadow: 0 0 0 1px rgba(79,195,247,.18) inset; }
    .extra-ability-num { width: 24px; height: 24px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: rgba(79,195,247,.16); color: var(--primary); font-weight: 800; font-size: 12px; }
    .extra-ability-main { width: 100%; min-width: 0; overflow: hidden; display: flex; align-items: center; gap: 8px; border: 0; background: transparent; color: inherit; padding: 0; cursor: pointer; text-align: left; }
    .extra-ability-main > span { display: block; min-width: 0; overflow: hidden; }
    .extra-ability-main img { width: 28px; height: 28px; object-fit: contain; flex: 0 0 auto; }
    .extra-ability-name { display: block; min-width: 0; max-width: 100%; font-weight: 800; color: var(--text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .extra-ability-meta { display: block; min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; color: var(--text2); margin-top: 2px; }
    .extra-ability-actions { display: flex; gap: 6px; align-items: center; }
    .extra-ability-action { min-width: 30px; height: 30px; border: 1px solid var(--border); border-radius: var(--r); background: var(--surface); color: var(--text); cursor: pointer; font-weight: 800; }
    .extra-ability-action:hover { border-color: var(--primary); color: var(--primary); }

    /* Pills */
    .pill-row { display: flex; gap: 8px; flex-wrap: wrap; }
    .pill-btn { background: var(--surface2); border: 1.5px solid var(--border); border-radius: 20px; padding: 6px 14px; cursor: pointer; font-size: 12px; font-weight: 600; color: var(--text2); transition: .15s; white-space: nowrap; }
    .pill-btn:hover { border-color: var(--primary); color: var(--text1); }
    .pill-btn.selected { border-color: var(--primary); background: rgba(79,195,247,0.12); color: var(--primary); }
    .pill-btn.locked, .pill-btn:disabled { opacity: .48; cursor: not-allowed; }
    .pill-btn.locked:hover, .pill-btn:disabled:hover { border-color: var(--border); color: var(--text2); }
    .selected-mode { border-color: var(--primary) !important; color: var(--primary) !important; }
    .lineup-copy-editor { margin-top:20px; padding:16px; border:1px solid rgba(79,195,247,.32); border-radius:calc(var(--r) + 3px); background:linear-gradient(180deg,rgba(79,195,247,.055),rgba(79,195,247,.015)); }
    .lineup-copy-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:16px; }
    .lineup-copy-head .section-title { margin:0 0 4px; }
    .lineup-copy-head p { margin:0; color:var(--text2); font-size:12px; line-height:1.45; }
    .lineup-copy-head > span { flex:0 0 auto; padding:5px 8px; border:1px solid rgba(79,195,247,.32); border-radius:999px; color:var(--primary); font-size:10px; font-weight:900; letter-spacing:.45px; text-transform:uppercase; }
    .map-tools { display:grid; gap:7px; margin-bottom:8px; }
    .map-tools-primary { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; min-width:0; }
    .map-mode-switches,.map-annotation-switches,.map-tools-context { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
    .map-annotation-switches { flex:0 0 auto; justify-content:flex-end; }
    .map-tools-context { min-height:30px; }
    .map-tools kbd { display:inline-grid; place-items:center; min-width:18px; height:18px; margin-right:2px; padding:0 4px; border:1px solid rgba(79,195,247,.42); border-radius:5px; background:rgba(79,195,247,.12); color:var(--primary); font:800 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace; box-shadow:none; }
    .category-extra-panel[hidden] { display: none !important; }
    .category-extra-card { display: grid; gap: 12px; }
    .extra-kicker { color: var(--text2); font-size: 11px; font-weight: 900; letter-spacing: .8px; text-transform: uppercase; }
    .weapon-check-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(108px, 1fr)); gap: 8px; }
    .weapon-check { display: flex; align-items: center; gap: 8px; min-height: 34px; padding: 7px 10px; border: 1px solid var(--border); border-radius: var(--r); background: var(--surface2); color: var(--text1); font-size: 12px; font-weight: 700; cursor: pointer; }
    .weapon-check input { accent-color: var(--primary); }
    .extra-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 10px; }
    .extra-grid label { display: grid; gap: 6px; color: var(--text2); font-size: 11px; font-weight: 900; letter-spacing: .6px; text-transform: uppercase; }
    .extra-actions { display: flex; gap: 8px; flex-wrap: wrap; }
    .extra-status { color: var(--text2); font-size: 12px; line-height: 1.45; }
    .map-editor-shell { display: grid; grid-template-columns: 220px minmax(0, 704px); gap: 12px; align-items: start; margin-top: 18px; }
    .map-editor-sidebar { display: grid; gap: 14px; min-width: 0; }
    .map-editor-setting .section-title,
    .map-editor-canvas > .section-title { margin-top: 0; }
    .map-editor-setting .card { margin-bottom: 0; padding: 12px; }
    .map-editor-setting .pill-row { gap: 6px; }
    .map-editor-setting .pill-btn { padding: 6px 10px; }
    .map-side-help { margin-top: 8px; }
    .map-editor-canvas { min-width: 0; width: 100%; max-width: 704px; }
    .map-editor-card { margin-bottom: 0; padding: 12px; }
    .map-editor-card .map-tools { margin-bottom: 10px !important; }
    .lineup-toolbox, .defense-toolbox { display: none; }
    .lineup-toolbox:not([hidden]),
    .defense-toolbox:not([hidden]) { display: grid; gap: 10px; min-width: 0; }
    #map-container.lineup-workbench,
    #map-container.defense-workbench { display: block; }
    .lineup-toolbox[hidden],
    .defense-toolbox[hidden] { display: none !important; }
    .lineup-toolbox .section-title,
    .defense-toolbox .section-title { margin-top: 0; }
    .lineup-toolbox .card,
    .defense-toolbox .card { margin-bottom: 0; padding: 12px; }
    .defense-toolbox .extra-grid { grid-template-columns: 1fr; gap: 8px; }
    .defense-toolbox .extra-actions { gap: 6px; }
    .defense-toolbox .pill-btn { padding: 6px 10px; }
    .defense-ability-row { display: flex; flex-wrap: wrap; gap: 8px; }
    .defense-toolbox .defense-ability-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .defense-ability-btn { min-width: 74px; max-width: 92px; min-height: 74px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; padding: 7px; border: 1.5px solid var(--border); border-radius: var(--r); background: var(--surface2); color: var(--text2); cursor: grab; font-size: 10px; font-weight: 700; text-align: center; }
    .defense-toolbox .defense-ability-btn { width: 100%; max-width: none; min-width: 0; }
    .defense-ability-btn:active { cursor: grabbing; }
    .defense-ability-btn img { width: 32px; height: 32px; object-fit: contain; pointer-events: none; }
    .defense-ability-btn.selected { border-color: var(--primary); color: var(--primary); background: rgba(79,195,247,.12); }
    .defense-shape-line.mesh { stroke: #62d8ff; stroke-width: 2.2; stroke-dasharray: 0; }
    .defense-mesh-node { fill: #8de5ff; stroke: #dff8ff; stroke-width: 1.2; filter: drop-shadow(0 0 3px rgba(79,195,247,.9)); }
    .defense-area-shape { vector-effect: non-scaling-stroke; }
    .defense-area-shape.net { fill: rgba(50,130,255,.32); stroke: #7ddcff; stroke-width: 1.5; stroke-dasharray: 3 2; filter: drop-shadow(0 0 5px rgba(55,151,255,.65)); }
    .defense-area-shape.cyber-cage { fill: rgba(148,163,184,.2); stroke: rgba(226,232,240,.95); stroke-width: 1.4; filter: drop-shadow(0 0 4px rgba(148,163,184,.5)); }
    .defense-area-shape.viper { fill: rgba(34,197,94,.2); stroke: rgba(110,231,183,.9); stroke-width: .75; filter: drop-shadow(0 0 2.6px rgba(34,197,94,.45)); }
    .defense-area-shape.viper-ult { fill: rgba(22,101,52,.32); stroke: rgba(74,222,128,.9); stroke-width: 1.2; filter: drop-shadow(0 0 5px rgba(22,163,74,.5)); }
    .defense-area-net-grid { fill: url(#deadlock-net-grid); stroke: rgba(180,235,255,.9); stroke-width: .7; pointer-events: none; }
    .defense-net-pattern-line { fill: none; stroke: rgba(205,242,255,.72); stroke-width: 1; }
    .defense-ability-btn.limit-reached { opacity: .42; cursor: not-allowed; }
    .defense-placed-list { display: flex; flex-wrap: wrap; gap: 7px; }
    .defense-placed-chip { display: inline-grid; grid-template-columns: auto auto auto; align-items: center; gap: 5px; min-height: 31px; padding: 5px 7px; border: 1px solid var(--border); border-radius: 999px; background: var(--surface2); color: var(--text1); font-size: 12px; cursor: pointer; }
    .defense-placed-chip.selected { border-color: var(--primary); background: rgba(79,195,247,.14); box-shadow: 0 0 0 3px rgba(79,195,247,.10); }
    .defense-placed-num { color: var(--primary); font-weight: 900; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
    .defense-placed-chip img { width: 20px; height: 20px; object-fit: contain; }
    .defense-placed-chip button { width: 18px; height: 18px; border: 0; border-radius: 50%; background: rgba(148,163,184,.10); color: var(--text2); cursor: pointer; font-weight: 900; line-height: 1; }
    .defense-placed-chip button:hover { color: var(--red); background: rgba(239,68,68,.12); }
    .defense-placed-chip button[data-resize-defense-ability] { background: rgba(79,195,247,.16); color: #bcefff; }
    .defense-placed-chip button[data-resize-defense-ability]:hover { background: rgba(79,195,247,.32); color: #fff; }

    .input-wrap { position: relative; }
    .char-counter { position: absolute; bottom: 8px; right: 10px; font-size: 11px; color: var(--text2); pointer-events: none; }
    textarea.finput { resize: vertical; min-height: 80px; padding-bottom: 24px; }
    .description-tools { display: flex; justify-content: flex-start; margin-top: 10px; }
    .description-samples-btn { display:flex; align-items:center; gap:10px; width:min(360px,100%); padding:10px 12px; border:1px solid rgba(79,195,247,.55); border-radius:var(--r); background:linear-gradient(135deg,rgba(79,195,247,.16),rgba(79,195,247,.06)); color:var(--text1); text-align:left; cursor:pointer; box-shadow:0 0 0 1px rgba(79,195,247,.05) inset; transition:border-color .15s,background .15s,transform .15s; }
    .description-samples-btn:hover { border-color:var(--primary); background:linear-gradient(135deg,rgba(79,195,247,.24),rgba(79,195,247,.09)); transform:translateY(-1px); }
    .description-samples-icon { display:grid; place-items:center; width:30px; height:30px; flex:0 0 30px; border-radius:9px; background:var(--primary); color:#06111d; font-size:16px; font-weight:900; }
    .description-samples-btn b,.description-samples-btn small { display:block; }
    .description-samples-btn b { color:var(--primary); font-size:12px; }
    .description-samples-btn small { margin-top:2px; color:var(--text2); font-size:10px; }
    .description-samples-arrow { margin-left:auto; color:var(--primary); font-size:18px; font-weight:900; }
    .point-suggestions { margin-top:10px; padding:10px; border:1px solid rgba(79,195,247,.28); border-radius:var(--r); background:rgba(79,195,247,.06); }
    .point-suggestions-label { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:8px; }
    .point-suggestions-label b { color:var(--primary); font-size:11px; }
    .point-suggestions-label span { color:var(--text2); font-size:10px; }
    .point-suggestions-list { display:flex; align-items:stretch; gap:7px; flex-wrap:wrap; }
    .point-suggestion { max-width:100%; border:1px solid rgba(79,195,247,.42); border-radius:9px; background:var(--surface2); color:var(--text1); padding:7px 10px; font-size:11px; font-weight:700; line-height:1.35; text-align:left; cursor:pointer; }
    .point-suggestion:hover { border-color:var(--primary); background:rgba(79,195,247,.12); color:var(--primary); }
    .point-description-suggestions .point-suggestion { flex:1 1 240px; }
    .samples-drawer { position: fixed; inset: 0; z-index: 900; background: rgba(3,7,18,.54); opacity: 0; pointer-events: none; transition: opacity .18s; }
    .samples-drawer.show { opacity: 1; pointer-events: auto; }
    .samples-drawer-panel { width: min(430px, calc(100vw - 32px)); height: 100%; background: var(--surface); border-right: 1px solid rgba(79,195,247,.28); box-shadow: 22px 0 56px rgba(0,0,0,.52); transform: translateX(-100%); transition: transform .2s ease; overflow: auto; padding: 18px; }
    .samples-drawer.show .samples-drawer-panel { transform: translateX(0); }
    .samples-drawer-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--border); margin-bottom: 12px; }
    .samples-drawer-head h2 { color: var(--text1); font-size: 20px; line-height: 1.15; margin-top: 3px; }
    .samples-kicker { color: var(--primary); font-size: 11px; font-weight: 900; letter-spacing: .9px; }
    .samples-list { display: grid; gap: 10px; }
    .sample-card { background: var(--surface2); border: 1px solid var(--border); border-radius: var(--r); padding: 12px; }
    .sample-card h3 { color: var(--text1); font-size: 13px; margin-bottom: 7px; }
    .sample-card p { color: var(--text2); font-size: 12px; line-height: 1.45; white-space: pre-wrap; }
    .sample-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; }

    /* Video */
    .drop-zone { border: 2px dashed var(--border); border-radius: var(--r); padding: 32px 16px; text-align: center; cursor: pointer; transition: border-color .15s; color: var(--text2); font-size: 13px; }
    .drop-zone:hover, .drop-zone.drag-over { border-color: var(--primary); color: var(--text1); }
    .drop-icon { font-size: 32px; margin-bottom: 8px; }
    .progress-wrap { margin-top: 12px; background: var(--surface2); border-radius: 20px; overflow: hidden; height: 8px; }
    .progress-bar { height: 100%; background: var(--primary); border-radius: 20px; transition: width .2s; }
    .vid-stage { position: relative; overflow: hidden; border-radius: var(--r); background: #000; }
    .vid-player { position: relative; z-index: 1; width: 100%; border-radius: var(--r); background: #000; display: block; max-height: 300px; transform-origin: 50% 50%; transition: transform .32s cubic-bezier(.2,.8,.2,1), filter .18s ease; }
    .footage-preview-overlay { position: absolute; left: 50%; top: 50%; width: 35%; height: auto; max-width: none; max-height: none; object-fit: contain; display: none; pointer-events: none; z-index: 7; background: transparent; transform: translate(-50%, -50%); transform-origin: 50% 50%; }
    .footage-preview-overlay.show { display: block; }
    .footage-preview-overlay.processing-chroma { display: block; opacity: 0; }
    .footage-preview-overlay.interactive { pointer-events: auto; cursor: move; touch-action: none; }
    .footage-chroma-canvas { position: absolute; left: 50%; top: 50%; width: 35%; height: auto; max-width: none; max-height: none; object-fit: contain; display: none; pointer-events: none; z-index: 7; background: transparent; transform: translate(-50%, -50%); transform-origin: 50% 50%; }
    .footage-chroma-canvas.show { display: block; }
    .footage-chroma-canvas.interactive { pointer-events: auto; cursor: move; touch-action: none; }
    .footage-transform-frame { position: absolute; left: 50%; top: 50%; width: 35%; aspect-ratio: 1 / 1; display: none; z-index: 9; transform: translate(-50%, -50%); transform-origin: 50% 50%; border: 2px solid rgba(255,255,255,.95); box-shadow: 0 0 0 1px rgba(0,0,0,.45); cursor: move; touch-action: none; }
    .footage-transform-frame.show { display: block; }
    .footage-resize-handle { position: absolute; width: 12px; height: 12px; border-radius: 3px; border: 1px solid rgba(0,0,0,.65); background: #fff; box-shadow: 0 0 0 1px rgba(255,255,255,.75); }
    .footage-resize-handle.nw { left: -7px; top: -7px; cursor: nwse-resize; }
    .footage-resize-handle.ne { right: -7px; top: -7px; cursor: nesw-resize; }
    .footage-resize-handle.sw { left: -7px; bottom: -7px; cursor: nesw-resize; }
    .footage-resize-handle.se { right: -7px; bottom: -7px; cursor: nwse-resize; }
    .freeze-frame-overlay { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; background: #000; display: none; pointer-events: none; z-index: 6; }
    .freeze-frame-overlay.show { display: block; }
    .zoom-frame { position: absolute; left: 50%; top: 50%; width: 46%; height: 46%; transform: translate(-50%, -50%); border: 2px solid rgba(34,197,94,.85); border-radius: var(--r); color: #bbf7d0; background: rgba(34,197,94,.08); display: none; align-items: center; justify-content: center; font-size: 11px; font-weight: 900; text-transform: uppercase; pointer-events: auto; cursor: grab; touch-action: none; box-shadow: 0 0 20px rgba(34,197,94,.25); z-index: 7; }
    .zoom-frame.show { display: flex; }
    .zoom-frame.dragging { cursor: grabbing; border-color: #4ade80; background: rgba(34,197,94,.16); box-shadow: 0 0 0 3px rgba(34,197,94,.18), 0 0 24px rgba(34,197,94,.28); }
    .vid-controls { display: flex; align-items: center; gap: 10px; margin-top: 8px; flex-wrap: wrap; }
    .scrubber { flex: 1; min-width: 120px; height: 24px; position: relative; z-index: 2; accent-color: var(--primary); cursor: pointer; touch-action: none; pointer-events: auto; }
    .scrubber::-webkit-slider-thumb { cursor: grab; }
    .scrubber:active::-webkit-slider-thumb { cursor: grabbing; }
    .time-display { font-size: 12px; color: var(--text2); white-space: nowrap; }
    .btn-sm { background: var(--surface2); border: 1px solid var(--border); color: var(--text1); padding: 6px 12px; border-radius: var(--r); cursor: pointer; font-size: 12px; transition: .15s; }
    .btn-sm:hover { border-color: var(--primary); color: var(--primary); }
    .btn-sm:disabled { opacity: .4; cursor: default; }
    .btn-sm.danger-soft { color: #fecaca; border-color: rgba(239,68,68,.35); }
    .btn-sm.danger-soft:hover { border-color: var(--red); color: var(--red); }
    .btn-frame { background: rgba(79,195,247,0.12); border: 1px solid var(--primary); color: var(--primary); padding: 6px 14px; border-radius: var(--r); cursor: pointer; font-size: 12px; font-weight: 700; transition: .15s; }
    .btn-frame:hover { background: rgba(79,195,247,0.22); }
    .btn-frame:disabled { opacity: .4; cursor: default; }
    .video-editor { margin-top: 12px; background: var(--bg); border: 1px solid var(--border); border-radius: var(--r); padding: 12px; }
    .video-editor-toggle-row { display:flex; justify-content:flex-end; margin-top:8px; }
    .video-editor-toggle { color:var(--primary); border-color:rgba(79,195,247,.38); font-weight:800; }
    .video-editor-toggle[aria-expanded="false"] { background:rgba(79,195,247,.10); }
    .editor-workbench { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 12px; align-items: start; margin-top: 9px; }
    .editor-timeline-pane { min-width: 0; grid-column: 1; grid-row: 1; }
    .editor-inspector { position: sticky; top: 16px; max-height: calc(100vh - 32px); overflow: auto; grid-column: 2; grid-row: 1; border: 1px solid var(--border); border-radius: var(--r); background: rgba(12,18,32,.92); padding: 10px; scrollbar-width: thin; }
    .inspector-title { color: var(--primary); font-size: 11px; font-weight: 900; letter-spacing: .8px; text-transform: uppercase; margin-bottom: 9px; }
    .editor-toolbar, .editor-actions { display: flex; gap: 7px; flex-wrap: wrap; }
    .editor-tool { background: var(--surface2); border: 1px solid var(--border); color: var(--text2); border-radius: var(--r); padding: 7px 10px; font-size: 12px; font-weight: 800; cursor: pointer; }
    .editor-tool.active { border-color: var(--primary); color: var(--primary); background: rgba(79,195,247,.12); }
    .editor-mode-hint { margin-top: 9px; color: var(--text2); background: var(--surface); border: 1px solid var(--border); border-radius: var(--r); padding: 8px 10px; font-size: 12px; line-height: 1.4; }
    .timeline-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 10px 0 8px; color: var(--text2); font-size: 12px; }
    .timeline-head span:first-child { color: var(--text1); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
    .timeline-zoom { display: grid; grid-template-columns: auto minmax(160px, 1fr) auto auto; gap: 8px; align-items: center; margin-bottom: 8px; }
    .timeline-zoom input { width: 100%; accent-color: var(--primary); }
    .magnet-toggle { min-width: 36px; }
    .magnet-toggle.active { border-color: var(--primary); color: var(--primary); background: rgba(79,195,247,.14); box-shadow: 0 0 0 3px rgba(79,195,247,.10); }
    .timeline-scroll { overflow-x: auto; overflow-y: hidden; padding-bottom: 8px; scrollbar-width: thin; }
    .timeline-shell { --effect-track-height: 36px; position: relative; display: grid; gap: 6px; padding-top: 18px; user-select: none; touch-action: none; min-width: 900px; }
    .timeline-ruler { position: absolute; left: 0; right: 0; top: 0; height: 14px; border-radius: 999px; background: repeating-linear-gradient(90deg, rgba(148,163,184,.35) 0 1px, transparent 1px 10%); opacity: .75; }
    .timeline-playhead { position: absolute; top: 0; bottom: 0; width: 2px; background: var(--primary); box-shadow: 0 0 10px rgba(79,195,247,.8); z-index: 5; pointer-events: none; }
    .timeline-playhead::before { content: ""; position: absolute; left: 50%; top: -5px; width: 14px; height: 14px; border-radius: 50%; background: var(--primary); transform: translateX(-50%); box-shadow: 0 0 0 4px rgba(79,195,247,.18); }
    .timeline-lane { position: relative; height: 42px; border: 1px solid var(--border); border-radius: var(--r); overflow: hidden; background: var(--surface); cursor: pointer; }
    .lane-label { position: absolute; left: 8px; top: 50%; transform: translateY(-50%); z-index: 3; color: var(--text1); font-size: 11px; font-weight: 900; text-transform: uppercase; text-shadow: 0 1px 4px #000; }
    .timeline-range { position: absolute; top: 8px; bottom: 8px; border-radius: 6px; background: linear-gradient(90deg, rgba(79,195,247,.35), rgba(34,197,94,.25)); border: 1px solid rgba(79,195,247,.55); }
    .timeline-video-clip { position: absolute; top: 8px; bottom: 8px; min-width: 10px; border-radius: 6px; background: linear-gradient(90deg, rgba(79,195,247,.30), rgba(34,197,94,.18)); border: 1px solid rgba(79,195,247,.45); pointer-events: none; }
    .trim-handle { position: absolute; top: -5px; bottom: -5px; width: 14px; border-radius: 6px; background: #dbeafe; border: 2px solid var(--primary); cursor: ew-resize; }
    .trim-handle.start { left: -7px; }
    .trim-handle.end { right: -7px; }
    .timeline-shell.dragging .timeline-playhead::before, .trim-handle:hover { box-shadow: 0 0 0 5px rgba(79,195,247,.22); }
    .timeline-effect-markers { position: absolute; inset: 0; }
    .effect-lane > .lane-label { display: none; }
    .effect-lane { height: var(--effect-lane-height, var(--effect-track-height)); min-height: var(--effect-track-height); }
    .effect-track-row { position: absolute; left: 0; right: 0; height: var(--effect-track-height); border-top: 1px solid rgba(148,163,184,.10); }
    .effect-track-row:first-child { border-top: 0; }
    .effect-track-row.active { background: rgba(34,197,94,.06); }
    .effect-track-row.selected { box-shadow: inset 0 0 0 1px rgba(79,195,247,.45); }
    .effect-track-label { position: absolute; left: 8px; top: 50%; transform: translateY(-50%); z-index: 6; max-width: 104px; padding: 2px 5px; border-radius: 5px; background: rgba(12,18,32,.78); color: var(--text1); font-size: 11px; font-weight: 900; text-transform: uppercase; text-shadow: 0 1px 4px #000; pointer-events: none; }
    .timeline-marker { position: absolute; top: 5px; bottom: 5px; width: 3px; border-radius: 999px; transform: translateX(-50%); }
    .timeline-marker.split { background: #f59e0b; cursor: pointer; pointer-events: auto; z-index: 4; }
    .timeline-marker.split.selected { width: 6px; box-shadow: 0 0 0 5px rgba(245,158,11,.22); }
    .timeline-marker.freeze { background: #e879f9; }
    .timeline-marker.zoom { background: #22c55e; }
    .timeline-freeze-block, .timeline-zoom-block, .timeline-footage-block { position: absolute; top: 6px; bottom: 6px; min-width: 24px; max-width: min(360px, calc(100% - 4px)); border-radius: 7px; font-size: 10px; font-weight: 900; display: flex; align-items: center; justify-content: center; cursor: grab; pointer-events: auto; z-index: 4; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .timeline-freeze-block { border: 2px solid rgba(232,121,249,.92); background: rgba(232,121,249,.20); color: #f5d0fe; }
    .timeline-freeze-block.selected { background: rgba(232,121,249,.36); box-shadow: 0 0 0 3px rgba(232,121,249,.18); }
    .timeline-zoom-block { border: 2px solid rgba(34,197,94,.92); background: rgba(34,197,94,.20); color: #bbf7d0; }
    .timeline-zoom-block.selected { background: rgba(34,197,94,.36); box-shadow: 0 0 0 3px rgba(34,197,94,.18); }
    .timeline-footage-block { border: 2px solid rgba(79,195,247,.92); background: rgba(79,195,247,.22); color: #dbeafe; padding: 0 12px; }
    .timeline-footage-block.selected { background: rgba(79,195,247,.38); box-shadow: 0 0 0 3px rgba(79,195,247,.18); }
    .timeline-footage-block.has-chroma { border-color: rgba(34,197,94,.96); box-shadow: inset 0 0 0 1px rgba(34,197,94,.24); }
    .footage-chroma-dot { flex: 0 0 auto; width: 7px; height: 7px; margin-left: 6px; border-radius: 50%; background: #22c55e; box-shadow: 0 0 0 3px rgba(34,197,94,.16); }
    .timeline-freeze-block:active, .timeline-zoom-block:active, .timeline-footage-block:active { cursor: grabbing; }
    .freeze-resize, .zoom-resize, .footage-resize { position: absolute; top: -2px; bottom: -2px; width: 10px; cursor: ew-resize; background: rgba(255,255,255,.18); }
    .freeze-resize.start, .zoom-resize.start, .footage-resize.start { left: -2px; border-radius: 6px 0 0 6px; }
    .freeze-resize.end, .zoom-resize.end, .footage-resize.end { right: -2px; border-radius: 0 6px 6px 0; }
    .footage-status { color: var(--text2); font-size: 12px; align-self: center; min-height: 16px; }
    .audio-wave { position: absolute; inset: 7px 8px; background: repeating-linear-gradient(90deg, rgba(79,195,247,.25) 0 3px, transparent 3px 7px); mask-image: linear-gradient(180deg, transparent 0 18%, #000 18% 82%, transparent 82% 100%); }
    .editor-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0 0 10px; align-items: end; }
    .editor-field { color: var(--text2); font-size: 11px; font-weight: 800; display: grid; gap: 5px; }
    .editor-field input[type="range"] { width: 100%; accent-color: var(--primary); }
    .editor-field input[type="color"] { width: 100%; height: 34px; padding: 3px; border: 1px solid var(--border); border-radius: var(--r); background: var(--surface2); cursor: pointer; }
    .editor-field input:disabled { opacity: .45; cursor: not-allowed; }
    .editor-check { color: var(--text2); font-size: 12px; font-weight: 800; display: flex; align-items: center; gap: 7px; min-height: 36px; }
    .editor-check input { accent-color: var(--primary); }
    .effects-panel { display: none; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--border); }
    .effects-panel.open { display: grid; }
    .chroma-target { grid-column: 1 / -1; min-height: 32px; display: flex; align-items: center; padding: 7px 9px; border: 1px solid rgba(79,195,247,.24); border-radius: var(--r); background: rgba(79,195,247,.08); color: var(--text2); font-size: 12px; font-weight: 800; overflow-wrap: anywhere; }
    .chroma-target.active { color: var(--text1); border-color: rgba(79,195,247,.52); background: rgba(79,195,247,.13); }
    .footage-library { grid-column: 1 / -1; border: 1px solid var(--border); border-radius: var(--r); background: rgba(15,23,42,.70); padding: 12px; display: grid; gap: 10px; }
    .footage-library[hidden] { display: none; }
    .footage-library-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
    .footage-library-title { color: var(--text1); font-size: 13px; font-weight: 900; text-transform: uppercase; }
    .footage-library-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    .footage-library-item { border: 1px solid rgba(148,163,184,.18); border-radius: var(--r); background: rgba(2,6,23,.45); padding: 10px; display: grid; gap: 8px; }
    .footage-library-item strong { color: var(--text1); font-size: 13px; overflow-wrap: anywhere; }
    .footage-library-item span { color: var(--text2); font-size: 11px; }
    .footage-library-actions { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
    .zoom-panel { display: none; gap: 10px; margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--border); }
    .zoom-panel.open { display: grid; }
    .transform-head { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 8px; color: var(--text1); font-size: 12px; }
    .transform-dot { width: 8px; height: 8px; border-radius: 50%; background: #ef4444; box-shadow: 0 0 0 3px rgba(239,68,68,.12); }
    .transform-grid { display: grid; grid-template-columns: minmax(64px, .7fr) minmax(0, 1fr) minmax(0, 1fr); gap: 7px 8px; align-items: center; padding: 10px; border: 1px solid var(--border); border-radius: var(--r); background: rgba(7,11,22,.72); }
    .transform-grid label { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 6px; align-items: center; color: var(--text2); font-size: 11px; font-weight: 800; }
    .transform-grid .finput { height: 28px; padding: 4px 7px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
    .transform-number[readonly] { cursor: ew-resize; user-select: none; }
    .transform-number.dragging { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(79,195,247,.14); }
    .transform-number.editing { cursor: text; user-select: text; border-color: var(--green); box-shadow: 0 0 0 3px rgba(34,197,94,.12); }
    .transform-grid input[type="range"] { width: 100%; accent-color: var(--primary); }
    .transform-label { color: var(--text2); font-size: 11px; font-weight: 800; text-align: right; }
    .transform-actions { display: flex; justify-content: flex-end; }
    .zoom-value { color: var(--green); font-size: 14px; font-weight: 900; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }

    /* Screenshots */
    .shots-row { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
    .shot-item { position: relative; transition: transform .12s ease, opacity .12s ease; }
    .shot-item img { width: 80px; height: 80px; object-fit: cover; border-radius: 6px; border: 1px solid var(--border); display: block; cursor: grab !important; touch-action: none; -webkit-user-drag: none; }
    .shot-item.dragging { z-index: 2; opacity: .72; transform: scale(.96); }
    .shot-item.dragging img { cursor: grabbing !important; border-color: var(--primary); box-shadow: 0 0 0 3px rgba(79,195,247,.18); }
    .shot-drag-ghost { position: fixed; z-index: 10000; margin: 0; pointer-events: none; opacity: .92; transform: rotate(2deg) scale(1.04); filter: drop-shadow(0 12px 18px rgba(0,0,0,.48)); }
    .shot-drag-ghost img { width: 100%; height: 100%; cursor: grabbing !important; border-color: var(--primary); }
    .moderator-shot-rail { position:fixed; z-index:24; top:82px; left:max(14px,calc((100vw - 1320px)/2 - 292px)); width:min(268px,calc((100vw - 1320px)/2 - 28px)); max-height:calc(100vh - 104px); overflow:auto; padding:12px; border:1px solid rgba(79,195,247,.34); border-left:3px solid var(--primary); border-radius:0 12px 12px 0; background:linear-gradient(180deg,rgba(15,28,46,.97),rgba(8,16,29,.97)); box-shadow:0 18px 50px rgba(0,0,0,.38); scrollbar-width:thin; scrollbar-color:var(--border2) transparent; }
    .moderator-shot-rail[hidden] { display:none; }
    .moderator-shot-rail-head { display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;color:var(--primary);font-size:10px;font-weight:900;letter-spacing:1.1px;text-transform:uppercase; }
    .moderator-shot-rail-head span { display:grid;place-items:center;min-width:24px;height:20px;padding:0 6px;border:1px solid rgba(79,195,247,.34);border-radius:999px;background:rgba(79,195,247,.1);font-size:10px; }
    .moderator-shot-rail-list { display:grid;gap:9px; }
    .moderator-shot-rail-item { position:relative;display:block;width:100%;padding:0;border:1px solid var(--border2);border-radius:8px;overflow:hidden;background:#050a12;cursor:zoom-in; }
    .moderator-shot-rail-item:hover { border-color:var(--primary); }
    .moderator-shot-rail-item:focus-visible { outline:2px solid var(--primary);outline-offset:2px; }
    .moderator-shot-rail-item img { display:block;width:100%;aspect-ratio:16/9;object-fit:cover; }
    .moderator-shot-rail-index { position:absolute;left:7px;top:7px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgba(5,10,18,.86);border:1px solid rgba(255,255,255,.42);color:#fff;font-size:11px;font-weight:900;box-shadow:0 3px 10px rgba(0,0,0,.45); }
    @media (max-width:1799px) { .moderator-shot-rail { display:none !important; } }
    .shot-item .rm { position: absolute; top: -5px; right: -5px; width: 18px; height: 18px; border-radius: 50%; background: var(--red); border: none; color: #fff; font-size: 10px; cursor: pointer; display: flex; align-items: center; justify-content: center; line-height: 1; }
    .btn-add-shot { width: 80px; height: 80px; border: 2px dashed var(--border); border-radius: 6px; background: var(--surface2); color: var(--text2); font-size: 22px; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: border-color .15s; }
    .btn-add-shot:hover { border-color: var(--primary); }

    /* Map */
    .map-wrap { position: relative; width: 100%; max-width: 680px; cursor: crosshair; border-radius: var(--r); overflow: hidden; background: #0a0e1a; border: 1px solid var(--border); user-select: none; -webkit-user-select: none; -webkit-user-drag: none; touch-action: manipulation; aspect-ratio: 1 / 1; }
    .map-stage { position: absolute; inset: 0; transform-origin: 0 0; will-change: transform; }
    .map-orientation-layer { position: absolute; inset: 0; transform-origin: 50% 50%; will-change: transform; transition: transform .28s cubic-bezier(.2,.8,.2,1); }
    .map-site-labels { position: absolute; inset: 0; pointer-events: none; z-index: 4; }
    .map-site-label { position: absolute; transform: translate(-50%, -50%) rotate(var(--map-counter-rotation, 0deg)); color: #fff; font-size: 16px; font-weight: 900; line-height: 1; text-shadow: 0 1px 5px #000, 0 0 2px #000; transition: transform .28s cubic-bezier(.2,.8,.2,1); }
    .map-spawn-zone { position:absolute;display:flex;align-items:center;justify-content:center;border:2px solid;border-radius:5px;box-sizing:border-box;font-size:10px;font-weight:900; }
    .map-spawn-zone > b { display:block; transform:rotate(var(--map-counter-rotation, 0deg)); white-space:nowrap; transition: transform .28s cubic-bezier(.2,.8,.2,1); }
    .map-wrap.map-panning { cursor: grabbing !important; }
    #map-container.defense-workbench .map-wrap { cursor: default; }
    #map-container.defense-workbench .map-wrap.zoom-picking { cursor: crosshair; }
    .wallbang-target-marker { position: absolute; z-index: 4; width: 22px; height: 22px; transform: translate(-50%, -50%); border: 2px solid #f97316; border-radius: 50%; background: rgba(249,115,22,.16); color: #fff7ed; font-size: 18px; line-height: 16px; font-weight: 900; text-align: center; pointer-events: none; box-shadow: 0 0 12px rgba(249,115,22,.65); }
    .defense-zoom-box { position: absolute; z-index: 2; border: 2px solid rgba(34,197,94,.95); background: rgba(34,197,94,.12); box-shadow: 0 0 0 1px rgba(0,0,0,.35), 0 0 16px rgba(34,197,94,.32); pointer-events: none; }
    .defense-ability-markers { position: absolute; inset: 0; z-index: 5; pointer-events: none; }
    .defense-shape-lines { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
    .defense-shape-line-bg { stroke: rgba(10,14,26,.72); stroke-width: 4; stroke-linecap: round; }
    .defense-shape-line { stroke: rgba(79,195,247,.88); stroke-width: 1.5; stroke-linecap: round; filter: drop-shadow(0 0 3px rgba(79,195,247,.5)); }
    .defense-shape-line.sensor { stroke: #65dcff; stroke-width: 1.8; filter: drop-shadow(0 0 3px rgba(101,220,255,.8)); }
    .defense-sensor-ring { fill: #173b52; stroke: #9cecff; stroke-width: 1.1; filter: drop-shadow(0 0 4px rgba(101,220,255,.9)); }
    .defense-sensor-node { fill: #8de5ff; stroke: #dff8ff; stroke-width: 1; filter: drop-shadow(0 0 3px rgba(79,195,247,.95)); }
    .defense-sensor-zone { fill: rgba(54,89,173,.42); stroke: #65dcff; stroke-width: 1.35; filter: drop-shadow(0 0 2px rgba(101,220,255,.6)); }
    .defense-sensor-core { fill: #3659ad; }
    .defense-sensor-dot { fill: #fff; }
    .defense-sensor-diamond { fill: #a34c55; stroke: #d78387; stroke-width: .25; }
    .defense-shape-line.draft { stroke-dasharray: 8 6; }
    .defense-ability-marker { position: absolute; width: 11.2px; height: 11.2px; transform: translate(-50%, -50%); border: 1px solid var(--primary); border-radius: 50%; background: rgba(15,23,42,.82); box-shadow: 0 0 4.8px rgba(79,195,247,.55); display: flex; align-items: center; justify-content: center; overflow: hidden; pointer-events: auto; cursor: grab; touch-action: none; }
    .defense-ability-marker.line-center { width: 12px; height: 12px; z-index: 7; border-width: 1px; box-shadow: 0 0 4.8px rgba(79,195,247,.55); }
    .defense-ability-marker.line-center img { width: 8px; height: 8px; }
    .defense-ability-marker.bare-area-handle { width: 18px; height: 18px; border: 0; background: transparent; box-shadow: none; overflow: visible; }
    .defense-ability-marker.bare-area-handle.selected { border: 0; background: transparent; box-shadow: none; }
    .defense-ability-marker.selected { border-color: #fff; box-shadow: 0 0 0 5px rgba(79,195,247,.24), 0 0 20px rgba(79,195,247,.75); }
    .defense-ability-marker.dragging { cursor: grabbing; border-color: #fff; box-shadow: 0 0 0 4px rgba(79,195,247,.24), 0 0 18px rgba(79,195,247,.7); }
    .defense-ability-marker img { width: 8px; height: 8px; object-fit: contain; transform:rotate(var(--map-counter-rotation, 0deg)); }
    .defense-line-anchor { position: absolute; z-index: 6; width: 6.8px; height: 6.8px; transform: translate(-50%, -50%); border: 1px solid #e8f7ff; border-radius: 50%; background: rgba(79,195,247,.95); box-shadow: 0 0 0 1.6px rgba(79,195,247,.18), 0 0 5.6px rgba(79,195,247,.55); pointer-events: auto; cursor: grab; touch-action: none; }
    .defense-line-anchor.selected { background: #fff; border-color: var(--primary); }
    .defense-line-anchor.sensor-pivot { width: 11px; height: 11px; background: #fff; border: 1.5px solid #17233b; box-shadow: 0 0 0 2px rgba(101,220,255,.32), 0 0 7px rgba(101,220,255,.72); }
    .defense-line-anchor.sensor-rotate { width: 11px; height: 11px; background: #ff4655; border: 1.5px solid #fff; box-shadow: 0 0 0 2px rgba(255,70,85,.24), 0 0 7px rgba(255,70,85,.72); }
    .defense-line-anchor.draft { pointer-events: none; opacity: .82; }
    .ability-drag-ghost { position: fixed; left: 0; top: 0; z-index: 10000; width: 38px; height: 38px; transform: translate(-50%, -50%); border: 2px solid var(--primary); border-radius: 50%; background: rgba(15,23,42,.92); box-shadow: 0 0 0 5px rgba(79,195,247,.18), 0 12px 28px rgba(0,0,0,.45); display: flex; align-items: center; justify-content: center; pointer-events: none; }
    .ability-drag-ghost img { width: 27px; height: 27px; object-fit: contain; }
    .map-orientation-layer > img.map-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; display: block; }
    #marker-icon { transform:rotate(var(--map-counter-rotation, 0deg)); }
    .map-hint { color: var(--text2); font-size: 12px; margin-top: 6px; }

    /* Submit */
    .btn-submit { width: 100%; background: var(--primary); color: #fff; border: none; padding: 13px 12px; border-radius: var(--r); font-size: 14px; font-weight: 800; cursor: pointer; letter-spacing: .4px; transition: opacity .15s; margin: 0; }
    .btn-submit:hover { opacity: .88; }
    .btn-submit:disabled { opacity: .4; cursor: default; }

    /* Success modal */
    .success-overlay { position: fixed; inset: 0; z-index: 500; display: flex; align-items: center; justify-content: center; padding: 24px; backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); background: rgba(10,14,26,.55); animation: fadeIn .22s ease; }
    .shot-preview-overlay { position: fixed; inset: 0; z-index: 700; display: flex; align-items: center; justify-content: center; padding: 24px; background: rgba(3,7,16,.92); cursor: zoom-out; }
    .shot-preview-overlay img { display: block; max-width: min(1200px, 96vw); max-height: 92vh; object-fit: contain; border-radius: 10px; box-shadow: 0 18px 70px rgba(0,0,0,.55); cursor: default; }
    .shot-preview-close { position: fixed; top: 18px; right: 18px; width: 40px; height: 40px; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; background: rgba(8,13,25,.8); color: #fff; font-size: 20px; cursor: pointer; }
    .success-card { background: var(--surface); border: 1px solid rgba(34,197,94,.25); border-radius: 16px; padding: 44px 36px; max-width: 400px; width: 100%; text-align: center; box-shadow: 0 24px 64px rgba(0,0,0,.6); }
    .success-icon { font-size: 56px; margin-bottom: 16px; }
    .success-title { font-size: 22px; font-weight: 800; color: var(--green); margin-bottom: 8px; }
    .success-sub { color: var(--text2); font-size: 14px; margin-bottom: 28px; line-height: 1.6; }

    /* Toasts */
    #toasts { position: fixed; bottom: 20px; right: 20px; display: flex; flex-direction: column; gap: 8px; z-index: 9999; }
    .toast { padding: 10px 16px; border-radius: var(--r); font-size: 13px; font-weight: 600; animation: fadeIn .2s; pointer-events: none; max-width: 300px; }
    .toast.s { background: #14532d; color: #bbf7d0; border: 1px solid #16a34a; }
    .toast.e { background: #450a0a; color: #fca5a5; border: 1px solid #b91c1c; }
    .toast.i { background: var(--surface2); color: var(--text1); border: 1px solid var(--border); }
    .toast.w { background: #451a03; color: #fed7aa; border: 1px solid #c2410c; }
    @keyframes fadeIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }

    /* Two-column layout: form + stats sidebar */
    .form-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 24px; align-items: start; max-width: 1320px; margin: 0 auto; padding: 0 16px; }
    .main { flex: 1; min-width: 0; padding: 24px 0 60px; }

    /* Stats sidebar */
    .stats-sidebar { padding-top: 24px; position: sticky; top: 66px; align-self:start; }
    .stats-sidebar-title { font-size: 11px; font-weight: 700; letter-spacing: 1px; color: var(--primary); margin-bottom: 10px; }
    .sidebar-row { display: flex; flex-direction: column; gap: 8px; }
    .sidebar-telegram { display:grid;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:10px;margin-top:8px;padding:12px;border:1px solid rgba(79,195,247,.45);border-radius:var(--r);background:linear-gradient(135deg,rgba(34,158,217,.18),rgba(79,195,247,.07));color:#fff;text-decoration:none;transition:border-color .16s,transform .16s,background .16s; }
    .sidebar-telegram:hover { border-color:#4fc3f7;background:linear-gradient(135deg,rgba(34,158,217,.27),rgba(79,195,247,.11));transform:translateY(-1px); }
    .sidebar-telegram-icon { display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#229ed9;color:#fff;font-size:18px;transform:rotate(-12deg); }
    .sidebar-telegram strong,.sidebar-telegram small { display:block; }
    .sidebar-telegram strong { color:#4fc3f7;font-size:13px;line-height:1.2; }
    .sidebar-telegram small { margin-top:3px;color:var(--text2);font-size:10px;line-height:1.25; }
    .sidebar-telegram-open { color:#4fc3f7;font-size:16px; }
    .sidebar-actions { margin-top:10px;padding:12px;border:1px solid var(--border);border-radius:var(--r);background:linear-gradient(180deg,rgba(19,30,51,.96),rgba(13,21,37,.96));box-shadow:0 12px 30px rgba(0,0,0,.18);display:grid;gap:8px; }
    .sidebar-actions-title { color:var(--primary);font-size:10px;font-weight:800;letter-spacing:1px;margin-bottom:2px; }
    .sidebar-action { width:100%;padding:11px 12px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface2);color:var(--text);font:inherit;font-size:12px;font-weight:750;cursor:pointer;transition:border-color .15s,background .15s,transform .15s; }
    .sidebar-action:hover { border-color:var(--primary);background:rgba(79,195,247,.08);transform:translateY(-1px); }
    .sidebar-action.danger-soft { color:#ff9aa3;border-color:rgba(255,70,85,.38);background:rgba(255,70,85,.06); }
    .sidebar-action.danger-soft:hover { border-color:#ff4655;background:rgba(255,70,85,.12); }
    .header-notifications{position:relative;flex:0 0 44px;width:44px;height:38px;margin-right:10px;display:grid;place-items:center;border:1px solid var(--border2);border-radius:10px;background:rgba(255,255,255,.035);color:#fff;font-size:16px;cursor:pointer;transition:.16s}.header-notifications[hidden]{display:none}.header-notifications:hover{border-color:var(--primary);background:rgba(79,195,247,.1);transform:translateY(-1px)}.header-notifications b{position:absolute;right:-5px;top:-5px;min-width:18px;height:18px;padding:0 4px;display:grid;place-items:center;border:2px solid var(--surface);border-radius:999px;background:#ff4655;color:#fff;font-size:9px;line-height:1}.header-notifications b[hidden]{display:none}
    .header-sound-test { flex:0 0 38px; width:38px; height:38px; margin-right:10px; display:grid; place-items:center; border:1px solid var(--border2); border-radius:10px; background:rgba(255,255,255,.035); color:#fff; font-size:15px; cursor:pointer; transition:.16s; }
    .header-sound-test[hidden] { display:none; }
    .header-sound-test:hover { border-color:var(--primary); background:rgba(79,195,247,.1); transform:translateY(-1px); }
    .header-sound-test.is-muted { color:var(--text2); border-color:rgba(255,255,255,.08); background:rgba(255,255,255,.02); }
    .notifications-shell{max-width:980px;margin:0 auto;padding:28px 16px 70px}.notifications-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px}.notifications-head h2{margin:4px 0 5px;font-size:24px}.notifications-head p{color:var(--text2);font-size:13px}.notifications-list{display:grid;gap:9px}.notification-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:start;padding:14px 15px;border:1px solid var(--border);border-radius:12px;background:var(--surface);cursor:pointer;transition:.16s}.notification-card:hover{border-color:rgba(79,195,247,.45);transform:translateY(-1px)}.notification-card.unread{border-color:rgba(79,195,247,.42);background:linear-gradient(135deg,rgba(79,195,247,.11),var(--surface) 55%);box-shadow:inset 3px 0 #4fc3f7}.notification-card.expanded{border-color:rgba(79,195,247,.6);background:linear-gradient(145deg,rgba(79,195,247,.1),var(--surface) 42%)}.notification-card-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(79,195,247,.3);border-radius:50%;background:rgba(79,195,247,.1);font-size:18px}.notification-card h3{margin:1px 0 5px;font-size:14px}.notification-card p{margin:0;color:var(--text2);font-size:12px;line-height:1.55}.notification-card time{color:var(--text2);font-size:10px;white-space:nowrap}.notification-expand-hint{display:block;margin-top:7px;color:var(--primary);font-size:10px;font-weight:800}.notification-details{grid-column:2/-1;padding-top:12px;border-top:1px solid var(--border);cursor:default}.notification-details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px}.notification-details-grid>div{padding:9px;border:1px solid var(--border);border-radius:9px;background:var(--surface2)}.notification-details-grid span,.notification-reason>span{display:block;margin-bottom:4px;color:var(--text2);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.55px}.notification-details-grid b{font-size:12px;overflow-wrap:anywhere}.notification-reason{margin-bottom:10px;padding:11px;border:1px solid rgba(255,138,0,.3);border-radius:9px;background:rgba(255,138,0,.06)}.notification-reason p{color:var(--text1);white-space:pre-wrap}.notification-cooldown{display:inline-flex;margin-top:8px;padding:4px 8px;border:1px solid rgba(34,197,94,.3);border-radius:999px;background:rgba(34,197,94,.08);color:#86efac;font-size:10px;font-weight:700}.notifications-empty{padding:45px 20px;text-align:center;border:1px dashed var(--border);border-radius:12px;color:var(--text2)}
    .notification-banners{position:fixed;left:18px;top:72px;z-index:1000;width:min(390px,calc(100vw - 36px));display:grid;gap:10px;pointer-events:none}.notification-banner{pointer-events:auto;display:grid;grid-template-columns:42px minmax(0,1fr) 28px;gap:11px;align-items:center;padding:13px;border:1px solid rgba(79,195,247,.5);border-radius:13px;background:linear-gradient(135deg,rgba(17,36,55,.98),rgba(12,20,35,.98));box-shadow:0 18px 55px rgba(0,0,0,.55);animation:notificationIn .3s ease}.notification-banner-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:rgba(79,195,247,.13);font-size:19px}.notification-banner strong,.notification-banner span{display:block}.notification-banner strong{font-size:13px}.notification-banner span{margin-top:3px;color:var(--text2);font-size:11px;line-height:1.35}.notification-banner button{border:0;background:transparent;color:var(--text2);font-size:17px;cursor:pointer}@keyframes notificationIn{from{opacity:0;transform:translateX(-25px)}to{opacity:1;transform:none}}
    .notifications-intro{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:20px;background:rgba(3,8,17,.76);backdrop-filter:blur(5px)}.notifications-intro[hidden]{display:none}.notifications-intro-card{width:min(520px,100%);padding:28px;border:1px solid rgba(79,195,247,.45);border-radius:18px;background:linear-gradient(145deg,#14263b,#0d1728);box-shadow:0 28px 90px rgba(0,0,0,.65);text-align:center}.notifications-intro-icon{width:70px;height:70px;margin:0 auto 16px;display:grid;place-items:center;border-radius:50%;background:rgba(79,195,247,.13);box-shadow:0 0 0 10px rgba(79,195,247,.05);font-size:34px}.notifications-intro-card span{color:#4fc3f7;font-size:10px;font-weight:800;letter-spacing:1.7px}.notifications-intro-card h2{margin:8px 0;font-size:22px}.notifications-intro-card p{color:var(--text2);font-size:13px;line-height:1.65}.notifications-intro-actions{display:flex;gap:9px;margin-top:22px}.notifications-intro-actions button{flex:1;padding:11px;border:1px solid var(--border2);border-radius:9px;background:var(--surface2);color:var(--text);font-weight:700;cursor:pointer}.notifications-intro-actions button:last-child{border-color:#4fc3f7;background:#4fc3f7;color:#07111d}
    .stat-card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--r); padding: 11px 12px; }
    .stat-counts-row { display: flex; gap: 7px; align-items: stretch; }
    .stat-counts-row .stat-card { flex: 1; min-width: 0; display: flex; flex-direction: column; justify-content: space-between; }
    .stat-label { font-size: 9px; color: var(--text2); font-weight: 700; letter-spacing: 0; text-transform: uppercase; min-height: 22px; display: flex; align-items: flex-start; }
    .stat-count { font-size: 22px; font-weight: 800; line-height: 1; color: var(--text); margin-top: auto; }
    .stat-card.s-approved .stat-count { color: var(--green); }
    .stat-card.s-pending  .stat-count { color: var(--orange); }
    .stat-card.s-rejected .stat-count { color: var(--red); }
    .stats-loader { text-align: center; color: var(--text2); font-size: 12px; padding: 20px 0; }

    @media (max-width: 1180px) {
      .editor-workbench { grid-template-columns: 1fr; }
      .editor-timeline-pane, .editor-inspector { grid-column: 1; grid-row: auto; }
      .editor-inspector { position: static; max-height: none; }
    }

    @media (max-width: 720px) {
      .author-shell { padding: 16px 10px 0; }
      .resubmit-banner { margin: 10px 10px 0; align-items: stretch; flex-direction: column; }
      .workspace-head { align-items: flex-start; }
      .workspace-head h1 { font-size: 20px; }
      .workspace-refresh { display: none; }
      .form-layout { grid-template-columns: 1fr; gap: 0; padding: 0 10px; }
      .stats-sidebar { position: static; padding-top: 16px; padding-bottom: 0; }
      .sidebar-actions { position:sticky;bottom:8px;z-index:30;grid-template-columns:1fr 1fr;padding:10px;box-shadow:0 -10px 28px rgba(3,7,16,.65); }
      .sidebar-actions-title { grid-column:1/-1; }
      .notification-banners{left:10px;top:66px;width:calc(100vw - 20px)}.notifications-head{align-items:stretch;flex-direction:column}.notification-card{grid-template-columns:38px minmax(0,1fr)}.notification-card time{grid-column:2}.notification-details{grid-column:1/-1}.notification-details-grid{grid-template-columns:1fr 1fr}.notifications-intro-actions{flex-direction:column}.header-notifications{flex-basis:34px;width:34px;height:34px;margin-right:6px}
      .stats-sidebar-title { margin-bottom: 8px; }
      .stat-counts-row .stat-card { padding: 9px 8px; }
      .stat-count { font-size: 18px; }
      .main { padding: 16px 0 60px; width: 100%; }
      .author-list-shell { padding: 10px 10px 60px; }
      .lineup-card { grid-template-columns: 1fr; }
      .moderation-head { align-items:flex-start; flex-direction:column; }
      .moderation-card-main { grid-template-columns:1fr; }
      .moderation-video { min-height:220px; max-height:340px; }
      .moderation-actions { flex-direction:column; }
      .lineup-card-actions { justify-content: flex-start; }
      .draft-actions { justify-content: stretch; }
      .draft-actions .copy-id-btn, .lineup-card-actions .copy-id-btn { flex: 1; }
      .status-chip { justify-self: start; }
      .list-tools { align-items: stretch; flex-direction: column; }
      .list-search { max-width: none; }
      .cabinet-stats-grid, .materials-grid { grid-template-columns: 1fr; }
      .materials-toolbar { align-items: stretch; flex-direction: column; }
      .material-form-grid { grid-template-columns: 1fr; }
      .material-item { grid-template-columns: 1fr; }
      .material-actions { justify-content: flex-start; }
      .detail-grid { grid-template-columns: 1fr 1fr; }
      .lineup-detail-card { padding: 16px; }
      .detail-actions { justify-content: stretch; }
      .detail-actions .copy-id-btn, .detail-action-primary { flex: 1; width: auto; }
      .editor-grid, .effects-panel, .footage-library-list { grid-template-columns: 1fr 1fr; }
      .transform-grid { grid-template-columns: 1fr 1fr; }
      .transform-label { grid-column: 1 / -1; text-align: left; }
      .map-editor-shell { grid-template-columns: 1fr; gap: 14px; }
      .map-editor-sidebar { grid-template-columns: 1fr 1fr; align-items: start; }
      .map-editor-sidebar > .lineup-toolbox,
      .map-editor-sidebar > .defense-toolbox { grid-column: 1 / -1; }
      .map-editor-canvas { max-width: none; }
      .map-wrap { max-width: none; }
      .defense-toolbox .defense-ability-row { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    }
    @media (max-width: 500px) {
      .auth-card { padding: 28px 18px; }
      .site-update { display: none; }
      .moderation-lease-timer span { display:none; }
      .header-telegram { margin-left:auto;margin-right:10px;padding:7px 10px; }
      .map-editor-sidebar { grid-template-columns: 1fr; }
      .lineup-copy-editor { padding:12px; }
      .lineup-copy-head { display:block; }
      .lineup-copy-head > span { display:inline-block; margin-top:9px; }
      .point-suggestions-label { align-items:flex-start; flex-direction:column; gap:2px; }
      .map-tools-primary { align-items:stretch; flex-direction:column; }
      .map-annotation-switches { justify-content:flex-start; }
      .site-update-banner { top: 64px; align-items: stretch; flex-direction: column; }
      .site-update-banner button { width: 100%; }
      .footage-library-list { grid-template-columns: 1fr; }
      .defense-toolbox .defense-ability-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }
.sova-shot-panel{margin-top:14px;padding:14px;border:1px solid rgba(82,180,232,.38);border-radius:12px;background:linear-gradient(145deg,rgba(19,50,72,.92),rgba(11,25,39,.96));box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.sova-shot-panel[hidden]{display:none!important}.sova-shot-heading{font-size:12px;font-weight:800;letter-spacing:.9px;color:#71c7f3;margin-bottom:12px}.sova-shot-control{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px}.sova-shot-label{font-size:13px;color:var(--text2)}
.sova-charge-slider{position:relative;width:min(430px,62vw);padding-bottom:36px}.sova-charge-slider input{position:relative;z-index:2;width:100%;height:30px;margin:0;appearance:none;background:transparent;cursor:ew-resize}.sova-charge-slider input::-webkit-slider-runnable-track{height:18px;border:2px solid rgba(245,250,255,.88);border-radius:0;background:linear-gradient(90deg,#68ddc5 0 var(--sova-charge-pct,100%),rgba(122,139,149,.34) var(--sova-charge-pct,100%) 100%);box-shadow:inset 0 0 0 3px rgba(3,15,24,.38)}.sova-charge-slider input::-webkit-slider-thumb{appearance:none;width:5px;height:24px;margin-top:-5px;border:0;border-radius:0;background:#f8ffff;box-shadow:0 0 6px rgba(255,255,255,.85)}.sova-charge-slider input::-moz-range-track{height:18px;border:2px solid rgba(245,250,255,.88);border-radius:0;background:rgba(122,139,149,.34);box-shadow:inset 0 0 0 3px rgba(3,15,24,.38)}.sova-charge-slider input::-moz-range-progress{height:18px;background:#68ddc5}.sova-charge-slider input::-moz-range-thumb{width:5px;height:24px;border:0;border-radius:0;background:#f8ffff}.sova-charge-ticks{position:absolute;left:0;right:0;top:6px;height:18px;pointer-events:none;z-index:3}.sova-charge-ticks span{position:absolute;top:0;bottom:0;width:2px;background:rgba(245,250,255,.9)}.sova-charge-ticks span:first-child{left:33.333%}.sova-charge-ticks span:last-child{left:66.666%}.sova-charge-caption{position:absolute;left:50%;bottom:13px;transform:translateX(-50%);color:#e5edf1;font-size:10px;letter-spacing:3px}.sova-charge-slider output{position:absolute;right:0;bottom:0;color:#7893a3;font-size:9px;font-weight:700;font-variant-numeric:tabular-nums}.sova-bounce-picker{display:flex;gap:12px}.sova-bounce-picker button{width:38px;height:38px;border:0;background:transparent;display:grid;place-items:center;cursor:pointer}.bounce-diamond{width:18px;height:18px;transform:rotate(45deg);border:2px solid #7d8990;background:rgba(111,126,134,.28);transition:.15s ease}.sova-bounce-picker button.active .bounce-diamond{border-color:#efffff;background:#6bddc7;box-shadow:0 0 10px rgba(107,221,199,.7),inset 0 0 0 3px rgba(5,25,31,.35)}
@media(max-width:520px){.sova-shot-control{align-items:flex-start;flex-direction:column}.sova-charge-slider{width:100%}.sova-bounce-picker{width:100%}.sova-bounce-picker button{flex:1}}
.sova-bounce-row{display:flex;justify-content:center;margin-top:2px}.sova-bounce-row .sova-bounce-picker{width:auto;justify-content:center}.sova-bounce-row .sova-bounce-picker button{flex:0 0 38px}
.moderation-metadata-form{display:grid;gap:12px;margin-top:12px}.moderation-metadata-form fieldset{margin:0;padding:12px;border:1px solid var(--border);border-radius:10px;background:rgba(7,18,29,.42)}.moderation-metadata-form legend{padding:0 6px;color:#71c7f3;font-size:11px;font-weight:800;letter-spacing:.5px}.moderation-choice-row{display:flex;flex-wrap:wrap;gap:8px}.moderation-choice-row label{display:flex;align-items:center;gap:5px;padding:8px 11px;border:1px solid var(--border);border-radius:999px;color:var(--text2);font-size:12px;cursor:pointer}.moderation-choice-row label:has(input:checked){border-color:#52bff3;color:#52bff3;background:rgba(82,191,243,.12)}.moderation-charge{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;color:var(--text2);font-size:12px}.moderation-charge input{accent-color:#68ddc5}.moderation-charge output{min-width:54px;color:#71c7f3;font-variant-numeric:tabular-nums}
.moderation-sova-charge{position:relative;width:min(440px,100%);margin:4px auto 0;padding:0 0 37px}.moderation-sova-charge input{position:relative;z-index:2;width:100%;height:30px;margin:0;appearance:none;background:transparent;cursor:ew-resize}.moderation-sova-charge input::-webkit-slider-runnable-track{height:18px;border:2px solid rgba(245,250,255,.88);border-radius:0;background:linear-gradient(90deg,#68ddc5 0 var(--sova-charge-pct,50%),rgba(122,139,149,.34) var(--sova-charge-pct,50%) 100%);box-shadow:inset 0 0 0 3px rgba(3,15,24,.38)}.moderation-sova-charge input::-webkit-slider-thumb{appearance:none;width:5px;height:24px;margin-top:-5px;border:0;border-radius:0;background:#f8ffff;box-shadow:0 0 6px rgba(255,255,255,.85)}.moderation-sova-charge input::-moz-range-track{height:18px;border:2px solid rgba(245,250,255,.88);border-radius:0;background:rgba(122,139,149,.34)}.moderation-sova-charge input::-moz-range-progress{height:18px;background:#68ddc5}.moderation-sova-charge input::-moz-range-thumb{width:5px;height:24px;border:0;border-radius:0;background:#f8ffff}.moderation-sova-ticks{position:absolute;left:0;right:0;top:6px;height:18px;pointer-events:none;z-index:3}.moderation-sova-ticks span{position:absolute;inset-block:0;width:2px;background:rgba(245,250,255,.9)}.moderation-sova-ticks span:first-child{left:33.333%}.moderation-sova-ticks span:last-child{left:66.666%}.moderation-sova-caption{position:absolute;left:50%;bottom:13px;transform:translateX(-50%);color:#e5edf1;font-size:10px;letter-spacing:3px}.moderation-sova-charge output{position:absolute;right:0;bottom:0;color:#7893a3;font-size:9px;font-weight:700;font-variant-numeric:tabular-nums}.moderation-sova-bounces{display:flex;flex-direction:column;align-items:center;gap:5px;margin-top:5px;color:#7893a3;font-size:9px;font-weight:800;letter-spacing:1.8px}.moderation-sova-bounces>div{display:flex;gap:12px}.moderation-sova-bounces button{width:38px;height:38px;border:0;background:transparent;display:grid;place-items:center;cursor:pointer}.moderation-sova-bounces i{width:18px;height:18px;transform:rotate(45deg);border:2px solid #7d8990;background:rgba(111,126,134,.28);transition:.15s ease}.moderation-sova-bounces button.active i{border-color:#efffff;background:#6bddc7;box-shadow:0 0 10px rgba(107,221,199,.7),inset 0 0 0 3px rgba(5,25,31,.35)}.moderation-sova-bounces small{font-size:9px;font-weight:500;letter-spacing:0;color:var(--text2)}
.sova-shot-panel{padding:9px 12px;display:grid;grid-template-columns:auto minmax(240px,1fr) auto;align-items:center;column-gap:14px}.sova-shot-heading{text-align:left;margin:0;white-space:nowrap}.sova-shot-control{width:auto;margin:0;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:1px}.sova-shot-control .sova-shot-label,.sova-bounce-label{text-align:center;font-size:8px;font-weight:800;line-height:10px;letter-spacing:1.4px;text-transform:uppercase;color:#7893a3}.sova-shot-control .sova-charge-caption{display:none}.sova-shot-control .sova-charge-slider{width:100%;padding-bottom:0}.sova-shot-control .sova-charge-slider input{display:block;height:30px}.sova-shot-control .sova-charge-ticks{top:6px}.sova-bounce-row{width:auto;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}.sova-bounce-row .sova-bounce-picker{width:auto;justify-content:center;gap:4px}.sova-bounce-row .sova-bounce-picker button{flex:0 0 30px;width:30px;height:30px}.sova-bounce-row .bounce-diamond{width:15px;height:15px}
.sova-charge-slider.is-max input::-webkit-slider-runnable-track,.moderation-sova-charge.is-max input::-webkit-slider-runnable-track{background:linear-gradient(90deg,#ff4655 0 var(--sova-charge-pct,100%),rgba(122,139,149,.34) var(--sova-charge-pct,100%) 100%)}
.sova-charge-slider.is-max input::-moz-range-progress,.moderation-sova-charge.is-max input::-moz-range-progress{background:#ff4655}
@media(max-width:700px){.sova-shot-panel{grid-template-columns:1fr auto;gap:8px 12px}.sova-shot-heading{grid-column:1/-1}.sova-shot-control{min-width:0}.sova-bounce-picker{width:auto}.sova-bounce-picker button{flex:0 0 30px}}
.header-notifications:focus-visible,.notification-card:focus-visible,.notifications-intro-actions button:focus-visible{outline:2px solid #7dd3fc;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.notification-banner{animation:none}.header-notifications,.notification-card,.sidebar-action,.map-orientation-layer,.map-site-label,.map-spawn-zone>b{transition:none}}
.notification-batch{display:grid;gap:10px}.notification-batch-heading{display:flex;align-items:center;justify-content:space-between;color:#d8e9ff}.notification-batch-heading span{min-width:30px;padding:3px 9px;border:1px solid #2e5877;border-radius:999px;color:#54cef5;text-align:center}.notification-batch-list{display:grid;gap:8px;max-height:390px;overflow:auto;padding-right:5px}.notification-batch-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid #29384f;border-radius:10px;background:#111b2c}.notification-batch-item>div{min-width:0;display:grid;gap:4px}.notification-batch-item b{overflow-wrap:anywhere;color:#f4f8ff}.notification-batch-item span{color:#8faac9;font-size:12px}.notification-batch-item .copy-id-btn{flex:0 0 auto}@media(max-width:620px){.notification-batch-item{align-items:flex-start;flex-direction:column}.notification-batch-item .copy-id-btn{width:100%}}
