.cs-app{--cs-ink: #2b2118;--cs-paper: #fbf5e9;--cs-line: #ddcdb0;--cs-green: #1f4a3c;--cs-brass: #a8791f;--cs-found: #f0b429;max-width:560px;margin:0 auto;color:var(--cs-ink);font-size:1rem;line-height:1.55}.cs-screen{background:var(--cs-paper);border:2px solid var(--cs-line);border-radius:16px;padding:16px}.cs-h{margin:0;font-size:1.35rem;line-height:1.2;color:var(--cs-green)}.cs-h3{margin:18px 0 6px;font-size:1.05rem;color:var(--cs-green)}.cs-brief{margin:6px 0 10px}.cs-opener{margin:0 0 4px;font-style:italic;opacity:.85}.cs-task{margin:12px 0;padding:10px 12px;border-left:4px solid var(--cs-brass);background:#a8791f17;border-radius:0 8px 8px 0;font-weight:700}.cs-say{margin:10px 0 0;min-height:1.4em;font-weight:600;color:#8a4b1c}.cs-btn{display:inline-block;min-height:44px;padding:10px 20px;border:0;border-radius:999px;background:var(--cs-green);color:#fdf9f1;font-size:1rem;font-weight:700;line-height:1.4;text-align:center;text-decoration:none;cursor:pointer}.cs-btn:hover{background:#17372c}.cs-ghost{background:transparent;color:var(--cs-green);box-shadow:inset 0 0 0 2px var(--cs-line)}.cs-ghost:hover{background:#1f4a3c14}.cs-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.cs-actions .cs-btn{flex:1 1 220px}.cs-board{position:relative;container-type:inline-size;width:calc(100% + 32px);margin:0 -16px;overflow:hidden;background:#cfd8c6;border-block:2px solid var(--cs-line);touch-action:manipulation;-webkit-user-select:none;user-select:none;cursor:crosshair}.cs-plate{display:block;width:100%;height:auto}.cs-prop{position:absolute;pointer-events:none;filter:drop-shadow(0 calc(var(--cs-w) * .03cqw) calc(var(--cs-w) * .05cqw) rgba(43,33,24,.42));transition:filter .18s ease,opacity .18s ease}.cs-prop.is-found{filter:drop-shadow(0 calc(var(--cs-w) * .03cqw) calc(var(--cs-w) * .05cqw) rgba(43,33,24,.42)) drop-shadow(0 0 2px var(--cs-found)) drop-shadow(0 0 6px var(--cs-found)) drop-shadow(0 0 12px rgba(240,180,41,.7))}.cs-prop.is-dim{opacity:.6;filter:grayscale(.45) drop-shadow(0 calc(var(--cs-w) * .03cqw) calc(var(--cs-w) * .05cqw) rgba(43,33,24,.3))}.cs-hot{position:absolute;transform:translate(-50%,-50%);aspect-ratio:1;min-width:44px;min-height:44px;padding:0;border:0;border-radius:0;background:transparent;cursor:pointer;z-index:60}.cs-hot:focus-visible{outline:3px solid var(--cs-found);outline-offset:2px}.cs-hot.is-found{background:radial-gradient(circle,#f0b42952 40%,#f0b42900 70%)}.cs-hot.is-dim{cursor:default}.cs-ring{position:absolute;transform:translate(-50%,-50%);pointer-events:none;border-radius:50%;z-index:50;animation:cs-ring-in .32s ease-out}.cs-ring[hidden]{display:none}.cs-ring.is-wide{aspect-ratio:1;border:3px dashed rgba(240,180,41,.95);box-shadow:0 0 0 2px #2b211840}.cs-ring.is-exact{border:3px solid var(--cs-found);border-radius:12px;box-shadow:0 0 0 2px #2b21184d,0 0 14px #f0b429cc}@keyframes cs-ring-in{0%{opacity:0}to{opacity:1}}.cs-pulse{position:absolute;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,#fbf5e98c,#fbf5e900 70%);animation:cs-pulse .46s ease-out forwards;z-index:55}@keyframes cs-pulse{0%{transform:scale(.35);opacity:.95}to{transform:scale(1.5);opacity:0}}.cs-board.is-dimmed{filter:brightness(.62) saturate(.7)}.cs-said{margin:10px 0 0;padding:8px 10px;border-radius:10px;background:#2b21180d;font-size:.95rem}.cs-said:empty{display:none}.cs-said b{color:var(--cs-brass)}.cs-said.is-evidence{background:#1f4a3c1a;color:var(--cs-green)}.cs-said.is-evidence b{color:var(--cs-green)}.cs-said.is-fresh{animation:cs-fresh .9s ease-out}.cs-ready{margin-top:12px}.cs-ready[hidden]{display:none}.cs-ready .cs-deduce{width:100%}.cs-strip{display:grid;gap:6px;margin:0;padding:0;list-style:none}.cs-slot{display:flex;gap:10px;align-items:center;min-height:44px;padding:6px 10px;border:2px dashed var(--cs-line);border-radius:10px;background:#fff;font-size:.95rem}.cs-slot-n{flex:none;width:26px;height:26px;border-radius:50%;background:#1f4a3c1a;color:var(--cs-green);font-size:.85rem;font-weight:800;line-height:26px;text-align:center}.cs-slot-label{opacity:.6}.cs-slot.is-filled{border-style:solid;border-color:var(--cs-green);background:#1f4a3c12}.cs-slot.is-filled .cs-slot-n{background:var(--cs-green);color:var(--cs-paper)}.cs-slot.is-filled .cs-slot-label{opacity:1;font-weight:700}.cs-look{display:flex;flex-direction:column;gap:8px;margin-top:12px}.cs-closer[hidden]{display:none}.cs-closer.is-fresh{animation:cs-offer 1.2s ease-out}@keyframes cs-offer{0%{box-shadow:inset 0 0 0 2px var(--cs-found),0 0 #f0b42999}60%{box-shadow:inset 0 0 0 2px var(--cs-found),0 0 0 10px #f0b42900}to{box-shadow:inset 0 0 0 2px var(--cs-line)}}.cs-hint-said{margin:0;padding:10px 12px;border-radius:10px;background:#a8791f1f;box-shadow:inset 0 0 0 1px #a8791f59}.cs-hint-said b{color:var(--cs-brass)}.cs-hint-left{margin:0;font-size:.85rem;color:var(--cs-ink);opacity:.7}.cs-hint-left:empty{display:none}.cs-notes{margin:0;padding-left:1.3rem}.cs-note{margin-bottom:8px}.cs-note.is-evidence{color:var(--cs-green);font-weight:600}.cs-note.is-fresh{animation:cs-fresh .9s ease-out}@keyframes cs-fresh{0%{background:#f0b42973}to{background:transparent}}.cs-notes-empty{margin:0;opacity:.7}.cs-notes-empty[hidden]{display:none}.cs-deduct,.cs-end{margin-top:16px;padding:14px;border:2px solid var(--cs-green);border-radius:12px;background:#1f4a3c0f}.cs-deduct[hidden],.cs-end[hidden]{display:none}.cs-deduct .cs-h3,.cs-end .cs-h3{margin-top:0}.cs-question{margin:0 0 12px;font-weight:700}.cs-options{display:flex;flex-direction:column;gap:8px}.cs-option{min-height:44px;padding:12px 14px;border:2px solid var(--cs-line);border-radius:10px;background:#fff;color:inherit;font-size:.95rem;line-height:1.4;text-align:left;cursor:pointer}.cs-option:hover{border-color:var(--cs-green)}.cs-option.is-out{opacity:.5}.cs-option.is-out:after{content:" Ruled out.";font-weight:700;color:#8a4b1c}.cs-verdict{margin:0 0 10px;font-size:1.1rem;font-weight:800;color:var(--cs-green)}.cs-writeup{margin:0}.cs-ad:empty,.cs-ad-end:empty{display:none}.cs-ad{margin-bottom:12px}.cs-ad-end{margin-top:14px}.cs-app,.cs-screen{max-width:100%;box-sizing:border-box}.cs-board{box-sizing:border-box}
