:root{--accent:#93235f;--accent2:#c83b7b;--pale:#fff9d8;--line:#eab1ca;--ink:#2b2230;--bg:#fff8fc}*{box-sizing:border-box}body{margin:0;font:16px system-ui,sans-serif;color:var(--ink);background:var(--bg)}header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 4vw;background:#fff;border-bottom:3px solid var(--line)}h1{margin:0;color:var(--accent)}header p{margin:.25rem 0 0}nav,.actions,.exports,.filters,.row{display:flex;gap:.6rem;flex-wrap:wrap}button,.button,.exports a{font:inherit;border:1px solid var(--accent);border-radius:.55rem;padding:.65rem .9rem;background:#fff;color:var(--accent);cursor:pointer;text-decoration:none;text-align:center}button:hover,.button:hover{background:#fff0f7}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #1769aa;outline-offset:2px}.primary{background:var(--accent);color:#fff}.danger{color:#a31515;border-color:#a31515}button:disabled{opacity:.45;cursor:not-allowed}main{padding:1rem 4vw 3rem}.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1rem}.summary article{background:#fff;padding:1rem;border:1px solid var(--line);border-radius:.8rem}.summary strong{display:block;font-size:1.45rem}.summary span{font-size:.85rem}.workspace{display:grid;grid-template-columns:250px 1fr;gap:1.2rem}aside{display:flex;flex-direction:column;gap:.65rem;background:#fff;padding:1rem;border:1px solid var(--line);border-radius:.8rem;height:max-content;position:sticky;top:1rem}label{display:flex;flex-direction:column;gap:.3rem;font-weight:600}.check{flex-direction:row;align-items:flex-start;font-weight:400}input,select,textarea{font:inherit;padding:.55rem;border:1px solid #a47b8f;border-radius:.4rem;width:100%}.number-grid{display:grid;grid-template-columns:repeat(5,minmax(44px,72px));gap:.55rem;justify-content:center;background:var(--pale);padding:1rem;border:2px solid var(--line);border-radius:1rem}.number{min-width:52px;aspect-ratio:1;border-radius:50%;padding:0;font-size:1.15rem;font-weight:750;background:#fff}.number.selected{background:var(--accent);color:#fff}.number.common{box-shadow:inset 0 0 0 4px #1769aa}.counter{text-align:center;font-weight:700;font-size:1.15rem;margin-bottom:.6rem}.boards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.board{background:#fff;border:2px solid var(--line);border-radius:.8rem;padding:.8rem}.board.active{border-color:var(--accent);box-shadow:0 0 0 2px #f3c5d9}.board .mini{display:grid;grid-template-columns:repeat(5,1fr);gap:.25rem}.mini span{padding:.25rem;text-align:center;border-radius:.3rem}.mini .on{background:var(--accent);color:#fff}.board-actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.65rem}.board-actions button{padding:.4rem;font-size:.82rem}#message{min-height:1.4rem;text-align:center;font-weight:650}.error{color:#a31515}.success{color:#14713d}dialog{border:1px solid var(--line);border-radius:1rem;max-width:560px;width:calc(100% - 2rem);padding:1.2rem}dialog::backdrop{background:#2b102080}.wide{max-width:1050px}.check-mode{min-height:90vh}.large{max-width:650px;margin:auto}.large .number{font-size:1.5rem}.check-head{display:flex;justify-content:space-between}.history-item{padding:.8rem;border-bottom:1px solid var(--line)}.history-item .nums{font-weight:700;word-spacing:.35rem}.comparison-panels{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.comparison-panels section{padding:1rem;background:var(--pale);border-radius:.7rem}footer{text-align:center;padding:2rem;background:#fff;border-top:1px solid var(--line);font-size:.9rem}@media(max-width:850px){.summary{grid-template-columns:repeat(2,1fr)}.workspace{grid-template-columns:1fr}aside{position:static}.boards{grid-template-columns:repeat(2,1fr)}header{align-items:flex-start;flex-direction:column}}@media(max-width:520px){main{padding:1rem}.boards,.comparison-panels{grid-template-columns:1fr}.number-grid{gap:.3rem;padding:.55rem}.number{min-width:44px}.summary{gap:.5rem}nav button{flex:1}}@media print{header,aside,footer,.board-actions,#message,dialog button{display:none!important}body,main,.board{background:#fff}.workspace{display:block}.boards{grid-template-columns:repeat(3,1fr)}.board{break-inside:avoid}}
