:root{--bg:#0c1118;--panel:#131b25;--panel2:#17212c;--panel3:#1c2935;--line:#2a3644;--line2:#364454;--white:#f3f5f7;--text:#d4dce4;--muted:#93a1b0;--faint:#667687;--amber:#e6af64;--amber2:#f5c784;--green:#79c6a7;--red:#e49387;--blue:#89b9d9;--radius:11px}
*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font:13px/1.5 Inter,"Segoe UI",system-ui,-apple-system,sans-serif;min-height:100vh;letter-spacing:.02px}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--amber);outline-offset:2px}a{color:inherit}svg{flex-shrink:0}.ic{display:inline-block;vertical-align:middle}h1,h2,h3,p{margin-top:0}input,textarea,select{color:var(--text)}input::placeholder,textarea::placeholder{color:#637384}::selection{background:#dba35d77}::-webkit-scrollbar{width:8px;height:7px}::-webkit-scrollbar-thumb{background:#405061;border:2px solid #16202b;border-radius:10px}::-webkit-scrollbar-track{background:transparent}
.btn{height:38px;display:inline-flex;align-items:center;justify-content:center;gap:9px;white-space:nowrap;border-radius:8px;padding:0 16px;font-size:11px;font-weight:800;transition:.18s;border:1px solid transparent}.btn-gold{color:#2b2014;background:linear-gradient(120deg,#e1a95d,#f4c07c);border-color:#f1c480;box-shadow:0 3px 20px #dba15e1c}.btn-gold:hover{filter:brightness(1.08)}.btn-outline{color:#d4dce5;background:#1b2631;border-color:#435161}.btn-outline:hover{background:#263542}.btn-muted{color:#aab8c5;background:transparent;border-color:#364351}.btn-muted:hover{color:white;background:#1a2631}.square-btn{height:30px;width:30px;display:grid;place-items:center;background:#1d2a35;border:1px solid #43515f;color:#d0dce8;border-radius:7px}.square-btn:hover{background:#2a3946;color:white}.icon-small{width:27px;height:27px;display:grid;place-items:center;border:0;background:transparent;color:#93a3b2;border-radius:5px}.icon-small:hover{background:#344252;color:white}
.app-frame{min-height:100vh;background:radial-gradient(ellipse at 92% 0%,#15202d77,transparent 33%),#0d131b}.site-top{height:71px;padding:0 clamp(18px,2.7vw,44px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #25313e;background:#101720}.brand-group{display:flex;align-items:center;gap:11px;min-width:230px}.brand-icon{height:39px;width:39px;border-radius:9px;background:linear-gradient(140deg,#f0bd76,#cf8f42);color:#2c2016;display:grid;place-items:center;box-shadow:inset 0 0 0 1px #ffe0a13d}.brand-text b{display:block;font-weight:900;font-size:19px;line-height:1;letter-spacing:-1px;color:#f8f7f4}.brand-text b span,.brand-text b i{font-style:normal;color:var(--amber)}.brand-text small{display:block;margin-top:6px;color:#75818f;font-size:7px;font-weight:900;letter-spacing:2.15px}.header-center{display:flex;align-items:center;gap:11px;color:#72808e;font-weight:800;letter-spacing:1.45px;font-size:9px}.header-center strong{color:#d8e0e6;font-weight:800;letter-spacing:.9px;max-width:180px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.header-signal{height:6px;width:6px;background:#78c3a4;border-radius:50%;box-shadow:0 0 11px #78c3a488}.header-separator{color:#415161}.header-right{display:flex;align-items:center;gap:17px}.lock-label{color:#82c7a6;display:flex;align-items:center;gap:7px;font-size:10px;letter-spacing:1.3px;font-weight:900}.header-line{height:24px;width:1px;background:#344151}.header-icon{background:transparent;border:0;color:#8f9ead;display:grid;place-items:center;padding:5px}.header-icon:hover{color:#f2c180}.header-avatar{height:32px;width:32px;border-radius:8px;background:#423324;border:1px solid #69533b;color:#e9ba79;display:grid;place-items:center;font-size:10px;font-weight:900}.workspace{max-width:1800px;margin:auto;padding:31px clamp(18px,2.7vw,44px) 22px}.workspace-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:25px}.page-breadcrumb{font-size:9px;font-weight:900;letter-spacing:1.6px;color:#85919f;margin-bottom:14px}.page-breadcrumb span{padding:0 8px;color:#495767}.page-breadcrumb strong{color:#dba96a}.workspace-intro h1{font-size:clamp(29px,2.75vw,38px);font-weight:850;letter-spacing:-1.4px;line-height:1.15;color:#f1f4f6;margin:0}.workspace-intro h1 em{font-style:normal;color:var(--amber)}.workspace-intro p{color:#91a0b0;font-size:12px;margin:10px 0 0}.intro-actions{display:flex;gap:9px;align-items:center}.save-status{white-space:nowrap;display:flex;align-items:center;gap:6px;color:#8595a4;font-size:10px;margin-right:7px}.status-dot{display:inline-block;height:6px;width:6px;border-radius:50%;background:#71889e}.status-dot.success{background:#78c8a4;box-shadow:0 0 10px #78c8a46b}.status-dot.pending{background:#e6b06b}.status-dot.error{background:#e5857a}.map-nav{display:flex;align-items:center;gap:19px;margin-bottom:20px;padding:11px 13px;background:#141d27;border:1px solid #2e3a47;border-radius:var(--radius)}.map-nav-label{display:flex;flex-direction:column;gap:4px;min-width:98px;padding-left:2px;color:#aebbc8;font-size:9px;letter-spacing:1.6px;font-weight:900}.map-nav-label span{color:#667789;font-size:8px;letter-spacing:1.1px}.map-pills{display:flex;gap:6px;overflow-x:auto;scrollbar-width:thin;padding:1px 0}.map-pill{border:1px solid transparent;background:transparent;color:#91a0af;padding:9px 11px;display:flex;gap:8px;align-items:center;font-size:11px;font-weight:750;white-space:nowrap;border-radius:7px;transition:.15s}.map-pill:hover{background:#273440;color:#edf1f4}.map-pill.active{border-color:#865e38;background:#3a2d21;color:#f2bf7d}.map-pill-marker{height:5px;width:5px;border-radius:50%;background:#526478}.map-pill.active .map-pill-marker{background:var(--amber);box-shadow:0 0 10px #e6af64}
.content-grid{display:grid;grid-template-columns:minmax(215px,245px) minmax(390px,1fr) minmax(310px,355px);gap:16px;align-items:stretch}.tactics-panel,.center-panel,.players-panel{min-width:0}.tactics-panel,.players-panel{border:1px solid #2a3643;border-radius:var(--radius);background:linear-gradient(155deg,#151e28,#131b25);display:flex;flex-direction:column;overflow:hidden}.panel-eyebrow{display:flex;justify-content:space-between;align-items:center;color:#7a8b9a;font-weight:900;letter-spacing:1.5px;font-size:9px;padding:19px 18px 0}.panel-eyebrow span{color:#c99b5c;font-size:9px}.left-panel-title{display:flex;align-items:center;justify-content:space-between;padding:3px 17px 18px}.left-panel-title h2,.right-panel-title h2{color:#f2f4f6;margin:0;font-size:15px;letter-spacing:-.35px;line-height:1.3}.side-toggle{display:grid;grid-template-columns:1fr 1fr;padding:4px;margin:0 14px 17px;gap:3px;border:1px solid #374451;background:#111923;border-radius:8px}.side-toggle button{border:0;border-radius:5px;background:transparent;color:#8796a5;height:33px;font-size:10px;letter-spacing:1px;font-weight:850}.side-toggle button.active.t{background:#62482c;color:#f7c889}.side-toggle button.active.ct{background:#2e4b60;color:#a4d7f0}.tactic-list{display:flex;flex-direction:column;gap:5px;padding:0 10px;flex:1;min-height:320px}.tactic-item{border:1px solid transparent;background:transparent;border-radius:8px;min-height:64px;width:100%;display:flex;align-items:center;gap:11px;padding:10px 9px;color:#bfccd7;text-align:left}.tactic-item:hover{background:#202b37}.tactic-item.active{background:linear-gradient(100deg,#3b3025,#292724);border-color:#6a4c2c}.tactic-index{font-size:10px;letter-spacing:.5px;color:#788796;font-weight:900;min-width:22px}.tactic-item.active .tactic-index{color:#e9b572}.tactic-item-name{min-width:0;flex:1}.tactic-item-name b{font-size:11px;color:#d7dfe8;line-height:1.4;display:block}.tactic-item.active .tactic-item-name b{color:#f8f4ed}.tactic-item-name small{font-size:8px;color:#768697;font-weight:750;letter-spacing:1px;display:block;margin-top:5px}.tactic-item.active .tactic-item-name small{color:#ba9e7a}.tactic-item>svg{color:#718293}.tactic-item.active>svg{color:#dda76a}.no-tactics{display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;gap:8px;padding:60px 20px;color:#798999}.no-tactics b{font-size:11px;color:#afbfcb}.no-tactics small{font-size:10px}.left-panel-bottom{display:flex;gap:11px;align-items:center;margin:0 14px 16px;border-top:1px solid #2d3946;padding-top:16px}.round-icon{width:34px;height:34px;background:#2c332d;border:1px solid #4a4b39;color:#daa768;display:grid;place-items:center;border-radius:8px}.left-panel-bottom div{display:flex;flex-direction:column;gap:4px}.left-panel-bottom strong{font-size:10px;color:#bdc8d2}.left-panel-bottom small{font-size:9px;color:#788897}
.center-panel{display:flex;flex-direction:column;gap:12px}.tactic-banner{border:1px solid #344352;border-radius:var(--radius);background:linear-gradient(120deg,#1b2530,#18212b);padding:16px 19px;display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:111px}.banner-kicker,.small-kicker{letter-spacing:1.7px;font-size:9px;color:#dbaa6d;font-weight:900}.demo-tag{font-size:8px;font-weight:900;letter-spacing:1px;padding:3px 6px;border-radius:4px;background:#504029;color:#eec286;margin-left:8px}.tactic-banner h2{font-size:21px;letter-spacing:-.6px;color:#f2f4f6;line-height:1.2;margin:8px 0 7px}.tactic-banner p{font-size:10.5px;color:#91a0ad;margin:0;line-height:1.5;max-width:610px}.edit-tactic{flex-shrink:0}.board-shell{border-radius:var(--radius);border:1px solid #324151;background:#111a24;overflow:hidden;display:flex;flex-direction:column;flex:1}.board-shell-head{height:61px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;gap:9px;border-bottom:1px solid #2d3a48;background:#16212b}.board-shell-title .small-kicker{font-size:8px;color:#8fa1b0;margin-bottom:5px}.board-shell-title strong{color:#e3e9ed;font-size:12px;letter-spacing:.1px}.board-shell-title strong span{font-size:10px;font-weight:700;color:#8091a1;padding-left:6px}.board-header-actions{display:flex;align-items:center;gap:12px;color:#697d90}.board-hint{font-size:9px;color:#7b8e9f}.board-stage{width:100%;aspect-ratio:1/1;max-height:680px;position:relative;overflow:hidden;background:linear-gradient(135deg,#1c2b37,#23323c);margin:auto}.radar-image{height:100%;width:100%;object-fit:contain;position:absolute;inset:0;filter:saturate(.62) brightness(.81) contrast(1.12)}.radar-overlay{position:absolute;inset:0;pointer-events:none;background:linear-gradient(125deg,#06152135,transparent 35%,#07131e68)}.radar-mesh{position:absolute;inset:0;background-image:linear-gradient(#9bb0c60a 1px,transparent 1px),linear-gradient(90deg,#9bb0c60a 1px,transparent 1px);background-size:10% 10%;pointer-events:none}.route-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.route-svg line{pointer-events:stroke;cursor:pointer}.board-marker{position:absolute;transform:translate(-50%,-50%);height:30px;width:30px;border:2px solid #ffffffa9;display:grid;place-items:center;border-radius:50%;background:#83b9d2;color:#10202e;font-weight:900;font-size:11px;box-shadow:0 3px 12px #0009;z-index:3;transition:box-shadow .15s,transform .15s;touch-action:none}.board-marker.player{background:var(--player);border:2px solid #fff9;box-shadow:0 0 0 4px #0a1720a9,0 3px 12px #0009}.board-marker.flash{background:#e9d181}.board-marker.molly{background:#e78d69}.board-marker:hover{transform:translate(-50%,-50%) scale(1.12);z-index:5}.board-marker.picked{outline:2px solid #fff8d0;outline-offset:5px}.first-arrow-marker{height:18px;width:18px;border-radius:50%;border:2px dashed var(--amber);position:absolute;transform:translate(-50%,-50%);z-index:5}.radar-label{position:absolute;bottom:15px;left:17px;font-size:13px;font-weight:900;letter-spacing:1.7px;color:#dde4e47a;text-shadow:0 2px 5px #000b;pointer-events:none}.radar-label span{display:block;color:#bfccd080;font-size:7px;letter-spacing:2.2px;margin-top:3px}.no-board{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#15212aa8;color:#8ca0ae;position:relative;z-index:4}.no-board span{color:#d5a568}.no-board b{color:#dce5ec}.no-board small{font-size:11px}.board-bottom{display:flex;justify-content:space-between;gap:13px;align-items:center;min-height:48px;border-top:1px solid #344150;padding:10px 15px;background:#17212c}.board-legend{display:flex;align-items:center;flex-wrap:wrap;gap:13px}.board-legend span{color:#8c9eac;font-size:8px;letter-spacing:.6px;font-weight:800;white-space:nowrap;display:flex;align-items:center;gap:5px}.board-legend i{height:7px;width:7px;border-radius:50%;display:block;background:#e7b06a}.board-legend i.legend-smoke{background:#83b9d2}.board-legend i.legend-flash{background:#e9d181}.board-legend i.legend-molly{background:#e78d69}.board-help{color:#687e8e;font-size:9px;text-align:right}.edit-toolbar{padding:10px 12px;border-top:1px solid #344150;background:#131f29;display:flex;align-items:center;justify-content:space-between;gap:10px}.tool-row{display:flex;gap:4px}.tool-btn{display:flex;align-items:center;gap:5px;background:transparent;border:1px solid transparent;border-radius:7px;color:#9cacba;padding:6px 7px;font-size:9px}.tool-btn:hover{background:#273643}.tool-btn.selected{background:#493a2b;border-color:#805f3b;color:#f3c486}.edit-toolbar-tip{display:flex;align-items:center;gap:6px;font-size:9px;color:#687d8e;text-align:right}
.players-panel{height:100%;max-height:calc(111px + min(680px, calc(100vw - 710px)) + 124px);min-height:660px}.right-panel-title{padding:8px 17px 15px;border-bottom:1px solid #2c3947}.right-panel-title p{font-size:10px;line-height:1.45;color:#8798a7;margin:7px 0 0}.player-scroll{flex:1;overflow-y:auto;padding:10px 9px 11px;min-height:0;scrollbar-width:thin}.player-card{border:1px solid #32404e;border-radius:9px;margin-bottom:8px;background:#19232d;overflow:hidden;transition:border-color .15s}.player-card.expanded{border-color:#8b673f;background:#20262b}.player-card-head{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;text-align:left;padding:11px 11px;color:var(--text)}.player-number{width:33px;height:33px;flex-shrink:0;display:grid;place-items:center;border-radius:7px;background:color-mix(in srgb,var(--player) 16%,#27323e);border:1px solid color-mix(in srgb,var(--player) 52%,#3d4a55);color:var(--player);font-size:10px;font-weight:900}.player-summary{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}.player-summary b{font-size:11px;color:#e1e7eb}.player-summary small{font-size:8px;letter-spacing:.7px;color:#8092a2;font-weight:750}.dot-divider{color:#617080;padding:0 3px}.player-card-chevron{color:#7b8b99;transform:rotate(0deg);transition:.2s}.player-card.expanded .player-card-chevron{transform:rotate(90deg);color:var(--amber)}.collapsed-task{color:#8192a2;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 12px 11px 54px}.player-card-content{padding:0 12px 13px}.card-section-caption{display:flex;align-items:center;justify-content:space-between;font-size:8px;font-weight:900;letter-spacing:1.3px;color:#c4a16e;margin:3px 0 7px}.card-section-caption b{color:#a3b4bf;font-size:9px}.card-section-caption .editing-chip{font-size:7px;border:1px solid #776245;border-radius:3px;color:#e3b980;padding:2px 4px}.player-task{color:#d1d6db;font-size:10.5px;line-height:1.65;margin:0 0 17px;white-space:pre-line}.task-input{width:100%;background:#131e28;border:1px solid #455463;border-radius:7px;color:#dee5ea;resize:vertical;padding:9px;line-height:1.5;font-size:11px;margin-bottom:16px}.util-caption{margin-bottom:9px}.utility-row{padding:11px;background:#151f29;border:1px solid #354251;border-radius:8px;margin-bottom:9px}.utility-row.highlight{border-color:#ac8150}.utility-row-top{display:flex;align-items:center;gap:7px;min-width:0}.utility-row-top strong{font-size:10px;color:#e0e5e9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.nade-tag{font-size:7px;font-weight:900;letter-spacing:.5px;display:inline-flex;gap:3px;align-items:center;border-radius:4px;padding:4px 5px;background:#284452;color:#a5d7ed;flex-shrink:0}.nade-tag.flash{background:#484027;color:#ead38f}.nade-tag.molly{background:#4b322a;color:#eda689}.nade-meta{color:#80909e;font-size:9px;margin:8px 0 9px}.nade-meta span{padding:0 4px;color:#586877}.screenshots{display:grid;grid-template-columns:1fr 1fr;gap:8px}.media-box{height:108px;border:1px solid #3b4854;border-radius:6px;overflow:hidden;background:#1f2c36;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;position:relative;color:#879bad;text-align:center;padding:8px}.media-box.placeholder{background:repeating-linear-gradient(135deg,#1a2833,#1a2833 10px,#202f3b 10px,#202f3b 11px)}.media-box.placeholder span{color:#a1afbb;font-size:8px;font-weight:800}.media-box.placeholder small{font-size:8px;color:#677b8b}.media-box.has-image{padding:0;cursor:zoom-in}.media-box.has-image img{width:100%;height:100%;object-fit:cover}.media-caption{position:absolute;bottom:0;left:0;right:0;background:#07121bba;display:flex;justify-content:space-between;padding:6px;font-size:7px;letter-spacing:.7px;font-weight:900;color:#e1e7ea}.nade-notes{margin:9px 0 0;color:#8395a5;font-size:9px;line-height:1.5}.video-link{margin-top:9px;display:flex;gap:7px;align-items:center;text-decoration:none;color:#9bc9e4;font-size:10px;font-weight:700}.video-link svg:last-child{margin-left:auto}.no-utility{padding:14px 8px;border:1px dashed #3c4b57;border-radius:7px;color:#7b8d9b;font-size:10px;text-align:center;margin-bottom:7px}.add-utility{border:1px dashed #866746;color:#e6b775;background:#302a24;display:flex;align-items:center;justify-content:center;gap:7px;width:100%;border-radius:7px;padding:9px;font-size:10px;font-weight:750;margin-top:9px}.no-player-plan{color:#7c8b9b;text-align:center;margin:65px 25px}.bottom-message{display:flex;align-items:center;justify-content:space-between;gap:15px;color:#647586;font-size:9px;margin:17px 0 0}.bottom-message>div:first-child{display:flex;align-items:center;gap:7px}.bottom-message>div:last-child{letter-spacing:1.2px;font-weight:900}.bottom-message>div:last-child span{color:#4c5a68;padding:0 5px}
.dialog-backdrop{position:fixed;inset:0;z-index:100;background:#02070ed9;backdrop-filter:blur(5px);display:grid;place-items:center;padding:18px;overflow-y:auto}.dialog{background:#16212c;border:1px solid #455565;border-radius:12px;width:min(100%,500px);max-height:min(92vh,900px);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 100px #000a}.dialog.wide-dialog{width:min(100%,650px)}.dialog-head{display:flex;align-items:start;justify-content:space-between;padding:20px 23px 17px;border-bottom:1px solid #364553}.dialog-kicker{font-size:9px;color:#e1ae67;letter-spacing:1.6px;font-weight:900}.dialog-head h2{font-size:21px;color:#f0f2f5;letter-spacing:-.5px;margin:7px 0 0}.dialog-body{padding:21px 23px;display:flex;flex-direction:column;gap:16px;overflow-y:auto}.form-field{display:flex;flex-direction:column;gap:7px;min-width:0;flex:1}.form-field>span{font-size:10px;font-weight:800;color:#c3ced8}.form-field>input,.form-field>textarea,.form-field>select,.settings-player input{border:1px solid #435260;border-radius:7px;background:#101a24;color:#e2e8ed;padding:11px 12px;min-width:0;width:100%;outline:none;font-size:12px}.form-field>textarea{resize:vertical;line-height:1.5}.form-field>input:focus,.form-field>select:focus,.form-field>textarea:focus,.settings-player input:focus{border-color:#e1ae67}.form-two{display:flex;gap:13px}.dialog-footer{border-top:1px solid #344452;background:#141e29;display:flex;justify-content:flex-end;gap:9px;padding:16px 23px}.dialog-delete{align-self:flex-start;border:0;background:transparent;color:#e7958f;display:flex;align-items:center;gap:8px;font-size:11px;font-weight:800;padding:7px 0}.screens-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.upload-slot{border:1px solid #3a4b5a;background:#111b25;border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:9px}.upload-slot>span{color:#aab7c4;font-size:8px;letter-spacing:1px;font-weight:900}.upload-preview{height:130px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px;background:#22303b;border:1px dashed #485866;border-radius:5px;color:#7991a5;overflow:hidden}.upload-preview img{width:100%;height:100%;object-fit:contain}.upload-preview small{font-size:9px}.file-button{border-radius:6px;background:#293948;border:1px solid #496073;color:#d5e1eb;padding:8px;display:flex;align-items:center;justify-content:center;gap:7px;font-size:9px;font-weight:800;cursor:pointer}.file-button:hover{background:#344959}.dialog-subtitle{font-size:9px;letter-spacing:1.5px;color:#d8ab6f;font-weight:900;border-bottom:1px solid #394958;padding-bottom:8px}.settings-player{display:flex;align-items:center;gap:9px}.settings-number{color:#d5a769;width:27px;font-size:10px;font-weight:900}.settings-player label{flex:1;font-size:9px;color:#8596a5;display:flex;flex-direction:column;gap:5px;min-width:0}.settings-player input{padding:8px;font-size:11px}.settings-description{font-size:10px;color:#92a2b0;line-height:1.55;margin:0}.member-list{display:flex;flex-wrap:wrap;gap:7px;color:#aebdc7;font-size:9px}.member-list span{border:1px solid #3a4b59;background:#202d38;padding:5px 8px;border-radius:6px;display:flex;align-items:center;gap:6px}.member-list small{color:#7b9eb1;font-size:8px}.add-account{align-self:flex-start}.logout-link{color:#e69a8e;display:flex;align-items:center;gap:8px;font-size:10px;font-weight:800;border:0;background:none;padding:9px 0}.lightbox-dialog{width:min(96vw,1100px);background:#101821}.lightbox-head{padding:13px 17px;display:flex;align-items:center;justify-content:space-between}.lightbox-head strong{font-size:13px}.lightbox img{display:block;width:100%;max-height:76vh;object-fit:contain;background:#0c151e}.toast{position:fixed;z-index:200;bottom:24px;right:24px;background:#254538;border:1px solid #527e68;color:#d5f1df;box-shadow:0 10px 30px #0008;border-radius:9px;padding:13px 17px;font-size:11px;max-width:370px;transition:opacity .3s}.toast.is-error{background:#422c2d;border-color:#754846;color:#f4c0bb}.toast.fade{opacity:0;pointer-events:none}
.auth-screen{display:grid;place-items:center;min-height:100vh;padding:25px;background:radial-gradient(circle at 20% 25%,#2b332f88,transparent 29%),radial-gradient(circle at 85% 72%,#2c344288,transparent 28%),#0e141c;position:relative;overflow:hidden}.auth-screen:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,transparent,#000,transparent);pointer-events:none}.auth-orbit{width:510px;height:510px;border:1px solid #f4b36316;border-radius:50%;position:absolute;left:-215px;top:-140px}.auth-orbit.orbit-two{left:auto;top:auto;right:-220px;bottom:-230px}.auth-card{position:relative;width:min(100%,440px);border:1px solid #42515e;border-radius:14px;background:linear-gradient(130deg,#202a35,#15202a);box-shadow:0 24px 90px #0008;padding:36px}.auth-mark{height:55px;width:55px;display:grid;place-items:center;color:#201a16;background:linear-gradient(135deg,#f0c27e,#d99848);border-radius:12px;margin:0 0 28px}.auth-mark svg{height:31px;width:31px}.auth-eyebrow{font-size:9px;font-weight:900;letter-spacing:2px;color:#dbaa6b}.auth-card h1{font-size:27px;letter-spacing:-.7px;color:white;margin:10px 0 11px}.auth-card p{color:#91a3b1;font-size:12px;line-height:1.65;margin:0 0 28px}.auth-card label{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:800;color:#c5ced8;margin-bottom:19px}.auth-card input{background:#101923;border:1px solid #435362;border-radius:8px;padding:12px;color:#eef1f5}.auth-card input:focus{border-color:#d6a666;outline:none}.auth-submit{width:100%;height:45px;margin-top:8px;justify-content:space-between;font-size:12px}.auth-submit span{font-size:18px}.auth-error{color:#ffd0c9;background:#4c3032;border:1px solid #784a4d;border-radius:6px;padding:10px;font-size:11px;margin:-3px 0 12px}.auth-foot{display:flex;justify-content:center;align-items:center;gap:7px;color:#738798;font-size:9px;letter-spacing:1.1px;font-weight:900;margin-top:26px}.secure-dot{height:6px;width:6px;background:#7cc8a4;border-radius:50%}.auth-foot-separator{color:#495b6b}.boot-loading,.boot-error{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;min-height:100vh;color:#e5b46d;font-size:20px;font-weight:900;letter-spacing:1px}.boot-loading span{font-size:9px;letter-spacing:2px;color:#8194a5}.boot-error strong{font-size:16px;color:#dce8ed}.boot-error p{font-size:12px;color:#91a4b3}.boot-error button{border:1px solid #a77b47;color:#ebc38e;background:#35291d;border-radius:7px;padding:9px 13px}
@media(max-width:1540px){.content-grid{grid-template-columns:215px minmax(360px,1fr) 325px;gap:12px}.workspace{padding-left:25px;padding-right:25px}.site-top{padding-left:25px;padding-right:25px}.board-stage{max-height:620px}.players-panel{max-height:900px}.tool-btn span{display:none}.edit-toolbar-tip{font-size:8px}}
@media(max-width:1210px){.header-center{display:none}.content-grid{grid-template-columns:210px minmax(350px,1fr);grid-template-rows:auto auto}.players-panel{grid-column:1/-1;max-height:none;min-height:0}.player-scroll{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:8px;overflow:visible}.player-card{margin:0}.players-panel{overflow:visible}.center-panel{min-width:0}.right-panel-title{padding-bottom:13px}.board-stage{max-height:none}}
@media(max-width:790px){.site-top{height:61px}.brand-group{min-width:0}.header-center{display:none}.workspace{padding:24px 14px}.workspace-intro{flex-direction:column;align-items:flex-start}.intro-actions{width:100%;justify-content:space-between}.workspace-intro h1{font-size:31px}.map-nav{display:block}.map-nav-label{flex-direction:row;align-items:center;justify-content:space-between;padding:0 1px 8px}.map-pills{width:100%}.content-grid{display:flex;flex-direction:column}.tactics-panel{min-height:0}.tactic-list{min-height:0;display:flex;flex-direction:row;overflow-x:auto;padding:0 10px 12px}.tactic-item{min-width:205px}.left-panel-bottom{display:none}.players-panel{max-height:none}.player-scroll{display:flex;flex-direction:column}.player-card{width:100%}.board-stage{max-height:640px}.map-pill{padding:8px 12px}.bottom-message>div:last-child{display:none}}
@media(max-width:480px){.brand-text b{font-size:17px}.brand-text small{font-size:6px;letter-spacing:1.5px}.brand-icon{height:34px;width:34px}.lock-label{font-size:8px}.header-right{gap:8px}.header-line{display:none}.workspace-intro h1{font-size:27px}.workspace-intro p{font-size:11px}.page-breadcrumb{font-size:8px}.save-status{font-size:9px}.intro-actions .btn{height:34px;font-size:10px;padding:0 9px}.map-nav{padding:9px}.board-shell-head{height:55px;padding:0 11px}.board-hint{display:none}.board-bottom{flex-direction:column;align-items:flex-start}.board-help{text-align:left}.board-legend{gap:9px}.edit-toolbar{flex-wrap:wrap}.tool-btn{padding:5px}.edit-toolbar-tip{width:100%}.tactic-banner{padding:12px}.tactic-banner h2{font-size:18px}.tactic-banner p{font-size:10px}.form-two{flex-direction:column}.screens-upload-grid{grid-template-columns:1fr}.dialog-body{padding:16px}.dialog-head,.dialog-footer{padding:16px}.dialog{max-height:96vh}.auth-card{padding:28px 23px}.player-scroll{padding:8px}}

/* Preserve radar coordinates at every viewport width. */
.board-stage{width:min(100%,620px);max-height:none;flex:none;aspect-ratio:1/1}
.radar-image{filter:saturate(.77) brightness(.96) contrast(1.1)}
.board-expand{width:30px;height:30px;display:grid;place-items:center;border-radius:6px;color:#90a2b1;border:1px solid #394957;background:#20303d;cursor:pointer}
.board-expand:hover{border-color:#c6955a;color:#f3c184;background:#302b25}
body.board-fullscreen{overflow:hidden}
body.board-fullscreen::before{content:"";position:fixed;inset:0;z-index:99;background:#060b10e8}
body.board-fullscreen .board-shell{position:fixed;z-index:100;inset:12px;display:flex;align-items:stretch;box-shadow:0 20px 90px #000b}
body.board-fullscreen .board-stage{width:min(calc(100vh - 180px),calc(100vw - 42px));height:auto;max-height:calc(100vh - 180px);margin:auto;aspect-ratio:1/1}
body.board-fullscreen .board-shell-head,body.board-fullscreen .board-bottom,body.board-fullscreen .edit-toolbar{flex-shrink:0}
@media(max-width:790px){body.board-fullscreen .board-shell{inset:5px}body.board-fullscreen .board-stage{width:min(calc(100vh - 205px),calc(100vw - 16px));max-height:calc(100vh - 205px)}}
