:root{--color-surface: #1c1c1e;--color-surface-raised: #2c2c2e;--color-surface-high: #3a3a3c;--color-edge: #38383a;--color-ink: #f5f5f7;--color-ink-muted: #a1a1a6;--color-ink-dim: #8e8e93;--color-gold: #d4a76a;--color-green: #30d158;--color-red: #ff453a;--color-blue: #64d2ff;--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", system-ui, sans-serif;--font-mono: "SF Mono", "Fira Code", Menlo, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--color-surface);color:var(--color-ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh;font-size:14px}#root{min-height:100dvh}button{font:inherit;cursor:pointer}input,textarea{font:inherit}.app{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding:16px;max-width:1400px;margin:0 auto;min-height:100dvh}@media(min-width:960px){.app{grid-template-columns:minmax(0,1fr) 420px;gap:24px;padding:24px}}.app-header{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid var(--color-edge)}.app-header .brand{font-size:18px;font-weight:600;color:var(--color-gold);letter-spacing:-.01em;text-decoration:none}.app-header .brand .dim{color:var(--color-ink-muted)}.board-column{display:flex;flex-direction:column;gap:12px;min-width:0}.board-wrap{width:100%;max-width:720px;margin:0 auto;aspect-ratio:1 / 1}.board-controls{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.board-controls button{background:var(--color-surface-raised);border:1px solid var(--color-edge);color:var(--color-ink);padding:8px 12px;border-radius:8px;font-size:13px;transition:border-color .15s}.board-controls button:hover{border-color:var(--color-ink-dim)}.board-controls button:disabled{opacity:.5;cursor:not-allowed}.board-controls .primary{background:var(--color-gold);color:#1a1a1a;font-weight:600;border-color:transparent}.board-controls .primary:hover{filter:brightness(1.1);border-color:transparent}.position-input{display:flex;gap:8px}.position-input input{flex:1;background:var(--color-surface-high);border:1px solid var(--color-edge);color:var(--color-ink);padding:8px 12px;border-radius:8px;font-family:var(--font-mono);font-size:12px;min-width:0}.position-input input:focus{outline:none;border-color:var(--color-gold)}.analysis-panel{display:flex;flex-direction:column;gap:12px;min-width:0}.engine-card{background:#2c2c2e66;border:1px solid var(--color-edge);border-radius:14px;padding:16px}.engine-status{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.engine-status .name{font-size:13px;font-weight:600}.engine-status .actions{display:flex;gap:6px}.engine-status button{background:var(--color-surface-high);border:1px solid var(--color-edge);color:var(--color-ink-muted);padding:4px 10px;border-radius:6px;font-size:11px}.engine-status button:hover{color:var(--color-ink)}.engine-status .running{color:var(--color-gold)}.eval-row{display:flex;gap:16px;align-items:baseline;margin-bottom:10px}.eval-value{font-family:var(--font-mono);font-size:28px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.eval-value.positive,.eval-value.negative{color:var(--color-ink)}.eval-value.zero{color:var(--color-ink-muted)}.eval-value.mate{color:var(--color-gold)}.engine-stats{font-family:var(--font-mono);font-size:11px;color:var(--color-ink-dim);display:flex;gap:12px;flex-wrap:wrap}.eval-bar{height:6px;background:var(--color-surface-high);border-radius:3px;overflow:hidden;position:relative;margin-top:8px}.eval-bar-fill{position:absolute;top:0;bottom:0;background:var(--color-ink-muted);transition:width .15s ease,left .15s ease}.pv-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.pv-item{display:flex;gap:10px;font-size:13px;align-items:baseline;padding:6px 0;border-top:1px solid var(--color-edge)}.pv-item:first-child{border-top:0}.pv-eval{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:600;flex-shrink:0;min-width:56px;font-size:13px}.pv-moves{font-family:var(--font-mono);font-size:12px;color:var(--color-ink-muted);line-height:1.6;word-break:break-word}.pv-moves .first-move{color:var(--color-ink);font-weight:600}.options{display:flex;gap:12px;align-items:center;font-size:12px;color:var(--color-ink-muted)}.options label{display:inline-flex;align-items:center;gap:6px}.options select{background:var(--color-surface-high);border:1px solid var(--color-edge);color:var(--color-ink);padding:4px 8px;border-radius:6px;font-size:12px}.unsupported{background:#ff9f0a1a;border:1px solid rgba(255,159,10,.3);color:var(--color-gold);border-radius:10px;padding:12px 14px;font-size:13px;line-height:1.5}
