main{max-width:1560px;margin:auto;padding:30px clamp(20px,3vw,48px) 0}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:750;color:var(--accent);margin-bottom:10px}.intro{display:flex;justify-content:space-between;gap:28px;align-items:flex-start;margin-bottom:26px}.intro h1{font-size:clamp(2.1rem,3.5vw,3.3rem);margin:0 0 10px}.intro p{max-width:620px;color:var(--muted);margin:0}.workspace-tools{display:flex;gap:7px;flex-wrap:wrap;max-width:380px;justify-content:flex-end}.btn{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:4px;min-height:40px;padding:8px 13px;font-weight:650;font-size:13px;display:inline-flex;gap:7px;align-items:center;justify-content:center;text-decoration:none}.btn:hover{background:var(--card);border-color:var(--line-strong)}.btn.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.btn.primary:hover{background:var(--accent)}.btn.quiet{background:transparent}.btn.small{min-height:32px;padding:5px 9px;font-size:12px}.btn.danger{color:var(--danger)}.workspace-tools select{width:100%;background:var(--card);border:1px solid var(--line);border-radius:4px;padding:8px 10px;color:var(--ink);font-size:13px}.question-panel{display:grid;grid-template-columns:220px 1fr;gap:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;margin-bottom:23px}.section-label{font-weight:700;font-size:14px}.section-label small{display:block;color:var(--muted);font-size:12px;font-weight:400;margin-top:5px}.question-fields label{display:block}.title-input{border:0;background:transparent;font-weight:700;color:var(--ink);width:100%;padding:0 0 5px;font-size:14px}.problem-input{width:100%;border:0;border-bottom:1px solid transparent;resize:vertical;min-height:32px;background:transparent;color:var(--ink);padding:2px 0;font-size:18px;line-height:1.45}.problem-input:hover,.title-input:hover{border-bottom:1px solid var(--accent-line)}.step-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px}.step-heading h2{font-size:19px;margin:0}.step-heading p{font-size:13px;color:var(--muted);margin:5px 0 0}.dimension-board{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:12px}.dimension{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);padding:16px 14px 13px;min-width:0;display:flex;flex-direction:column;transition:border-color .15s}.dimension.locked{border-color:var(--accent-line);background:var(--card)}.dimension-top{display:flex;align-items:flex-start;gap:6px;justify-content:space-between;min-height:44px}.dimension-name{font-size:13px;font-weight:750;overflow-wrap:anywhere}.dimension-number{font-size:10px;letter-spacing:.08em;color:var(--muted);display:block;margin-bottom:3px}.edit-axis{border:0;background:transparent;padding:2px 4px;color:var(--muted);font-size:12px;line-height:1.5}.edit-axis:hover{color:var(--accent)}.option-list{display:flex;flex-direction:column;gap:7px;flex:1;margin:8px 0 15px}.option{width:100%;text-align:left;display:flex;gap:9px;align-items:flex-start;border:1px solid transparent;border-radius:4px;background:var(--card);color:var(--muted);padding:10px;font-size:13px;line-height:1.35;overflow-wrap:anywhere;min-height:46px}.option.selected{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent);font-weight:650}.option-dot{width:11px;height:11px;flex-shrink:0;border:1px solid var(--line-strong);border-radius:50%;margin-top:3px}.option.selected .option-dot{border:3px solid var(--accent);background:var(--card)}.option:hover{border-color:var(--accent-line)}.lock{border:0;border-top:1px solid var(--line);background:transparent;display:flex;gap:7px;align-items:center;justify-content:center;width:100%;padding:11px 0 0;font-size:12px;color:var(--muted)}.lock[aria-pressed=true]{color:var(--accent);font-weight:700}.combination{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;margin-top:17px;padding:23px 25px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:4px}.combo-eyebrow{font-size:10px;letter-spacing:.13em;color:var(--accent);font-weight:700;text-transform:uppercase;margin-bottom:8px}.combo-line{font-size:17px;line-height:1.65;margin:0;overflow-wrap:anywhere}.combo-line span{color:var(--accent)}.combo-line b{font-weight:650}.combo-line .divider{color:var(--muted);padding:0 7px}.combo-actions{display:flex;flex-direction:column;gap:8px;min-width:160px}.combination .btn.primary{background:var(--card);color:var(--ink);border-color:var(--card)}.combination .btn.quiet{border-color:var(--accent);color:var(--accent)}.combination .btn.quiet:hover{background:var(--accent)}.space-meta{display:flex;justify-content:space-between;gap:16px;font-size:12px;color:var(--muted);padding:12px 2px}.space-meta strong{font-variant-numeric:tabular-nums;font-weight:700;color:var(--ink)}.develop{margin-top:38px}.develop-layout{display:grid;grid-template-columns:260px 1fr;gap:20px}.concept-list{display:flex;flex-direction:column;gap:8px;align-self:start}.concept-tab{background:transparent;border:1px solid transparent;text-align:left;padding:14px;border-radius:4px;color:var(--ink);width:100%;overflow-wrap:anywhere}.concept-tab.active{border-color:var(--accent-line);background:var(--card)}.concept-tab:hover{background:var(--accent-soft)}.concept-tab small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:5px}.concept-tab strong{font-size:14px;line-height:1.35;display:block;font-weight:650}.concept-tab span{font-size:12px;display:block;color:var(--muted);margin-top:5px}.concept-editor{background:var(--card);border:1px solid var(--line);padding:26px;border-radius:4px;min-width:0}.concept-title{font-size:24px;font-weight:750;letter-spacing:-.03em;border:0;border-bottom:1px solid var(--line);width:100%;padding:0 0 12px;color:var(--ink);background:transparent}.ingredients{display:flex;flex-wrap:wrap;gap:6px;margin:17px 0 24px}.ingredient{background:var(--card);color:var(--muted);border-radius:4px;padding:5px 8px;font-size:11px;max-width:100%;overflow-wrap:anywhere}.writing-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.writing-grid label{display:block;font-size:13px;font-weight:700}.writing-grid label small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:4px;min-height:36px}.writing-grid textarea{margin-top:8px;width:100%;min-height:104px;border:1px solid var(--line);border-radius:4px;padding:11px;font-size:14px;line-height:1.5;color:var(--ink);background:var(--card)}.editor-bottom{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-top:20px;font-size:12px;color:var(--muted)}.empty-develop{border:1px dashed var(--line-strong);border-radius:4px;display:grid;grid-template-columns:1fr auto;gap:30px;padding:26px;align-items:center;background:color-mix(in srgb, var(--card) 43.9%, transparent)}.empty-develop h3{font-size:17px;margin:0 0 6px}.empty-develop p{color:var(--muted);font-size:14px;margin:0;max-width:650px}.provocation{display:flex;gap:12px;align-items:center;padding:20px 0;margin-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.provocation strong{font-size:11px;letter-spacing:.09em;color:var(--energy);text-transform:uppercase;white-space:nowrap}.provocation button{margin-left:auto;flex-shrink:0}.save-status{color:var(--muted);font-size:11px;align-self:center}.save-status.error{color:var(--danger)}dialog{border:1px solid var(--line);border-radius:4px;padding:28px;width:min(570px,calc(100vw - 32px));max-height:88vh;color:var(--ink);box-shadow:0 25px 90px color-mix(in srgb, var(--shadow-ink) 25.1%, transparent)}dialog::backdrop{background:color-mix(in srgb, var(--shadow-ink) 50.2%, transparent);backdrop-filter:blur(3px)}dialog h2{font-size:24px;margin-bottom:8px}dialog p{font-size:14px;color:var(--muted)}dialog label{display:block;font-size:13px;font-weight:650;margin-top:18px}dialog input,dialog textarea,dialog select{display:block;width:100%;border:1px solid var(--line);border-radius:4px;padding:10px;margin-top:6px;color:var(--ink);background:var(--card)}dialog textarea{min-height:160px}dialog .actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px;flex-wrap:wrap}dialog .actions .danger{margin-right:auto}.preset-grid{display:grid;gap:9px;margin-top:20px}.preset-choice{padding:16px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:4px;color:var(--ink)}.preset-choice strong{display:block;font-size:15px}.preset-choice span{display:block;font-size:12px;color:var(--muted);margin-top:4px}.dialog-error{color:var(--danger)!important;margin-top:12px;margin-bottom:0}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);border-radius:4px;padding:11px 18px;background:var(--ink);color:var(--on-accent);max-width:calc(100vw - 32px);font-size:13px;box-shadow:0 8px 30px color-mix(in srgb, var(--shadow-ink) 12.5%, transparent);opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;z-index:10}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}@media(min-width:1250px){.dimension-board:has(.dimension:nth-child(7)){grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1100px){.dimension-board{grid-template-columns:repeat(3,minmax(0,1fr))}.intro{flex-direction:column;gap:20px}.workspace-tools{max-width:none;justify-content:flex-start}.workspace-tools select{width:230px}.question-panel{grid-template-columns:170px 1fr}.develop-layout{grid-template-columns:210px 1fr}}@media(max-width:700px){main{padding-top:25px}.intro{margin-bottom:22px}.intro h1{font-size:34px}.intro p{font-size:14px}.workspace-tools{gap:6px}.workspace-tools select{width:100%}.question-panel{grid-template-columns:1fr;gap:12px;padding:18px 0}.question-panel .section-label small{display:inline;margin-left:7px}.problem-input{font-size:16px}.dimension-board{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.dimension{padding:12px 10px}.option{padding:9px 7px;font-size:12px}.combination{grid-template-columns:1fr;padding:19px;gap:16px}.combo-line{font-size:15px}.combo-actions{flex-direction:row;min-width:0}.combo-actions .btn{flex:1}.space-meta{font-size:11px;flex-direction:column;gap:4px}.develop{margin-top:26px}.develop-layout{grid-template-columns:1fr}.concept-list{display:grid;grid-template-columns:1fr 1fr}.concept-tab{padding:10px}.concept-editor{padding:19px}.writing-grid{grid-template-columns:1fr;gap:16px}.writing-grid label small{min-height:0}.writing-grid textarea{min-height:90px}.empty-develop{grid-template-columns:1fr;gap:16px;padding:20px}.empty-develop .btn{justify-self:start}.provocation{flex-wrap:wrap;gap:9px}.provocation strong{width:100%}.provocation button{margin-left:0}.editor-bottom{align-items:flex-start;flex-direction:column}.step-heading{align-items:flex-start}.step-heading h2{font-size:18px}.step-heading p{font-size:12px}}

.storage-notice{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 16px;margin-bottom:20px;border:1px solid var(--warn-line);border-radius:4px;background:var(--card);color:var(--warn);font-size:13px}.storage-notice span{flex:1;min-width:230px}

/* Mixer and map are two views of one concept collection. */
.intro p,.step-heading p,.empty-develop p,.gap-notebook p,.unplaced p{font-size:18px;line-height:1.45}
.step-heading h2{font-size:26px}.btn,.btn.small,.option,.lock,.edit-axis,.dimension-name,.workspace-tools select,.writing-grid label{font-size:16px}
.btn.small{min-height:38px}.writing-grid textarea{font-size:18px}.writing-grid label small,.editor-bottom,.save-status,.space-meta{font-size:14px}
.concept-tab strong{font-size:18px}.concept-tab span{font-size:15px}.concept-title{font-family:var(--display);font-size:26px!important}
.view-nav{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 28px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.view-nav>span{font:12px var(--mono);color:var(--muted);margin-right:auto}
.map-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.map-controls label{max-width:260px;flex:1;min-width:180px;font-size:16px}
.map-controls select,.gap-fields select{display:block;width:100%;margin-top:6px;padding:10px;border:1px solid var(--line);border-radius:4px}
.map-hint{font-size:15px;color:var(--muted);margin:18px 0 10px}.map-scroll{max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:4px;overscroll-behavior-x:contain}
.coverage-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%}
.coverage-table th,.coverage-table td{vertical-align:top;padding:12px;width:270px;min-width:270px;max-width:270px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.coverage-table th{font-size:18px;text-align:left;font-weight:500;background:var(--surface)}
.coverage-table th:first-child{position:sticky;left:0;z-index:2;width:170px;min-width:170px;max-width:170px}
.coverage-table td{background:var(--card);height:145px}.coverage-table tr:last-child>*{border-bottom:0}.coverage-table tr>*:last-child{border-right:0}
.coverage-table .selected-cell{box-shadow:inset 0 0 0 2px var(--accent)}
.cell-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.cell-tools>span{font:11px var(--mono);color:var(--muted)}
.empty-cell{font-size:16px;color:var(--muted);margin:15px 0}.gap-verdict{font-size:15px;color:var(--accent);margin:0 0 10px}
.map-idea{background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:12px;margin:8px 0 0;min-width:0;overflow-wrap:anywhere}
.map-idea-top{display:flex;align-items:start;justify-content:space-between;gap:7px}.idea-title{border:0;background:transparent;color:var(--ink);font-size:18px!important;text-align:left;padding:0;line-height:1.25;overflow-wrap:anywhere}
.map-idea p{font-size:16px;line-height:1.4;color:var(--muted);margin:10px 0 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.drag-handle{touch-action:none;cursor:grab;flex:none;min-width:36px;min-height:40px;border:1px solid var(--line);border-radius:3px;background:var(--card);color:var(--muted);font-size:24px!important;padding:0}
.fit-warning{display:block;color:var(--warn);margin-top:9px;font-size:14px}.is-dragging{opacity:.4}.coverage-table .is-drop-target,.unplaced.is-drop-target{background:var(--accent-soft);outline:2px solid var(--accent);outline-offset:-2px}
.unplaced{margin-top:20px;padding:18px;border:1px dashed var(--line-strong);border-radius:4px}.unplaced h3{font-size:23px;margin:0}.unplaced h3 span{font:12px var(--mono);color:var(--muted)}.unplaced p{color:var(--muted);margin:8px 0}.unplaced-ideas{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.gap-notebook{margin-top:24px;padding:24px;border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--surface);border-radius:4px}.gap-notebook h3{font-size:26px;overflow-wrap:anywhere;margin:0 0 16px}
.gap-fields{display:grid;grid-template-columns:230px 1fr;gap:22px}.gap-fields label,.fit-details label{font-size:16px}.gap-fields textarea,.fit-details textarea{display:block;width:100%;padding:10px;min-height:100px;border:1px solid var(--line);border-radius:4px;margin-top:6px;font-size:18px}
.gap-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.gap-notebook p.muted,.fit-details p.muted{font-size:16px}
.all-gaps,.fit-details,.gap-origin,.ingredients-record,.source-record{border-block:1px solid var(--line);padding:16px 0;margin:20px 0;font-size:18px}
summary{cursor:pointer;color:var(--ink)}.all-gaps article{border-top:1px solid var(--line);padding:12px 0}.all-gaps p{font-size:17px;color:var(--muted);overflow-wrap:anywhere}.ingredients{margin-bottom:0}.ingredient{font-size:16px;border:1px solid var(--line)}.ingredient b{font-weight:400;color:var(--ink)}
.source-record pre{font:17px/1.5 var(--serif);white-space:pre-wrap;overflow-wrap:anywhere}.fit-details p{overflow-wrap:anywhere}
.option-edit{display:flex;align-items:end;gap:10px;margin-bottom:12px}.option-edit label{flex:1;min-width:0}.option-edit textarea{min-height:70px;font-size:18px}.option-edit .btn{margin-bottom:4px}
dialog p{font-size:18px}dialog label{font-size:16px}.preset-choice strong{font-size:18px}.preset-choice span{font-size:16px}
@media(max-width:700px){.view-nav{gap:8px}.view-nav>span{width:100%;order:2}.view-nav>.quiet{order:3}.map-controls{display:grid;grid-template-columns:1fr auto;align-items:end}.map-controls label{max-width:none;min-width:0}.map-controls>.btn:last-child{grid-column:1/-1;justify-self:start}.coverage-table th:first-child{width:100px;min-width:100px;max-width:100px;font-size:16px;padding:10px}.coverage-table th,.coverage-table td{width:225px;min-width:225px;max-width:225px;padding:10px}.gap-fields{grid-template-columns:1fr;gap:16px}.gap-notebook{padding:18px}.gap-notebook h3{font-size:23px}.gap-actions>*{width:100%}.unplaced-ideas{grid-template-columns:1fr}.dimension-board{grid-template-columns:1fr}.option-list{display:grid;grid-template-columns:1fr 1fr}.dimension-top{min-height:0}.option{font-size:16px}.combination .btn{min-width:0}.concept-list{grid-template-columns:1fr 1fr}.map-hint{font-size:15px}}
