:root{color-scheme:light;font-family:Avenir Next,Trebuchet MS,Segoe UI,sans-serif;line-height:1.5;font-weight:400;--bg-cream: #f4ebdb;--bg-paper: rgba(255, 251, 243, .82);--ink: #231912;--ink-soft: #635447;--accent: #bf5a36;--accent-strong: #8f3113;--board-light: #f3d9b1;--board-dark: #7a5238;--ring: #ffd261;--shadow: 0 28px 60px rgba(52, 28, 18, .18)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;color:var(--ink);background:radial-gradient(circle at top left,rgba(255,210,97,.45),transparent 28%),radial-gradient(circle at top right,rgba(191,90,54,.24),transparent 24%),linear-gradient(180deg,#f7eedf,#ead9c4)}button,input,select{font:inherit}button{cursor:pointer}.page-shell{width:min(1280px,calc(100vw - 2rem));margin:0 auto;padding:2rem 0 3rem}.hero-panel,.card,.board-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:var(--bg-paper);border:1px solid rgba(84,55,39,.14);border-radius:24px;box-shadow:var(--shadow)}.hero-panel{display:grid;gap:1.5rem;padding:1.6rem}.eyebrow{margin:0 0 .4rem;text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;color:var(--accent-strong)}.hero-panel h1,.board-panel h2,.card h2{margin:0;font-family:Georgia,Times New Roman,serif;letter-spacing:.02em}.lead{margin:.75rem 0 0;max-width:56ch;color:var(--ink-soft)}.status-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.status-strip div{padding:1rem;border-radius:16px;background:#ffffff8f}.label{display:block;margin-bottom:.25rem;color:var(--ink-soft);font-size:.86rem}.app-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,420px);gap:1.5rem;margin-top:1.5rem}.board-panel{padding:1.4rem}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.panel-heading p{margin:.35rem 0 0;color:var(--ink-soft)}.ghost-button,.move-form button{border:none;border-radius:999px;padding:.8rem 1.2rem;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-strong) 100%);color:#fff;box-shadow:0 18px 28px #8f311338}.ghost-button:disabled,.move-form button:disabled{opacity:.6;cursor:not-allowed}.board{display:grid;grid-template-columns:repeat(8,1fr);overflow:hidden;border-radius:22px;border:10px solid rgba(88,59,42,.22)}.square{position:relative;aspect-ratio:1;border:none;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease}.square:hover{transform:scale(.98)}.square.light{background:var(--board-light)}.square.dark{background:var(--board-dark)}.square.selected{box-shadow:inset 0 0 0 5px #ffd261e0}.square.destination:after{content:"";position:absolute;width:28%;height:28%;border-radius:999px;background:#ffd261c2}.piece{position:relative;z-index:1;font-size:clamp(2rem,4vw,3rem);line-height:1}.sidebar{display:grid;gap:1rem}.card{padding:1.2rem}.move-form{display:grid;gap:.9rem}.move-form label{display:grid;gap:.35rem;color:var(--ink-soft)}.move-form input,.move-form select{width:100%;border:1px solid rgba(99,84,71,.25);border-radius:12px;padding:.75rem .9rem;background:#ffffffb8;color:var(--ink)}.vote-panel{display:grid;gap:.9rem}.vote-summary{margin:0;color:var(--ink-soft)}.vote-list{display:grid;gap:.65rem}.vote-list-header,.vote-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem;align-items:center}.vote-list-header{color:var(--ink-soft);font-size:.84rem;text-transform:uppercase;letter-spacing:.08em}.vote-row{padding:.75rem .9rem;border-radius:14px;background:#ffffff8a}.history-grid{display:grid;gap:.75rem;max-height:240px;overflow:auto}.history-header,.history-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.history-header{color:var(--ink-soft);font-size:.84rem;text-transform:uppercase;letter-spacing:.08em}.history-cell{min-height:3rem;display:flex;align-items:center;gap:.45rem;padding:.7rem .9rem;border-radius:14px;background:#ffffff8a}.history-move-number{color:var(--ink-soft)}.muted{margin:0;color:var(--ink-soft)}.error-banner{padding:.9rem 1rem;border-radius:16px;background:#8f31131f;border:1px solid rgba(143,49,19,.2);color:var(--accent-strong)}@media(max-width:980px){.app-grid,.status-strip{grid-template-columns:1fr}}@media(max-width:620px){.page-shell{width:min(100vw - 1rem,1280px);padding-top:1rem}.hero-panel,.board-panel,.card{border-radius:18px}.board{border-width:6px}}
