:root{--color-sq-light: #f0d9b5;--color-sq-dark: #b58863;--color-sq-selected: rgba(72, 214, 78, .16);--color-sq-drag-hover: rgba(20, 85, 30, .3);--color-board-shadow: rgba(0, 0, 0, .34);--color-board-edge: #2f2b28;--color-panel: #312e2b;--color-panel-strong: #262421;--color-panel-border: #4a4541;--color-panel-text: #f3f0e8;--color-panel-text-muted: #c7c2b8;--color-panel-accent: #7fa650;--color-selection-ring: #65e35b}.chess-board-editor{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column}.chess-board-editor--disabled button,.chess-board-editor--disabled input,.chess-board-editor--disabled select{pointer-events:none;opacity:.5}.chess-board-editor--disabled .level-toolbar__btn--lock-toggle{pointer-events:auto;opacity:1}.chess-board-editor--disabled .level-toolbar-bottom__group--primary .level-toolbar-bottom__btn:not(:disabled){pointer-events:auto;opacity:1}.chess-board-editor__layout{flex:1;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);grid-template-columns:auto minmax(0,1fr);justify-content:start;align-items:stretch;column-gap:6px;padding:4px 6px;overflow:hidden}.chess-board-editor__workspace-strip{grid-row:2;grid-column:2;display:flex;align-self:stretch;justify-self:stretch;gap:6px;width:100%;min-width:0;min-height:0;overflow:hidden}.chess-board-editor__layout--board-capped .chess-board-editor__workspace-strip{width:fit-content;max-width:100%;justify-self:start}.chess-board-editor__layout--board-capped .chess-board-editor__board-column{width:min(100%,var(--chess-board-editor-board-shell-width, 100%));max-width:var(--chess-board-editor-board-shell-width, 100%);flex:0 1 auto}.chess-board-editor__layout--board-capped .board-wrapper-shell{align-items:flex-start;justify-content:flex-start}.chess-board-editor__fen-bar{grid-row:1;grid-column:2;align-self:stretch;width:min(100%,var(--chess-board-editor-board-shell-width, 100%));max-width:var(--chess-board-editor-board-shell-width, 100%);justify-self:start}.chess-board-editor__controls-column{grid-column:1;display:flex;flex-direction:column;gap:4px;min-width:150px;min-height:0;align-self:stretch;grid-row:1 / 3;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.chess-board-editor__ctrl-group{display:flex;flex-direction:column;gap:3px;min-width:0}.chess-board-editor__ctrl-group--board{border-top:1px solid #3a3734;padding-top:4px}.chess-board-editor__board-column{grid-row:2;grid-column:2;display:flex;align-self:stretch;justify-self:stretch;flex:1 1 auto;box-sizing:border-box;min-width:0;min-height:0;overflow:hidden}.chess-board-editor__bank-column{grid-row:1 / 3;grid-column:3;align-self:stretch;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.chess-board-editor__element-bank-column{grid-row:1 / 3;align-self:stretch;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.chess-board-editor__spell-bank-column{grid-row:1 / 3;align-self:stretch;display:flex;flex-direction:column;gap:6px;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.chess-board-editor__action-bar{position:relative;display:flex;align-items:center;padding:3px 6px;border-top:1px solid #3a3734;background:#312e2b;flex-shrink:0}.chess-board-editor__ctrl-castling{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:2px}.chess-board-editor__ctrl-color{display:grid;grid-template-columns:1fr 1fr;gap:2px}.chess-board-editor__ctrl-ep{display:flex;align-items:center;gap:6px;padding:2px}.chess-board-editor__ctrl-ep .chess-board-editor__select{width:auto;min-width:50px;max-width:80px}.chess-board-editor__ctrl-actions{display:grid;grid-template-columns:1fr 1fr;gap:2px}.chess-board-editor__ctrl-clear{display:flex;gap:2px}.chess-board-editor__ctrl-clear .chess-board-editor__action{flex:1}.chess-board-editor__action,.chess-board-editor__fen-button,.chess-board-editor__toggle,.piece-bank__tool{min-height:0;height:100%;padding:5px 8px;border:1px solid var(--color-panel-border);border-radius:4px;background:var(--color-panel-strong);color:var(--color-panel-text);cursor:pointer;font-size:.85rem;font-weight:500;white-space:nowrap;transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.chess-board-editor__action:hover,.chess-board-editor__fen-button:hover,.chess-board-editor__toggle:hover,.piece-bank__tool:hover{background:#3a3632;border-color:#5b554f;box-shadow:0 1px 3px #0003}.chess-board-editor__toggle--selected,.piece-bank__tool--selected{border-color:var(--color-panel-accent);background:#3d4a2b;box-shadow:0 0 8px #7fa65033}.chess-board-editor__fen-bar{display:flex;position:relative;z-index:1;align-items:stretch;gap:4px;padding:3px 6px;border:1px solid var(--color-panel-border);border-radius:5px;background:var(--color-panel);color:var(--color-panel-text);overflow:hidden}.chess-board-editor__fen-label{color:var(--color-panel-text-muted);font-size:.85rem;font-weight:600;padding:0 4px;white-space:nowrap}.chess-board-editor__fen-input{flex:1;min-width:0;min-height:2.8rem;height:auto;padding:4px 8px;border:1px solid var(--color-panel-border);border-radius:4px;background:var(--color-panel-strong);color:var(--color-panel-text);font-size:.85rem;text-transform:none;letter-spacing:normal;resize:none;word-break:break-all;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.chess-board-editor__fen-input:focus{border-color:var(--color-panel-accent);outline:none;box-shadow:0 0 0 2px #7fa65026}.chess-board-editor__fen-feedback{color:var(--color-panel-text-muted);font-size:.75rem;white-space:nowrap}.chess-board-editor__fen-feedback--error{color:#f4a5a5}.chess-board-editor__fen-banner{display:flex;align-items:center;min-width:0;max-width:320px;padding:0 8px;border:1px solid #824343;border-radius:6px;background:#3e2020;color:#f7c6c6;font-size:.75rem;font-weight:600}.chess-board-editor__fen-banner-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chess-board-editor__session-banner{display:flex;align-items:center;gap:8px;margin-left:auto;min-width:0}.chess-board-editor__session-banner--play{flex-wrap:wrap;justify-content:flex-end}.chess-board-editor__session-banner--play .chess-board-editor__session-label{white-space:normal}.chess-board-editor__session-label{color:#d7e8bd;font-size:.78rem;font-weight:600;white-space:nowrap}.chess-board-editor__session-btn{padding:5px 10px;border:1px solid #5d7a35;border-radius:6px;background:#354122;color:#d7e8bd;font-size:.76rem;cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.chess-board-editor__session-btn:hover{background:#415129;border-color:#709343}.chess-board-editor__field-label{color:var(--color-panel-text-muted);font-size:.75rem;font-weight:600}.chess-board-editor__select{width:100%;height:100%;min-height:0;padding:0 8px;border:1px solid var(--color-panel-border);border-radius:4px;background:var(--color-panel-strong);color:var(--color-panel-text);font-size:.85rem;transition:border-color var(--transition-fast)}.chess-board-editor__select:disabled{opacity:.6;cursor:not-allowed}.chess-board-editor__action-bar .chess-board-editor__action{flex:0 0 auto}.chess-board-editor__board-shell{display:flex;flex:1 1 auto;align-items:stretch;gap:8px;height:100%;width:100%;min-width:0;min-height:0}.evaluation-bar-shell{display:flex;flex-direction:column;align-items:stretch;gap:6px;min-width:0;min-height:0;flex-shrink:0}.evaluation-bar-shell--vertical{width:52px;height:var(--chess-board-editor-board-side, 100%);max-height:100%;align-self:flex-start}.evaluation-bar-shell--horizontal{width:100%}.evaluation-bar{position:relative;display:flex;overflow:hidden;border:1px solid var(--color-panel-border);border-radius:8px;background:#262421;box-shadow:0 4px 14px #00000047;flex-shrink:0}.evaluation-bar--vertical{width:100%;flex:1 1 auto;flex-direction:column}.evaluation-bar--horizontal{width:100%;height:30px;flex-direction:row}.evaluation-bar__segment{display:flex;flex-basis:0;flex-shrink:1;align-items:center;justify-content:center;min-width:0;min-height:0;transition:flex-grow .22s ease}.evaluation-bar__segment--black{background:linear-gradient(180deg,#2c2825,#191715)}.evaluation-bar__segment--white{background:linear-gradient(180deg,#fcfaf4,#e6dfd2)}.evaluation-bar__label{display:flex;align-items:center;justify-content:center;min-height:18px;padding:0 2px;color:var(--color-panel-text);font-size:.68rem;font-weight:700;line-height:1;text-align:center;font-variant-numeric:tabular-nums}.evaluation-bar__label--status{color:var(--color-panel-text-muted);font-size:.56rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.evaluation-bar__status{display:inline-flex;align-items:center;justify-content:center}.evaluation-bar__status--unavailable{color:#c7c2b8b8}.board-wrapper-shell{flex:1 1 auto;width:100%;height:100%;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center}.board-wrapper{position:relative;flex:0 0 auto;width:100%;height:100%;aspect-ratio:1 / 1;max-width:100%;max-height:100%;min-width:0;min-height:0;border:2px solid var(--color-board-edge);border-radius:4px;background:var(--color-board-edge);box-shadow:0 4px 20px #0006,0 0 0 1px #ffffff08;overflow:hidden}.board-best-move-arrow{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:6;transform-origin:center center}.board-best-move-arrow--rotated{transform:rotate(180deg)}.board-best-move-arrow__shaft{fill:none;stroke:#46d078d1;stroke-width:2.2;stroke-linecap:butt;filter:drop-shadow(0 0 5px rgba(16,60,26,.5))}.board-grid{display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);width:100%;height:100%;-webkit-user-select:none;user-select:none;touch-action:none;overflow:hidden;transform-origin:center center;transition:transform .22s ease}.board-grid--rotated{transform:rotate(180deg)}.board-grid--placement-active,.board-grid--placement-active .board-square{cursor:none}.board-grid--disabled{pointer-events:none;opacity:.5}.board-square{position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;transition:filter var(--transition-fast),box-shadow var(--transition-fast)}.board-square:hover{filter:brightness(1.04)}.board-square--light{background-color:var(--color-sq-light)}.board-square--dark{background-color:var(--color-sq-dark)}.board-square__overlay{position:absolute;inset:0;opacity:.55;pointer-events:none;z-index:1;box-shadow:inset 0 0 0 1px #ffffff26}.board-square__linked-hover{position:absolute;inset:0;pointer-events:none;z-index:2;background:radial-gradient(circle at 50% 50%,rgba(255,248,179,.34) 0%,rgba(255,248,179,.18) 44%,transparent 80%),linear-gradient(180deg,#d7e8bd29,#7fa6501a);box-shadow:inset 0 0 0 2px #e4efb9e0,inset 0 0 18px #7fa65052,0 0 14px #7fa65042}.board-square__vip-ring{position:absolute;border-radius:999px;filter:blur(8px) saturate(1.25);opacity:1;pointer-events:none;z-index:2}.board-square--drag-hover:after{content:"";position:absolute;inset:0;background-color:var(--color-sq-drag-hover);pointer-events:none;z-index:1}.board-square--selected:after{content:"";position:absolute;inset:0;background-color:var(--color-sq-selected);box-shadow:inset 0 0 0 3px var(--color-selection-ring),inset 0 0 0 5px #1b4c1fc7,0 0 12px #65e35b5c;pointer-events:none;z-index:5}.board-square__notation{position:absolute;z-index:4;pointer-events:none;font-size:.68rem;font-weight:700;line-height:1;-webkit-user-select:none;user-select:none}.board-square__notation--rank{top:4px;left:4px}.board-square__notation--file{right:4px;bottom:4px}.board-square__notation--rotated-rank{inset:auto 4px 4px auto;transform:rotate(180deg)}.board-square__notation--rotated-file{inset:4px auto auto 4px;transform:rotate(180deg)}.board-square__notation--light-text{color:#f0d9b5eb}.board-square__notation--dark-text{color:#51371ce6}.piece-sprite{display:block;position:relative;z-index:1;pointer-events:none;transition:transform .22s ease}.board-grid--rotated .piece-sprite,.board-grid--rotated .upgrade-sprite,.board-grid--rotated .element-sprite,.board-grid--rotated .ice-block-spell-icon,.board-grid--rotated .ice-block-sprite,.board-grid--rotated .thin-ice-sprite{transform:rotate(180deg)}.board-drag-ghost{position:fixed;pointer-events:none;z-index:1000;transform:translate(-50%,-50%);opacity:.9;display:none}.board-placement-preview{position:fixed;pointer-events:none;z-index:999;transform:translate(-50%,-50%);opacity:.95;display:none}.mini-board{display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);border:1px solid var(--color-board-edge);border-radius:3px;flex-shrink:0;overflow:hidden;box-shadow:0 2px 6px #0000004d}.mini-board__square{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.mini-board__square--light{background-color:var(--color-sq-light)}.mini-board__square--dark{background-color:var(--color-sq-dark)}.mini-board__overlay{position:absolute;inset:0;opacity:.4;pointer-events:none;z-index:1}.mini-board__vip-ring{position:absolute;border-radius:999px;filter:blur(3px) saturate(1.2);opacity:1;pointer-events:none;z-index:2}.mini-board--rotated,.mini-board--rotated .piece-sprite,.mini-board--rotated .upgrade-sprite,.mini-board--rotated .element-sprite,.mini-board--rotated .ice-block-spell-icon,.mini-board--rotated .ice-block-sprite,.mini-board--rotated .thin-ice-sprite{transform:rotate(180deg)}.element-bank{display:grid;grid-template-columns:auto auto;gap:1px;padding:1px;border:1px solid var(--color-panel-border);border-radius:5px;background:var(--color-panel-border);box-shadow:0 2px 8px #0003}.element-bank__button{aspect-ratio:1 / 1;position:relative;box-sizing:border-box;border:1px solid var(--color-panel-border);background:var(--color-sq-light);cursor:pointer;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.element-bank__button:hover{background:var(--color-sq-dark);border-color:#5b554f;box-shadow:inset 0 0 6px #00000024}.element-bank__button--selected,.element-bank__button--selected:hover{border-color:var(--color-selection-ring);box-shadow:inset 0 0 0 3px var(--color-selection-ring),inset 0 0 0 5px #1b4c1fc7,0 0 10px #65e35b6b}.element-bank__drag-ghost{position:fixed;pointer-events:none;z-index:1001;transform:translate(-50%,-50%);opacity:.95;display:none}.element-sprite{display:flex;align-items:center;justify-content:center;pointer-events:none;line-height:1}.thin-ice-sprite,.ice-block-sprite,.ice-block-spell-icon{display:flex;align-items:center;justify-content:center;position:relative;pointer-events:none;line-height:1}.thin-ice-sprite__frame{position:relative;display:flex;width:100%;height:100%;align-items:center;justify-content:center}.thin-ice-sprite__image{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;filter:drop-shadow(0 1px 1px rgba(12,48,78,.24))}.thin-ice-sprite__badge,.ice-block-sprite__badge{position:absolute;top:4%;right:4%;display:inline-flex;align-items:center;justify-content:center;padding:0 .22em;border-radius:999px;border:1px solid rgba(255,255,255,.82);background:#0b1c2de0;color:#fff;font-weight:700;line-height:1;letter-spacing:-.02em;box-shadow:0 1px 2px #00000047;pointer-events:none}.ice-block-sprite__badge{background:#0c4470eb}.modifier-bank{display:grid;grid-template-columns:auto auto;gap:1px;padding:1px;border:1px solid var(--color-panel-border);border-radius:5px;background:var(--color-panel-border);box-shadow:0 2px 8px #0003}.modifier-bank__btn{aspect-ratio:1 / 1;position:relative;box-sizing:border-box;border:1px solid var(--color-panel-border);background:var(--color-sq-light);cursor:pointer;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.modifier-bank__btn:hover{background:var(--color-sq-dark);border-color:#5b554f;box-shadow:inset 0 0 6px #00000024}.modifier-bank__btn--selected,.modifier-bank__btn--selected:hover{border-color:var(--color-selection-ring);box-shadow:inset 0 0 0 3px var(--color-selection-ring),inset 0 0 0 5px #1b4c1fc7,0 0 10px #65e35b6b}.modifier-bank__btn--element{background:#c8f46b}.modifier-bank__btn--element:hover{background:#d7fa8c}.modifier-bank__btn--element.modifier-bank__btn--selected{background:#e1ffa0}.modifier-bank__btn--thin-ice{background:#8ed8ff}.modifier-bank__btn--thin-ice:hover{background:#b6e8ff}.modifier-bank__btn--thin-ice.modifier-bank__btn--selected{background:#d5f3ff}.modifier-bank__btn--ice-block{background:#73c8ff}.modifier-bank__btn--ice-block:hover{background:#9edcff}.modifier-bank__btn--ice-block.modifier-bank__btn--selected{background:#c8eeff}.modifier-spell-bank{display:grid;grid-template-columns:1fr;gap:1px;padding:1px;border:1px solid var(--color-panel-border);border-radius:5px;background:var(--color-panel-border);box-shadow:0 2px 8px #0003}.modifier-spell-bank__btn{border:1px solid var(--color-panel-border);background:var(--color-panel);cursor:pointer;display:flex;align-items:center;gap:4px;padding:0 6px;overflow:hidden;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.modifier-spell-bank__btn:hover{background:#3a3632;border-color:#5b554f}.modifier-spell-bank__btn--selected{background:#c8f46b26;border-color:#c8f46b}.modifier-spell-bank__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#c8f46b;border:2px solid rgba(0,0,0,.12)}.modifier-spell-bank__icon--rocket{background:radial-gradient(circle at 35% 30%,#ffb347,#ff7a1a 42%,#c62828)}.modifier-spell-bank__icon--ice-block{background:radial-gradient(circle at 35% 30%,#d8f4ff,#8fd8ff 42%,#339be6)}.modifier-spell-bank__label{display:flex;flex-direction:column;min-width:0;pointer-events:none}.modifier-spell-bank__title{font-size:.55rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;color:var(--color-panel-text-muted)}.modifier-spell-bank__path{font-size:.75rem;font-weight:600;color:var(--color-panel-text)}.modifier-spell-bank__check{width:16px;height:16px;margin-left:auto;display:flex;align-items:center;justify-content:center;border:1px solid #4a4541;border-radius:3px;background:#1a1816;font-size:.6rem;color:transparent;flex-shrink:0;pointer-events:none}.modifier-spell-bank__check--active{background:#c8f46b;border-color:#aad64d;color:#222}.modifier-spell-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;object-fit:contain;pointer-events:none}.piece-bank{display:grid;grid-template-columns:auto auto;gap:1px;padding:1px;border:1px solid var(--color-panel-border);border-radius:5px;background:var(--color-panel-border);box-shadow:0 2px 8px #0003}.piece-bank__pair{display:contents}.piece-bank__piece{aspect-ratio:1 / 1;position:relative;box-sizing:border-box;border:1px solid var(--color-panel-border);background:var(--color-sq-light);cursor:pointer;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.piece-bank__piece:hover{background:#d8b98e;border-color:#5b554f;box-shadow:inset 0 0 6px #00000024}.piece-bank__piece--selected,.piece-bank__piece--selected:hover{border-color:var(--color-selection-ring);box-shadow:inset 0 0 0 3px var(--color-selection-ring),inset 0 0 0 5px #1b4c1fc7,0 0 10px #65e35b6b}.piece-bank__tools{display:contents}.piece-bank__tool{display:flex;align-items:center;justify-content:center;box-sizing:border-box}.piece-bank__tool--selected,.piece-bank__tool--selected:hover{border-color:var(--color-selection-ring);background:#3d4a2b;box-shadow:inset 0 0 0 3px var(--color-selection-ring),inset 0 0 0 5px #1b4c1fc7,0 0 10px #65e35b6b}.piece-bank__drag-ghost{position:fixed;pointer-events:none;z-index:1001;transform:translate(-50%,-50%);opacity:.95;display:none}.area-picker{background:#2a2826;border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:22px;box-shadow:0 16px 48px #0000008c,0 0 0 1px #ffffff08;display:flex;flex-direction:column;gap:16px;align-items:center}.area-picker__header{display:flex;align-items:baseline;gap:12px;width:100%}.area-picker__title{font-size:1rem;font-weight:600;color:var(--color-panel-text)}.area-picker__hint{font-size:.8rem;color:#6b665e}.area-picker__board{display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);border:2px solid var(--color-board-edge);border-radius:4px;overflow:hidden;box-shadow:0 4px 20px #0006}.area-picker__square{position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;aspect-ratio:1 / 1;transition:filter var(--transition-fast)}.area-picker__square:hover{filter:brightness(1.1)}.area-picker__square--light{background-color:var(--color-sq-light)}.area-picker__square--dark{background-color:var(--color-sq-dark)}.area-picker__square-overlay{position:absolute;inset:0;pointer-events:none;z-index:1}.area-picker__square-overlay--selected{opacity:.55}.area-picker__square-overlay--other{opacity:.35;box-shadow:inset 0 0 0 2px #ffffff4d}.area-picker__square-overlay--same-type{opacity:.5;box-shadow:inset 0 0 0 2px #ff3c3c99}.area-picker__square--blocked{cursor:not-allowed}.area-picker__square--blocked-flash{animation:blocked-shake .3s ease}@keyframes blocked-shake{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}.area-picker__piece{position:relative;z-index:2;opacity:.5;pointer-events:none}.area-picker__actions{display:flex;gap:8px;width:100%;justify-content:flex-end}.area-picker__btn{padding:8px 16px;border:1px solid var(--color-panel-border);border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.area-picker__btn--discard{background:var(--color-panel-strong);color:var(--color-panel-text)}.area-picker__btn--discard:hover{background:#3a3632;border-color:#5b554f}.area-picker__btn--remove{background:#8b2920;color:#fff;border-color:#8b2920;margin-right:auto}.area-picker__btn--remove:hover{background:#a03328}.area-picker__btn--confirm{background:#4a7a2e;color:#fff;border-color:#4a7a2e}.area-picker__btn--confirm:hover{background:#5a8a3e}.area-picker__btn--confirm:disabled{opacity:.4;cursor:not-allowed}@media(max-width:920px){.board-editor-screen{height:auto;min-height:100vh;overflow:auto}.chess-board-editor__layout{display:flex;flex-direction:column;gap:12px;padding:16px;height:auto}.chess-board-editor__workspace-strip{display:flex;flex-direction:column;gap:12px;width:100%;max-width:none}.chess-board-editor__layout--board-capped .chess-board-editor__workspace-strip,.chess-board-editor__fen-bar{width:100%;max-width:none}.chess-board-editor__board-column{padding-top:0}.chess-board-editor__controls-column,.chess-board-editor__ctrl-group{min-width:0}.chess-board-editor__board-shell{flex-direction:column}.evaluation-bar-shell--vertical,.evaluation-bar-shell--horizontal{width:100%}.chess-board-editor__ctrl-castling,.chess-board-editor__ctrl-color,.chess-board-editor__ctrl-actions,.chess-board-editor__ctrl-clear,.chess-board-editor__ctrl-ep{min-width:0;padding:8px 0}.board-wrapper-shell{width:100%;max-width:600px;align-self:center}.board-wrapper{width:100%;height:auto;max-width:100%}.piece-bank{display:grid;grid-template-columns:repeat(6,auto);grid-template-rows:auto auto auto;height:auto;gap:8px;padding:8px}.piece-bank__piece{width:64px;height:64px}.chess-board-editor__action,.chess-board-editor__fen-button,.chess-board-editor__toggle,.piece-bank__tool{min-height:36px;height:auto;padding:4px 12px}.chess-board-editor__select{min-height:36px;height:auto}}.variant-panel{display:flex;flex-direction:column;height:100%;min-height:0}.variant-panel__placeholder{padding:12px 10px;color:#6b665e;font-size:.8rem}.variant-table-scroll{--variant-table-scroll-button-rail-width: 40px;position:relative;display:flex;flex:1;min-height:0}.variant-table-wrapper{position:relative;flex:1;min-height:0;min-width:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#5b554f #262421}.variant-table-scroll__button{position:absolute;top:50%;z-index:12;width:28px;height:52px;padding:0;border:1px solid #5b554f;border-radius:6px;background:#1a1816eb;color:#e2ddd4;font-size:1.4rem;font-weight:700;line-height:1;transform:translateY(-50%);cursor:pointer;box-shadow:0 6px 18px #00000057;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),opacity var(--transition-fast)}.variant-table-scroll__button:hover:not(:disabled){border-color:#7fa650;background:#222018f5;color:#eef6dc}.variant-table-scroll__button:disabled{opacity:.28;cursor:default}.variant-table-scroll__button--left{left:6px}.variant-table-scroll__button--right{right:6px}.variant-table-scroll--with-buttons .variant-table-wrapper{margin-left:var(--variant-table-scroll-button-rail-width);margin-right:var(--variant-table-scroll-button-rail-width)}.board-editor-screen__bottom--compact-variants .variant-table-wrapper{box-sizing:border-box;padding-bottom:30px}.variant-table-wrapper::-webkit-scrollbar{width:8px;height:8px}.variant-table-wrapper::-webkit-scrollbar-track{background:#262421}.variant-table-wrapper::-webkit-scrollbar-thumb{background:#5b554f;border-radius:4px}.variant-table-wrapper::-webkit-scrollbar-thumb:hover{background:#6b665e}.variant-table{display:grid;min-width:100%;width:max-content}.variant-config-stats{position:absolute;top:0;right:0;z-index:40;width:328px;pointer-events:none}.variant-config-stats .level-stat-grid{width:100%;border-color:#4a4541;background:#1a1816f0;box-shadow:0 8px 18px #00000061}.variant-table-scroll--with-buttons .variant-config-stats{right:var(--variant-table-scroll-button-rail-width)}.level-stat-grid--variant-config .level-stat-grid__header-row,.level-stat-grid--variant-config .level-stat-grid__data-row{grid-template-columns:42px repeat(5,minmax(0,1fr))}.level-stat-grid--variant-config .level-stat-grid__header-row{min-height:27px}.level-stat-grid--variant-config .level-stat-grid__data-row{min-height:36px}.level-stat-grid--variant-config .level-stat-grid__header-cell,.level-stat-grid--variant-config .level-stat-grid__variant-cell,.level-stat-grid--variant-config .level-stat-grid__data-cell{padding:3px 6px}.level-stat-grid--variant-config .level-stat-grid__header-cell{font-size:.62rem}.level-stat-grid--variant-config .level-stat-grid__variant-cell,.level-stat-grid--variant-config .level-stat-grid__data-cell{font-size:.78rem}.level-stat-grid--variant-config .level-stat-grid__rate{gap:3px}.level-stat-grid--variant-config .level-stat-grid__rate-value{font-size:.92rem}.level-stat-grid--variant-config .level-stat-grid__rate-games{font-size:.62rem}.level-stat-grid--variant-config .level-stat-grid__variant-dot{width:6px;height:12px}.board-editor-screen__bottom--compact-variants .variant-config-stats{width:308px}.board-editor-screen__bottom--compact-variants .level-stat-grid--variant-config .level-stat-grid__header-row{min-height:24px}.board-editor-screen__bottom--compact-variants .level-stat-grid--variant-config .level-stat-grid__data-row{min-height:30px}.board-editor-screen__bottom--compact-variants .level-stat-grid--variant-config .level-stat-grid__header-cell,.board-editor-screen__bottom--compact-variants .level-stat-grid--variant-config .level-stat-grid__variant-cell,.board-editor-screen__bottom--compact-variants .level-stat-grid--variant-config .level-stat-grid__data-cell{padding:2px 5px}.variant-table__header-cell{padding:4px 6px;font-size:.7rem;font-weight:600;color:#9b9690;text-transform:uppercase;letter-spacing:.03em;background:linear-gradient(180deg,#383532,#312e2b);border-bottom:1px solid #4a4541;border-right:1px solid #3a3734;display:flex;align-items:center;justify-content:center;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast),box-shadow var(--transition-fast),color var(--transition-fast)}.board-editor-screen__bottom--compact-variants .variant-table__header-cell{min-height:24px;padding:2px 6px}.variant-table__header-cell--linked-hover{background:linear-gradient(180deg,#4d5f2f,#394725);color:#eef6dc;box-shadow:inset 0 0 0 1px #d7e8bd5c}.variant-table__header-content{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;min-width:0}.variant-table__header-label{min-width:0;overflow:hidden;text-overflow:ellipsis}.variant-column-preset__trigger{width:18px;height:18px;padding:0;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid #4a4541;border-radius:4px;background:#1a1816;color:#c7c2b8;font-size:.62rem;font-weight:700;line-height:1;letter-spacing:0;text-transform:none;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.variant-column-preset__trigger:hover:not(:disabled),.variant-column-preset__trigger--open{border-color:#7fa650;background:#222018;color:#eef6dc}.variant-column-preset__trigger:focus{border-color:#7fa650;outline:none;box-shadow:0 0 0 2px #7fa65026}.variant-column-preset__trigger:disabled{cursor:default;opacity:.45}.variant-column-preset__popover{--variant-column-preset-row-height: 28px;--variant-column-preset-row-gap: 6px;--variant-column-preset-card-padding: 7px;--variant-column-preset-card-header-height: 28px;--variant-column-preset-card-width: 112px;position:fixed;z-index:1100;width:648px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:10px;border:1px solid #4a4541;border-radius:8px;background:#2a2826;color:#f3f0e8;box-shadow:0 12px 28px #0000007a,0 0 0 1px #ffffff08}.variant-column-preset__header,.variant-column-preset__saved-header,.variant-column-preset__draft-row,.variant-column-preset__row-label,.variant-column-preset__saved-value{display:flex;align-items:center}.variant-column-preset__header{justify-content:space-between;gap:8px}.variant-column-preset__title,.variant-column-preset__section-title,.variant-column-preset__saved-name{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.variant-column-preset__title{color:#f3f0e8}.variant-column-preset__section{display:flex;flex-direction:column;gap:7px}.variant-column-preset__body{display:flex;align-items:flex-start;gap:10px;min-width:0}.variant-column-preset__section--draft{flex:0 0 88px}.variant-column-preset__section--saved{flex:1 1 auto;min-width:0}.variant-column-preset__section-title{color:#9b9690}.variant-column-preset__draft-list{display:flex;flex-direction:column;gap:var(--variant-column-preset-row-gap);padding-top:calc(var(--variant-column-preset-card-padding) + var(--variant-column-preset-card-header-height) + var(--variant-column-preset-row-gap))}.variant-column-preset__saved-list::-webkit-scrollbar{height:8px}.variant-column-preset__saved-list::-webkit-scrollbar-track{background:#211f1d}.variant-column-preset__saved-list::-webkit-scrollbar-thumb{background:#5b554f;border-radius:4px}.variant-column-preset__saved-list::-webkit-scrollbar-thumb:hover{background:#6b665e}.variant-column-preset__draft-row{align-items:center;min-width:0;min-height:var(--variant-column-preset-row-height)}.variant-column-preset__row-label-rail{flex:0 0 36px;display:flex;flex-direction:column;gap:7px}.variant-column-preset__rail-spacer{height:.72rem;line-height:1}.variant-column-preset__rail-list{display:flex;flex-direction:column;gap:var(--variant-column-preset-row-gap);padding-top:calc(var(--variant-column-preset-card-padding) + var(--variant-column-preset-card-header-height) + var(--variant-column-preset-row-gap))}.variant-column-preset__rail-action-spacer{min-height:var(--variant-column-preset-row-height)}.variant-column-preset__row-label{min-height:var(--variant-column-preset-row-height);justify-content:center;gap:4px;color:#c7c2b8;font-size:.72rem;font-family:monospace}.variant-column-preset__row-dot{width:7px;height:7px;flex-shrink:0;border-radius:999px}.variant-column-preset__editor{min-width:0;flex:1 1 auto}.variant-column-preset__editor .variant-row__quest-field{gap:4px}.variant-column-preset__editor .variant-row__picker-trigger{min-height:28px;padding:2px 5px;font-size:.7rem}.variant-column-preset__editor .variant-row__picker-clear{width:24px;min-width:24px}.variant-column-preset__cancel,.variant-column-preset__save,.variant-column-preset__use,.variant-column-preset__delete{border:1px solid #4a4541;border-radius:4px;background:#1a1816;color:#f3f0e8;font-size:.72rem;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.variant-column-preset__cancel{padding:4px 8px}.variant-column-preset__save,.variant-column-preset__use{align-self:flex-start;padding:5px 10px;border-color:#5f8f3d;background:#26371e;color:#eef6dc}.variant-column-preset__use{align-self:stretch;margin-top:auto}.variant-column-preset__cancel:hover,.variant-column-preset__save:hover,.variant-column-preset__use:hover{border-color:#7fa650;background:#222018}.variant-column-preset__delete{position:absolute;top:6px;right:6px;width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center;border-color:#6b2828;background:#4b1e1e;color:#f4a5a5}.variant-column-preset__delete:hover{border-color:#8b3030;background:#632525}.variant-column-preset__delete-icon{width:14px;height:14px;fill:currentColor}.variant-column-preset__saved-list{display:flex;align-items:stretch;gap:8px;max-width:calc((var(--variant-column-preset-card-width) * 4) + (8px * 3));overflow-x:auto;padding-bottom:2px;scrollbar-width:thin;scrollbar-color:#5b554f #211f1d}.variant-column-preset__saved-item{flex:0 0 var(--variant-column-preset-card-width);position:relative;padding:var(--variant-column-preset-card-padding);display:flex;flex-direction:column;gap:var(--variant-column-preset-row-gap);border:1px solid #3a3734;border-radius:6px;background:#211f1d;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.variant-column-preset__saved-item--highlighted{border-color:#7fa650;background:#26311f;box-shadow:0 0 0 1px #7fa65059,0 0 12px #7fa65047}.variant-column-preset__saved-header{min-width:0;min-height:var(--variant-column-preset-card-header-height);display:flex;align-items:center}.variant-column-preset__saved-name{min-width:0;padding-right:28px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#d7d2c9}.variant-column-preset__saved-values{display:flex;flex-direction:column;gap:var(--variant-column-preset-row-gap)}.variant-column-preset__saved-value{min-width:0;min-height:var(--variant-column-preset-row-height);justify-content:center;font-size:.7rem;color:#c7c2b8}.variant-column-preset__saved-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f3f0e8}.variant-column-preset__empty,.variant-column-preset__info,.variant-column-preset__error{padding:8px;border:1px dashed #4a4541;border-radius:6px;color:#8b8680;font-size:.72rem}.variant-column-preset__info{border-color:#7c6b32;color:#eadb94;background:#2a2519}.variant-column-preset__error{border-color:#6b2828;color:#f4a5a5}.variant-row__cell{padding:3px 6px;border-bottom:1px solid #3a3734;border-right:1px solid #3a3734;display:flex;align-items:center;min-height:36px;background:#262421;transition:background var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.board-editor-screen__bottom--compact-variants .variant-row__cell{min-height:30px;padding:2px 5px}.variant-row__cell--disabled{opacity:.4}.variant-row__cell--linked-hover{background:linear-gradient(180deg,#7fa65033,#4a5f2f3d),#262421;box-shadow:inset 0 0 0 1px #7fa65052}.variant-row__check{appearance:none;width:16px;height:16px;border:1px solid #4a4541;border-radius:4px;background:#1a1816;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.variant-row__check:hover{border-color:#5b554f}.variant-row__check:checked{background:#4a7a2e;border-color:#5a8a3e;box-shadow:0 0 6px #7fa65033}.variant-row__check:checked:after{content:"✓";color:#fff;font-size:.7rem;font-weight:700}.variant-row__number{display:flex;align-items:center;gap:4px;font-size:.8rem;font-weight:600;color:#c7c2b8;font-family:monospace}.variant-row__color-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;box-shadow:0 0 4px #0000004d}.variant-row__input{width:100%;min-width:0;padding:3px 6px;background:#1a1816;border:1px solid #4a4541;border-radius:4px;color:#f3f0e8;font-size:.75rem;font-family:inherit;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.board-editor-screen__bottom--compact-variants .variant-row__input{padding:2px 5px}.variant-row__input:focus{border-color:#7fa650;outline:none;box-shadow:0 0 0 2px #7fa65026}.variant-row__input-with-swatch{display:flex;align-items:center;gap:6px;width:100%}.variant-row__time-field{position:relative;display:flex;align-items:center;gap:6px;width:100%;min-width:0}.variant-row__time-input{flex:1 1 auto}.variant-row__time-trigger{width:26px;height:26px;padding:0;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#1a1816;border:1px solid #4a4541;border-radius:4px;color:#f3f0e8;font-size:.75rem;line-height:1;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.board-editor-screen__bottom--compact-variants .variant-row__time-trigger{width:24px;height:24px}.variant-row__time-trigger:hover:not(:disabled){border-color:#7fa650;background:#222018}.variant-row__time-trigger:focus{border-color:#7fa650;outline:none;box-shadow:0 0 0 2px #7fa65026}.variant-row__time-trigger:disabled{cursor:default;opacity:.55}.variant-row__time-trigger--open{border-color:#7fa650;background:#222018;box-shadow:0 0 0 2px #7fa65026}.variant-row__time-popover{position:fixed;z-index:1000;width:208px;padding:6px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;border:1px solid #4a4541;border-radius:10px;background:#2a2826;transform:translate(-100%);box-shadow:0 8px 24px #00000073,0 0 0 1px #ffffff08}.variant-row__time-option{width:100%;min-height:34px;padding:6px 4px;background:none;border:none;border-radius:6px;color:#f3f0e8;font-size:.75rem;text-align:center;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.variant-row__time-option:hover,.variant-row__time-option:focus{background:#ffffff0f;outline:none}.variant-row__time-option--selected{background:#7fa65029;color:#eef6dc}.variant-row__time-option--wide{grid-column:1 / -1}.variant-row__swatch{width:12px;height:12px;flex-shrink:0;border-radius:999px;border:1px solid rgba(255,255,255,.28);box-shadow:0 0 0 1px #00000040}.variant-row__select{width:100%;min-width:0;padding:2px 4px;background:#1a1816;border:1px solid #4a4541;border-radius:4px;color:#f3f0e8;font-size:.75rem;transition:border-color var(--transition-fast)}.board-editor-screen__bottom--compact-variants .variant-row__select{padding:1px 4px}.variant-row__select:focus{border-color:#7fa650;outline:none;box-shadow:0 0 0 2px #7fa65026}.variant-row__picker-trigger{flex:1 0 auto;min-width:max-content;padding:3px 6px;display:flex;align-items:center;justify-content:flex-start;background:#1a1816;border:1px solid #4a4541;border-radius:4px;color:#f3f0e8;font-size:.75rem;text-align:left;line-height:1.4;white-space:nowrap;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.variant-row__picker-trigger:hover:not(:disabled){border-color:#7fa650;background:#222018}.variant-row__picker-trigger:focus{border-color:#7fa650;outline:none;box-shadow:0 0 0 2px #7fa65026}.variant-row__picker-trigger:disabled{cursor:default;opacity:.55}.variant-row__picker-trigger--empty{color:#8b8680}.variant-row__quest-field{display:flex;align-items:stretch;gap:6px;width:100%;min-width:max-content}.variant-row__picker-clear{width:28px;min-width:28px;padding:0;border:1px solid #4a4541;border-radius:4px;background:#1a1816;color:#c7c2b8;font-size:.9rem;line-height:1;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.variant-row__picker-clear:hover:not(:disabled){border-color:#7fa650;background:#222018;color:#f3f0e8}.variant-row__picker-clear:focus{border-color:#7fa650;outline:none;box-shadow:0 0 0 2px #7fa65026}.variant-row__picker-clear:disabled{cursor:default;opacity:.55}.dialog.chess-quest-dialog{--chess-quest-grid-columns: 8;width:calc(100vw - 8px);height:calc(100vh - 8px);max-width:calc(100vw - 8px);max-height:calc(100vh - 8px);padding:8px;display:flex;min-height:0;border-radius:6px}.chess-quest-dialog__body{display:flex;flex:1;min-height:0;flex-direction:column;gap:8px}.chess-quest-dialog__header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;min-height:28px}.chess-quest-dialog .dialog__title{margin-bottom:0;font-size:.82rem}.chess-quest-dialog__cancel{padding:5px 14px;font-size:.72rem}.chess-quest-dialog__search{flex:0 1 360px;min-width:180px;padding:5px 9px;font-size:.75rem}.chess-quest-dialog__status{margin:-2px 0 0;color:#c7a46d;font-size:.72rem;line-height:1.3}.chess-quest-dialog__list{flex:1;display:grid;grid-template-columns:repeat(var(--chess-quest-grid-columns),minmax(0,1fr));grid-auto-rows:minmax(44px,max-content);align-content:start;gap:6px;min-height:0;overflow:auto;padding:2px}@media(max-width:1180px){.dialog.chess-quest-dialog{--chess-quest-grid-columns: 6}}@media(max-width:760px){.dialog.chess-quest-dialog{--chess-quest-grid-columns: 4}}@media(max-width:520px){.dialog.chess-quest-dialog{--chess-quest-grid-columns: 2}}.chess-quest-dialog__quest{width:100%;min-width:0;min-height:44px;padding:6px 7px 6px 8px;display:grid;grid-template-columns:minmax(0,1fr) 17px;align-items:center;gap:6px;border:1px solid #4a4541;border-radius:4px;background:#1a1816;color:#f3f0e8;text-align:left;font-size:.7rem;transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.chess-quest-dialog__quest--available{cursor:pointer}.chess-quest-dialog__quest--available:hover{border-color:#7fa650;background:#222018}.chess-quest-dialog__quest--selected{border-color:#5f8f3d;background:#26371e;color:#eef6dc;box-shadow:0 0 0 1px #7fa65029}.chess-quest-dialog__quest--disabled{border-color:#3a3734;background:#24211f;color:#77716b}.chess-quest-dialog__quest:disabled{cursor:default}.chess-quest-dialog__empty{grid-column:1 / -1;padding:10px;border:1px dashed #4a4541;border-radius:6px;color:#8b8680;font-size:.75rem}.chess-quest-dialog__quest-description{min-width:0;overflow:hidden;color:inherit;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.25;text-overflow:ellipsis;white-space:normal}.chess-quest-dialog__quest-check{width:16px;height:16px;display:flex;align-items:center;justify-content:center;border:1px solid #f3f0e8;border-radius:2px;background:#f3f0e8;color:#091405;font-size:.82rem;font-weight:800;line-height:1}.chess-quest-dialog__quest--selected .chess-quest-dialog__quest-check{border-color:#20c020;background:#20c020}.chess-quest-dialog__quest--selected .chess-quest-dialog__quest-check:after{content:"✓"}.chess-quest-dialog__quest--disabled .chess-quest-dialog__quest-check{border-color:#3a3734;background:#151412}.element-column-header-cell{display:flex;align-items:center;justify-content:center;border-right:1px solid #3a3734;border-bottom:1px solid #3a3734;background:#262421;z-index:1;transition:background var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.element-column-header-cell--linked-hover{background:linear-gradient(180deg,#7fa65033,#4a5f2f3d),#262421;box-shadow:inset 0 0 0 1px #7fa65052}.element-column-header{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 4px;transition:transform var(--transition-fast)}.board-editor-screen__bottom--compact-variants .element-column-header{gap:4px;padding:5px 3px}.element-column-header--linked-hover{transform:translateY(-1px)}.element-column-header--linked-hover .element-column-header__label{color:#eef6dc}.element-column-header__label{font-size:.75rem;font-weight:600;color:#c7c2b8;font-family:monospace}.element-column-header__edit{padding:3px 10px;border:1px solid #4a4541;border-radius:4px;background:#1a1816;color:#f3f0e8;font-size:.7rem;cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.element-column-header__edit:hover{background:#3a3632;border-color:#5b554f}.element-column-header__edit--remove{background:#5a2020;border-color:#6b2828;color:#f4a5a5}.element-column-header__edit--remove:hover{background:#7a2828;border-color:#8b3030}.element-column-header__spell-preview{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background:#c8f46b;border:2px solid rgba(0,0,0,.12)}.element-column-header__spell-preview--rocket{background:radial-gradient(circle at 35% 30%,#ffb347,#ff7a1a 42%,#c62828)}.element-column-header__spell-preview--ice-block{background:radial-gradient(circle at 35% 30%,#d8f4ff,#8fd8ff 42%,#339be6)}.element-column-header__upgrade-preview{display:flex;align-items:center;justify-content:center;width:70px;height:70px;border-radius:6px;background:#c8f46b;border:1px solid rgba(0,0,0,.15)}.element-column-header__thin-ice-preview{display:flex;align-items:center;justify-content:center;width:70px;height:70px;border-radius:6px;background:#8ed8ff;border:1px solid rgba(0,0,0,.15)}.element-column-header__ice-block-preview{display:flex;align-items:center;justify-content:center;width:70px;height:70px;border-radius:6px;background:#73c8ff;border:1px solid rgba(0,0,0,.15)}.element-preview{display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);border:1px solid #2f2b28;border-radius:3px;overflow:hidden;box-shadow:0 2px 6px #0000004d}.element-preview__square{position:relative;aspect-ratio:1 / 1;background-color:#f0ede8}.element-preview__square--dark{background-color:#ddd8cf}.element-preview__highlight{position:absolute;inset:0;opacity:.5}.range-input{display:flex;align-items:center;gap:2px;width:100%}.range-input__field{width:100%;min-width:0;flex:1;padding:3px 4px;background:#1a1816;border:1px solid #4a4541;border-radius:4px;color:#f3f0e8;font-size:.75rem;font-family:monospace;text-align:center;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.range-input__field:focus{border-color:#7fa650;outline:none;box-shadow:0 0 0 2px #7fa65026}.range-input__separator{color:#6b665e;font-size:.75rem;flex-shrink:0}.infinity-input{display:flex;align-items:center;gap:2px;width:100%}.infinity-input__field{flex:1;min-width:0;padding:3px 4px;background:#1a1816;border:1px solid #4a4541;border-radius:4px;color:#f3f0e8;font-size:.75rem;font-family:monospace;text-align:center;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.infinity-input__field:focus{border-color:#7fa650;outline:none;box-shadow:0 0 0 2px #7fa65026}.infinity-input__symbol{flex:1;text-align:center;font-size:1rem;color:#c7c2b8}.infinity-input__toggle{flex-shrink:0;width:22px;height:22px;padding:0;border:1px solid #4a4541;border-radius:4px;background:#1a1816;color:#6b665e;font-size:.75rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.infinity-input__toggle:hover{background:#3a3632;border-color:#5b554f}.infinity-input__toggle--active{background:#3d4a2b;border-color:#7fa650;color:#7fa650}.chess-puzzle-panel{display:flex;flex-direction:column;gap:8px;flex:1;height:100%;min-height:0;padding:10px 12px 12px;overflow:hidden}.chess-puzzle-panel--main-board{overflow:hidden}.chess-puzzle-panel__main{display:flex;flex-direction:column;flex:1;gap:8px;min-width:0;min-height:0;overflow:hidden}.chess-puzzle-panel__section{background:#262421;border:1px solid #3a3734;border-radius:10px;padding:12px;min-height:0}.chess-puzzle-panel__section--settings{padding:0 0 8px;border:0;border-bottom:1px solid #33302d;border-radius:0;background:transparent}.chess-puzzle-panel__section--sequence{display:flex;flex-direction:column;flex:1;gap:8px;padding:0;border:0;border-radius:0;background:transparent;overflow:hidden}.chess-puzzle-panel__section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.chess-puzzle-panel__section-title{color:#b8b1a7;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.chess-puzzle-panel__meta,.chess-puzzle-panel__field{display:flex;flex-direction:column;gap:8px}.chess-puzzle-panel__settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:28px}.chess-puzzle-panel__field--compact{width:180px;max-width:100%}.chess-puzzle-panel__field--inline{flex-direction:row;align-items:center;gap:8px;width:auto;max-width:100%}.chess-puzzle-panel__field--inline .range-input{width:180px}.chess-puzzle-panel__field-label,.chess-puzzle-panel__alternative-label{color:#b8b1a7;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.chess-puzzle-panel__header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.chess-puzzle-panel__action-btn,.chess-puzzle-panel__ghost-btn{border-radius:6px;font-size:.76rem;cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.chess-puzzle-panel__action-btn{padding:6px 10px;border:1px solid #5d7a35;background:#354122;color:#d7e8bd}.chess-puzzle-panel__action-btn:hover:not(:disabled){background:#415129}.chess-puzzle-panel__ghost-btn{padding:6px 9px;border:1px solid #4a4541;background:#1a1816;color:#c7c2b8}.chess-puzzle-panel__ghost-btn:hover:not(:disabled){background:#2b2825;border-color:#5b554f}.chess-puzzle-panel__action-btn:disabled,.chess-puzzle-panel__ghost-btn:disabled{opacity:.45;cursor:default}.chess-puzzle-panel__empty{color:#9b9690;font-size:.76rem;line-height:1.5}.chess-puzzle-panel__steps-scroll{position:relative;display:flex;flex:1;min-width:0;min-height:0}.chess-puzzle-panel__steps-scroll-btn{position:absolute;top:50%;z-index:12;width:28px;height:52px;padding:0;border:1px solid #5b554f;border-radius:6px;background:#1a1816eb;color:#e2ddd4;font-size:1.4rem;font-weight:700;line-height:1;transform:translateY(-50%);cursor:pointer;box-shadow:0 6px 18px #00000057;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),opacity var(--transition-fast)}.chess-puzzle-panel__steps-scroll-btn:hover:not(:disabled){border-color:#7fa650;background:#222018f5;color:#eef6dc}.chess-puzzle-panel__steps-scroll-btn:disabled{opacity:.28;cursor:default}.chess-puzzle-panel__steps-scroll-btn--left{left:6px}.chess-puzzle-panel__steps-scroll-btn--right{right:6px}.chess-puzzle-panel__tree-scroll{position:relative;display:flex;flex:1;min-width:0;min-height:0}.chess-puzzle-panel__tree-grid{display:grid;flex:1;align-items:start;align-content:start;justify-content:start;gap:8px;min-width:0;min-height:184px;padding:4px 4px 8px;overflow-x:auto;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#5b554f #262421}.chess-puzzle-panel__tree-grid::-webkit-scrollbar{height:8px;width:8px}.chess-puzzle-panel__tree-grid::-webkit-scrollbar-track{background:#262421}.chess-puzzle-panel__tree-grid::-webkit-scrollbar-thumb{background:#5b554f;border-radius:4px}.chess-puzzle-panel__row-label{display:flex;align-items:center;gap:6px;padding:8px 12px 8px 6px;border-right:1px solid #33302d;color:#b8b1a7;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;position:sticky;left:0;background:#262421;z-index:4}.chess-puzzle-panel__row-label--main{color:#d7e8bd}.chess-puzzle-panel__row-label-text{white-space:nowrap}.chess-puzzle-panel__row-remove{padding:2px 6px;font-size:.9rem;line-height:1}.chess-puzzle-panel__cell{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid #3a3734;border-radius:8px;background:#201e1b;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast);min-width:0}.chess-puzzle-panel__cell--branch-head{border-left:2px solid #b88b3d}.chess-puzzle-panel__cell--error{border-color:#8a4440;box-shadow:0 0 0 1px #8a444040}.chess-puzzle-panel__cell--preview-active{border-color:#6a8c3c;background:#23261b;box-shadow:0 0 0 1px #6a8c3c40}.chess-puzzle-panel__cell--record-active{border-color:#b88b3d;background:#2a241a;box-shadow:0 0 0 1px #b88b3d40}.chess-puzzle-panel__cell--clickable{cursor:pointer}.chess-puzzle-panel__cell--clickable:hover{border-color:#5b6f42}.chess-puzzle-panel__cell--empty{border-style:dashed;border-color:#4a4541;background:transparent;display:flex;align-items:center;justify-content:center}.chess-puzzle-panel__cell-header{display:flex;align-items:center;justify-content:space-between;gap:6px}.chess-puzzle-panel__cell-step{color:#9b9690;font-size:.68rem;font-weight:700;letter-spacing:.04em}.chess-puzzle-panel__cell-actions{display:flex;align-items:center;gap:4px}.chess-puzzle-panel__icon-btn{padding:2px 6px;border-radius:4px;font-size:.66rem;font-weight:600;cursor:pointer;border:1px solid #5d7a35;background:#354122;color:#d7e8bd;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.chess-puzzle-panel__icon-btn:hover:not(:disabled){background:#415129}.chess-puzzle-panel__icon-btn--ghost{border-color:#4a4541;background:#1a1816;color:#c7c2b8}.chess-puzzle-panel__icon-btn--ghost:hover:not(:disabled){background:#2b2825;border-color:#5b554f}.chess-puzzle-panel__icon-btn:disabled{opacity:.45;cursor:default}.chess-puzzle-panel__cell-input{width:100%}.chess-puzzle-panel__input--error{border-color:#b15a56;box-shadow:0 0 0 1px #b15a5626}.chess-puzzle-panel__cell-error{color:#ef9d98;font-size:.7rem;line-height:1.3}.chess-puzzle-panel__end-marker{align-self:center;justify-self:start;display:inline-flex;align-items:center;justify-content:center;height:28px;padding:0 8px;border-radius:6px;font-size:.68rem;font-weight:600;white-space:nowrap;border:1px solid transparent}.chess-puzzle-panel__end-marker--checkmate{background:#2a3a1f;border-color:#5d7a35;color:#d7e8bd}.chess-puzzle-panel__end-marker--rejoin{background:#1f2e3a;border-color:#355a7a;color:#bddfee}.chess-puzzle-panel__end-marker--incomplete{background:#3a321f;border-color:#8a7440;color:#efd698}.chess-puzzle-panel__append-btn{align-self:center;justify-self:start;width:28px;height:28px;padding:0;border-radius:50%;border:1px dashed #5b554f;background:transparent;color:#c7c2b8;font-size:.95rem;font-weight:700;cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.chess-puzzle-panel__append-btn:hover:not(:disabled){border-color:#7fa650;color:#d7e8bd}.chess-puzzle-panel__append-btn:disabled{opacity:.4;cursor:default}.chess-puzzle-import-dialog{max-width:720px}.chess-puzzle-import-dialog__input{min-height:180px;resize:vertical;font-family:inherit}.chess-puzzle-import-dialog__error{color:#ef9d98}@media(max-width:980px){.chess-puzzle-panel{overflow:auto}}@media(max-width:640px){.chess-puzzle-panel{padding:10px;gap:8px}.chess-puzzle-panel__field--compact,.chess-puzzle-panel__field--inline{width:100%}.chess-puzzle-panel__field--inline .range-input{flex:1;width:auto}.chess-puzzle-panel__header-actions{width:100%}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{line-height:1.3;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg);color:var(--color-text)}#root{height:100vh;overflow:hidden}img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit}:root{--transition-fast: .15s ease;--color-bg: radial-gradient(circle at top, #3a3530 0%, #1f1d1b 58%, #171614 100%);--color-text: #f3f0e8;--color-focus-ring: rgba(127, 166, 80, .42);--color-accent: #7fa650;--color-accent-glow: rgba(127, 166, 80, .15);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .25)}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff2e}::-webkit-scrollbar-corner{background:transparent}.board-editor-screen{height:100vh;display:flex;flex-direction:column;overflow:hidden}.board-editor-screen__body{flex:1;display:flex;flex-direction:row;min-height:0}.board-editor-screen__content{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.editor-dashboard{height:100vh;overflow-y:auto;background:#5a5550;color:var(--color-text)}.editor-dashboard__inner{display:flex;flex-direction:column;min-height:100%}.editor-dashboard__controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 12px;border-bottom:1px solid #3a3734;background:#3f3b37}.editor-dashboard__heading{display:flex;flex-direction:column;gap:2px}.editor-dashboard__eyebrow,.editor-dashboard__auth-label{color:#8b8680;font-size:.66rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.editor-dashboard__title{color:#f0ede5;font-size:1rem;font-weight:800;line-height:1;text-transform:uppercase}.editor-dashboard__auth{display:flex;align-items:center;gap:12px;min-width:0}.editor-dashboard__auth-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.editor-dashboard__email{max-width:220px;color:#f0ede5;font-size:.8rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-dashboard__section{display:flex;flex:1;min-height:0}.editor-dashboard__body{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:44px 24px;background:#504c48}.editor-dashboard__grid{width:min(520px,100%);display:grid;grid-template-columns:1fr;gap:18px}.editor-dashboard__button{min-height:94px;display:flex;align-items:center;justify-content:center;padding:18px 22px;border:1px solid #5a5550;border-radius:8px;background:linear-gradient(180deg,#403d3a,#3a3734);color:#f0ede5;font-size:.92rem;font-weight:700;line-height:1.25;text-align:center;text-transform:uppercase;overflow-wrap:anywhere;cursor:pointer;box-shadow:0 2px 6px #00000026;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.editor-dashboard__button:hover{background:linear-gradient(180deg,#4a4744,#444140);border-color:#7fa650;box-shadow:0 4px 16px #00000040,0 0 0 1px var(--color-accent-glow);transform:translateY(-1px)}.editor-dashboard__button:active{background:#333028;transform:translateY(0)}.editor-dashboard__button--regions-zones-locations-list{border-left:4px solid #6bc4d5}.editor-dashboard__button--localisation-table{border-left:4px solid #b894d4}.editor-dashboard__button--level-tables{border-left:4px solid #d4b46f}.editor-dashboard__button--fen-editor{border-left:4px solid #7fa650}.editor-dashboard__status{margin-top:12px;padding:10px;border:1px solid #5a5550;border-radius:8px;background:#403d3a;color:#c7c2b8;font-size:.8rem;font-weight:600}.localization-editor{height:100vh;display:flex;flex-direction:column;overflow:hidden;background:#504c48;color:var(--color-text)}.localization-editor__top-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-bottom:1px solid #3a3734;background:#3f3b37}.localization-editor__left-controls{display:flex;align-items:center;gap:12px;min-width:0}.localization-editor__title-block,.localization-editor__auth-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.localization-editor__eyebrow,.localization-editor__auth-label,.localization-editor__label{color:#8b8680;font-size:.66rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.localization-editor__title{color:#f0ede5;font-size:1rem;font-weight:800;line-height:1;text-transform:uppercase}.localization-editor__auth{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}.localization-editor__auth-email{max-width:220px;color:#f0ede5;font-size:.8rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.localization-editor__toolbar{display:flex;align-items:flex-end;gap:8px;padding:8px 12px;border-bottom:1px solid #3a3734;background:#4a4642}.localization-editor__field{display:flex;flex-direction:column;gap:4px;min-width:220px}.localization-editor__select{min-height:32px;padding:6px 10px;border:1px solid #5a5550;border-radius:6px;background:#2a2826;color:#f0ede5;font-size:.82rem}.localization-editor__environment-toggle{display:flex;gap:3px;padding:3px;border:1px solid #3a3734;border-radius:6px;background:#242220}.localization-editor__environment-btn{flex:1;min-height:28px;padding:4px 10px;border:1px solid transparent;border-radius:4px;background:transparent;color:#c7c2b8;cursor:pointer;font-size:.76rem;font-weight:800}.localization-editor__environment-btn:hover:not(:disabled){border-color:#6d665f;color:#fff}.localization-editor__environment-btn--selected,.localization-editor__environment-btn--selected:hover:not(:disabled){border-color:#d4a94a;background:#4a3a18;color:#ffe19a}.localization-editor__environment-btn:disabled{opacity:.55;cursor:default}.localization-editor__toolbar>.sidebar__ctrl-btn{min-height:36px;padding:4px 10px;font-size:.76rem;font-weight:800}.localization-editor__refresh-btn{margin-left:18px}.localization-editor__compare-btn{display:inline-flex;align-items:center;gap:7px}.localization-editor__compare-sync-badge{width:16px;height:16px;flex:0 0 16px;display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:50%;font-size:.68rem;font-weight:900;line-height:1}.localization-editor__compare-sync-badge--synced{background:#3d5b2beb;color:#b7f07d}.localization-editor__compare-sync-badge--out-of-sync{background:#5a471feb;color:#ffd45d}.localization-editor__file-input{display:none}.localization-editor__search-row{display:flex;gap:16px;padding:8px 12px;border-bottom:1px solid #3a3734;background:#46423e}.localization-editor__search-field{width:min(100%,460px);display:flex;flex-direction:column;gap:4px}.localization-editor__sort-field{display:flex;flex-direction:column;gap:4px}.localization-editor__sort-select{min-height:32px;padding:6px 10px;border:1px solid #5a5550;border-radius:6px;background:#2a2826;color:#f0ede5;font-size:.82rem;cursor:pointer}.localization-editor__sort-select:focus{border-color:#d4a94a;outline:none;box-shadow:0 0 0 2px #d4a94a2e}.localization-editor__sort-select:disabled{opacity:.55;cursor:default}.localization-editor__sort-field{flex-direction:column}.localization-editor__sort-field>.localization-editor__sort-row{display:flex;flex-direction:row;gap:4px;align-items:center}.localization-editor__sort-reverse{min-height:32px;min-width:32px;padding:0 8px;border:1px solid #5a5550;border-radius:6px;background:#2a2826;color:#f0ede5;font-size:.95rem;line-height:1;cursor:pointer}.localization-editor__sort-reverse:focus{border-color:#d4a94a;outline:none;box-shadow:0 0 0 2px #d4a94a2e}.localization-editor__sort-reverse:disabled{opacity:.55;cursor:default}.localization-editor__search-input{min-height:32px;padding:6px 10px;border:1px solid #5a5550;border-radius:6px;background:#2a2826;color:#f0ede5;font-size:.82rem}.localization-editor__search-input::placeholder{color:#8b8680}.localization-editor__search-input:focus{border-color:#d4a94a;outline:none;box-shadow:0 0 0 2px #d4a94a2e}.localization-editor__search-input:disabled{opacity:.55;cursor:default}.localization-editor__error{padding:9px 12px;border-bottom:1px solid #7e4b3c;background:#72362a47;color:#ffd8c9;font-size:.8rem;font-weight:600}.localization-editor__import-message{white-space:pre-line;padding:9px 12px;border-bottom:1px solid #6f6347;background:#3e37276b;color:#f1deb3;font-size:.8rem;font-weight:600;line-height:1.45}.localization-editor__import-message--success{border-bottom-color:#4d713c;background:#2a4e2847;color:#d8f2c6}.localization-editor__import-message--error{border-bottom-color:#7e4b3c;background:#72362a47;color:#ffd8c9}.localization-editor__content{flex:1;min-height:0;display:flex;background:#504c48}.localization-editor__empty{width:100%;align-self:stretch;display:flex;align-items:center;justify-content:center;padding:28px;color:#c7c2b8;font-size:.86rem;font-weight:600;text-align:center}.localization-editor__small-btn{width:100%;padding:6px 10px;font-size:.76rem}.localization-editor .sidebar__ctrl-btn.localization-editor__delete-book-btn{margin-left:auto;border-color:#8b2920;background:#5f211a;color:#ffd8c9}.localization-editor .sidebar__ctrl-btn.localization-editor__delete-book-btn:hover:not(:disabled){border-color:#a5332a;background:#782920;color:#fff}.localization-editor__small-btn--edit{border-color:#a98734;background:#4a3a18;color:#ffe19a}.localization-editor__small-btn--edit:hover{border-color:#d4a94a;background:#5a471f;color:#fff0c2}.localization-editor .sidebar__ctrl-btn:disabled{opacity:.45;cursor:default;transform:none}.localization-table-wrap{flex:1;min-width:0;min-height:0;padding:0 12px;overflow:auto}.localization-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.localization-editor__table-notice{position:sticky;left:0;z-index:8;padding:9px 12px;border-bottom:1px solid #3a3734;background:#4a4642;color:#c7c2b8;font-size:.78rem;font-weight:700}.localization-table th,.localization-table td{border-right:2px solid #1f1d1b;border-bottom:1px solid #2a2724;background:#403d3a;vertical-align:top}.localization-table th:last-child,.localization-table td:last-child{border-right:0}.localization-table thead th{position:sticky;top:0;z-index:4;height:36px;padding:8px 10px;background:#312e2b;color:#d8d3ca;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-align:left;text-transform:uppercase;white-space:nowrap}.localization-table tbody tr:nth-child(2n) th,.localization-table tbody tr:nth-child(2n) td{background:#3a3734}.localization-table tbody tr:hover th,.localization-table tbody tr:hover td{background:#47423d}.localization-table__resizable-heading{padding-right:18px;-webkit-user-select:none;user-select:none}.localization-table__resize-handle{position:absolute;top:0;right:-4px;bottom:0;z-index:5;width:8px;padding:0;border:0;background:transparent;cursor:col-resize;touch-action:none}.localization-table__resize-handle:after{content:"";position:absolute;top:8px;bottom:8px;left:3px;width:2px;border-radius:999px;background:#d4a94a;opacity:0;transition:opacity .12s ease,background .12s ease}.localization-table__resizable-heading:hover .localization-table__resize-handle:after,.localization-table__resize-handle:focus-visible:after,.localization-table__resize-handle--active:after{opacity:1}.localization-table__resize-handle:hover:after,.localization-table__resize-handle:focus-visible:after,.localization-table__resize-handle--active:after{background:#ffe19a}.localization-table__resize-handle:focus-visible{outline:1px solid #d4a94a;outline-offset:-2px}.localization-table__row-key{padding:10px;color:#f0ede5;font-size:.78rem;font-weight:800;line-height:1.35;overflow-wrap:anywhere;text-align:left}.localization-table__notes{padding:10px;color:#bfb8ae;font-size:.78rem;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere}.localization-table__english{padding:10px;color:#f0ede5;font-size:.82rem;line-height:1.35;white-space:pre-wrap;overflow-wrap:anywhere}.localization-table__localizations{height:1px;padding:0;text-align:center;vertical-align:middle}.localization-table__localizations-inner{min-height:62px;height:100%;display:flex;align-items:center;justify-content:center;padding:8px 4px}.localization-table__localizations .localization-editor__small-btn{width:124px;padding:5px 6px;font-size:.62rem;line-height:1.15;white-space:nowrap}.localization-table__cell-text{min-height:18px;color:#f0ede5;font-size:.82rem;line-height:1.35;white-space:pre-wrap;overflow-wrap:anywhere}.localization-table__cell-status{color:#c5d4a8;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.localization-table__cell-error{color:#ffd8c9;font-size:.68rem;font-weight:700;line-height:1.3}.localization-table__actions{height:1px;padding:0;text-align:center}.localization-table__actions-inner{min-height:62px;height:100%;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:8px 4px}.localization-table__actions .localization-editor__small-btn{padding:5px 4px;font-size:.66rem}.localization-key-dialog__notes{min-height:110px;resize:vertical}.localization-key-dialog__split-row{display:grid;grid-template-columns:minmax(110px,150px) 1fr;gap:10px}.localization-key-dialog__locale-field{min-width:0}.localization-key-dialog__actions{align-items:center}.localization-key-dialog__delete-btn{margin-right:auto}.localization-key-dialog__error{margin-bottom:0;color:#ffd8c9}.dialog.localization-entries-dialog{width:calc(100vw - 12px);height:calc(100vh - 12px);max-width:1440px;max-height:calc(100vh - 12px);display:flex;flex-direction:column;gap:12px;overflow:auto;padding:18px}.localization-entries-dialog__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.localization-entries-dialog__title-block{min-width:0}.localization-entries-dialog__header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.localization-entries-dialog__header .dialog__title{margin-bottom:3px}.localization-entries-dialog__meta{display:block;color:#a09a92;font-size:.76rem;font-weight:700;overflow-wrap:anywhere}.localization-entries-dialog__add-form{display:grid;grid-template-columns:150px minmax(220px,1fr) auto;align-items:end;gap:10px;padding:10px;border:1px solid #3a3734;border-radius:8px;background:#242220}.localization-entries-dialog__add-textarea{min-height:50px;resize:vertical}.localization-entries-dialog__add-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.localization-entries-dialog__add-actions .dialog__message{margin:0 6px 0 0}.localization-entries-dialog__table-wrap{flex:none;min-height:0;overflow:visible;border:1px solid #3a3734;border-radius:8px;background:#403d3a}.localization-entries-dialog__table{width:100%;min-width:700px;border-collapse:separate;border-spacing:0;table-layout:fixed}.localization-entries-dialog__table th,.localization-entries-dialog__table td{border-right:1px solid #3a3734;border-bottom:1px solid #3a3734;background:#403d3a;vertical-align:top}.localization-entries-dialog__table thead th{position:sticky;top:0;z-index:2;padding:8px 10px;background:#312e2b;color:#d8d3ca;font-size:.7rem;font-weight:800;letter-spacing:.04em;text-align:left;text-transform:uppercase}.localization-entries-dialog__table tbody tr:nth-child(2n) th,.localization-entries-dialog__table tbody tr:nth-child(2n) td{background:#3a3734}.localization-entries-dialog__locale-col{width:110px;min-width:110px;max-width:110px;padding:10px;color:#f0ede5;font-size:.78rem;font-weight:800;overflow-wrap:anywhere;text-align:left}.localization-entries-dialog__text-col{padding:8px}.localization-entries-dialog__status-col{width:150px;min-width:150px;max-width:150px;padding:10px}.localization-entries-dialog__textarea{width:100%;min-height:38px;display:block;overflow:hidden;resize:none;line-height:1.35}.localization-entries-dialog__empty{padding:16px;color:#a09a92;font-size:.82rem;text-align:center}.localization-entries-dialog__footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px;border:1px solid #3a3734;border-radius:8px;background:#242220}.localization-entries-dialog__dirty-count{margin-right:auto;color:#a09a92;font-size:.76rem;font-weight:700}.dialog.export-url-builder-dialog{width:760px;display:flex;flex-direction:column;gap:14px}.export-url-builder-dialog__env-row{display:flex;align-items:center;gap:12px}.export-url-builder-dialog__env-toggle{width:200px}.export-url-builder-dialog__columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.export-url-builder-dialog__column{display:flex;flex-direction:column;border:1px solid #4a4541;border-radius:8px;background:#1a1816;overflow:hidden}.export-url-builder-dialog__column-title{padding:8px 12px;border-bottom:1px solid #4a4541;background:#242220;color:#a09a92;font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.export-url-builder-dialog__column-body{display:flex;flex-direction:column;gap:4px;padding:8px;max-height:50vh;overflow-y:auto}.export-url-builder-dialog__empty{padding:8px 4px;color:#6d665f;font-size:.78rem;font-style:italic}.export-url-builder-dialog__book-row{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #4a4541;border-radius:6px;background:#2a2826;color:var(--color-text);font-size:.82rem;text-align:left;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.export-url-builder-dialog__book-row:hover:not(:disabled){border-color:#7fa650;background:#333028}.export-url-builder-dialog__book-row--selected{cursor:default;background:#242220}.export-url-builder-dialog__book-row--selected:hover{border-color:#4a4541;background:#242220}.export-url-builder-dialog__book-order{flex-shrink:0;width:24px;color:#a09a92;font-size:.78rem;font-weight:700;text-align:right}.export-url-builder-dialog__book-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.export-url-builder-dialog__book-add{flex-shrink:0;color:#7fa650;font-size:1rem;font-weight:700}.export-url-builder-dialog__book-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.export-url-builder-dialog__book-action-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid #4a4541;border-radius:5px;background:#1a1816;color:#c7c2b8;font-size:.78rem;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.export-url-builder-dialog__book-action-btn:hover:not(:disabled){border-color:#7fa650;color:#fff}.export-url-builder-dialog__book-action-btn:disabled{opacity:.35;cursor:default}.export-url-builder-dialog__book-action-btn--remove:hover:not(:disabled){border-color:#b3261e;color:#ff7a72}.export-url-builder-dialog__url-row{display:flex;align-items:stretch;gap:8px}.export-url-builder-dialog__url-input{flex:1;min-width:0;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:.78rem}.export-url-builder-dialog__copy-btn{flex-shrink:0}.export-url-builder-dialog__copy-status{align-self:flex-end;margin-top:-4px;color:#7fa650;font-size:.78rem;font-weight:600}.export-url-builder-dialog__copy-status--error{color:#ff7a72}.dialog.localization-compare-dialog{width:calc(100vw - 12px);height:94vh;max-width:calc(100vw - 12px);max-height:94vh;display:flex;flex-direction:column;gap:12px;padding:18px}.localization-compare-dialog__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.localization-compare-dialog__header .dialog__title{margin-bottom:0}.localization-compare-dialog__controls{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:10px}.localization-compare-dialog__controls--fixed{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.localization-compare-dialog__book-field{min-width:0}.localization-compare-dialog__static-book{display:flex;align-items:center;min-height:34px;padding:7px 10px;overflow:hidden;border:1px solid #5a5550;border-radius:6px;background:#2a2826;color:#f0ede5;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.localization-compare-dialog__bulk-bar{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid #3a3734;border-radius:8px;background:#242220}.localization-compare-dialog__selected-count{margin-left:auto;color:#a09a92;font-size:.76rem;font-weight:700;white-space:nowrap}.localization-compare-dialog__bulk-copy{white-space:nowrap}.localization-compare-dialog__table-wrap{flex:1;min-height:0;overflow:auto;border:1px solid #3a3734;border-radius:8px;background:#403d3a}.localization-compare-dialog__table{width:100%;min-width:980px;border-collapse:separate;border-spacing:0;table-layout:fixed}.localization-compare-dialog__table th,.localization-compare-dialog__table td{border-right:1px solid #3a3734;border-bottom:1px solid #3a3734;background:#403d3a;vertical-align:top}.localization-compare-dialog__table thead th{position:sticky;top:0;z-index:2;padding:8px 10px;background:#312e2b;color:#d8d3ca;font-size:.7rem;font-weight:800;letter-spacing:.04em;text-align:left;text-transform:uppercase}.localization-compare-dialog__table tbody tr:nth-child(2n) th,.localization-compare-dialog__table tbody tr:nth-child(2n) td{background:#3a3734}.localization-compare-dialog__select-col{width:46px;min-width:46px;max-width:46px;padding:10px;text-align:center}.localization-compare-dialog__key-col{width:220px;min-width:220px;max-width:220px;padding:10px}.localization-compare-dialog__field-col{width:118px;min-width:118px;max-width:118px;padding:10px;color:#d8d3ca;font-size:.78rem;font-weight:800;overflow-wrap:anywhere}.localization-compare-dialog__value-col{padding:10px;color:#f0ede5;font-size:.8rem;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere}.localization-compare-dialog__actions-col{width:132px;min-width:132px;max-width:132px;padding:10px}.localization-compare-dialog__key{display:block;color:#f0ede5;font-size:.78rem;font-weight:800;line-height:1.35;overflow-wrap:anywhere}.localization-compare-dialog__kind{display:inline-flex;margin-top:6px;padding:3px 6px;border:1px solid #5a5550;border-radius:6px;color:#bfb8ae;font-size:.66rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.localization-compare-dialog__text-value{white-space:pre-wrap}.localization-compare-dialog__diff-mark{padding:1px 2px;border-radius:3px}.localization-compare-dialog__diff-mark--changed,.localization-compare-dialog__diff-mark--added,.localization-compare-dialog__diff-mark--deleted{background:#d4a94a59;color:#fff0c2}.localization-compare-dialog__missing-badge{display:inline-flex;padding:2px 6px;border-radius:6px;font-size:.7rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.localization-compare-dialog__missing-badge{border:1px solid #7e4b3c;background:#72362a47;color:#ffd8c9}.localization-compare-dialog__row-actions{display:flex;flex-direction:column;gap:6px}.localization-compare-dialog__copy-btn{width:100%;padding:6px 8px;font-size:.72rem}.localization-compare-dialog__row-status{color:#c5d4a8;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.localization-compare-dialog__row-error{color:#ffd8c9;font-size:.68rem;font-weight:700;line-height:1.3}.localization-compare-dialog__empty{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:28px;border:1px solid #3a3734;border-radius:8px;background:#403d3a;color:#c7c2b8;font-size:.86rem;font-weight:700;text-align:center}.dialog.localization-copy-direction-dialog{width:min(420px,calc(100vw - 24px));max-width:calc(100vw - 24px)}.localization-copy-direction-dialog .dialog__title,.localization-copy-direction-dialog .dialog__message{margin-bottom:0}.localization-copy-direction-dialog__field{margin-top:12px;display:flex;flex-direction:column;gap:8px}.localization-copy-direction-dialog__option{width:100%;min-height:36px;justify-content:center;font-size:.78rem;font-weight:800}.localization-copy-direction-dialog__error{margin-top:10px;color:#d9a45f}.dialog.localization-copy-confirm-dialog{width:min(1040px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:86vh;display:flex;flex-direction:column;gap:12px}.localization-copy-confirm-dialog .dialog__title,.localization-copy-confirm-dialog .dialog__message{margin-bottom:0}.localization-copy-confirm-dialog__preview{min-height:0;max-height:min(56vh,520px);overflow:auto;border:1px solid #3a3734;border-radius:8px;background:#403d3a}.localization-copy-confirm-dialog__table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;table-layout:fixed}.localization-copy-confirm-dialog__table th,.localization-copy-confirm-dialog__table td{border-right:1px solid #3a3734;border-bottom:1px solid #3a3734;background:#403d3a;vertical-align:top}.localization-copy-confirm-dialog__table thead th{position:sticky;top:0;z-index:2;padding:8px 10px;background:#312e2b;color:#d8d3ca;font-size:.7rem;font-weight:800;letter-spacing:.04em;text-align:left;text-transform:uppercase}.localization-copy-confirm-dialog__table tbody tr:nth-child(2n) th,.localization-copy-confirm-dialog__table tbody tr:nth-child(2n) td{background:#3a3734}.localization-copy-confirm-dialog__key-col{width:220px;min-width:220px;max-width:220px;padding:10px}.localization-copy-confirm-dialog__field-col{width:118px;min-width:118px;max-width:118px;padding:10px;color:#d8d3ca;font-size:.78rem;font-weight:800;overflow-wrap:anywhere}.localization-copy-confirm-dialog__value-col{padding:10px;color:#f0ede5;font-size:.8rem;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:760px){.localization-editor__top-bar,.localization-editor__toolbar{align-items:stretch;flex-direction:column}.localization-editor__search-field,.localization-editor__auth,.localization-editor__left-controls{width:100%}.localization-editor__field{min-width:0}.localization-key-dialog__split-row{grid-template-columns:1fr}.localization-entries-dialog__header,.localization-entries-dialog__footer{align-items:stretch;flex-direction:column}.localization-entries-dialog__dirty-count{margin-right:0}.dialog.localization-compare-dialog{width:calc(100vw - 12px);height:94vh;max-width:calc(100vw - 12px);max-height:94vh}.localization-compare-dialog__controls{grid-template-columns:1fr}.localization-compare-dialog__bulk-bar{align-items:stretch;flex-direction:column}.localization-compare-dialog__selected-count{margin-left:0}}.world-map-editor{height:100vh;position:relative;display:flex;flex-direction:column;overflow:hidden;background:#504c48;color:var(--color-text)}.world-map-editor__account-row{min-height:28px;display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:3px 6px;border-bottom:1px solid #3a3734;background:#262421;flex-shrink:0}.world-map-editor__top-bar{min-height:64px;display:flex;align-items:stretch;justify-content:space-between;gap:4px;padding:0;border-bottom:1px solid #3a3734;background:#312e2b;flex-shrink:0}.world-map-editor__top-controls,.world-map-editor__top-selected,.world-map-editor__top-actions{display:flex;align-items:center;gap:4px;min-width:0;min-height:64px;padding:4px}.world-map-editor__top-actions{margin-left:auto;flex-wrap:nowrap;justify-content:flex-end}.world-map-editor__top-controls{align-items:stretch;flex-shrink:0;border-right:1px solid #3a3734}.world-map-editor__top-controls>.top-bar__btn{align-self:flex-start}.world-map-editor__top-control-rows{display:flex;flex-direction:column;gap:4px}.world-map-editor__top-control-row{display:flex;gap:4px}.world-map-editor__top-selected{flex:1;align-self:stretch;padding:4px 6px;border-left:1px solid #3a3734;border-right:1px solid #3a3734;background:#262421}.world-map-country-picker{width:min(380px,calc(100vw - 24px));position:absolute;top:96px;left:186px;z-index:20;display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid #5a5550;border-radius:6px;background:#242220;box-shadow:0 14px 36px #00000073}.world-map-border-picker{left:316px}.world-map-country-picker__header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.world-map-country-picker__title{display:flex;flex-direction:column;gap:2px;color:#f0ede5;font-size:.78rem;font-weight:800;text-transform:uppercase}.world-map-country-picker__title span:last-child{color:#8b8680;font-size:.68rem}.world-map-country-picker__mode-toggle{display:flex;gap:3px;padding:3px;border:1px solid #3a3734;border-radius:6px;background:#242220}.world-map-country-picker__mode-btn{min-height:26px;padding:3px 9px;border:1px solid transparent;border-radius:4px;background:transparent;color:#c7c2b8;cursor:pointer;font-size:.72rem;font-weight:800}.world-map-country-picker__mode-btn:hover{border-color:#6d665f;color:#fff}.world-map-country-picker__mode-btn--selected,.world-map-country-picker__mode-btn--selected:hover{border-color:#d4a94a;background:#4a3a18;color:#ffe19a}.world-map-country-picker__list{max-height:320px;display:flex;flex-direction:column;gap:3px;overflow-y:auto}.world-map-country-picker__item{display:flex;align-items:center;gap:10px;min-height:30px;padding:5px 8px;border:1px solid #3a3734;border-radius:4px;background:#1f1d1b;color:#e0dcd4;cursor:pointer;font-size:.76rem;font-weight:700;text-align:left}.world-map-country-picker__flag{flex-shrink:0;width:24px;height:16px;object-fit:cover;border-radius:2px;background:#1a1816}.world-map-country-picker__item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.world-map-country-picker__item:hover:not(:disabled){border-color:#6a8a45;background:#2c3225;color:#fff}.world-map-country-picker__item--selected,.world-map-country-picker__item--selected:hover:not(:disabled){border-color:#7fa650;background:#31411f;color:#fff}.world-map-country-picker__item span:last-child{color:#8b8680;font-size:.64rem}.world-map-country-picker__item--selected span:last-child{color:#c9ee9c}.world-map-editor__top-language-stack{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.world-map-editor__history-row{display:flex;gap:4px}.world-map-editor__label{color:#8b8680;font-size:.66rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.world-map-editor__language-toggle{display:flex;gap:3px;padding:3px;border:1px solid #3a3734;border-radius:6px;background:#242220}.world-map-editor__language-btn{min-height:26px;padding:3px 9px;border:1px solid transparent;border-radius:4px;background:transparent;color:#c7c2b8;cursor:pointer;font-size:.72rem;font-weight:800}.world-map-editor__language-btn:hover{border-color:#6d665f;color:#fff}.world-map-editor__language-btn--selected,.world-map-editor__language-btn--selected:hover{border-color:#d4a94a;background:#4a3a18;color:#ffe19a}.world-map-editor__save-status{min-width:88px;color:#a09a92;font-size:.72rem;font-weight:700;text-align:center;text-transform:uppercase}.world-map-editor__error{padding:8px 12px;border-bottom:1px solid #7e4b3c;background:#72362a47;color:#ffd8c9;font-size:.8rem;font-weight:600}.world-map-editor__notice{padding:8px 12px;border-bottom:1px solid #8a6d2f;background:#8a6d2f3d;color:#ffe6a8;font-size:.8rem;font-weight:600}.world-map-editor__notice--action{display:flex;align-items:center;justify-content:space-between;gap:12px}.world-map-editor__notice-actions{display:flex;gap:8px;flex-shrink:0}.world-map-import-dialog{width:min(720px,92vw)}.world-map-import-dialog__textarea{width:100%;min-height:240px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;line-height:1.4}.world-map-editor__body{flex:1;display:flex;min-height:0}.world-map-editor__sidebar{width:300px;flex-shrink:0;display:flex;flex-direction:column;min-height:0;border-right:1px solid #4a4541;background:#262421;box-shadow:2px 0 16px #00000040}.world-map-editor__sidebar-header,.world-map-editor__sidebar-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border-bottom:1px solid #4a4541;background:#2a2826;color:#c7c2b8;font-size:.78rem;font-weight:700;text-transform:uppercase}.world-map-editor__sidebar-footer{border-top:1px solid #4a4541;border-bottom:none;color:#8b8680}.world-map-tree{flex:1;min-height:0;overflow-y:auto;padding:4px}.world-map-tree__group{display:flex;flex-direction:column;gap:2px}.world-map-tree__children{display:flex;flex-direction:column;gap:2px;margin-left:11px;padding-left:5px;border-left:1px solid #3a3734}.world-map-tree__row{display:flex;align-items:stretch;min-height:26px;border:1px solid #3a3734;border-radius:4px;background:#2a2826;overflow:hidden}.world-map-tree__row:hover{border-color:#5a5550;background:#33312e}.world-map-tree__row--selected{border-color:#63c8d7;background:#2f5e65;box-shadow:inset 3px 0 #6bdff0}.world-map-tree__row--zone{background:#262421}.world-map-tree__row--country{background:#22201d}.world-map-tree__toggle{width:24px;flex:0 0 24px;border:none;border-right:1px solid #3a3734;background:#242220;color:#c7c2b8;cursor:pointer;font-size:.82rem;font-weight:800}.world-map-tree__toggle:hover{background:#33312e;color:#fff}.world-map-tree__toggle--empty{display:block;cursor:default}.world-map-tree__toggle--flag{display:flex;align-items:center;justify-content:center;padding:2px;cursor:default;background:#242220}.world-map-tree__flag{flex-shrink:0;width:20px;height:14px;object-fit:cover;border-radius:2px;background:#1a1816}.world-map-tree__item{flex:1;min-width:0;display:flex;align-items:center;gap:8px;padding:4px 7px;border:none;background:transparent;color:#f0ede5;cursor:pointer;text-align:left}.world-map-tree__name{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;font-weight:700}.world-map-tree__meta{flex-shrink:0;color:#a09a92;font-size:.66rem;font-weight:700}.world-map-tree__placeholder,.world-map-tree__empty{padding:9px 10px;color:#6b665e;font-size:.76rem;font-weight:600}.world-map-editor__content{flex:1;min-width:0;min-height:0;overflow:auto;background:#4c4844}.world-map-detail{min-height:100%;display:flex;flex-direction:column;gap:8px;padding:0}.world-map-detail--empty,.world-map-editor__empty{align-items:center;justify-content:center;color:#c7c2b8;font-size:.86rem;font-weight:600;text-align:center}.world-map-editor__empty{flex:1;display:flex;flex-direction:column;gap:12px;padding:28px}.world-map-detail__section{display:flex;flex-direction:column;gap:8px;max-width:620px}.world-map-detail__section--inline{align-items:flex-end;flex-direction:row}.world-map-detail__band,.world-map-detail__columns{margin:8px}.world-map-detail__band{display:grid;grid-template-columns:minmax(260px,620px);gap:8px}.world-map-detail__band--actions{display:flex;justify-content:flex-end;gap:8px}.world-map-detail__columns{display:grid;grid-template-columns:minmax(260px,50%);gap:10px;align-items:start}.world-map-detail__panel{display:flex;flex-direction:column;min-width:0;border:1px solid #3a3734;background:#403d3a}.world-map-detail__panel--locations{margin:0 8px 8px}.world-map-detail__panel-header{min-height:28px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 8px;border-bottom:1px solid #3a3734;background:#312e2b;color:#a09a92;font-size:.7rem;font-weight:800;text-transform:uppercase}.world-map-detail__panel-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.world-map-detail__header-btn{min-height:24px;padding:3px 8px;font-size:.66rem}.world-map-editor__field{display:flex;flex-direction:column;gap:3px;min-width:0}.world-map-editor__field--short{max-width:180px}.world-map-editor__field--grow{flex:1}.world-map-editor__input,.world-map-editor__textarea{width:100%;min-height:30px;padding:5px 8px;border:1px solid #4a4541;border-radius:4px;background:#1a1816;color:var(--color-panel-text);font-size:.82rem;line-height:1.4;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.world-map-editor__textarea{min-height:96px;resize:vertical}.world-map-editor__input:focus,.world-map-editor__textarea:focus{border-color:#7fa650;outline:none;box-shadow:0 0 0 3px #7fa65026}.world-map-editor__input:disabled,.world-map-editor__textarea:disabled{opacity:.55;cursor:default}.world-map-editor__field-meta,.world-map-editor__field-error,.world-map-editor__empty-inline{color:#8b8680;font-size:.7rem;font-weight:600}.world-map-editor__field-error{color:#ffd8c9}.world-map-editor__primary-btn{min-height:30px;padding:5px 10px;border-color:#6a8a45;color:#d8edbd}.world-map-create-dialog{gap:12px}.world-map-create-dialog__id{color:#ffe19a;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;font-weight:800}.dialog__message--error{color:#ffd8c9}.world-map-editor__selected-field{flex:1;min-width:180px}.world-map-editor__selected-field .world-map-editor__input{min-height:28px;border-color:#5a5550;background:#1a1816;color:#f0ede5;font-weight:800}.world-map-editor__selected-field .world-map-editor__label,.world-map-editor__selected-field .world-map-editor__field-meta{color:#a09a92}.world-map-border-list,.world-map-location-list{display:flex;flex-direction:column;gap:10px}.world-map-border-list__row{min-height:32px;display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:6px 8px;border:none;border-bottom:1px solid #3a3734;border-radius:0;background:#2a2826;color:#e0dcd4;font-size:.8rem;font-weight:600}.world-map-border-list__row--readonly{justify-content:space-between;cursor:default}.world-map-location-list{padding:10px}.world-map-location-actions{display:flex;justify-content:flex-start;padding:0 8px 8px}.world-map-location-actions__add{min-height:36px;padding:8px 16px;font-size:.78rem;font-weight:800;box-shadow:0 2px 8px #00000038}.world-map-location-list__editor{display:flex;align-items:stretch;gap:12px;padding:10px;border:1px solid #3a3734;border-radius:6px;background:#2a2826}.world-map-location-list__preview{width:264px;flex:0 0 264px}.world-map-location-list__preview .world-map-image-preview,.world-map-location-list__preview .world-map-image-preview img{min-height:132px;max-height:132px}.world-map-location-list__fields{min-width:0;flex:1;display:flex;flex-direction:column;gap:8px}.world-map-location-list__header{display:flex;align-items:flex-start;gap:10px}.world-map-location-list__name-field{flex:0 1 50%;min-width:0}.world-map-location-list__nav-buttons{display:flex;align-items:center;gap:4px;padding-top:17px}.world-map-location-list__nav-btn{min-width:32px;padding-left:8px;padding-right:8px;font-size:1rem;line-height:1}.world-map-location-list__status-icons{display:flex;align-items:center;gap:4px;padding-top:17px}.world-map-location-list__actions{display:flex;align-items:center;gap:4px;padding-top:17px;margin-left:auto}.world-map-location-list__status-icon{width:20px;height:20px;display:inline-block}.world-map-location-list__status-icon--assigned{color:#4ade80}.world-map-location-list__status-icon--unassigned{color:#facc15}.world-map-location-list__status-icon--hidden{color:#9ca3af}.world-map-location-list__status{align-self:flex-start;color:#8b8680;font-size:.7rem;font-weight:800;text-transform:uppercase}.world-map-image-preview{width:100%;min-height:214px;max-height:300px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid #3a3734;border-radius:4px;background:#1a1816;color:#6f6961;font-size:.8rem;font-weight:800;text-transform:uppercase}.world-map-image-preview img{width:100%;height:100%;min-height:214px;max-height:300px;object-fit:cover}.world-map-image-field{display:flex;flex-direction:column;gap:4px;width:100%}.world-map-image-field__input{display:none}.world-map-image-preview--clickable{position:relative;padding:0;border:1px dashed #5a5550;background:#1a1816;color:#6f6961;cursor:pointer}.world-map-image-preview--clickable:hover:not(:disabled){border-color:#8a8580}.world-map-image-preview--clickable:disabled{cursor:not-allowed;opacity:.6}.world-map-image-preview__delete{position:absolute;top:4px;right:4px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:11px;background:#000000a6;color:#fff;font-size:1rem;font-weight:800;line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none}.world-map-image-preview__delete:hover{background:#b43c32eb}.world-map-country-flag{display:flex;flex-direction:column;gap:4px;width:84px;flex-shrink:0}.world-map-country-flag .world-map-image-preview{min-height:56px;max-height:56px;font-size:.65rem;padding:4px;text-align:center}.world-map-country-flag .world-map-image-preview img{min-height:0;max-height:56px;height:56px;object-fit:contain}.world-map-country-flag .world-map-image-preview__delete{top:2px;right:2px;width:16px;height:16px;font-size:.75rem;border-radius:8px}.world-map-detail__band--country-header{display:flex;flex-wrap:nowrap;align-items:stretch;gap:12px;grid-template-columns:none}.world-map-detail__band--country-header>label{flex:1;min-width:0}.world-map-editor__field-error{color:#d4615a;font-size:.75rem}@media(max-width:960px){.world-map-editor__top-bar{align-items:flex-start;flex-direction:column}.world-map-editor__top-actions{width:100%;justify-content:flex-start}.world-map-editor__top-controls{width:100%}.world-map-editor__top-control-row{flex-wrap:wrap}.world-map-country-picker{top:178px;left:12px}.world-map-editor__body{flex-direction:column}.world-map-editor__sidebar{width:100%;max-height:42vh;border-right:none;border-bottom:1px solid #4a4541}.world-map-detail__section--inline{align-items:stretch;flex-direction:column}.world-map-detail__columns{grid-template-columns:1fr}.world-map-location-list__editor{flex-direction:column}.world-map-location-list__preview{width:100%;flex-basis:auto}.world-map-location-list__header{flex-direction:column}.world-map-location-list__actions{padding-top:0;margin-left:0}.world-map-location-list__status-icons,.world-map-location-list__nav-buttons{padding-top:0}.world-map-location-list__name-field{flex:1}}.board-editor-screen__top-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 8px;background:#312e2b;border-bottom:1px solid var(--color-panel-border);flex-shrink:0}.top-bar__group{display:flex;align-items:center;gap:6px}.top-bar__group--actions{margin-left:auto;flex-wrap:wrap;justify-content:flex-end}.top-bar__group--play-data{flex-wrap:wrap}.top-bar__play-data-chunks{display:flex;align-items:center;gap:3px}.top-bar__user{display:flex;align-items:center;gap:8px;min-width:0}.top-bar__user-email{max-width:220px;color:#d8d3ca;font-size:.72rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board-editor-screen__save-error{padding:8px 12px;border-bottom:1px solid #6f3535;background:#4a2020;color:#f7c7c7;font-size:.78rem;line-height:1.4;flex-shrink:0}.top-bar__btn{padding:4px 10px;background:var(--color-panel-strong);border:1px solid var(--color-panel-border);border-radius:4px;color:var(--color-panel-text);font-size:.75rem;font-weight:600;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast);text-transform:uppercase}.top-bar__btn:hover:not(:disabled){background:#3a3632;border-color:#5b554f}.top-bar__btn--active,.top-bar__btn--active:hover:not(:disabled){border-color:#7fa650;background:#3d4a2b;color:#f3f0e8;box-shadow:0 0 8px #7fa6502e}.top-bar__btn:disabled{opacity:.5;cursor:not-allowed}.board-editor-screen__sidebar{width:260px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid #4a4541;background:#262421;overflow:hidden;box-shadow:2px 0 16px #00000040;z-index:1}.sidebar__header{display:flex;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid #4a4541;background:linear-gradient(180deg,#383532,#312e2b)}.sidebar__back{background:none;border:none;color:#8b8680;font-size:1rem;cursor:pointer;padding:2px 6px;line-height:1;border-radius:4px;transition:color var(--transition-fast),background var(--transition-fast)}.sidebar__back:hover{color:var(--color-text);background:#ffffff0f}.sidebar__title{font-size:.9rem;font-weight:600;color:#c7c2b8}.sidebar__mode-card{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-bottom:1px solid #4a4541;background:linear-gradient(180deg,#2e2c29,#2a2826)}.sidebar__mode-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;font-size:1.4rem;line-height:1;background:#1a1816;border:1px solid #4a4541;border-radius:8px;box-shadow:inset 0 1px 3px #0000004d}.game-mode-icon{display:block;flex-shrink:0}.game-mode-icon--glyph{font-size:inherit;line-height:1}.game-mode-icon--image{width:100%;height:100%;object-fit:cover;border-radius:inherit}.sidebar__mode-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.sidebar__mode-name{font-size:.85rem;font-weight:600;color:#f0ede5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar__mode-modifier{font-size:.7rem;color:#b8a46c}.sidebar__mode-meta{display:flex;align-items:center;gap:6px;margin-top:2px}.sidebar__mode-stats{font-size:.72rem;color:#8b8680}.sidebar__mode-version{font-size:.65rem;font-weight:600;color:#c7c2b8;background:#4a4541;padding:2px 6px;border-radius:4px;margin-left:auto}.sidebar__controls{display:flex;flex-direction:column;gap:4px;padding:6px 8px;border-bottom:1px solid #4a4541;background:#2a2826;flex-shrink:0}.sidebar__filter-row,.sidebar__sort-row{display:flex;gap:3px}.sidebar__ctrl-btn{padding:3px 8px;border:1px solid #3a3734;border-radius:4px;background:#262421;color:#8b8680;font-size:.7rem;font-weight:600;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.sidebar__ctrl-btn:hover{background:#33312e;border-color:#5a5550;color:#c7c2b8}.sidebar__ctrl-btn--active{border-color:#7fa650;background:#3d4a2b;color:#f3f0e8;box-shadow:0 0 6px #7fa65026}.sidebar__ctrl-btn--active:hover{background:#4a5a32}.sidebar__ctrl-btn--icon{padding:3px 6px;font-size:.8rem;line-height:1}.sidebar__ctrl-btn.world-map-location-actions__add{border-color:#6a8a45;background:#3d4a2b;color:#f3f0e8}.sidebar__ctrl-btn.world-map-location-actions__add:hover:not(:disabled){border-color:#7fa650;background:#4a5a32;color:#fff}.top-bar__btn.top-bar__btn--locked{border-color:#d4a94a;background:#4a3a18;color:#ffe19a}.top-bar__btn.top-bar__btn--locked:hover:not(:disabled){border-color:#f0c85c;background:#5c481f;color:#fff0bd}.top-bar__btn.top-bar__btn--danger,.sidebar__ctrl-btn.top-bar__btn--danger{border-color:#b3261e;background:#8b1f18;color:#fff}.top-bar__btn.top-bar__btn--danger:hover:not(:disabled),.sidebar__ctrl-btn.top-bar__btn--danger:hover:not(:disabled){border-color:#d13a31;background:#b3261e;color:#fff}.sidebar__list{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;display:flex;flex-direction:column;gap:6px;padding:6px}.sidebar__actions{padding:8px;border-top:1px solid #4a4541;flex-shrink:0}.sidebar__add-level{width:100%;padding:7px 0;background:#3a3734;border:1px solid #4a4541;border-radius:6px;color:#c7c2b8;font-size:.8rem;font-weight:600;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.sidebar__add-level:hover{background:#4a4642;border-color:#7fa650;color:var(--color-text);box-shadow:0 0 8px var(--color-accent-glow)}.sidebar__placeholder{padding:12px 10px;color:#6b665e;font-size:.8rem}.level-card{display:flex;flex-direction:column;gap:4px;width:100%;padding:8px;border:1.5px solid #3a3734;border-radius:6px;background:#2a2826;color:var(--color-text);cursor:pointer;text-align:left;font:inherit;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.level-card:hover{background:#33312e;border-color:#5a8a3e;box-shadow:0 2px 8px #0003}.level-card--selected{background:#333028;border-color:#7fa650;box-shadow:0 0 0 1px var(--color-accent-glow),0 2px 10px #00000040}.level-card__info-row{display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding:0 2px;min-width:0}.level-card__owner-tags{display:flex;align-items:center;gap:3px;flex-shrink:0}.level-owner-tag{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:3px;color:#fff;font-family:monospace;font-size:.64rem;font-weight:800;line-height:1;text-transform:uppercase;-webkit-user-select:none;user-select:none;white-space:nowrap}.level-owner-tag--card{min-width:20px;height:16px;padding:0 4px;box-shadow:0 1px 2px #00000047}.level-owner-tag--toggle{height:28px;min-width:36px;padding:0 6px;background:var(--color-panel-strong);cursor:pointer;transition:background var(--transition-fast),box-shadow var(--transition-fast),color var(--transition-fast)}.level-owner-tag--toggle:hover:not(:disabled){background:#3a3632;box-shadow:0 1px 3px #00000040}.level-owner-tag--toggle.level-owner-tag--active{box-shadow:0 0 8px #00000059}.level-owner-tag--toggle:disabled{opacity:.5;cursor:not-allowed}.level-card__id{font-size:.8rem;font-weight:600;color:#c7c2b8;font-family:monospace;flex-shrink:0}.level-card__meta-spacer{flex:1 1 auto;min-width:4px}.level-card__variants{display:flex;gap:2px;flex-shrink:0}.level-card__variant-bar{width:6px;height:14px;border-radius:1px}.level-card__variant-bar--default{box-shadow:inset 0 0 0 1px #00000073}.level-card__lock{font-size:.7rem;flex-shrink:0}.level-card__final{font-size:.6rem;font-weight:700;color:#b8a46c;background:#3a3734;padding:0 3px;border-radius:2px;flex-shrink:0}.level-card__notes{display:block;font-size:.72rem;color:#a09a92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:1em;line-height:1.2}.level-card__time{font-size:.68rem;color:#9a948b;font-family:monospace;line-height:1.2}.level-card__footer{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:2px 2px 0;border-top:1px solid #3a3734}.level-card__footer-text{display:flex;flex-direction:column;min-width:0;flex:1;gap:1px}.level-card__spell{display:flex;flex-direction:column;align-items:center;gap:2px;flex-shrink:0;margin-top:4px}.level-card__spell-badge{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#c8f46b;border:2px solid rgba(0,0,0,.12)}.level-card__spell-badge--rockets{background:radial-gradient(circle at 35% 30%,#ffb347,#ff7a1a 42%,#c62828)}.level-card__spell-badge--ice-block-spell{background:radial-gradient(circle at 35% 30%,#d8f4ff,#8fd8ff 42%,#339be6)}.level-card__spell-label{font-size:.6rem;color:#b8a46c;font-family:monospace;line-height:1}.level-card--compact .level-card__spell{margin-top:0}.level-card--compact .level-card__spell-badge{width:26px;height:26px}.level-card--compact .level-card__spell-label{font-size:.55rem}.level-card__body{display:flex;flex-direction:column;gap:4px}.level-card__preview{position:relative;width:fit-content;max-width:100%;line-height:0}.level-card--compact{flex-direction:row;align-items:center;gap:8px;padding:4px 6px}.level-card--compact .level-card__body{gap:2px;min-width:0;flex:1}.level-card--compact .level-card__info-row{gap:3px}.level-card--compact .level-card__owner-tags{gap:2px}.level-card--compact .level-owner-tag--card{min-width:18px;height:14px;padding:0 3px;font-size:.58rem}.level-card--compact .level-card__id{font-size:.72rem}.level-card--compact .level-card__notes{font-size:.65rem;border-top:none;padding:0}.level-card--compact .level-card__time{font-size:.64rem}.level-card--compact .level-card__variant-bar{width:4px;height:10px}.level-card--compact .level-card__final{font-size:.55rem}.level-card-stats{position:absolute;inset:0;z-index:8;display:flex;flex-direction:column;gap:0;min-width:0;padding:0;border:none;border-radius:0;background:#1a1816eb;box-shadow:0 4px 12px #00000059;pointer-events:none}.level-card--compact .level-card-stats{inset:0;width:auto;padding:0;transform:none}.level-stat-grid{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #3a3734;border-radius:3px;background:#1a1816}.level-stat-grid__header-row{display:grid;grid-template-columns:20px repeat(5,minmax(0,1fr));min-width:0;border-bottom:1px solid #3a3734}.level-stat-grid__data-row{display:grid;grid-template-columns:20px repeat(5,minmax(0,1fr));min-width:0;border-bottom:1px solid #302d2a}.level-stat-grid__data-row:last-child{border-bottom:none}.level-stat-grid__header-cell,.level-stat-grid__variant-cell,.level-stat-grid__data-cell{display:flex;align-items:center;justify-content:center;min-width:0;padding:3px 2px;border-right:1px solid #302d2a;line-height:1.1;text-align:center}.level-stat-grid__header-cell{color:#9b9690;font-size:.58rem;font-weight:700;text-transform:uppercase}.level-stat-grid__variant-cell{gap:2px;color:#c7c2b8;font-size:.58rem;font-weight:700}.level-stat-grid__variant-dot{width:5px;height:9px;border-radius:1px;flex-shrink:0}.level-stat-grid__variant-label{min-width:0}.level-stat-grid__data-cell{color:#c7c2b8;font-size:.62rem;font-weight:700;font-variant-numeric:tabular-nums}.level-stat-grid__rate{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;line-height:.95}.level-stat-grid__rate-value{color:#f0eadf;font-weight:800}.level-stat-grid__rate-games{color:#9b9690;font-size:.52rem;font-weight:600}.level-stat-grid__missing{color:#9b9690}.level-stat-grid__header-cell:last-child,.level-stat-grid__data-cell:last-child{border-right:none}.level-stat-grid--card .level-stat-grid__header-row,.level-stat-grid--card .level-stat-grid__data-row{grid-template-columns:18px repeat(5,minmax(0,1fr))}.level-stat-grid--card{flex:1;height:100%;border-radius:0}.level-stat-grid--card .level-stat-grid__data-row{flex:1 1 0}.level-stat-grid--card .level-stat-grid__header-cell,.level-stat-grid--card .level-stat-grid__variant-cell,.level-stat-grid--card .level-stat-grid__data-cell{padding:2px 1px;font-size:.64rem}.level-stat-grid--card .level-stat-grid__rate{gap:3px}.level-stat-grid--card .level-stat-grid__rate-value{font-size:.76rem}.level-stat-grid--card .level-stat-grid__rate-games{font-size:.5rem}.level-stat-grid--card .level-stat-grid__variant-dot{width:5px;height:9px}@media(max-width:920px){.top-bar__group--play-data{width:100%}}.board-editor-screen__editor{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.level-toolbar-left{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.level-toolbar-left__notes{position:relative}.level-toolbar-left__fen-name{display:flex;flex-direction:column;gap:6px}.level-toolbar-left__notes-trigger{width:100%}.level-toolbar__btn--has-notes{border-color:#6a8a45;color:#c5d4a8}.level-toolbar-left__notes-popover{position:absolute;top:calc(100% + 4px);left:0;z-index:100;width:260px;display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid #4a4541;border-radius:8px;background:#2a2826;box-shadow:0 8px 24px #00000073,0 0 0 1px #ffffff08}.level-toolbar-left__notes-label{color:var(--color-panel-text-muted);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.level-toolbar-left__fen-name-input,.level-toolbar-left__notes-textarea{width:100%;padding:7px 10px;border:1px solid #4a4541;border-radius:6px;background:#1a1816;color:var(--color-panel-text);box-sizing:border-box;font-size:.8rem;line-height:1.4;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.level-toolbar-left__fen-name-input{min-height:34px}.level-toolbar-left__notes-textarea{min-height:96px;max-height:200px;resize:vertical}.level-toolbar-left__fen-name-input:focus,.level-toolbar-left__notes-textarea:focus{border-color:#7fa650;outline:none;box-shadow:0 0 0 3px #7fa65026}.level-toolbar-left__notes-actions{display:flex;justify-content:flex-end;gap:6px}.level-toolbar-left__notes-actions .level-toolbar__btn{min-width:92px}.level-toolbar-left__info{display:flex;flex-direction:column;background:var(--color-panel-strong);padding:4px 6px;border:1px solid var(--color-panel-border);border-radius:4px;text-align:center}.level-toolbar-left__id{font-size:1rem;font-weight:700;color:var(--color-panel-text);font-family:monospace}.level-toolbar-left__time{font-size:.7rem;color:var(--color-panel-text-muted);font-family:monospace}.level-toolbar-left__owner-tags{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.level-toolbar-left__actions{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.level-toolbar-left>.level-toolbar__btn{width:100%}.level-toolbar__btn{padding:6px 4px;background:var(--color-panel-strong);border:1px solid var(--color-panel-border);border-radius:4px;color:var(--color-panel-text);font-size:.7rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.level-toolbar__btn:hover{background:#3a3632;border-color:#5b554f;box-shadow:0 1px 3px #0003}.level-toolbar__btn--active{border-color:#7fa650;background:#3d4a2b;color:#f3f0e8;box-shadow:0 0 8px #7fa65033}.level-toolbar__btn--done-collecting{border-color:#9f3029;background:#5a2020;color:#ffd8d8;box-shadow:0 0 8px #b3261e38}.level-toolbar__btn--done-collecting:hover{border-color:#d13a31;background:#7a2a2a;color:#fff}.level-toolbar__btn--done-collecting.level-toolbar__btn--active{border-color:#7fa650;background:#3d4a2b;color:#f3f0e8;box-shadow:0 0 8px #7fa65033}.level-toolbar__btn--done-collecting.level-toolbar__btn--active:hover{border-color:#9cc76a;background:#4d6135;color:#fff}.level-toolbar-bottom{display:flex;justify-content:space-between;align-items:center;position:relative;width:100%;min-height:32px}.level-toolbar-bottom__group{display:flex;gap:4px}.level-toolbar-bottom__group--history{position:absolute;left:var(--level-toolbar-history-center, 50%);transform:translate(-50%)}.level-toolbar-bottom__group--danger{margin-left:auto}.level-toolbar-bottom__tooltip-host{display:inline-flex}.level-toolbar-bottom__btn{padding:4px 10px;background:var(--color-panel-strong);border:1px solid var(--color-panel-border);border-radius:4px;color:var(--color-panel-text);font-size:.75rem;font-weight:600;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast);text-transform:uppercase}.level-toolbar-bottom__btn:hover:not(:disabled){background:#3a3632;border-color:#5b554f}.level-toolbar-bottom__btn:disabled{opacity:.5;cursor:not-allowed}.level-toolbar-bottom__btn--danger{background:#5a2020;border-color:#7a2a2a;color:#f4a5a5}.level-toolbar-bottom__btn--danger:hover{background:#7a2a2a;border-color:#922f2f}@media(max-width:920px){.board-editor-screen__top-bar{flex-wrap:wrap}.top-bar__group--actions{width:100%;margin-left:0;justify-content:flex-start}.level-toolbar-bottom{flex-wrap:wrap;gap:4px 8px;min-height:0}.level-toolbar-bottom__group--history{position:static;transform:none;order:3;width:100%;justify-content:center}}.board-editor-screen__bottom{height:420px;flex-shrink:0;display:flex;flex-direction:column;border-top:1px solid #4a4541;background:#262421;overflow:hidden;box-shadow:0 -2px 12px #00000026}.board-editor-screen__bottom--resizing{-webkit-user-select:none;user-select:none}.bottom-panel__resize-handle{position:relative;flex-shrink:0;height:12px;border-bottom:1px solid rgba(74,69,65,.55);background:linear-gradient(180deg,#2f2c29,#292724);cursor:ns-resize;touch-action:none}.bottom-panel__resize-handle:after{content:"";display:block;width:56px;height:4px;margin:4px auto 0;border-radius:999px;background:#716b63;opacity:.75;transition:background var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.bottom-panel__resize-handle:hover:after,.bottom-panel__resize-handle--active:after,.bottom-panel__resize-handle:focus-visible:after{background:#a7c97c;box-shadow:0 0 0 1px #a7c97c29,0 0 10px #7fa65038;opacity:1}.bottom-panel__resize-handle:focus-visible{outline:none;box-shadow:inset 0 0 0 1px #a7c97c42}.bottom-panel__header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:26px;padding:5px 12px;border-bottom:1px solid #4a4541;background:linear-gradient(180deg,#383532,#312e2b)}.bottom-panel__title{font-size:.9rem;font-weight:600;color:#c7c2b8}.bottom-panel__content{flex:1;overflow:hidden;min-height:0}.bottom-panel__placeholder{padding:12px 10px;color:#6b665e;font-size:.8rem}.mode-select{height:100vh;overflow-y:auto;background:#5a5550}.mode-select__inner{display:flex;flex-direction:column;gap:0;padding:0}.mode-select__controls{display:flex;flex-direction:column;gap:10px;padding:8px 12px;border-bottom:1px solid #3a3734;background:#3f3b37}.mode-select__top-row{display:flex;align-items:center;gap:12px;min-height:34px}.mode-select__auth{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-left:auto;min-width:0}.mode-select__auth-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.mode-select__auth-label{color:#8b8680;font-size:.66rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.mode-select__auth-email{color:#f0ede5;font-size:.8rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mode-select__sort-row{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.mode-select__back-btn{padding:7px 14px;border-color:#6a8a45;color:#c5d4a8;font-size:.82rem}.mode-select__back-btn:hover{border-color:#7fa650;color:#e0efc8}.mode-select__sort-label{margin-right:6px;color:#c7c2b8;font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.mode-select__data-version{display:flex;align-items:center;gap:6px;margin-left:auto;padding-left:12px}.mode-select__data-version-label{color:#c7c2b8;font-size:.72rem;font-weight:700;text-transform:uppercase}.mode-select__data-version-input{width:58px;min-height:28px;padding:4px 7px;border:1px solid #4a4541;border-radius:4px;background:#1a1816;color:var(--color-panel-text);box-sizing:border-box;font-size:.78rem;font-weight:700;text-align:center}.mode-select__data-version-input:focus{border-color:#7fa650;outline:none;box-shadow:0 0 0 2px #7fa65026}.mode-select__data-version-input:disabled{opacity:.55;cursor:not-allowed}.mode-select__data-version-error{color:#ffd8c9;font-size:.72rem;font-weight:600}.mode-section{border-bottom:2px solid #3a3734}.mode-section__header{display:flex;align-items:center;gap:0;background:#4a4642;border-bottom:1px solid #3a3734;-webkit-user-select:none;user-select:none}.mode-section__add{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;border-right:1px solid #3a3734;color:#c7c2b8;font-size:1.2rem;font-weight:700;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.mode-section__add:hover{background:#5a5652;color:#fff}.mode-section__toggle{flex:1;display:flex;align-items:center;background:none;border:none;padding:6px 10px;cursor:pointer;text-align:left}.mode-section__label{font-size:.85rem;font-weight:700;color:#e0dcd4;text-transform:uppercase;letter-spacing:.04em}.mode-section__count{margin-left:auto;padding:0 10px;font-size:.85rem;font-weight:600;color:#8b8680}.mode-section__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;padding:12px;background:#504c48}.mode-section__empty{grid-column:1 / -1;padding:16px 10px;color:#8b8680;font-size:.8rem;text-align:center}.mode-card{display:flex;align-items:flex-start;gap:8px;padding:10px;border:1px solid #5a5550;border-radius:8px;background:linear-gradient(180deg,#403d3a,#3a3734);color:var(--color-text);cursor:pointer;text-align:left;box-shadow:0 2px 6px #00000026;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.mode-card:hover{background:linear-gradient(180deg,#4a4744,#444140);border-color:#7fa650;box-shadow:0 4px 16px #00000040,0 0 0 1px var(--color-accent-glow);transform:translateY(-1px)}.mode-card:active{background:#333028;transform:translateY(0)}.mode-card__icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;font-size:1.5rem;line-height:1;background:#2a2826;border:1px solid #5a5550;border-radius:10px;box-shadow:inset 0 1px 3px #0000004d;overflow:hidden}.mode-card__info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.mode-card__name{font-size:.82rem;font-weight:600;color:#f0ede5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mode-card__date{font-size:.7rem;color:#8b8680}.mode-card__modifier{font-size:.65rem;font-weight:500;color:#b8a46c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mode-card__meta{display:flex;align-items:center;gap:6px;margin-top:2px}.mode-card__stats{font-size:.72rem;color:#a09a92}.mode-card__version{font-size:.65rem;font-weight:600;color:#c7c2b8;background:#5a5550;padding:2px 6px;border-radius:4px;margin-left:auto}.dialog.fen-copy-dialog{width:520px}.fen-copy-dialog__target-list{display:flex;flex-direction:column;gap:8px;max-height:52vh;overflow-y:auto;margin-bottom:12px;padding-right:4px}.fen-copy-dialog__target{width:100%;align-items:center}.fen-copy-dialog__target:disabled{cursor:default;opacity:.72}.fen-copy-dialog__target:disabled:hover{background:linear-gradient(180deg,#403d3a,#3a3734);border-color:#5a5550;box-shadow:0 2px 6px #00000026;transform:none}.fen-copy-dialog__target--pending,.fen-copy-dialog__target--pending:disabled:hover{border-color:#7fa650;box-shadow:0 0 0 1px var(--color-accent-glow)}.fen-copy-dialog__empty{padding:18px;margin:0 0 12px;color:#a09a92;font-size:.82rem;text-align:center;background:#ffffff06;border:1px solid rgba(255,255,255,.06);border-radius:8px}.fen-copy-dialog__error{margin-top:10px}.login-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at top,rgba(127,166,80,.22),transparent 42%),radial-gradient(circle at bottom right,rgba(240,190,92,.12),transparent 35%),#1b1917}.login-gate__card{width:min(420px,100%);display:flex;flex-direction:column;gap:20px;padding:28px;border:1px solid #4a4541;border-radius:16px;background:linear-gradient(180deg,#36322efa,#262421fa);box-shadow:0 24px 60px #00000059}.login-gate__intro{display:flex;flex-direction:column;gap:8px}.login-gate__title{font-size:1.8rem;line-height:1.1;color:#f3f0e8}.login-gate__subtitle{color:#b7b0a6;font-size:.95rem;line-height:1.5}.login-gate__message{padding:12px 14px;border:1px solid #7e4b3c;border-radius:10px;background:#72362a4d;color:#ffd8c9;font-size:.82rem;line-height:1.5}.login-gate__button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:13px 16px;border:none;border-radius:10px;background:#f6f4ef;color:#22201d;font-size:.92rem;font-weight:700;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.login-gate__button:hover{background:#fff;box-shadow:0 10px 24px #0000002e;transform:translateY(-1px)}.login-gate__google-icon{width:20px;height:20px;flex-shrink:0}.fast-tooltip{position:fixed;z-index:10000;max-width:min(320px,calc(100vw - 16px));padding:7px 9px;border:1px solid #5b554f;border-radius:4px;background:#1f1d1b;box-shadow:0 8px 24px #00000059;color:var(--color-panel-text);font-size:.75rem;font-weight:500;line-height:1.35;pointer-events:none;white-space:pre-line}.context-menu{position:fixed;z-index:1000;min-width:130px;background:#2a2826;border:1px solid #5a5550;border-radius:8px;padding:4px 0;box-shadow:0 8px 32px #00000080,0 0 0 1px #ffffff08}.context-menu__item{display:block;width:100%;padding:7px 14px;background:none;border:none;color:var(--color-text);font-size:.8rem;text-align:left;cursor:pointer;transition:background var(--transition-fast)}.context-menu__item:hover{background:#ffffff0f}.context-menu__item--danger{color:#e5534b}.context-menu__item--danger:hover{background:#e5534b26}.dialog-overlay{position:fixed;inset:0;z-index:900;display:flex;align-items:center;justify-content:center;background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dialog{width:640px;max-width:90vw;background:#2a2826;border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:22px;box-shadow:0 16px 48px #0000008c,0 0 0 1px #ffffff08}.dialog__title{font-size:1rem;font-weight:600;color:var(--color-text);margin-bottom:16px}.dialog__message{font-size:.85rem;color:#a09a92;line-height:1.5;margin-bottom:16px}.dialog__details-list{list-style:disc;margin:-8px 0 16px;padding-left:22px;display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto}.dialog__details-item{font-size:.82rem;color:#f0d3d3;font-family:Menlo,Consolas,monospace;line-height:1.4}.dialog__form{display:flex;flex-direction:column;gap:14px}.dialog__label{display:flex;flex-direction:column;gap:4px;font-size:.8rem;font-weight:500;color:#a09a92}.dialog__input{padding:7px 10px;background:#1a1816;border:1px solid #4a4541;border-radius:6px;color:var(--color-text);font-size:.85rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.dialog__input:focus{border-color:#7fa650;outline:none;box-shadow:0 0 0 3px var(--color-accent-glow)}.dialog__input--readonly{color:#c7c2b8;font-family:Menlo,Consolas,monospace;font-size:.78rem}.dialog__input--short{max-width:80px}.dialog__localization{display:flex;flex-direction:column;gap:10px;padding:12px;background:#ffffff06;border:1px solid rgba(255,255,255,.06);border-radius:8px}.dialog__localization-btn{align-self:flex-start}.dialog__key-correction{display:flex;align-items:center;justify-content:space-between;gap:10px}.dialog__key-correction-value{color:#c7c2b8;font-family:Menlo,Consolas,monospace;font-size:.72rem;line-height:1.35;overflow-wrap:anywhere}.dialog__localization .dialog__message{margin-bottom:0}.dialog__selector-block{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;background:#ffffff06;border:1px solid rgba(255,255,255,.06);border-radius:8px}.dialog__selector-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.dialog__selector-label{color:#a09a92;font-size:.8rem;font-weight:500}.dialog__selector-value{color:var(--color-text);font-size:.86rem;line-height:1.35}.game-mode-localization-dialog{width:860px}.game-mode-localization-dialog__header,.game-mode-localization-dialog__footer,.game-mode-localization-dialog__header-actions,.game-mode-localization-dialog__add-actions{display:flex;align-items:center;gap:8px}.game-mode-localization-dialog__header{justify-content:space-between;margin-bottom:14px}.game-mode-localization-dialog__header .dialog__title,.game-mode-localization-dialog__header .dialog__message{margin-bottom:0}.game-mode-localization-dialog__header-actions{flex-wrap:wrap;justify-content:flex-end}.game-mode-localization-dialog__add-locale{display:grid;grid-template-columns:minmax(160px,220px) 1fr auto;align-items:end;gap:10px;padding:12px;margin-bottom:12px;background:#ffffff06;border:1px solid rgba(255,255,255,.06);border-radius:8px}.game-mode-localization-dialog__add-locale .dialog__message{margin-bottom:8px}.game-mode-localization-dialog__body{display:flex;flex-direction:column;gap:12px;max-height:62vh;overflow-y:auto;padding-right:4px}.game-mode-localization-dialog__mode{padding:12px;background:#1f1d1a;border:1px solid #3a3631;border-radius:8px}.game-mode-localization-dialog__mode-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}.game-mode-localization-dialog__mode-name{color:var(--color-text);font-size:.86rem;font-weight:600}.game-mode-localization-dialog__mode-key,.game-mode-localization-dialog__status,.game-mode-localization-dialog__dirty-count{color:#8b8680;font-family:Menlo,Consolas,monospace;font-size:.72rem}.game-mode-localization-dialog__fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.game-mode-localization-dialog__textarea{min-height:58px;resize:vertical}.game-mode-localization-dialog__error{color:#f0a0a0;font-size:.72rem;line-height:1.35}.game-mode-localization-dialog__empty{padding:18px;color:#a09a92;font-size:.82rem;text-align:center;background:#ffffff06;border:1px solid rgba(255,255,255,.06);border-radius:8px}.game-mode-localization-dialog__footer{justify-content:flex-end;margin-top:12px}.modifier-picker-dialog{width:680px}.modifier-picker-dialog__list{max-height:58vh}.dialog__modifier-list{display:flex;flex-direction:column;gap:4px;max-height:60vh;overflow-y:auto}.dialog__modifier-btn{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;background:#1a1816;border:1px solid #4a4541;border-radius:8px;color:var(--color-text);text-align:left;cursor:pointer;flex-shrink:0;transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.dialog__modifier-btn:hover:not(:disabled){border-color:#7fa650;background:#222018}.dialog__modifier-btn--selected{border-color:#7fa650;background:#333028;box-shadow:0 0 8px var(--color-accent-glow)}.dialog__modifier-btn--disabled{opacity:.35;cursor:default}.dialog__modifier-check{display:flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;border:1px solid #4a4541;border-radius:4px;font-size:.72rem;color:#7fa650;background:#1a1816;margin-top:1px}.dialog__modifier-btn--selected .dialog__modifier-check{border-color:#7fa650;background:#333028}.dialog__modifier-text{display:flex;flex-direction:column;gap:2px}.dialog__modifier-name{font-size:.82rem;font-weight:600}.dialog__modifier-desc{font-size:.7rem;color:#8b8680;line-height:1.3}.dialog__modifier-empty{font-size:.75rem;color:#8b8680;padding:8px 4px}.dialog__icon-grid{display:flex;flex-wrap:wrap;gap:4px}.dialog__icon-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;background:#1a1816;border:1px solid #4a4541;border-radius:8px;cursor:pointer;overflow:hidden;transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.dialog__icon-btn:hover{border-color:#7fa650;background:#222018}.dialog__icon-btn--selected{border-color:#7fa650;background:#333028;box-shadow:0 0 8px var(--color-accent-glow)}.dialog__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.dialog__btn{padding:7px 18px;border:1px solid #4a4541;border-radius:7px;font-size:.8rem;font-weight:500;cursor:pointer;transition:background var(--transition-fast),box-shadow var(--transition-fast)}.dialog__btn--cancel{background:#3a3734;color:#c7c2b8}.dialog__btn--cancel:hover{background:#4a4642}.dialog__btn--confirm{background:#4a7a2e;color:#fff;border-color:#5a8a3e}.dialog__btn--confirm:hover{background:#5a8a3e;box-shadow:0 2px 8px #7fa65040}.dialog__btn--confirm:disabled{opacity:.4;cursor:default}.dialog__btn--danger{background:#8b1f18;color:#fff;border-color:#b3261e}.dialog__btn--danger:hover{background:#b3261e}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:1px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:1px}.level-tables-editor{height:100vh;position:relative;display:flex;flex-direction:column;overflow:hidden;background:#504c48;color:var(--color-text)}.level-tables-editor__account-row{min-height:28px;display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:3px 6px;border-bottom:1px solid #3a3734;background:#262421;flex-shrink:0}.level-tables-editor__top-bar{min-height:56px;display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid #3a3734;background:#312e2b;flex-shrink:0}.level-tables-editor__title{margin-left:8px;color:#f0ede5;font-size:.95rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.level-tables-editor__save-status{margin-left:auto;color:#a09a92;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.level-tables-editor__save-status--saving{color:#d4a94a}.level-tables-editor__save-status--error{color:#ff9b80}.level-tables-editor__save-btn{min-width:76px}.level-tables-editor__error-banner{padding:8px 12px;border-bottom:1px solid #7e4b3c;background:#72362a47;color:#ffd8c9;font-size:.8rem;font-weight:600}.level-tables-editor__body{flex:1;display:flex;min-height:0}.level-tables-editor__sidebar{width:280px;flex-shrink:0;display:flex;flex-direction:column;min-height:0;border-right:1px solid #4a4541;background:#262421;box-shadow:2px 0 16px #00000040;overflow-y:auto}.level-tables-editor__content{flex:1;min-width:0;display:flex;flex-direction:column;overflow-y:auto;padding:16px 20px;gap:18px}.level-tables-editor__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;flex:1;padding:32px;color:#a09a92;font-size:.85rem;text-align:center}.level-tables-editor__primary-btn{margin-top:8px}.level-tables-tree{display:flex;flex-direction:column;gap:2px;padding:8px 4px}.level-tables-tree__empty,.level-tables-tree__empty-zone{padding:12px;color:#8b8680;font-size:.78rem;font-style:italic}.level-tables-tree__region{display:flex;flex-direction:column}.level-tables-tree__region-toggle{display:flex;align-items:center;gap:6px;padding:6px 10px;border:0;background:transparent;color:#f0ede5;cursor:pointer;font-size:.78rem;font-weight:800;text-align:left;text-transform:uppercase;letter-spacing:.04em}.level-tables-tree__region-toggle:hover{background:#2f2c2a}.level-tables-tree__caret{display:inline-block;width:12px;color:#8b8680;font-size:.7rem}.level-tables-tree__region-name{flex:1}.level-tables-tree__zones{display:flex;flex-direction:column;gap:1px;margin:0;padding:0 0 4px;list-style:none}.level-tables-tree__zone{display:flex;align-items:center;justify-content:space-between;width:100%;padding:6px 10px 6px 30px;border:0;background:transparent;color:#c7c2b8;cursor:pointer;font-size:.78rem;font-weight:600;text-align:left}.level-tables-tree__zone:hover{background:#2c3225;color:#fff}.level-tables-tree__zone--selected,.level-tables-tree__zone--selected:hover{background:#31411f;color:#fff}.level-tables-tree__zone-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.level-tables-tree__zone-count{flex-shrink:0;min-width:24px;margin-left:8px;padding:2px 6px;border-radius:9px;background:#1a1816;color:#c9ee9c;font-size:.7rem;font-weight:800;text-align:center}.level-tables-zone-editor{display:flex;flex-direction:column;gap:16px}.level-tables-zone-header{display:flex;flex-direction:column;gap:12px;padding:14px 16px;border:1px solid #4a4541;border-radius:8px;background:#2a2826}.level-tables-zone-header__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.level-tables-zone-header__actions{display:flex;flex-shrink:0;align-items:center;gap:8px}.level-tables-zone-header__titles{display:flex;flex-direction:column;gap:2px}.level-tables-zone-header__region{color:#8b8680;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.level-tables-zone-header__name{margin:0;color:#f0ede5;font-size:1.15rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.level-tables-zone-header__lock{flex-shrink:0;min-height:32px;padding:6px 14px;border:1px solid #5a5550;border-radius:6px;background:#1f1d1b;color:#c7c2b8;cursor:pointer;font-size:.75rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.level-tables-zone-header__lock--locked{border-color:#d4a94a;background:#4a3a18;color:#ffe19a}.level-tables-zone-header__lock:hover{border-color:#d4a94a}.level-tables-zone-header__fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px 28px}.level-tables-zone-header__field{display:flex;flex-direction:column;gap:4px}.level-tables-zone-header__field-label{color:#8b8680;font-size:.66rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.level-tables-zone-header__field input{min-height:30px;padding:4px 8px;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;color:#f0ede5;font-size:.8rem;font-weight:600}.level-tables-zone-header__stepper{display:flex;align-items:stretch;gap:6px}.level-tables-zone-header__stepper input{flex:1;min-width:0;text-align:center;-moz-appearance:textfield;appearance:textfield}.level-tables-zone-header__stepper input::-webkit-outer-spin-button,.level-tables-zone-header__stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.level-tables-zone-header__stepper-button{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:28px;min-height:30px;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;color:#c7c2b8;cursor:pointer}.level-tables-zone-header__stepper-button svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.level-tables-zone-header__stepper-button:hover:not(:disabled){border-color:#d4a94a;color:#f0ede5}.level-tables-zone-header__stepper-button:disabled{opacity:.4;cursor:not-allowed}.level-tables-zone-header__field--mode{grid-column:span 2}.level-tables-game-mode-picker{min-height:30px;padding:4px 8px;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;color:#f0ede5;font-size:.8rem;font-weight:600}.level-tables-row-list{display:flex;flex-direction:column;border:1px solid #4a4541;border-radius:8px;background:#2a2826;overflow:hidden}.level-tables-row-list--empty{padding:16px;color:#8b8680;font-size:.8rem;font-style:italic}.level-tables-row-list__head{display:grid;grid-template-columns:30px 230px 72px 1fr 1fr 124px;gap:8px;padding:8px 12px;border-bottom:1px solid #3a3734;background:#1f1d1b;color:#8b8680;font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.level-tables-row-list__body{margin:0;padding:0;list-style:none}.level-tables-row-list__row{display:grid;grid-template-columns:30px 230px 72px 1fr 1fr 124px;gap:8px;align-items:center;padding:3px 12px;border-bottom:1px solid #3a3734}.level-tables-row-list__row:last-child{border-bottom:0}.level-tables-row-list__col{min-width:0}.level-tables-row-list__col--index{color:#c9ee9c;font-family:monospace;font-size:.85rem;font-weight:800}.level-tables-row-list__col--actions{display:flex;align-items:center;justify-content:flex-end;gap:4px}.level-tables-row-list__action{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;color:#c7c2b8;cursor:pointer;font-size:1.4rem;font-weight:800;line-height:1}.level-tables-row-list__action svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.level-tables-row-list__action:hover:not(:disabled){border-color:#d4a94a;color:#f0ede5}.level-tables-row-list__action:disabled{opacity:.4;cursor:not-allowed}.level-tables-row-list__action--add{color:#9ccc65}.level-tables-row-list__action--add:hover:not(:disabled){border-color:#7fa650;background:#25361b;color:#c9ee9c}.level-tables-row-list__delete{width:28px;height:28px;padding:0;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;color:#ff9b80;cursor:pointer;font-size:.85rem;font-weight:800}.level-tables-row-list__delete:hover:not(:disabled){border-color:#ff9b80;background:#3a1f1b}.level-tables-row-list__delete:disabled{opacity:.4;cursor:not-allowed}.difficulty-bar{position:relative;flex:1;height:18px;min-width:80px;border-radius:3px;background:#1a1816;overflow:hidden}.difficulty-bar__gradient{position:absolute;inset:0;background:linear-gradient(90deg,#00f0ff,#8bff35,#f7fe41,#f88c00,#ff001e)}.difficulty-bar__dim{position:absolute;top:0;bottom:0;background:#5d5d5d}.difficulty-bar__dim--left{left:0}.difficulty-bar__dim--right{right:0}.difficulty-bar__center{position:absolute;top:0;bottom:0;left:50%;width:2px;margin-left:-1px;background:repeating-linear-gradient(to bottom,#000 0,#000 4px,transparent 4px,transparent 7px);pointer-events:none}.difficulty-cell{position:relative;width:100%}.difficulty-cell__trigger{display:flex;align-items:center;gap:6px;width:100%;padding:4px 6px;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;cursor:pointer;font-family:monospace}.difficulty-cell__trigger:hover:not(:disabled){border-color:#7fa650}.difficulty-cell__trigger:disabled{opacity:.5;cursor:not-allowed}.difficulty-cell__inline{display:flex;align-items:center;gap:5px;width:100%}.difficulty-cell__input{flex:0 0 auto;width:44px;height:24px;padding:1px 4px 0;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;color:#e0dcd4;font-family:monospace;font-size:.72rem;font-weight:700;line-height:normal;text-align:center}.difficulty-cell__input:focus{outline:none;border-color:#7fa650}.difficulty-cell__input:disabled{opacity:.5;cursor:not-allowed}.difficulty-cell__bar-button{display:flex;flex:1;min-width:0;padding:0;border:1px solid #5a5550;border-radius:4px;background:transparent;cursor:pointer;overflow:hidden}.difficulty-cell__bar-button:hover:not(:disabled){border-color:#7fa650}.difficulty-cell__bar-button:disabled{opacity:.5;cursor:not-allowed}.difficulty-cell__level{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:0;width:100%}.difficulty-cell__level-title{color:#f0ede5;font-family:inherit;font-size:.78rem;font-weight:700}.difficulty-cell__note-popover{position:fixed;z-index:50;max-height:200px;overflow-y:auto;padding:8px 10px;border:1px solid #5a5550;border-radius:6px;background:#2b2926;color:#d8d3c8;font-size:.72rem;line-height:1.4;white-space:pre-wrap;word-break:break-word;box-shadow:0 12px 30px #00000080;pointer-events:none}.difficulty-picker{position:fixed;top:0;left:0;z-index:40;width:min(620px,calc(100vw - 24px));display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid #5a5550;border-radius:8px;background:#242220;box-shadow:0 16px 40px #00000080}.difficulty-picker__header{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#f0ede5;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.difficulty-picker__custom-link{padding:2px 6px;border:1px solid transparent;border-radius:4px;background:transparent;color:#c9ee9c;cursor:pointer;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.difficulty-picker__custom-link:hover{border-color:#6a8a45;background:#1f1d1b}.difficulty-picker__sub-header{display:flex;align-items:center;gap:8px;color:#f0ede5;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.difficulty-picker__sub-back{width:28px;height:28px;padding:0;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;color:#f0ede5;cursor:pointer;font-size:.95rem;font-weight:800;line-height:1}.difficulty-picker__sub-back:hover{border-color:#7fa650}.difficulty-picker__sub-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.difficulty-picker__sub-empty{margin:0;padding:16px 4px;color:#8b8680;font-size:.78rem;font-style:italic;text-align:center}.difficulty-picker__fen-list{display:flex;flex-direction:column;gap:4px;max-height:340px;overflow-y:auto;margin:0;padding:0;list-style:none}.difficulty-picker__fen-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:6px 8px;border:1px solid #3a3734;border-radius:4px;background:#1a1816;cursor:pointer;text-align:left}.difficulty-picker__fen-item:hover{border-color:#7fa650;background:#1f1d1b}.difficulty-picker__fen-item--active,.difficulty-picker__fen-item--active:hover{border-color:#d4a94a;background:#2a2516}.difficulty-picker__fen-item--disabled,.difficulty-picker__fen-item--disabled:hover{border-color:#2a2725;background:#161514;cursor:not-allowed;opacity:.45}.difficulty-picker__fen-name{color:#f0ede5;font-size:.78rem;font-weight:700}.difficulty-picker__fen-badge{margin-left:6px;padding:0 3px;border-radius:2px;background:#3a3734;color:#b8a46c;font-size:.6rem;font-weight:700}.difficulty-picker__sub-note{margin:0 0 6px;padding:0;color:#8b8680;font-size:.7rem;font-style:italic;text-align:center}.difficulty-picker__fen-snippet{overflow:hidden;color:#8b8680;font-size:.72rem;line-height:1.3;text-overflow:ellipsis;white-space:nowrap;width:100%}.difficulty-picker__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;max-height:340px;overflow-y:auto;margin:0;padding:0;list-style:none}.difficulty-picker__preset{display:flex;align-items:center;gap:6px;width:100%;padding:6px 8px;border:1px solid #3a3734;border-radius:4px;background:#1a1816;cursor:pointer;font-family:monospace}.difficulty-picker__preset:hover{border-color:#7fa650;background:#1f1d1b}.difficulty-picker__preset--active,.difficulty-picker__preset--active:hover{border-color:#d4a94a;background:#2a2516}.difficulty-picker__value{flex-shrink:0;min-width:38px;color:#e0dcd4;font-size:.72rem;font-weight:700}.difficulty-picker__value--min{text-align:right}.difficulty-picker__value--max{text-align:left}.difficulty-picker__footer{display:flex;align-items:flex-end;gap:8px;padding-top:8px;border-top:1px solid #3a3734}.difficulty-picker__custom-field{display:flex;flex-direction:column;gap:2px;color:#8b8680;font-size:.66rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.difficulty-picker__custom-field input{width:80px;min-height:28px;padding:4px 6px;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;color:#f0ede5;font-family:monospace;font-size:.78rem;text-align:center}.difficulty-picker__apply{min-height:30px;padding:6px 12px;border:1px solid #6a8a45;border-radius:4px;background:#2c3225;color:#c9ee9c;cursor:pointer;font-size:.74rem;font-weight:800}.difficulty-picker__apply:hover{background:#3a4a2c;color:#fff}.difficulty-picker__actions{display:flex;align-items:stretch;gap:8px;padding-top:8px;border-top:1px solid #3a3734}.difficulty-picker__action{min-height:32px;padding:6px 12px;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;color:#f0ede5;cursor:pointer;font-size:.74rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.difficulty-picker__action:hover:not(:disabled){border-color:#7fa650}.difficulty-picker__action:disabled{opacity:.4;cursor:not-allowed}.difficulty-picker__action--back{flex:0 0 auto;width:40px;padding:6px 8px;font-size:1rem;line-height:1}.difficulty-picker__action--primary{flex:1;border-color:#3b6ea5;background:#1a2a3c;color:#9fc4ee}.difficulty-picker__action--primary:hover:not(:disabled){border-color:#5a8bc0;background:#20344a;color:#cee0f5}.difficulty-picker__action--neutral{flex:1}.difficulty-picker__action--danger{flex:1;border-color:#a04030;background:#3a1f1b;color:#ff9b80}.difficulty-picker__action--danger:hover:not(:disabled){border-color:#ff9b80;background:#4a2620}.level-tables-reward-toggle{display:flex;gap:4px}.level-tables-reward-toggle__btn{flex:1;min-height:28px;padding:2px 6px;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;color:#c7c2b8;cursor:pointer;font-size:.72rem;font-weight:800}.level-tables-reward-toggle__btn:hover:not(:disabled){border-color:#d4a94a}.level-tables-reward-toggle__btn--lo.is-active{border-color:#6a8a45;background:#2c3225;color:#c9ee9c}.level-tables-reward-toggle__btn--hi.is-active{border-color:#d4a94a;background:#4a3a18;color:#ffe19a}.level-tables-reward-toggle__btn:disabled{opacity:.4;cursor:not-allowed}.level-tables-cell-picker{position:relative;width:100%}.level-tables-cell-picker__trigger{display:flex;align-items:center;gap:6px;width:100%;min-height:28px;padding:4px 8px;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;color:#e0dcd4;cursor:pointer;font-size:.78rem;font-weight:600;text-align:left}.level-tables-cell-picker__trigger:hover:not(:disabled){border-color:#7fa650;color:#fff}.level-tables-cell-picker__trigger:disabled{opacity:.4;cursor:not-allowed}.level-tables-cell-picker__flag{flex-shrink:0;width:20px;height:14px;object-fit:cover;border-radius:2px}.level-tables-cell-picker__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.level-tables-picker{position:fixed;top:0;left:0;z-index:40;width:min(280px,calc(100vw - 24px));display:flex;flex-direction:column;gap:6px;padding:10px;border:1px solid #5a5550;border-radius:6px;background:#242220;box-shadow:0 14px 36px #00000073}.level-tables-picker__header{display:flex;align-items:center;gap:8px;padding-bottom:6px;border-bottom:1px solid #3a3734;color:#f0ede5;font-size:.78rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.level-tables-picker__empty{margin:4px 0;color:#8b8680;font-size:.78rem;font-style:italic}.level-tables-picker__list{max-height:260px;overflow-y:auto;display:flex;flex-direction:column;gap:3px;margin:0;padding:0;list-style:none}.level-tables-picker__item{display:flex;align-items:center;gap:8px;width:100%;min-height:30px;padding:5px 8px;border:1px solid #3a3734;border-radius:4px;background:#1f1d1b;color:#e0dcd4;cursor:pointer;font-size:.78rem;font-weight:600;text-align:left}.level-tables-picker__item:hover{border-color:#6a8a45;background:#2c3225;color:#fff}.level-tables-picker__flag{flex-shrink:0;width:22px;height:14px;object-fit:cover;border-radius:2px}.level-tables-picker__item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.level-tables-picker__remove{min-height:28px;padding:4px 8px;border:1px solid #7e4b3c;border-radius:4px;background:#2f1b18;color:#ff9b80;cursor:pointer;font-size:.74rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.level-tables-picker__remove:hover{background:#4a221c;color:#fff}.level-tables-hidden{display:flex;flex-direction:column;gap:12px;padding:14px 12px;border:1px solid #4a4541;border-radius:8px;background:#2a2826}.level-tables-hidden__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 4px}.level-tables-hidden__title{margin:0;color:#f0ede5;font-size:.95rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.level-tables-hidden__add{min-height:32px;padding:6px 12px;border:1px solid #6a8a45;border-radius:4px;background:#2c3225;color:#c9ee9c;cursor:pointer;font-size:.76rem;font-weight:800}.level-tables-hidden__add:hover:not(:disabled){background:#3a4a2c;color:#fff}.level-tables-hidden__add:disabled{opacity:.4;cursor:not-allowed}.level-tables-hidden__empty{margin:0;padding:0 4px;color:#8b8680;font-size:.8rem;font-style:italic}.level-tables-hidden__list{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none}.level-tables-hidden__row{display:flex;flex-direction:column;gap:4px;padding:4px 0;border-top:1px solid #3a3734}.level-tables-hidden__row:first-child{border-top:0}.level-tables-hidden__cells{display:grid;grid-template-columns:56px 200px 100px 1fr 1fr auto;grid-auto-flow:dense;align-items:center;gap:8px}.level-tables-hidden__levels{grid-column:2;justify-content:flex-start}.level-tables-hidden__move-group{grid-column:3;display:flex;align-items:center;justify-content:center;gap:4px}.level-tables-hidden__country{grid-column:4}.level-tables-hidden__location{grid-column:5}.level-tables-hidden__delete{grid-column:6}.level-tables-hidden__move{width:36px;height:28px;padding:0;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;color:#c9ee9c;cursor:pointer;font-size:.7rem;font-weight:800;line-height:1}.level-tables-hidden__move:hover:not(:disabled){border-color:#c9ee9c;background:#2c3225}.level-tables-hidden__move:disabled{opacity:.35;cursor:not-allowed}.level-tables-hidden__levels{display:flex;align-items:center;gap:8px;color:#c7c2b8;font-size:.95rem;font-weight:600}.level-tables-hidden__levels-text{font-size:.9rem;color:#c7c2b8}.level-tables-hidden__levels input{width:72px;min-height:32px;padding:4px 8px;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;color:#f0ede5;font-size:.95rem;font-weight:700;text-align:center}.level-tables-hidden__delete{width:28px;height:28px;padding:0;border:1px solid #5a5550;border-radius:4px;background:#1f1d1b;color:#ff9b80;cursor:pointer;font-size:.85rem;font-weight:800}.level-tables-hidden__delete:hover:not(:disabled){border-color:#ff9b80;background:#3a1f1b}.dialog.compare-databag-dialog{width:min(94vw,980px);max-width:min(94vw,980px);max-height:86vh;display:flex;flex-direction:column;gap:12px}.compare-databag-dialog__body{flex:1;min-height:0;overflow:auto;padding-right:4px}.compare-databag-dialog__in-sync{color:#b7f07d;font-weight:700}.compare-databag-dialog__error{color:#ff9b80}.compare-databag-dialog__section{border:1px solid #3a3734;border-radius:8px;background:#2a2826;padding:10px 12px;margin-bottom:10px}.compare-databag-dialog__section-title{margin:0 0 8px;color:#d8d3ca;font-size:.82rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.compare-databag-dialog__empty{margin:0;color:#8a8579;font-size:.78rem}.compare-databag-dialog__entry{display:flex;flex-direction:column;gap:6px;padding:8px 10px;border-radius:6px;margin-bottom:8px}.compare-databag-dialog__entry--dev-only{background:#23502373}.compare-databag-dialog__entry--prod-only{background:#5a1f5a73}.compare-databag-dialog__entry--modified{background:#283c508c}.compare-databag-dialog__entry-header{display:flex;flex-wrap:wrap;align-items:center;gap:8px;cursor:pointer}.compare-databag-dialog__tag{font-size:.68rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;padding:2px 6px;border-radius:4px;background:#1f1d1b;color:#c7c2b8}.compare-databag-dialog__entry--dev-only .compare-databag-dialog__tag{color:#82e07d}.compare-databag-dialog__entry--prod-only .compare-databag-dialog__tag{color:#f0a0ff}.compare-databag-dialog__entry--modified .compare-databag-dialog__tag{color:#82c8ff}.compare-databag-dialog__entry-name{font-family:Menlo,Consolas,monospace;font-size:.82rem;color:#f0ede5}.compare-databag-dialog__changes{list-style:none;margin:0;padding:0 0 0 28px;display:flex;flex-direction:column;gap:3px}.compare-databag-dialog__changes-item{font-size:.78rem;color:#c7c2b8;font-family:Menlo,Consolas,monospace;line-height:1.4}.compare-databag-dialog__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 10px;border:1px solid #3a3734;border-radius:8px;background:#232120}.compare-databag-dialog__toolbar-btn{appearance:none;background:#2f2c2a;color:#d8d3ca;border:1px solid #3a3734;border-radius:6px;padding:4px 10px;font-size:.78rem;font-weight:700;cursor:pointer}.compare-databag-dialog__toolbar-btn:hover:not(:disabled){background:#3a3734;color:#f0ede5}.compare-databag-dialog__toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.compare-databag-dialog__toolbar-note{color:#ffd45d;font-size:.76rem;font-weight:700}.compare-databag-dialog__sync-error{color:#ff9b80;font-size:.76rem;font-weight:700;flex:1 0 100%}.compare-databag-dialog__row-checkbox{margin:0;cursor:pointer;accent-color:#82c8ff;flex:0 0 auto}.compare-databag-dialog__row-checkbox:disabled{cursor:not-allowed}.compare-databag-dialog__entry--prod-only .compare-databag-dialog__row-checkbox{accent-color:#ff8aa8}.compare-databag-dialog__entry--dev-only .compare-databag-dialog__row-checkbox{accent-color:#82e07d}.compare-databag-dialog__validation{padding:10px 12px;border:1px solid #6a2222;border-radius:8px;background:#781e1e59}.compare-databag-dialog__validation-title{margin:0 0 6px;color:#ffb3b3;font-size:.82rem;font-weight:700}.compare-databag-dialog__validation-list{list-style:disc;margin:0;padding-left:20px;display:flex;flex-direction:column;gap:4px}.compare-databag-dialog__validation-item{font-size:.78rem;color:#f0d3d3;line-height:1.4}
