/* TJK-Chess v16.0.8 — Play polish, tactics geometry, centered Analyze menu, broadcast follows. */

/* Online play must remain an in-page two-column workspace. Neutralize the legacy modal rules. */
[data-view="play"] .play-layout.v268-online-layout:has(.v268-game-setup){
  min-height:0!important;place-items:stretch!important;background:transparent!important;
  grid-template-columns:minmax(420px,.95fr) minmax(500px,1.05fr)!important;
}
[data-view="play"] .play-layout.v268-online-layout:has(.v268-game-setup) .v276-online-lobby-card{
  position:static!important;inset:auto!important;z-index:auto!important;pointer-events:auto!important;
  border:1px solid var(--v1607-line)!important;border-radius:10px!important;background:#fff!important;
  backdrop-filter:none!important;box-shadow:none!important;
}
[data-view="play"] .play-layout.v268-online-layout:has(.v268-game-setup) .v268-game-setup{
  position:static!important;inset:auto!important;left:auto!important;top:auto!important;transform:none!important;
  width:auto!important;max-height:none!important;overflow:visible!important;margin:0!important;
  padding:18px!important;border-radius:10px!important;box-shadow:none!important;
}
[data-view="play"] .v268-game-setup .live-setup-close{display:none!important}
.standalone-view[data-view="play"].is-modal-active{position:relative!important;inset:auto!important;z-index:auto!important;background:transparent!important;pointer-events:auto!important;overflow:visible!important}
.standalone-view[data-view="play"].is-modal-active .play-workspace{position:relative!important;width:min(calc(100% - 40px),1500px)!important;height:auto!important;margin:0 auto!important;padding:28px 0 60px!important;overflow:visible!important;pointer-events:auto!important}
.standalone-view[data-view="play"].is-modal-active .play-heading{display:block!important}

/* Computer setup: remove the oversized decorative/preview board and keep the useful controls. */
[data-view="play"] .v274-bot-preview{display:none!important}
[data-view="play"] .v274-bot-detail-grid{display:block!important}
[data-view="play"] .v274-bot-controls{width:100%!important;min-width:0!important}
[data-view="play"] .bot-selected-profile{margin-bottom:8px!important}

