html{scrollbar-gutter:stable;height:100%}:root{color:#111827;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{background:#fff;height:100%;margin:0;overflow:hidden}#root{height:100%;overflow:hidden scroll}.workspace{background:#fff;min-height:100vh;padding:16px}.workspace-title{background:#fff;border:1px solid #e5e7eb;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-width:0;margin-bottom:0;padding:12px;display:flex}.workspace-title h1{color:#0f172a;margin:0;font-size:1.25rem}.workspace-title p{color:#4b5563;margin:4px 0 0}.workspace-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.workspace-nav a{color:#1f2937;white-space:nowrap;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:7px 10px;font-size:.9rem;text-decoration:none}.workspace-nav a[aria-current=page]{color:#0f172a;background:#e0f2fe;border-color:#22d3ee}.workspace-nav .workspace-nav-source{color:#0f172a;background:#fff;border-color:#94a3b8}.workspace-nav .workspace-nav-source:hover,.workspace-nav .workspace-nav-source:focus-visible{background:#f1f5f9;border-color:#475569}.workspace-grid{grid-template-columns:minmax(0,2.25fr) minmax(300px,.9fr);gap:16px;min-width:0;display:grid}.left-column,.right-column{flex-direction:column;gap:16px;min-width:0;display:flex}.panel-card,.board-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;min-width:0;padding:12px}.control-panel-card{position:relative}.panel-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.panel-header h2{color:#0f172a;margin:0;font-size:1rem}.board-panel-header h2{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.board-header-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.board-zoom-control{color:#4b5563;grid-template-columns:auto minmax(110px,160px) minmax(44px,auto);align-items:center;gap:8px;font-size:.84rem;display:grid}.board-zoom-control input{accent-color:#0891b2;width:100%}.board-zoom-control output{color:#0f172a;font-variant-numeric:tabular-nums;text-align:right}.board-dimensions{color:#6b7280;font-size:.88rem;font-weight:600}.puzzle-stats-anchor{align-items:baseline;display:inline-flex;position:relative}.puzzle-stats-info-trigger{appearance:none;color:#64748b;cursor:help;text-underline-offset:2px;background:0 0;border:0;padding:1px 2px;font-size:.68rem;font-style:italic;font-weight:700;line-height:1;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.puzzle-stats-info-trigger:focus-visible{outline-offset:2px;border-radius:4px;outline:2px solid #67e8f9}.puzzle-stats-panel{z-index:30;color:#334155;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;gap:8px;width:240px;padding:10px;font-size:.78rem;font-weight:500;line-height:1.35;display:grid;position:absolute;top:calc(100% + 7px);left:0;box-shadow:0 14px 34px #0f172a29}.puzzle-stats-panel[hidden]{display:none}.puzzle-stats-panel strong{color:#0f172a;font-size:.82rem}.puzzle-stats-summary{color:#475569}.puzzle-stats-group{gap:4px;display:grid}.puzzle-stats-group-title{color:#0f172a;text-transform:uppercase;font-size:.72rem;font-weight:800}.puzzle-stats-row{justify-content:space-between;gap:14px;display:flex}.puzzle-stats-row>span:last-child{color:#0f172a;font-variant-numeric:tabular-nums;white-space:nowrap;gap:6px;font-weight:700;display:inline-flex}.puzzle-stats-row small{color:#64748b;font-size:inherit;font-weight:600}.board-display-anchor{align-items:baseline;display:inline-flex;position:relative}.board-display-trigger{appearance:none;color:#64748b;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:1px 2px;font-size:.68rem;font-style:italic;font-weight:700;line-height:1;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.board-display-trigger[data-active=true]{color:#0891b2}.board-display-trigger:focus-visible{outline-offset:2px;border-radius:4px;outline:2px solid #67e8f9}.board-display-panel{z-index:35;color:#4b5563;background:#f9fafb;border:1px solid #cbd5e1;border-radius:8px;width:min(300px,100vw - 48px);padding:12px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 18px 48px #0f172a29}.board-display-list{gap:8px;display:grid}.board-display-row{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:9px 10px;display:grid}.board-display-row span{gap:2px;min-width:0;display:grid}.board-display-row strong{color:#0f172a;font-size:.82rem;line-height:1.2}.board-display-row small{color:#64748b;font-size:.74rem;font-weight:500;line-height:1.3}.board-display-row input{accent-color:#0891b2;width:18px;height:18px}.board-focus-shell{outline:none}.board-focus-shell:focus-visible{border-radius:12px;box-shadow:0 0 0 2px #cbd5e1}.panel-header small{color:#6b7280}.explanation-panel-header{gap:10px}.explanation-header-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.board-canvas{cursor:default;border:1px solid #e5e7eb;border-radius:8px;width:100%;max-width:100%}.board-scroll-shell{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;width:100%;min-width:0;max-height:min(72vh,720px);overflow:auto}.scroll-board-canvas,.editor-board-canvas{cursor:default;border:0;border-radius:0;max-width:none;display:block}.board-hint{color:#6b7280;margin:8px 0;font-size:.9rem}.button-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.button-row.single{grid-template-columns:1fr}button,select,textarea,input[type=number],input[type=search]{color:#1f2937;font:inherit;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:7px 8px;font-size:.92rem}input[type=range]{font:inherit}button:hover{border-color:#94a3b8}button:disabled{opacity:.5}button[data-active=true]{background:#e0f2fe;border-color:#22d3ee}.label-row{color:#4b5563;flex-direction:column;gap:6px;margin-bottom:6px;display:flex}.label-row.compact{margin-bottom:4px}.url-format-links a{color:#0369a1;text-underline-offset:2px;font-weight:700;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.url-format-links a:hover{color:#0f172a}.type-row-wrap{margin-bottom:6px;position:relative}.type-row-label{color:#4b5563;margin-bottom:6px;display:block}.type-row-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.type-row-controls select{flex:1;min-width:140px}.puzzle-info-anchor{flex:none;position:relative}.puzzle-info-button{border-radius:999px;place-items:center;width:34px;height:34px;padding:0;font-weight:800;line-height:1;display:inline-grid}.puzzle-info-panel{z-index:35;color:#4b5563;background:#f9fafb;border:1px solid #cbd5e1;border-radius:8px;width:min(432px,100vw - 48px);max-height:min(620px,100vh - 120px);padding:12px;position:absolute;top:calc(100% + 8px);right:0;overflow:auto;box-shadow:0 18px 48px #0f172a29}.puzzle-info-panel-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.puzzle-info-panel-header h2{color:#0f172a;margin:0;font-size:1rem}.puzzle-info-summary{color:#1f2937;margin:0 0 10px;line-height:1.4}.puzzle-info-section{margin-top:10px}.puzzle-info-section h3{color:#0f172a;margin:0 0 6px;font-size:.9rem}.puzzle-info-section ul{margin:0;padding-left:18px;line-height:1.45}.puzzle-info-section li+li{margin-top:4px}.puzzle-info-example-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.puzzle-info-example-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;min-width:0;margin:0;overflow:hidden}.puzzle-info-example-card canvas{border-bottom:1px solid #e5e7eb;width:100%;height:auto;display:block}.puzzle-info-example-card figcaption{color:#6b7280;flex-direction:column;gap:2px;padding:7px;font-size:.76rem;line-height:1.3;display:flex}.puzzle-info-example-card strong{color:#0f172a;font-size:.82rem}.board-legend-anchor{flex:none;position:relative}.board-legend-panel{z-index:35;color:#4b5563;background:#f9fafb;border:1px solid #cbd5e1;border-radius:8px;width:min(560px,100vw - 48px);max-height:min(680px,100vh - 120px);padding:12px;position:absolute;top:calc(100% + 8px);right:0;overflow:auto;box-shadow:0 18px 48px #0f172a29}.board-legend-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.board-legend-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;grid-template-columns:116px minmax(0,1fr);align-items:center;gap:8px;min-width:0;padding:8px;display:grid}.board-legend-item canvas{border:1px solid #e5e7eb;border-radius:6px;width:116px;height:auto;display:block}.board-legend-item h3{color:#0f172a;margin:0 0 4px;font-size:.86rem}.board-legend-item p{color:#4b5563;margin:0;font-size:.78rem;line-height:1.35}.panel-icon-close{color:#475569;border-radius:999px;flex:none;place-items:center;width:30px;height:30px;padding:0;font-size:1.15rem;font-weight:700;line-height:1;display:inline-grid}.custom-grid-anchor{position:relative}.button-compact{white-space:nowrap;padding:7px 10px}.control-groups{flex-direction:column;gap:8px;margin-top:6px;display:flex}.control-group{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:7px}.compact-control-group{padding:6px 7px}.control-group-title{color:#6b7280;text-transform:uppercase;margin-bottom:6px;font-size:.78rem;font-weight:700;display:block}.io-action-row{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0}.io-action-row button{white-space:nowrap;min-width:0}.replay-step-row{margin-top:0}.control-inline-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;margin-top:8px;display:grid}.control-inline-row button{white-space:nowrap;min-width:88px}.control-number-field{color:#4b5563;flex-direction:column;gap:4px;font-size:.86rem;display:flex}.control-number-field input{width:100%;min-width:0}.timeline-row{margin-top:10px}.timeline-header{color:#4b5563;justify-content:space-between;align-items:baseline;gap:8px;font-size:.86rem;display:flex}.timeline-header span{color:#6b7280;flex:none;font-size:.8rem}.timeline-slider-wrap{padding-top:22px;position:relative}.timeline-slider{accent-color:#22d3ee;width:100%}.timeline-slider:disabled{opacity:.5}.timeline-tooltip{pointer-events:none;white-space:nowrap;color:#1f2937;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:2px 6px;font-size:.76rem;position:absolute;top:0;transform:translate(-50%);box-shadow:0 8px 20px #0f172a1f}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.chunk-stepper-row{grid-template-columns:minmax(0,1fr) minmax(72px,92px) minmax(0,1fr);align-items:center;gap:8px;margin-top:8px;display:grid}.chunk-stepper-row button{white-space:nowrap;min-width:0}.chunk-stepper-field input{text-align:center;width:100%}.custom-grid-popover{z-index:30;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;min-width:220px;padding:12px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px #0f172a24}.custom-grid-popover-title{color:#0f172a;margin:0 0 10px;font-size:.92rem;font-weight:600}.custom-grid-field{color:#4b5563;flex-direction:column;gap:4px;margin-bottom:8px;font-size:.86rem;display:flex}.custom-grid-field input{max-width:100%}.custom-grid-popover-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.custom-grid-hint{color:#6b7280;margin:10px 0 0;font-size:.78rem;line-height:1.35}.check-row{color:#4b5563;align-items:center;gap:6px;margin-top:7px;display:flex}.solver-check-row{margin-bottom:0;font-size:.86rem}.custom-grid-check-row{align-items:flex-start;margin:2px 0 0;font-size:.86rem;line-height:1.35}.error-text{color:#fb7185;margin:4px 0}.import-error-overlay{z-index:40;background:#0f172a47;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.import-error-dialog{color:#9f1239;background:#fff1f2;border:1px solid #fecaca;border-radius:8px;width:min(520px,100%);max-height:min(620px,100vh - 32px);padding:10px;overflow:auto;box-shadow:0 14px 36px #0f172a29}.import-error-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.import-error-header h3{color:#881337;margin:0;font-size:.98rem}.import-error-summary{color:#9f1239;margin:0 0 8px;line-height:1.4}.import-error-details summary{color:#be123c}.import-error-details pre{color:#9f1239;background:#fff;border:1px solid #fecdd3;border-radius:8px;max-height:180px;margin:8px 0 0;padding:8px;overflow:auto}.divider{border:0;border-top:1px solid #e5e7eb;margin:10px 0}.toggle-row{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.export-panel{z-index:35;color:#4b5563;background:#f9fafb;border:1px solid #cbd5e1;border-radius:8px;width:min(360px,100% - 24px);padding:12px;position:absolute;top:190px;right:12px;box-shadow:0 18px 48px #0f172a29}.export-panel-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.export-panel-header h2{color:#0f172a;margin:0;font-size:1rem}.copy-feedback{color:#0284c7;margin:6px 0;font-size:.86rem}.solve-progress-overlay{z-index:20;background:#0f172a47;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.solve-progress-modal{color:#4b5563;background:#f9fafb;border:1px solid #cbd5e1;border-radius:8px;width:min(360px,100%);padding:16px;box-shadow:0 18px 48px #0f172a29}.solve-progress-modal h2{color:#0f172a;margin:0;font-size:1rem}.solve-progress-count{color:#1f2937;margin:10px 0 8px;font-weight:600}.solve-progress-bar{background:#fff;border:1px solid #cbd5e1;border-radius:999px;height:10px;overflow:hidden}.solve-progress-bar span{background:#22d3ee;height:100%;display:block}.solve-progress-message{color:#6b7280;margin:8px 0 0;font-size:.9rem}.solve-report-dialog{color:#4b5563;background:#f9fafb;border:1px solid #cbd5e1;border-radius:8px;margin-top:10px;padding:10px}.solve-report-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.solve-report-header h3,.solve-report-section h4{color:#0f172a;margin:0}.solve-report-header h3{font-size:.98rem}.solve-report-section h4{font-size:.9rem}.solve-report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:8px;display:grid}.solve-report-grid>div{border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:4px;padding:8px;display:flex}.solve-report-grid span{color:#6b7280;font-size:.82rem}.solve-report-grid strong{color:#0f172a}.solve-report-section{margin-top:8px}.solve-report-section p,.solve-report-section ul{margin:6px 0 0}.solve-report-section ul{padding-left:18px}.steps-list{flex-direction:column;gap:8px;max-height:420px;margin:0;padding-left:0;list-style:none;display:flex;overflow:auto}.step-item{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:8px}.step-item.active{border-color:#22d3ee}.step-item.muted{color:#6b7280}.step-title{color:#1f2937;margin:0;font-weight:600}.step-message{color:#4b5563;margin:4px 0 0}.step-meta{color:#6b7280;margin:4px 0 0;font-size:.85rem}.stats-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.stats-summary-grid>div{border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:4px;padding:8px;display:flex}.stats-summary-grid span{color:#6b7280;font-size:.85rem}.stats-summary-grid strong{color:#0f172a}.stats-timeline-row{margin-top:12px}.stats-timeline-slider{margin-top:8px}.stats-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.trace-chart-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;min-width:0;padding:10px}.trace-chart-header{justify-content:space-between;gap:8px;margin-bottom:6px;display:flex}.trace-chart-header h3{color:#0f172a;margin:0;font-size:.9rem}.trace-chart-header p{color:#64748b;margin:2px 0 0;font-size:.76rem;line-height:1.3}.trace-chart-header span{color:#64748b;font-variant-numeric:tabular-nums;flex:none;font-size:.76rem}.trace-line-chart{width:100%;height:auto;display:block}.chart-axis{stroke:#94a3b8;stroke-width:1px}.chart-grid-line{stroke:#e2e8f0;stroke-width:1px}.chart-current-line{stroke:#0f172a;stroke-dasharray:4 4;stroke-width:1px;opacity:.5}.chart-axis-label{fill:#64748b;font-size:10px}.trace-chart-legend{color:#475569;flex-wrap:wrap;gap:8px;margin-top:4px;font-size:.76rem;display:flex}.trace-chart-legend span{font-variant-numeric:tabular-nums;align-items:center;gap:4px;display:inline-flex}.trace-chart-legend i{border-radius:999px;width:8px;height:8px}.rule-usage-panel{margin-top:12px}.rule-usage-header{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.rule-usage-header h3{color:#0f172a;margin:0;font-size:.92rem}.rule-usage-header span,.rule-usage-empty{color:#6b7280;font-size:.8rem}.rule-usage-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.rule-usage-empty{margin:0}.rule-usage-bars{flex-direction:column;gap:8px;display:flex}.rule-usage-bar-row{background:#fff;border:1px solid #e5e7eb;border-radius:8px;grid-template-columns:minmax(140px,1.2fr) minmax(120px,2fr) minmax(116px,auto);align-items:center;gap:8px;padding:8px;display:grid}.rule-usage-bar-meta{min-width:0}.rule-usage-bar-track{background:#e2e8f0;border-radius:999px;height:10px;overflow:hidden}.rule-usage-bar-track span{border-radius:inherit;background:#0891b2;height:100%;display:block}.rule-usage-bar-values{color:#64748b;font-variant-numeric:tabular-nums;white-space:nowrap;grid-template-columns:repeat(3,auto);justify-content:end;gap:8px;font-size:.76rem;display:grid}.rule-usage-bar-values strong{color:#0f172a}.rule-step-summary{color:#64748b;font-variant-numeric:tabular-nums;margin-top:2px;font-size:.72rem;display:block}.rule-usage-table-wrap{border:1px solid #e5e7eb;border-radius:8px;margin-top:10px;overflow-x:auto}.rule-usage-table{border-collapse:collapse;color:#334155;width:100%;font-size:.8rem}.rule-usage-table th,.rule-usage-table td{text-align:left;vertical-align:top;border-bottom:1px solid #edf2f7;padding:7px 8px}.rule-usage-table th{color:#475569;text-transform:uppercase;background:#f8fafc;font-size:.74rem}.rule-usage-table tr:last-child td{border-bottom:0}.rule-name,.rule-id{display:block}.rule-name{color:#0f172a;font-weight:700}.rule-id{color:#64748b;margin-top:2px;font-size:.72rem}.rule-step-list{color:#475569;font-variant-numeric:tabular-nums;white-space:normal;max-width:180px}@media (width<=900px){.stats-summary-grid,.stats-chart-grid{grid-template-columns:1fr}.rule-usage-header{flex-direction:column;align-items:flex-start}.rule-usage-actions{justify-content:flex-start}.rule-usage-bar-row{grid-template-columns:1fr}.rule-usage-bar-values{justify-content:start}}.editor-board-card{min-height:0}.editor-size-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.editor-size-row button{min-width:96px}.editor-url-field,.editor-pearl-group{margin-top:8px}.editor-pearl-tool-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.editor-pearl-tool-row button{white-space:nowrap;min-width:0}.editor-pearl-tool-row button[data-active=true]{color:#0f172a;background:#cffafe;border-color:#0891b2;font-weight:700}.primary-action{color:#0f172a;background:#e0f2fe;border-color:#22d3ee;font-weight:700}.dataset-workspace-grid{align-items:stretch;height:calc(100vh - 32px)}.dataset-workspace-grid .left-column,.dataset-workspace-grid .right-column{min-height:0}.dataset-list-card{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.dataset-list-header{align-items:flex-start}.dataset-list-header small{margin-top:4px;display:block}.dataset-action-error{margin-top:0}.dataset-card-list{flex:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-height:0;padding-right:2px;display:grid;overflow:auto}.dataset-puzzle-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;grid-template-columns:136px minmax(0,1fr);gap:10px;min-width:0;padding:8px;display:grid}.dataset-preview{aspect-ratio:1;color:#475569;background-color:#f8fafc;background-image:linear-gradient(#e5e7eb 1px,#0000 1px),linear-gradient(90deg,#e5e7eb 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:24px 24px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:1px solid #e5e7eb;border-radius:8px;place-items:center;width:136px;font-weight:700;display:grid;overflow:hidden}.dataset-preview-canvas{width:100%;height:100%;display:block}.dataset-card-body{flex-direction:column;justify-content:center;gap:5px;min-width:0;display:flex}.dataset-card-body h3{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.92rem;overflow:hidden}.dataset-card-meta{color:#6b7280;font-size:.78rem}.dataset-tags{flex-wrap:wrap;gap:4px;min-height:21px;display:flex}.dataset-tags span{color:#4b5563;border:1px solid #cbd5e1;border-radius:999px;padding:2px 6px;font-size:.74rem}.dataset-card-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:1px;display:flex}.dataset-card-actions a{color:#0369a1;background:0 0;border:0;padding:0;font-size:.78rem;font-weight:700;line-height:1.2;text-decoration:none}.dataset-card-actions a:hover{color:#0f172a;text-decoration:underline}.dataset-card-actions .dataset-primary-link{color:#0e7490}.dataset-filter-group{margin-top:10px}.dataset-filter-row{flex-wrap:wrap;gap:6px;display:flex}.dataset-filter-row button{min-height:32px}.dataset-filter-row button[data-active=true]{color:#0f172a;background:#e0f2fe;border-color:#22d3ee;font-weight:700}.dataset-empty{color:#6b7280;margin:0}details summary{cursor:pointer;color:#4b5563}details pre{color:#4b5563;white-space:pre-wrap;font-size:12px}@media (width<=1080px){.workspace-grid{grid-template-columns:1fr}.dataset-workspace-grid{height:auto}.dataset-card-list{max-height:min(62vh,680px)}}@media (width<=860px){.dataset-card-list{grid-template-columns:1fr}}@media (width<=520px){.workspace-title{flex-direction:column;align-items:flex-start}.puzzle-info-panel{left:50%;right:auto;transform:translate(-50%)}.puzzle-info-example-grid{grid-template-columns:1fr}.board-legend-panel{left:50%;right:auto;transform:translate(-50%)}.board-legend-list{grid-template-columns:1fr}.board-legend-item{grid-template-columns:104px minmax(0,1fr)}.board-legend-item canvas{width:104px}.io-action-row{grid-template-columns:1fr}.chunk-stepper-row{grid-template-columns:minmax(0,1fr) minmax(64px,78px) minmax(0,1fr);gap:6px}.chunk-stepper-row button{padding-inline:6px;font-size:.82rem}.editor-size-row{grid-template-columns:1fr 1fr}.dataset-puzzle-card{grid-template-columns:104px minmax(0,1fr)}.dataset-preview{width:104px}.dataset-card-actions{gap:7px}}
