/* V0.190 Sudoku Deep Authority — additive solver/coach layer */
.v190-coach{margin-top:14px;border:1px solid var(--line);border-radius:16px;padding:14px;background:var(--soft)}
.v190-coach-head,.v190-solver-head,.v190-solver-actions,.v190-solver-meta,.v190-history-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.v190-coach-head{justify-content:space-between;align-items:flex-start}.v190-coach-head h2,.v190-solver-head h2{font-size:1.05rem;margin:.1rem 0 .35rem}.v190-coach-head p,.v190-solver-head p{margin:0;color:var(--muted);line-height:1.5;max-width:780px}
.v190-coach-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.v190-coach-actions button{min-height:44px}
.v190-candidate-summary{margin-top:9px;display:flex;gap:8px;flex-wrap:wrap}.v190-candidate-summary span{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:6px 9px;font-size:.82rem}
.v190-source{box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--accent) 50%,transparent)!important}.v190-target{box-shadow:inset 0 0 0 3px color-mix(in srgb,#d97706 65%,transparent)!important}
.v190-solver{margin-top:18px}.v190-solver-head{justify-content:space-between;align-items:flex-start}.v190-solver-head .pill{white-space:nowrap}
.v190-import{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:14px;margin-top:14px}.v190-import textarea{width:100%;min-height:116px;resize:vertical;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);padding:12px;font:700 .9rem/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em}.v190-import-side{display:grid;gap:8px;align-content:start}.v190-import-side button,.v190-import-side select{width:100%;min-height:42px}
.v190-solver-meta{margin:12px 0}.v190-solver-meta>span{border:1px solid var(--line);border-radius:12px;background:var(--card);padding:8px 10px;min-width:106px}.v190-solver-meta small,.v190-solver-meta strong{display:block}.v190-solver-meta small{color:var(--muted);font-size:.72rem}.v190-solver-meta strong{margin-top:2px}
.v190-solver-work{display:grid;grid-template-columns:minmax(0,520px) minmax(260px,1fr);gap:18px;align-items:start}.v190-grid{width:min(100%,520px);aspect-ratio:1;display:grid;grid-template-columns:repeat(9,1fr);border:3px solid var(--ink);background:var(--ink)}
.v190-cell{position:relative;min-width:0;border:0;background:var(--card);color:var(--ink);display:grid;place-items:center;font:800 clamp(.95rem,3vw,1.45rem)/1 system-ui}.v190-cell:nth-child(9n+4),.v190-cell:nth-child(9n+7){border-left:2px solid var(--ink)}.v190-cell:nth-child(n+28):nth-child(-n+36),.v190-cell:nth-child(n+55):nth-child(-n+63){border-top:2px solid var(--ink)}
.v190-cell.given{background:var(--soft);font-weight:900}.v190-cell.source{background:color-mix(in srgb,var(--accent) 16%,var(--card));outline:2px solid var(--accent);outline-offset:-2px}.v190-cell.target{background:color-mix(in srgb,#f59e0b 18%,var(--card));outline:2px solid #d97706;outline-offset:-2px}.v190-notes{width:100%;height:100%;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:3px}.v190-notes i{display:grid;place-items:center;font:650 clamp(.42rem,1.25vw,.64rem)/1 system-ui;color:var(--muted);font-style:normal}
.v190-proof{border:1px solid var(--line);border-radius:15px;background:var(--card);padding:14px}.v190-proof h3{margin:0 0 6px;font-size:1rem}.v190-proof p{margin:.25rem 0;color:var(--muted);line-height:1.5}.v190-proof strong{color:var(--ink)}.v190-solver-actions{margin-top:12px}.v190-trace{margin-top:12px;max-height:250px;overflow:auto;border-top:1px solid var(--line)}.v190-trace button{display:grid;grid-template-columns:44px 1fr auto;gap:8px;width:100%;text-align:left;padding:8px 4px;background:none;border:0;border-bottom:1px solid var(--line);color:var(--ink);cursor:pointer}.v190-trace button.active{font-weight:850}.v190-trace small{color:var(--muted)}
.v190-tools{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.v190-tools .card{padding:14px}.v190-tools h3{margin:.1rem 0 .4rem;font-size:1rem}.v190-tools p{color:var(--muted);line-height:1.45}.v190-pack-row{display:flex;gap:8px;flex-wrap:wrap}.v190-pack-row select{min-height:42px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);padding:0 10px}.v190-history{display:grid;gap:7px;margin-top:8px}.v190-history button{display:grid;grid-template-columns:1fr auto;gap:4px 10px;text-align:left;border:1px solid var(--line);background:var(--card);border-radius:10px;padding:9px;color:var(--ink)}.v190-history small{grid-column:1/-1;color:var(--muted)}
.v190-print-deck{display:none}.v190-print-page{break-after:page;padding:18mm}.v190-print-grid{width:150mm;height:150mm;display:grid;grid-template-columns:repeat(9,1fr);border:2px solid #000}.v190-print-grid span{display:grid;place-items:center;border:.4px solid #999;font:700 14pt serif}.v190-print-grid span:nth-child(9n+4),.v190-print-grid span:nth-child(9n+7){border-left:1.7px solid #000}.v190-print-grid span:nth-child(n+28):nth-child(-n+36),.v190-print-grid span:nth-child(n+55):nth-child(-n+63){border-top:1.7px solid #000}
body.v190-high-contrast .v190-cell{background:#fff;color:#000}body.v190-high-contrast .v190-cell.given{background:#e5e7eb}body.v190-large-candidates .v190-notes i{font-size:clamp(.52rem,1.55vw,.76rem);font-weight:800}
@media(max-width:760px){.v190-import,.v190-solver-work,.v190-tools{grid-template-columns:1fr}.v190-solver-head{display:block}.v190-grid{width:100%}.v190-proof{padding:12px}.v190-coach{padding:12px}.v190-trace{max-height:210px}.v190-cell{font-size:clamp(.9rem,5vw,1.25rem)}.v190-notes i{font-size:clamp(.39rem,2.45vw,.58rem)}}
@media print{body.v190-pack-printing>*:not(.v190-print-deck){display:none!important}body.v190-pack-printing .v190-print-deck{display:block!important}.v190-print-page:last-child{break-after:auto}}

.v190-reveal{display:flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:800;color:var(--muted)}.v190-reveal select{min-height:38px;border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:.35rem .5rem;color:var(--text);font:inherit}.v190-solver-actions{flex-wrap:wrap}
@media(max-width:560px){.v190-reveal{order:4;width:100%;justify-content:center}.v190-reveal select{flex:1;max-width:180px}}