/* Position play: controls should look like one compact game-setup component. */
.v266-position-actions{
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding:12px!important;
  border:1px solid var(--v1607-line)!important;border-radius:10px!important;background:#fff!important;
}
.v266-position-actions>button{min-height:42px!important;border-radius:8px!important;border:1px solid #cfdbea!important;font:inherit!important;font-weight:800!important;cursor:pointer!important}
.v266-position-actions>button.primary{background:#176ee8!important;color:#fff!important;border-color:#176ee8!important}
.v266-position-actions>button.dark{background:#11213e!important;color:#fff!important;border-color:#11213e!important}
.v266-position-actions .v266-color-row{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
.v266-position-actions .v266-color-row button{min-height:40px!important;border:1px solid #d5e0ed!important;border-radius:8px!important;background:#f7f9fc!important;color:#18304f!important;font-weight:800!important}
.v266-position-actions .v266-color-row button.is-active{background:#eaf2ff!important;border-color:#7da9ea!important;color:#075dcc!important}
.v266-position-actions>label{grid-column:1/-1!important;display:grid!important;grid-template-columns:auto minmax(160px,1fr)!important;align-items:center!important;gap:10px!important;font-weight:800!important;color:#53677f!important}
.v266-position-actions select{height:40px!important;border:1px solid #cfdbea!important;border-radius:8px!important;background:#fff!important;padding:0 10px!important;color:#18304f!important;font:inherit!important}
.v266-board-nav{display:flex!important;gap:6px!important;padding-top:7px!important}
.v266-board-nav button{width:38px!important;height:34px!important;border:1px solid #cfdbea!important;border-radius:7px!important;background:#fff!important;color:#17314f!important;font-size:15px!important;line-height:1!important;cursor:pointer!important}
.v266-board-note{padding-top:6px!important;color:#62748e!important;font-size:12px!important}

/* Position-play engine: denser rows and user-resizable line area. */
.v266-engine .analysis-pv-list{max-height:var(--v1608-engine-lines-height,170px)!important;overflow:auto!important;padding:0 8px 5px!important}
.v266-engine .v275-engine-line{grid-template-columns:58px minmax(0,1fr) 34px!important;min-height:32px!important;padding:4px 7px!important;gap:6px!important;font-size:13px!important}
.v266-engine .v275-engine-line b{font-size:14px!important}.v266-engine .v275-engine-line small{font-size:11px!important}
.v1608-engine-resizer{height:9px;cursor:ns-resize;background:linear-gradient(180deg,transparent 3px,#dbe5f0 3px,#dbe5f0 5px,transparent 5px);touch-action:none}
.v1608-engine-resizer:hover,.v1608-engine-resizer.is-dragging{background:linear-gradient(180deg,transparent 3px,#79a9ef 3px,#79a9ef 5px,transparent 5px)}

/* Compact master database for opening-position practice. */
.v1608-opening-db{border:1px solid var(--v1607-line);border-radius:10px;background:#fff;overflow:hidden}
.v1608-opening-db>header{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 13px;border-bottom:1px solid #e3eaf2}
.v1608-opening-db>header div{display:grid}.v1608-opening-db>header span{font-size:10px;font-weight:900;letter-spacing:.08em;color:#176ee8}.v1608-opening-db>header strong{font-size:16px;color:#0a1938}
.v1608-opening-db>header button{border:1px solid #d5e0ed;border-radius:7px;background:#fff;padding:6px 9px;cursor:pointer}
.v1608-opening-db-summary{padding:7px 12px;color:#62748e;font-size:12px;border-bottom:1px solid #edf2f7}
.v1608-opening-db-rows{max-height:220px;overflow:auto}.v1608-opening-db-row{display:grid;grid-template-columns:58px 1fr auto;gap:8px;align-items:center;width:100%;padding:7px 12px;border:0;border-bottom:1px solid #edf2f7;background:#fff;text-align:left;cursor:pointer;color:#18304f}.v1608-opening-db-row:hover{background:#f1f6ff}.v1608-opening-db-row strong{font-size:14px}.v1608-opening-db-row span{font-size:11px;color:#62748e}.v1608-opening-db-row b{font-size:11px;color:#315072}
.v1608-opening-db-empty{padding:12px;color:#71839b;font-size:12px}

/* Analyze dropdown: genuinely centered under the Analyze button. */
@media(min-width:1081px){
 .site-nav-item:has(> [data-open-analysis])>.site-nav-dropdown{left:50%!important;right:auto!important;transform:translate(-50%,7px)!important}
 .site-nav-item:has(> [data-open-analysis]):hover>.site-nav-dropdown,.site-nav-item:has(> [data-open-analysis]):focus-within>.site-nav-dropdown{transform:translate(-50%,0)!important}
}

/* Tactics: one exact 2px frame, not outer-card + board + synthetic-edge stacking. */
.puzzle-board-card{border:0!important;box-shadow:none!important;background:transparent!important;overflow:visible!important}
.puzzle-board-wrap{padding-right:0!important;background:transparent!important}
.puzzle-board{border:2px solid #243047!important;border-right:2px solid #243047!important}
.puzzle-board-edge-right{display:none!important}
.puzzle-board-footer{border:1px solid #d6dee9!important;border-top:0!important;background:#fff!important}
.puzzle-goal{margin:8px 18px 0!important;padding:0!important;color:#26384f!important;font-size:13px!important;line-height:1.35!important}

/* Broadcast saved/follow controls and notification bell. */
.broadcast-event-wrap{position:relative;min-width:0}.broadcast-event-wrap>.broadcast-event-card{width:100%;height:100%}.broadcast-event-save{position:absolute;right:10px;top:10px;z-index:3;width:34px;height:34px;border:1px solid #d7e1ed;border-radius:8px;background:#fff;color:#697d99;font-size:20px;cursor:pointer}.broadcast-event-save.is-saved{color:#e2a400;background:#fff9dd;border-color:#efd879}
.broadcast-player-follow-search{display:flex;align-items:center;gap:8px;margin:7px 0 0}.broadcast-player-follow-search button{border:1px solid #cfdbea;border-radius:7px;background:#fff;padding:6px 10px;font-weight:800;cursor:pointer}.broadcast-player-follow-search button.is-followed{background:#edf4ff;color:#075dcc;border-color:#8cb3ef}
.site-notifications{position:relative}.site-notification-popover{position:absolute;right:0;top:calc(100% + 8px);z-index:3000;width:min(390px,90vw);max-height:460px;overflow:auto;padding:8px;border:1px solid #d7e1ed;border-radius:12px;background:#fff;box-shadow:0 18px 45px rgba(15,31,56,.20)}.site-notification-popover[hidden]{display:none}.site-notification-head{display:flex;align-items:center;justify-content:space-between;padding:6px 7px 9px}.site-notification-head button{border:0;background:transparent;color:#176ee8;cursor:pointer}.site-notification-item{display:block;width:100%;padding:10px;border:0;border-radius:8px;background:#fff;text-align:left;cursor:pointer}.site-notification-item:hover{background:#f1f6ff}.site-notification-item.is-unread{background:#eef5ff}.site-notification-item strong{display:block;color:#0b1e3d}.site-notification-item span{display:block;margin-top:3px;color:#62748e;font-size:12px}.site-notification-empty{padding:20px;text-align:center;color:#71839b}.site-notification-badge{position:absolute;right:1px;top:1px;min-width:16px;height:16px;padding:0 4px;border-radius:9px;background:#d92d20;color:#fff;font-size:10px;font-weight:900;display:grid;place-items:center}.site-notification-badge[hidden]{display:none}

@media(max-width:1120px){[data-view="play"] .play-layout.v268-online-layout:has(.v268-game-setup){grid-template-columns:1fr!important}}
