.solo-main{max-width:1160px;margin:auto;padding:68px 38px 90px}.solo-main h1{font-size:clamp(2.6rem,6vw,5.6rem);line-height:1.04;max-width:960px;margin:20px 0 26px}.solo-main h1 em{color:var(--clay,#a34b32);font-weight:400}.solo-lead{font-size:1.35rem;max-width:780px}.solo-main p,.solo-main li{line-height:1.85}.solo-main h2{margin-top:42px}.solo-actions{display:flex;gap:14px;flex-wrap:wrap;margin:26px 0 16px}.solo-small{max-width:780px;font-size:.9rem;color:#59695e}.solo-manifesto{background:#e9edde;border-left:4px solid #254e43;padding:10px 28px 28px;margin:36px 0 55px}.solo-filters{display:flex;gap:20px;margin:24px 0}.solo-filters label{display:grid;gap:8px;min-width:220px}.solo-filters select{padding:12px;border:1px solid #c4cbbf;background:#fffef9;border-radius:4px;color:#254e43;font:inherit}.solo-family{margin-bottom:44px}.solo-family h3{font-family:Georgia,serif;font-size:1.8rem;border-bottom:1px solid #d2d8cc;padding-bottom:12px}.solo-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.solo-card{position:relative;display:block;padding:24px 50px 24px 24px;border:1px solid #ccd3c6;background:#fffef9;text-decoration:none;border-radius:5px;color:#254e43;transition:border-color .2s,transform .2s}.solo-card:hover{border-color:#254e43;transform:translateY(-2px)}.solo-card>span:first-child{font-size:.77rem}.solo-card h4{font:1.5rem Georgia,serif;margin:13px 0 18px}.solo-level{display:inline-block;font:600 .7rem system-ui;letter-spacing:.1em;background:#e6eddd;color:#254e43;border:1px solid #bdc9ac;padding:6px 9px;border-radius:3px}.solo-level.extreme{background:#f6e7dd;color:#8b3e28;border-color:#d9b7a2}.solo-card-arrow{position:absolute;right:22px;bottom:26px;font-size:1.5rem}.solo-topline{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:40px;font-size:.85rem}.solo-print{font:inherit;padding:9px 12px;background:transparent;border:1px solid #c3cbbd;border-radius:4px;color:#254e43;cursor:pointer}.solo-problem{max-width:960px}.solo-problem h1{font-size:clamp(2.4rem,5vw,4rem)}.solo-problem section{margin-top:30px}.solo-problem li{margin-bottom:14px}.solo-grid-scroll{overflow-x:auto;margin:26px 0 12px;padding:6px 0;max-width:100%}.solo-grid{border-collapse:collapse;table-layout:fixed;margin:auto;font-family:system-ui,sans-serif;min-width:390px;max-width:100%}.solo-grid caption{caption-side:bottom;font: .8rem/1.6 system-ui;text-align:left;padding:14px 0;color:#566359}.solo-grid th{font-size:.72rem;font-weight:500;color:#4c6155;padding:5px;min-width:26px}.solo-grid td{position:relative;text-align:center;vertical-align:middle;border:1px solid #c3cdbd;min-width:35px;width:42px;height:42px;padding:5px;font-size:1.05rem;background:#fffef9}.solo-grid .blocked{background:#254e43;color:#fffef9}.solo-grid .diagonal{background:#e8eddc}.solo-grid .caged{padding-top:12px}.solo-grid .cage-top{box-shadow:inset 0 2px 0 #a34b32}.solo-grid .cage-total{position:absolute;top:1px;left:3px;font-size:.6rem;color:#8e402b;line-height:1}.solo-grid .cage-left{border-left-style:dashed;border-left-color:#a34b32}.solo-grid .cage-right{border-right-style:dashed;border-right-color:#a34b32}.solo-grid .cage-bottom{border-bottom-style:dashed;border-bottom-color:#a34b32}.solo-grid .cage-top{border-top-style:dashed;border-top-color:#a34b32}.solo-clue{display:block;white-space:pre-line;font-size:.7rem;max-width:100px}.diagram-key{font-size:.8rem;color:#59695e}.solo-rating,.solo-validation,.solo-certificate{border:1px solid #ccd3c6;background:#f3f4e9;padding:18px;margin:26px 0}.solo-main summary{cursor:pointer;line-height:1.6}.solo-work{border-top:1px solid #ccd3c6;padding-top:15px}.solo-work label{display:block;margin:16px 0 8px}.solo-work textarea{display:block;box-sizing:border-box;width:100%;font:1rem/1.8 system-ui;resize:vertical;padding:18px;border:1px solid #bdc9b7;border-radius:5px;background:repeating-linear-gradient(#fffef9,#fffef9 28px,#ebeee3 29px);color:#254e43}.notes-status{min-height:24px;font-size:.8rem;color:#59695e}.solo-reasoning{padding-left:28px}.solo-reasoning li{padding-left:8px;margin-bottom:22px}.solo-main pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.8rem;line-height:1.6}.proof-branch{margin:12px 0 12px 10px;border-left:2px solid #b5c2a7;padding-left:12px}.proof-steps{font-size:.86rem}.proof-result{font-size:.87rem;font-weight:600}.solo-offline-page{border-top:2px solid #254e43;margin-top:60px;padding-top:36px}.solo-main [hidden]{display:none!important}.solo-banner{margin:0 auto 45px;max-width:1160px;box-sizing:border-box;background:#e8eddf;padding:32px 38px;display:flex;gap:28px;justify-content:space-between;align-items:center}.solo-banner h2{margin:8px 0;font-size:2rem}.solo-banner p{margin:8px 0}.solo-banner .button{white-space:nowrap}@media(max-width:640px){.solo-main{padding:38px 20px 60px}.solo-cards{grid-template-columns:1fr}.solo-filters{display:grid;gap:16px}.solo-filters label{min-width:0}.solo-grid{min-width:370px}.solo-grid td{min-width:31px;width:35px;height:38px;padding:3px;font-size:.95rem}.solo-banner{margin:0 18px 30px;padding:24px;display:block}.solo-banner .button{margin-top:15px}.solo-main h1{overflow-wrap:anywhere}.solo-topline{align-items:flex-start}.solo-card h4{font-size:1.35rem}}@media print{@page{size:A4 portrait;margin:17mm}.site-header,.site-footer,.solo-topline,.solo-filters,.solo-actions,.solo-solution-link,.solo-rating,.notes-status,.solo-main>p>a[href="/defis/"],#toast{display:none!important}.solo-main{max-width:none;padding:0;margin:0;color:#000}.solo-main h1{font-size:28pt}.solo-main h2{font-size:18pt}.solo-main p,.solo-main li{font-size:11pt;line-height:1.5}.solo-main details{display:block}.solo-grid-scroll{overflow:visible}.solo-grid{min-width:0;width:auto;max-width:100%;break-inside:avoid}.solo-grid td{width:9mm;height:9mm;font-size:14pt;print-color-adjust:exact}.solo-grid th{font-size:8pt}.solo-work textarea{height:50mm;min-height:50mm;print-color-adjust:exact}.solo-offline-page{break-before:page;border:0;padding-top:0;margin-top:0}.solo-main a{color:#000}.solo-main a:after{content:none!important}.solo-level{print-color-adjust:exact}.solo-validation,.solo-certificate{background:white;border-color:#aaa}.solo-main section{break-inside:auto}.solo-main h2,.solo-main h3{break-after:avoid}}

/* Les cages sont tracées en retrait des régions pour ne pas se confondre. */
.solo-grid .caged:before{content:"";position:absolute;inset:4px;pointer-events:none;border:0 dashed #a34b32}.solo-grid td.cage-top,.solo-grid td.cage-left,.solo-grid td.cage-right,.solo-grid td.cage-bottom{border-style:solid;border-color:#c3cdbd;box-shadow:none}.solo-grid .cage-top:before{border-top-width:1px}.solo-grid .cage-left:before{border-left-width:1px}.solo-grid .cage-right:before{border-right-width:1px}.solo-grid .cage-bottom:before{border-bottom-width:1px}.solo-grid .cage-total{z-index:1;background:#fffef9;top:3px;left:5px;padding:0 1px}.solo-grid td.disc-N span,.solo-grid td.disc-B span{display:inline-flex;align-items:center;justify-content:center;border:1px solid #254e43;border-radius:50%;width:26px;height:26px;font-size:.8rem}.solo-grid td.disc-N span{background:#254e43;color:#fffef9}.solo-grid td.disc-B span{background:#fffef9;color:#254e43}

.solo-piece-list{display:flex;flex-wrap:wrap;gap:20px;align-items:center}.solo-piece-list figure{margin:0;background:#fffef9;padding:12px;min-width:85px}.solo-piece-list figcaption{font:600 .8rem system-ui;margin-bottom:10px}.solo-piece-list svg{max-width:150px;display:block}.solo-grid td:has(.cage-total){padding-top:15px}

.nonogram-grid .solo-clue{display:grid;gap:3px;margin-top:8px;max-width:none}.nonogram-grid thead th{vertical-align:bottom}.solo-row-clue{display:block;white-space:nowrap;font-size:.74rem;margin-top:4px}.nonogram-grid tbody th{min-width:100px;text-align:right;padding-right:10px}.nonogram-grid td{min-width:32px;width:35px;height:35px}.nonogram-grid th:first-child{min-width:100px}@media print{.nonogram-grid td{min-width:0;width:7mm;height:7mm;padding:0;font-size:11pt}.nonogram-grid th:first-child{min-width:20mm}.nonogram-grid .solo-clue{font-size:7pt;gap:1px}.solo-row-clue{font-size:7pt}}

.nonogram-grid{table-layout:auto;width:max-content;max-width:none}.nonogram-grid th:first-child{min-width:120px;width:120px}.nonogram-grid .solo-row-number{display:inline-block;width:22px;text-align:left;color:#254e43;font-weight:700}.nonogram-grid .solo-row-clue{display:inline;white-space:nowrap;margin:0}.nonogram-grid tbody th{text-align:left}.nonogram-grid td{height:35px;padding:2px;min-width:35px;max-width:35px}.nonogram-grid thead th:not(:first-child){width:35px;min-width:35px}@media print{.nonogram-grid th:first-child{min-width:25mm;width:25mm}.nonogram-grid td,.nonogram-grid thead th:not(:first-child){width:7mm;min-width:7mm;max-width:7mm;height:7mm}.nonogram-grid .solo-row-number{width:5mm}}

.nonogram-grid .solo-col-number{display:block;font-weight:700;border-bottom:1px solid #bdc9b7;padding-bottom:6px;margin-bottom:6px;color:#254e43}.nonogram-grid .solo-row-number{width:28px}.nonogram-grid th:first-child{width:128px;min-width:128px}@media print{.nonogram-grid .solo-row-number{width:6mm}.nonogram-grid th:first-child{width:27mm;min-width:27mm}}

.solo-grid.square-grid{width:max-content;max-width:none;table-layout:fixed}.square-grid td{width:44px;min-width:44px;max-width:44px;height:44px}.square-grid th{width:44px;min-width:44px}.square-grid th:first-child{width:28px;min-width:28px}@media print{.square-grid td{width:9mm;min-width:9mm;max-width:9mm;height:9mm}.square-grid th{width:9mm;min-width:9mm}.square-grid th:first-child{width:7mm;min-width:7mm}}

.solo-grid.square-grid{min-width:0}
