:root{--brand: #166534;--brand-ink: #ffffff;--bg: #f6f4ef;--card: #ffffff;--text: #1f2421;--mute: #5b635e;--line: #e3e0d8;--radius: 18px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}:focus-visible{outline:3px solid var(--brand);outline-offset:2px;border-radius:6px}.cp{max-width:760px;margin:0 auto;padding:14px 14px 40px}.cp-loading,.cp-msg{text-align:center;padding:80px 20px;color:var(--mute)}.cp-msg h1{color:var(--text);font-size:26px;margin:0 0 8px}.cp-head{display:flex;align-items:center;gap:12px;padding:6px 2px 12px}.cp-logo{width:46px;height:46px;border-radius:12px;object-fit:contain;background:#fff;border:1px solid var(--line);flex:none}.cp-logo-txt{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--brand);color:var(--brand-ink);font-weight:900;font-size:20px;flex:none}.cp-brand{font-weight:800;font-size:17px;line-height:1.2}.cp-brand small{display:block;color:var(--mute);font-weight:600;font-size:13px}.cp-demo{margin-left:auto;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;background:#fde68a;color:#713f12;padding:4px 8px;border-radius:999px;white-space:nowrap}.cp-prize{display:flex;gap:10px;align-items:center;background:var(--brand);color:var(--brand-ink);border-radius:var(--radius);padding:12px 16px;font-weight:700}.cp-prize svg{width:22px;height:22px;flex:none}.cp-title{font-size:clamp(22px,5vw,30px);font-weight:900;letter-spacing:-.02em;margin:16px 2px 2px;line-height:1.15}.cp-sub{color:var(--mute);margin:0 2px 12px}.cp-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0}.cp-timer{font-variant-numeric:tabular-nums;font-weight:900;font-size:22px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:4px 14px}.cp-progress{color:var(--mute);font-weight:700;font-size:14px}.cp-table{height:clamp(420px,68vh,640px);border-radius:var(--radius);background:linear-gradient(180deg,#e9e4d8,#ddd6c6);border:1px solid var(--line);box-shadow:inset 0 2px 10px #00000014}.cp-table .jz-board{background:#ffffff8c;box-shadow:inset 0 0 0 2px #fffc,0 4px 14px #0000001f}.cp-table .jz-piece{filter:drop-shadow(0 3px 3px rgba(0,0,0,.28))}.cp-table .jz-piece.jz-placed{filter:none}.cp-tools{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px}.cp-hint{text-align:center;color:var(--mute);font-size:13px;margin-top:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 22px;border-radius:14px;border:2px solid transparent;font:inherit;font-weight:800;font-size:16px;cursor:pointer;text-decoration:none;transition:filter .15s,transform .1s}.btn:active{transform:scale(.98)}.btn-brand{background:var(--brand);color:var(--brand-ink)}.btn-brand:hover{filter:brightness(1.08)}.btn-ghost{background:var(--card);color:var(--text);border-color:var(--line)}.btn-block{width:100%}.chip{min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--text);font:inherit;font-weight:700;font-size:14px;cursor:pointer}.chip[aria-pressed=true]{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.chip:disabled{opacity:.5}.cp-done{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:22px;margin-top:14px;box-shadow:0 10px 30px #00000014}.cp-done h2{margin:0 0 4px;font-size:26px;font-weight:900}.cp-done .cp-time{color:var(--brand)}.cp-form{display:grid;gap:12px;margin-top:14px}.cp-field{display:grid;gap:4px}.cp-field label{font-weight:700;font-size:14px}.cp-field input{min-height:50px;border-radius:12px;border:1px solid var(--line);padding:0 14px;font:inherit;font-size:16px;background:#fff;color:var(--text)}.cp-field input[aria-invalid=true]{border-color:#b91c1c}.cp-err{color:#b91c1c;font-size:13px;min-height:0}.cp-consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--mute)}.cp-consent input{width:22px;height:22px;margin-top:1px;accent-color:var(--brand);flex:none}.cp-legal{font-size:12px;color:var(--mute)}.cp-legal a{color:inherit}.cp-skip{background:none;border:0;color:var(--mute);text-decoration:underline;font:inherit;font-size:14px;cursor:pointer;padding:8px}.cp-board{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:6px}.cp-board li{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;border-radius:12px;background:var(--bg);font-weight:600}.cp-board li.me{background:var(--brand);color:var(--brand-ink);font-weight:800}.cp-board .t{font-variant-numeric:tabular-nums}.cp-thanks{margin:12px 0 0;font-weight:700}.cp-actions{display:grid;gap:10px;margin-top:16px}.cp-foot{text-align:center;color:var(--mute);font-size:13px;margin-top:28px}.cp-foot a{color:inherit}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}@media(prefers-reduced-motion:reduce){.btn{transition:none}}
