/* V0.324 Nonogram page-only deep-authority layer */
.nonogram-page{max-width:1040px}.nonogram-size-tabs{gap:6px}.nonogram-size-tabs a{min-width:94px;text-align:center}.nonogram-panel{position:relative;max-width:980px;display:flex;flex-direction:column}.nonogram-toolbar{order:1}.nonogram-quickbar{order:2}.nonogram-board-scroll{order:3}.nonogram-status-row{order:4}.nonogram-options{order:5}.nonogram-extra-options{order:6}.nonogram-assumption{order:7}.nonogram-meta{order:8}.nonogram-mobile-tip{order:9}.nonogram-quickbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;margin:8px 0 10px}.nonogram-quickbar>div{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.nonogram-quickbar button,.nonogram-quickbar select{min-height:38px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--text);padding:7px 10px;font:inherit;font-size:11px;font-weight:800}.nonogram-quickbar label{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:800}.nonogram-quickbar small{color:var(--muted);font-weight:800}.nonogram-assumption{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--soft);margin:8px 0 10px}.nonogram-assumption strong{font-size:11px}.nonogram-assumption span{font-size:10px;color:var(--muted);margin-right:auto}.nonogram-assumption button{min-height:34px;border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--text);padding:6px 9px;font:inherit;font-size:10px;font-weight:850}.nonogram-assumption button:disabled{opacity:.45}.nonogram-extra-options{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:8px 0 10px;font-size:10px}.nonogram-extra-options label{display:flex;gap:6px;align-items:center;font-weight:750}.nonogram-extra-options input{width:16px;height:16px}.nonogram-meta{grid-template-columns:repeat(6,minmax(0,1fr))}.nonogram-board-scroll{position:relative;max-height:min(68vh,720px);border:1px solid var(--line);border-radius:14px;padding:8px;scrollbar-gutter:stable;background:var(--soft)}.nonogram-shell{--cell:30px;--clue-band:72px;grid-template-columns:var(--clue-band) max-content;grid-template-rows:var(--clue-band) max-content;margin:0 auto;position:relative}.nonogram-corner{position:sticky;left:0;top:0;z-index:8;background:var(--card)}.nonogram-col-clues{height:var(--clue-band);position:sticky;top:0;z-index:7;background:var(--card)}.nonogram-row-clues{width:var(--clue-band);position:sticky;left:0;z-index:6;background:var(--card)}.nonogram-clue{transition:background .12s,color .12s,opacity .12s}.nonogram-clue.focus-clue{background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--accent)}.nonogram-cell.line-focus:not(.filled){background:#f4f7fb}.nonogram-cell.filled.line-focus{filter:brightness(1.12)}.nonogram-cell.crossed.line-focus{background:#f4f7fb}.nonogram-cell{position:relative}.nonogram-cell:hover{outline:1px solid var(--accent);outline-offset:-1px}.nonogram-status-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:10px}.nonogram-status-row .status{flex:1;margin:0}.nonogram-keyhelp{font-size:9px;line-height:1.45;color:var(--muted);text-align:right;max-width:260px}.nonogram-board-scroll:fullscreen{background:var(--bg);padding:18px}.nonogram-panel:fullscreen{overflow:auto;background:var(--bg);padding:18px}.nonogram-panel:fullscreen .nonogram-board-scroll{max-height:none;height:calc(100vh - 210px)}
@media(max-width:760px){.nonogram-board-scroll{order:2}.nonogram-status-row{order:3}.nonogram-quickbar{order:4}.nonogram-options{order:5}.nonogram-extra-options{order:6}.nonogram-assumption{order:7}.nonogram-meta{order:8}.nonogram-mobile-tip{order:9}.nonogram-flow-tabs{margin:10px 0 6px}.nonogram-size-tabs{margin:6px 0 8px}.nonogram-size-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.nonogram-size-tabs a{min-width:0;padding:8px 2px;font-size:9px}.nonogram-toolbar{gap:7px}.nonogram-quickbar{display:grid;grid-template-columns:1fr 1fr;gap:6px}.nonogram-quickbar>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.nonogram-quickbar>div:first-child{grid-column:1/-1}.nonogram-quickbar button,.nonogram-quickbar select{width:100%;padding:6px 4px;font-size:9px}.nonogram-extra-options{display:grid;grid-template-columns:1fr 1fr;gap:7px 10px}.nonogram-assumption{padding:7px 8px}.nonogram-meta{grid-template-columns:repeat(3,1fr);margin:7px 0 9px}.nonogram-meta span{padding:6px 4px}.nonogram-meta strong{font-size:12px}.nonogram-board-scroll{max-height:57vh;padding:5px}.nonogram-status-row{display:block}.nonogram-keyhelp{display:none}.nonogram-mobile-tip{margin-top:6px}.nonogram-stats{margin-top:10px}}
@media(max-width:520px){.gameheader{margin-bottom:4px}.gameheader p{font-size:.9rem;line-height:1.4}.nonogram-flow-tabs{grid-template-columns:1fr 1fr 1fr}.nonogram-flow-tabs a{font-size:9px;padding:8px 3px}.nonogram-size-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}.nonogram-tools{grid-template-columns:repeat(3,1fr)}.nonogram-actions{grid-template-columns:repeat(4,1fr)}.nonogram-tools button,.nonogram-actions button{min-height:36px;font-size:10px}.nonogram-options{margin:6px 0;font-size:10px}.nonogram-assumption span{width:100%;order:3;margin-top:2px}.nonogram-board-scroll{max-height:53vh}.nonogram-clue{font-size:7px}.col-clue{gap:1px}.row-clue{gap:2px}.nonogram-cell{font-size:calc(var(--cell)*.72)}}
@media print{.preview-note,.topbar,.nonogram-flow-tabs,.nonogram-day-nav,.nonogram-size-tabs,.nonogram-stats,.nonogram-toolbar,.nonogram-quickbar,.nonogram-assumption,.nonogram-extra-options,.nonogram-meta,.nonogram-status-row,.nonogram-mobile-tip,.nonogram-guide,.mobile-dock{display:none!important}.nonogram-panel{border:0!important;box-shadow:none!important}.nonogram-board-scroll{max-height:none!important;overflow:visible!important;border:0!important;background:#fff!important}.nonogram-shell{margin:0 auto!important}.nonogram-cell{print-color-adjust:exact;-webkit-print-color-adjust:exact}.nonogram-cell.filled{background:#000!important}.nonogram-row-clues,.nonogram-col-clues,.nonogram-corner{position:static!important;background:#fff!important}}
@media(forced-colors:active){.nonogram-clue.focus-clue{outline:1px solid Highlight}.nonogram-cell.line-focus{outline:1px dashed Highlight}}

.nonogram-body .mobile-dock{display:none!important}


/* V0.408 monster-traffic expansion: player-first library/resume layer */
.nonogram-return{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;margin:8px 0 10px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(135deg,var(--soft),var(--card))}.nonogram-return[hidden]{display:none}.nonogram-return-copy{min-width:0}.nonogram-return-copy small{display:block;font-size:8px;font-weight:900;letter-spacing:.08em;color:var(--muted)}.nonogram-return-copy strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.nonogram-return button{min-height:38px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--text);padding:7px 11px;font:inherit;font-size:10px;font-weight:850;cursor:pointer}.nonogram-return button.primary{background:var(--accent);border-color:var(--accent);color:#fff}
.nonogram-board-wrap{position:relative;order:3}.nonogram-board-wrap .nonogram-board-scroll{order:unset}.nonogram-pause-cover{position:absolute;inset:0;z-index:30;display:grid;place-items:center;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(8px);border-radius:14px}.nonogram-pause-cover[hidden]{display:none}.nonogram-pause-card{text-align:center;padding:22px;max-width:320px}.nonogram-pause-card small{font-size:9px;font-weight:900;letter-spacing:.1em;color:var(--muted)}.nonogram-pause-card h2{margin:5px 0 4px}.nonogram-pause-card p{margin:0 0 12px;color:var(--muted);font-size:11px}.nonogram-pause-card button{min-height:42px}
.nonogram-compact-actions{display:flex;gap:6px;align-items:center}.nonogram-library-count{font-variant-numeric:tabular-nums}.nonogram-more{order:7;border:1px solid var(--line);border-radius:12px;background:var(--soft);margin:8px 0}.nonogram-more>summary{cursor:pointer;padding:9px 11px;font-size:10px;font-weight:900;list-style:none}.nonogram-more>summary::-webkit-details-marker{display:none}.nonogram-more>summary:after{content:'+';float:right}.nonogram-more[open]>summary:after{content:'−'}.nonogram-more-inner{padding:0 10px 10px}.nonogram-more .nonogram-extra-options,.nonogram-more .nonogram-assumption{margin-bottom:0}
.nonogram-collection-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 14px}.nonogram-collection-strip button,.nonogram-collection-strip>div{border:1px solid var(--line);border-radius:13px;background:var(--card);padding:10px;text-align:left;color:var(--text);font:inherit}.nonogram-collection-strip button{cursor:pointer}.nonogram-collection-strip small{display:block;font-size:8px;font-weight:900;letter-spacing:.06em;color:var(--muted);text-transform:uppercase}.nonogram-collection-strip strong{display:block;font-size:15px;margin-top:2px}.nonogram-collection-strip span{display:block;font-size:9px;color:var(--muted);margin-top:1px}
.ng408-dialog{width:min(900px,calc(100vw - 24px));max-height:min(86vh,820px);border:1px solid var(--line);border-radius:18px;background:var(--bg);color:var(--text);padding:0;box-shadow:0 24px 70px rgba(0,0,0,.22)}.ng408-dialog::backdrop{background:rgba(15,23,42,.48);backdrop-filter:blur(3px)}.ng408-dialog-shell{padding:16px}.ng408-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.ng408-dialog-head small{display:block;font-size:8px;font-weight:900;letter-spacing:.1em;color:var(--muted)}.ng408-dialog-head h2{margin:2px 0 0;font-size:20px}.ng408-close{width:38px;height:38px;border:1px solid var(--line);border-radius:11px;background:var(--card);color:var(--text);font:inherit;font-size:22px;cursor:pointer}.ng408-library-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:7px;margin-bottom:10px}.ng408-library-controls label{display:grid;gap:3px}.ng408-library-controls small{font-size:8px;font-weight:900;color:var(--muted);text-transform:uppercase}.ng408-library-controls select,.ng408-library-controls input,.ng408-library-controls button{min-height:39px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--text);padding:7px 9px;font:inherit;font-size:10px;font-weight:800}.ng408-library-meta{display:flex;justify-content:space-between;gap:8px;align-items:center;margin:6px 0 10px;color:var(--muted);font-size:10px}.ng408-library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.ng408-card{border:1px solid var(--line);border-radius:13px;background:var(--card);padding:9px;text-align:left;color:var(--text);cursor:pointer;min-width:0}.ng408-card:hover{border-color:var(--accent)}.ng408-card-top{display:flex;justify-content:space-between;gap:5px;align-items:center}.ng408-card small{font-size:8px;color:var(--muted);font-weight:850}.ng408-card strong{display:block;margin:6px 0 3px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ng408-card span{font-size:8px;color:var(--muted)}.ng408-state{border-radius:999px;padding:3px 6px;background:var(--soft);white-space:nowrap}.ng408-card.unfinished .ng408-state{background:color-mix(in srgb,var(--accent) 16%,var(--card));color:var(--accent)}.ng408-card.solved .ng408-state{background:#e8f7ed;color:#24613b}.ng408-mini{display:grid;gap:1px;background:var(--line);padding:1px;width:58px;height:58px;border-radius:7px;overflow:hidden;margin-top:7px}.ng408-mini>i{background:var(--soft)}.ng408-mini>i.on{background:#2f3b49}.ng408-mini.locked{place-items:center;display:grid;background:var(--soft);font-size:18px;color:var(--muted)}.ng408-library-pages{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:12px}.ng408-library-pages button{min-height:36px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--text);padding:6px 11px;font:inherit;font-size:10px;font-weight:850}.ng408-resume-list{display:grid;gap:8px}.ng408-resume-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;border:1px solid var(--line);border-radius:13px;background:var(--card);padding:10px}.ng408-resume-row strong{display:block;font-size:11px}.ng408-resume-row span{display:block;font-size:9px;color:var(--muted);margin-top:2px}.ng408-resume-row button{min-height:36px}.ng408-empty{text-align:center;padding:28px 12px;color:var(--muted);font-size:11px}.ng408-completion-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}.nonogram-v408-note{font-size:9px;color:var(--muted)}
@media(max-width:760px){.nonogram-collection-strip{order:2}.nonogram-stats{order:3}.nonogram-guide{order:4}.nonogram-board-wrap{order:2}.nonogram-return{grid-template-columns:1fr auto}.nonogram-return button:last-child{display:none}.nonogram-collection-strip{grid-template-columns:1fr 1fr}.ng408-library-controls{grid-template-columns:1fr 1fr}.ng408-library-controls .ng408-number{grid-column:1/-1}.ng408-library-grid{grid-template-columns:1fr 1fr}.ng408-dialog{width:calc(100vw - 12px);max-height:92vh}.ng408-dialog-shell{padding:11px}.nonogram-more{order:7}}
@media(max-width:520px){.nonogram-return{padding:8px}.nonogram-return-copy strong{max-width:180px}.ng408-library-grid{grid-template-columns:1fr 1fr;gap:6px}.ng408-card{padding:7px}.ng408-mini{width:48px;height:48px}.ng408-resume-row{grid-template-columns:1fr auto}.ng408-resume-row button:last-child{display:none}.nonogram-collection-strip{gap:6px}.nonogram-collection-strip button,.nonogram-collection-strip>div{padding:8px}.nonogram-toolbar .nonogram-actions{grid-template-columns:repeat(5,1fr)}.nonogram-toolbar .nonogram-actions button{font-size:9px;padding:6px 2px}.nonogram-board-scroll{max-height:56vh}.nonogram-more-inner{padding:0 8px 8px}}
@media(prefers-reduced-motion:reduce){.nonogram-pause-cover{backdrop-filter:none}}
@media(forced-colors:active){.ng408-card.solved .ng408-state,.ng408-card.unfinished .ng408-state{border:1px solid Highlight}.nonogram-pause-cover{background:Canvas}}

@media(max-width:520px){.nonogram-clue{font-size:9px;font-weight:900}}
