
.dom352-page{max-width:1180px}.dom352-page .gameheader{align-items:end}.dom352-tagline{font-size:clamp(1.05rem,2vw,1.28rem);font-weight:850;color:var(--muted);margin:.3rem 0 0}
.dom352-tabs,.dom352-actions,.dom352-toolrow,.dom352-subtabs,.dom352-resultactions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.dom352-tabs{margin:14px 0 10px}
.dom352-tabs button,.dom352-subtabs button,.dom352-toolrow button,.dom352-sidehead button{border:1px solid var(--line);border-radius:999px;background:var(--card);padding:9px 13px;font-weight:850;color:var(--ink)}
.dom352-tabs button.active,.dom352-subtabs button.active,.dom352-toolrow button.active{outline:2px solid currentColor;outline-offset:1px}
.dom352-card{padding:14px}.dom352-hud{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}
.dom352-hud>div{border:1px solid var(--line);background:var(--soft);border-radius:13px;padding:9px 11px}.dom352-hud small{display:block;color:var(--muted);font-size:.7rem}.dom352-hud strong{display:block;margin-top:2px;font-size:1rem}
.dom352-datepill{margin-left:auto;border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:.78rem;font-weight:800;background:var(--soft)}
.dom352-playlayout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;align-items:start}.dom352-mainplay{min-width:0}.dom352-boardwrap{position:relative;overflow:auto;padding:3px 1px}
.dom352-grid{--cols:7;display:grid;grid-template-columns:repeat(var(--cols),minmax(34px,1fr));gap:4px;width:min(100%,780px);min-width:min-content;margin:8px auto;background:var(--soft);padding:7px;border-radius:18px}
.dom352-cell{position:relative;aspect-ratio:1;border:1px solid var(--line);border-radius:10px;background:var(--card);font-weight:950;font-size:clamp(.94rem,2.6vw,1.22rem);touch-action:none;user-select:none;color:var(--ink);cursor:pointer}
.dom352-cell.anchor{outline:3px solid var(--ink);outline-offset:-3px}.dom352-cell.cursor{box-shadow:inset 0 0 0 2px var(--ink)}.dom352-cell.paired{background:color-mix(in srgb,var(--soft) 58%,var(--card))}
.dom352-cell.hint{box-shadow:inset 0 0 0 3px currentColor}.dom352-cell.bad{outline:3px solid var(--danger,#b42318);outline-offset:-3px}.dom352-cell.num-highlight{box-shadow:inset 0 0 0 3px var(--ink)}
.dom352-cell .link{position:absolute;background:currentColor;opacity:.30;pointer-events:none}.dom352-cell .link.r{right:-6px;top:24%;width:8px;height:52%}.dom352-cell .link.d{bottom:-6px;left:24%;height:8px;width:52%}
.dom352-cell .xmark{position:absolute;font-size:.76rem;font-weight:950;opacity:.82;pointer-events:none}.dom352-cell .xmark.r{right:-8px;top:35%}.dom352-cell .xmark.d{bottom:-10px;left:42%}
.dom352-pausecover{position:absolute;inset:3px 1px;z-index:8;border-radius:18px;background:var(--card);border:1px solid var(--line);display:grid;place-content:center;text-align:center;gap:5px}.dom352-pausecover[hidden]{display:none}.dom352-pausecover strong{font-size:1.4rem}.dom352-pausecover span{color:var(--muted)}
.dom352-livestate{min-height:38px;display:flex;align-items:center;justify-content:center;text-align:center;border:1px solid var(--line);background:var(--soft);border-radius:12px;padding:8px 10px;font-size:.84rem;font-weight:800;margin:8px auto;max-width:820px}
.dom352-livestate.bad{border-width:2px}.dom352-toolrow{justify-content:center;margin-top:8px}.dom352-actions{justify-content:center;margin-top:10px}.dom352-actions .btn{min-width:98px}.dom352-actions.dom352-left{justify-content:flex-start}
.dom352-status{min-height:48px;padding:10px 12px;border-radius:12px;background:var(--soft);margin:10px auto 0;max-width:860px;line-height:1.45}
.dom352-side{display:grid;gap:10px;align-content:start;position:sticky;top:12px}.dom352-sidecard{border:1px solid var(--line);border-radius:14px;background:var(--card);padding:11px}.dom352-sidecard h2{font-size:.94rem;margin:0}
.dom352-sidehead{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:7px}.dom352-sidehead span{font-size:.75rem;color:var(--muted);font-weight:800}.dom352-sidehead button{padding:5px 8px;font-size:.72rem}
.dom352-ledger{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.dom352-chip{border:1px solid var(--line);border-radius:9px;padding:6px 4px;font-size:.72rem;background:var(--soft);font-weight:800;text-align:center;cursor:pointer}
.dom352-chip small{display:block;font-size:.58rem;color:var(--muted);font-weight:700}.dom352-chip.done{opacity:.62}.dom352-chip.conflict{outline:2px solid var(--danger,#b42318);outline-offset:-2px}.dom352-chip.zero{border-style:dashed}
.dom352-numberfind{display:flex;gap:6px;flex-wrap:wrap}.dom352-numberfind button{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:var(--soft);font-weight:900;color:var(--ink)}.dom352-numberfind button.active{outline:2px solid var(--ink)}
.dom352-result{display:none;margin:12px auto 0;max-width:860px;border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--card)}.dom352-result.show{display:block}.dom352-resulthead{display:flex;justify-content:space-between;align-items:center;gap:10px}.dom352-resulthead h2{margin:.15rem 0 .4rem}.dom352-resultgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.dom352-resultgrid>div{background:var(--soft);border-radius:10px;padding:9px}.dom352-resultgrid small{display:block;color:var(--muted);font-size:.7rem}.dom352-resultactions{margin-top:10px}
.dom352-more{margin-top:14px}.dom352-more>summary{cursor:pointer;font-weight:850}.dom352-moregrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.dom352-panel{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--card)}.dom352-panel h3{margin:.1rem 0 .5rem}
.dom352-settings{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dom352-settings label{display:grid;gap:4px;font-size:.78rem;font-weight:800}.dom352-settings select,.dom352-settings input{min-height:40px;width:100%}
.dom352-campaign{display:flex;gap:6px;flex-wrap:wrap;max-height:170px;overflow:auto}.dom352-campaign button{width:40px;height:40px;border:1px solid var(--line);border-radius:9px;background:var(--card);font-weight:850;color:var(--ink)}.dom352-campaign button.current{outline:2px solid var(--ink)}.dom352-campaign button.done{background:var(--soft)}
.dom352-proof{font-size:.83rem;color:var(--muted);line-height:1.5}.dom352-history{overflow:auto;max-height:210px}.dom352-history table{width:100%;border-collapse:collapse;font-size:.78rem}.dom352-history th,.dom352-history td{padding:6px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}
.dom352-guide{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}.dom352-guide>div{border:1px solid var(--line);border-radius:14px;padding:13px;background:var(--card)}.dom352-guide h2{font-size:1rem;margin:0 0 5px}.dom352-guide p{margin:0;color:var(--muted);line-height:1.5}
.dom352-focusmode .topbar,.dom352-focusmode .preview-note,.dom352-focusmode .gameheader,.dom352-focusmode .dom352-tabs,.dom352-focusmode .dom352-more,.dom352-focusmode .dom352-guide,.dom352-focusmode .mobile-dock,.dom352-focusmode .footer{display:none!important}.dom352-focusmode .dom352-page{max-width:1100px;padding-top:8px}
.dom352-paused .dom352-grid{filter:blur(7px)}.dom-guide{margin-top:18px}.dom-guide>div{display:none}
body.dom352-print-puzzle .topbar,body.dom352-print-puzzle .mobile-dock,body.dom352-print-puzzle .preview-note,body.dom352-print-puzzle .footer,body.dom352-print-puzzle .dom352-tabs,body.dom352-print-puzzle .dom352-hud,body.dom352-print-puzzle .dom352-toolrow,body.dom352-print-puzzle .dom352-actions,body.dom352-print-puzzle .dom352-side,body.dom352-print-puzzle .dom352-more,body.dom352-print-puzzle .dom352-guide,body.dom352-print-puzzle #dom352Status,
body.dom352-print-answer .topbar,body.dom352-print-answer .mobile-dock,body.dom352-print-answer .preview-note,body.dom352-print-answer .footer,body.dom352-print-answer .dom352-tabs,body.dom352-print-answer .dom352-hud,body.dom352-print-answer .dom352-toolrow,body.dom352-print-answer .dom352-actions,body.dom352-print-answer .dom352-side,body.dom352-print-answer .dom352-more,body.dom352-print-answer .dom352-guide,body.dom352-print-answer #dom352Status{display:none!important}
body.dom352-print-puzzle .dom352-cell .link,body.dom352-print-puzzle .dom352-cell .xmark{display:none!important}
@media(max-width:920px){.dom352-playlayout{grid-template-columns:1fr}.dom352-side{position:static;grid-template-columns:1fr 1fr}.dom352-ledger{grid-template-columns:repeat(7,minmax(0,1fr))}.dom352-guide{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.dom352-page{padding-bottom:28px;overflow-x:hidden}.dom352-hud{grid-template-columns:repeat(2,1fr)}.dom352-grid{gap:3px;padding:5px}.dom352-moregrid,.dom352-guide,.dom352-side{grid-template-columns:1fr}.dom352-actions .btn{flex:1 1 42%;min-width:0}.dom352-cell{border-radius:8px}.mobile-dock{display:none!important}.dom352-ledger{grid-template-columns:repeat(5,minmax(0,1fr))}.dom352-datepill{margin-left:0}}
@media(max-width:420px){.dom352-card{padding:10px}.dom352-tabs button,.dom352-subtabs button,.dom352-toolrow button{padding:8px 10px;font-size:.82rem}.dom352-settings{grid-template-columns:1fr}.dom352-resultgrid{grid-template-columns:repeat(2,1fr)}.dom352-ledger{grid-template-columns:repeat(4,minmax(0,1fr))}.dom352-sidecard{padding:9px}}
