/* Website copy of the extension shell stylesheet.  This must live inside the
   deploy folder; Netlify cannot serve ../window.css from the extension root. */
* { box-sizing: border-box; margin: 0; padding: 0; }
body, html { background:#050805; font-family:'VT323','Courier New',monospace; height:100vh; overflow:hidden; color:#35ffa0; }
.crt-case { width:100%; height:100vh; background:#1c1c1c; padding:4px; border-radius:12px; box-shadow:inset 0 0 10px #000,0 0 20px rgba(0,255,0,.05); display:flex; align-items:center; justify-content:center; }
.crt-screen { position:relative; width:100%; height:100%; background:#0b0e0b; padding:8px; border-radius:6px; border:1px solid #262626; box-shadow:inset 0 0 50px rgba(0,0,0,.95),0 0 15px rgba(43,255,0,.1); display:flex; flex-direction:column; overflow:hidden; }
.hidden { display:none !important; }.scanlines { position:absolute; inset:0; pointer-events:none; z-index:10; background:repeating-linear-gradient(0deg,rgba(0,0,0,.15) 0 1px,transparent 1px 2px); }.vignette { position:absolute; top:-10%;left:-10%;width:120%;height:120%;pointer-events:none;z-index:11;background:radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.6) 100%); }
.pip-title { display:block;text-align:center;font-size:20px;letter-spacing:2px;margin-bottom:4px;text-shadow:0 0 8px rgba(53,255,160,.6); }.terminal-header { flex-shrink:0;border-bottom:1px solid #35ffa0;padding-bottom:8px; }.terminal-workspace { display:flex;flex:1;gap:12px;padding-top:12px;min-height:0; }.pane { display:flex;flex-direction:column;border:1px solid #2c5938;padding:8px;background:rgba(0,0,0,.4); }.draft-pane { flex:3; }.team-pane { flex:1;min-width:200px; }.pane-header { font-size:16px;border-bottom:1px dashed #2c5938;padding-bottom:4px;margin-bottom:6px; }
.scroll-pane { flex:1;overflow-y:auto;padding-right:4px; }.scroll-pane::-webkit-scrollbar { width:8px; }.scroll-pane::-webkit-scrollbar-track { background:#000;border:1px solid #2c5938; }.scroll-pane::-webkit-scrollbar-thumb { background:#35ffa0;border:1px solid #000; }
.term-btn { background:#0b0e0b;color:#35ffa0;border:1px solid #35ffa0;padding:4px 8px;font-family:'VT323',monospace;font-size:16px;cursor:pointer;text-shadow:0 0 4px rgba(53,255,160,.3); }.term-btn:active,.term-btn.active { background:#35ffa0;color:#000; } input[type="search"] { background:#000;border:1px solid #35ffa0;color:#35ffa0;padding:4px 8px;font-family:'VT323',monospace;font-size:16px;width:140px;text-shadow:0 0 4px rgba(53,255,160,.3); } input[type="search"]::placeholder { color:#2c5938; }.controls { display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px; }.btn-group { display:flex;flex-wrap:wrap;gap:2px; }.status-led { font-size:16px;margin-left:auto;color:#7fb099; }.status-led.error { color:#ff5555; }
.col-headers,.player-row { display:grid;grid-template-columns:50px 50px 1fr 45px 80px 80px 60px 50px;gap:6px; }.col-headers { padding:6px 0;font-size:14px;border-bottom:1px solid #2c5938;color:#7fb099; }.player-row { padding:4px 0;font-size:17px;cursor:pointer;border-bottom:1px solid #162b1b; }.player-row:hover { background:rgba(53,255,160,.05);text-shadow:0 0 6px #35ffa0; }.player-row.drafted { opacity:.4;text-decoration:line-through; }.rank-num { font-weight:bold;font-size:19px; }.pos-badge { border:1px solid #2c5938;padding:0 4px;font-size:14px;text-align:center; }.empty-state { padding:12px 0;color:#7fb099; }.tier-header { background:#121e15;padding:2px 6px;border:1px solid #2c5938;margin-top:6px;color:#7fb099; }
.team-stats { display:flex;justify-content:space-between;font-size:14px;color:#7fb099;border-bottom:1px dashed #2c5938;padding-bottom:6px;margin-bottom:6px; }.sidebar-actions { margin-bottom:8px; }.roster-list { border:1px solid #2c5938;padding:8px 6px;min-height:100px; }.roster-slot { font-size:16px;padding:6px 4px;border-bottom:1px dotted #162b1b;display:flex;align-items:center;gap:6px;transition:text-shadow .2s,border-color .2s; }.roster-slot.empty { color:#2c5938; }.roster-slot.filled { background:#121e15;padding:6px 8px;margin-bottom:2px;border-left:3px solid transparent; }.roster-slot.filled .slot-label { font-weight:bold;margin-right:6px;color:#7fb099; }.roster-slot.filled .slot-name { text-shadow:0 0 8px currentColor; }
.flex-label { font-size:14px;color:#7fb099;margin-top:6px; }.modal-overlay { position:fixed;inset:0;background:rgba(0,0,0,.8);display:flex;justify-content:center;align-items:center;z-index:999; }.modal-overlay.hidden { display:none; }.modal-box { width:500px;max-height:80vh;padding:10px;border-radius:20px;background:#111; }.modal-body { display:flex;flex-direction:column;gap:16px;padding:10px 0; }.modal-row { border-bottom:1px solid #2c5938;padding-bottom:10px; }.row-label { font-size:18px;margin-bottom:4px; }.hint { font-size:14px;color:#7fb099; }.status-line { font-size:14px;margin:4px 0; }.status-bar { display:flex;justify-content:space-between;flex-shrink:0;font-size:12px;color:#7fb099;border-top:1px solid #35ffa0;margin-top:8px;padding-top:4px; }.close-btn { position:absolute;top:10px;right:10px; }
.player-row .draft-btn { font-size:11px;padding:0 3px;line-height:1.2;height:18px;min-width:40px;text-align:center;border-color:#2c5938;color:#35ffa0;background:transparent;cursor:pointer;border-radius:2px;margin-right:4px; }.player-row .draft-btn:hover { background:rgba(53,255,160,.25)!important;border-color:#35ffa0!important;color:#fff!important;box-shadow:0 0 12px rgba(53,255,160,.4)!important; }.player-row > div:nth-child(2),.player-row > div:nth-child(3) { display:flex;align-items:center; }.player-row > div:nth-child(2) { justify-content:center; }
.draft-grid { display:grid;gap:6px;padding:4px 2px; }.draft-cell { position:relative;background:rgba(0,0,0,.7);border:1px solid #2c5938;padding:4px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:55px;font-size:12px;line-height:1.2;border-radius:4px; }.draft-cell:hover { background:rgba(53,255,160,.1); }.draft-pick-absolute { position:absolute;top:2px;right:5px;font-size:14px;color:#4a7c59;font-weight:bold; }.draft-pick-num { color:#7fb099;font-size:10px;letter-spacing:.5px;margin-top:6px; }.draft-player-name { font-size:13px;text-align:center;word-break:break-word;max-width:100%;text-shadow:0 0 8px currentColor,0 0 16px currentColor;padding:0 2px;margin-top:2px;font-weight:bold; }.flex-bars { display:flex;gap:4px;height:12px;margin:4px 0; }.flex-bar-slot { flex:1;height:100%;background:#0b0e0b;border:1px solid #2c5938;border-radius:2px; }.flex-bar-slot.filled { background:#35ffa0;border-color:#35ffa0;box-shadow:0 0 8px rgba(53,255,160,.4); }.clock-display { font-size:16px;color:#35ffa0;margin:0 8px;letter-spacing:1px;text-shadow:0 0 6px rgba(53,255,160,.4);min-width:120px;display:inline-block; }
body.light-mode { background:#f0ebe0;color:#2d4a2d; } body.light-mode .crt-case { background:#e8e0d0;box-shadow:inset 0 0 10px #c0b8a8; } body.light-mode .crt-screen { background:#f8f4ec;border-color:#c8c0b0;box-shadow:inset 0 0 50px rgba(0,0,0,.03); } body.light-mode .pip-title,body.light-mode .pane-header,body.light-mode .rank-num,body.light-mode .clock-display { color:#2d4a2d;text-shadow:none; } body.light-mode .terminal-header,body.light-mode .col-headers,body.light-mode .status-bar { border-color:#c8c0b0; } body.light-mode .pane { border-color:#c8c0b0;background:rgba(255,252,245,.7); } body.light-mode .col-headers,body.light-mode .status-led,body.light-mode .team-stats { color:#4d6a4d; } body.light-mode .player-row { border-color:#e0d8cc; } body.light-mode .term-btn { background:#f8f4ec;color:#2d4a2d;border-color:#c8c0b0;text-shadow:none; } body.light-mode .term-btn.active { background:#2d4a2d;color:#f8f4ec; } body.light-mode input[type="search"] { background:#f8f4ec;border-color:#c8c0b0;color:#2d4a2d; } body.light-mode .scanlines,body.light-mode .vignette { display:none; } body.light-mode .roster-list { border-color:#c8c0b0; } body.light-mode .roster-slot.filled { background:#f0ece0; } body.light-mode .tier-header { background:#ede8dc;border-color:#c8c0b0;color:#2d4a2d; } body.light-mode .draft-cell { background:rgba(255,252,245,.85);border-color:#c8c0b0; } body.light-mode .draft-player-name { text-shadow:none;color:#2d4a2d; } body.light-mode .flex-bar-slot { background:#e0d8cc;border-color:#c8c0b0; } body.light-mode .flex-bar-slot.filled { background:#2d4a2d;border-color:#2d4a2d;box-shadow:none; }

/* Keep every pick cell uniform. Long names are compacted in app.js and clipped
   inside a two-line fixed area instead of stretching their entire draft row. */
.draft-grid { grid-auto-rows:60px; }
.draft-cell { height:60px; min-height:60px; max-height:60px; overflow:hidden; }
.draft-player-name { font-size:11px; line-height:1; max-height:24px; overflow:hidden; text-shadow:0 0 4px currentColor; }
