.project-palette-dialog { box-sizing:border-box; position:fixed; inset:104px 10px 10px auto; margin:0; width:344px; max-width:calc(100vw - 20px); height:calc(100dvh - 114px); max-height:none; padding:0; border:1px solid var(--color-border); border-radius:12px; color:var(--color-ink); box-shadow:var(--shadow-panel); background:var(--color-surface); }
.project-palette-dialog[open] { display:flex; flex-direction:column; }
.project-palette-dialog::backdrop { background:rgb(32 42 48 / 12%); }
.project-palette-dialog header,.project-palette-dialog footer { flex-shrink:0; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:10px 12px; }
.project-palette-dialog header { border-bottom:1px solid var(--color-border); }
.project-palette-dialog h2 { margin:0; font-size:15px; font-weight:600; }
.project-palette-content { overflow:auto; padding:12px; min-height:0; }
.project-palette-dialog label { display:flex; align-items:center; gap:7px; min-width:0; font-size:12px; }
.project-palette-dialog label span { overflow-wrap:anywhere; }
.palette-room-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; max-height:132px; overflow:auto; padding:1px; }
.palette-room-actions { display:flex; gap:6px; margin:8px 0; }
.palette-coverings {border:1px solid var(--color-border);border-radius:8px;padding:9px;margin:12px 0;background:var(--color-page)}
.palette-coverings>summary {font-size:12px}
.palette-coverings>summary small {font-size:10px;font-weight:400;color:var(--color-secondary);margin-left:5px}
.palette-covering-room {display:grid!important;gap:5px!important;margin:12px 0 8px;color:var(--color-secondary);font-size:11px!important}
.palette-covering-room select {width:100%;min-width:0;border:1px solid var(--color-border);border-radius:5px;padding:6px;background:var(--color-surface);color:var(--color-ink);font:400 12px/1.4 var(--font-ui)}
.palette-coverings .covering-field {display:grid;align-items:stretch;font-size:11px}
.palette-coverings .covering-grid {gap:0 8px}
.palette-coverings .covering-tabs button {font-size:11px;min-height:28px;padding:4px 2px}
.palette-coverings .covering-result>span {flex-wrap:wrap;gap:3px 8px}
.palette-coverings .covering-result b {white-space:normal}
.palette-coverings .palette-covering-copy {width:100%;margin-top:10px;font-size:11px;min-width:0}
.palette-coverings [hidden] {display:none!important}
.project-palette-dialog button { border:1px solid var(--color-border); background:var(--color-surface); color:var(--color-ink); border-radius:6px; min-height:30px; padding:4px 8px; font:400 12px/1.3 var(--font-ui); cursor:pointer; }
.project-palette-dialog button:hover { background:var(--color-soft); }
.project-palette-dialog button:disabled { opacity:.5; cursor:wait; }
.project-palette-dialog input[type=checkbox] { accent-color:var(--color-focus); flex-shrink:0; }
.project-palette-dialog summary { cursor:pointer; font-size:13px; font-weight:500; }
.palette-rooms summary span { float:right; font-size:11px; color:var(--color-secondary); font-weight:400; }
.palette-surface-tabs { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:3px; padding:3px; background:var(--color-soft); border-radius:8px; margin:14px 0 10px; }
.project-palette-dialog .palette-surface-tabs button { min-width:0; padding:5px 2px; border-color:transparent; background:transparent; display:flex; gap:3px; align-items:center; justify-content:center; }
.palette-surface-tabs small { color:var(--color-focus); font-size:11px; }
.project-palette-dialog .palette-surface-tabs [aria-selected=true] { background:var(--color-surface); border-color:var(--color-border); box-shadow:0 1px 2px #0001; }
.palette-surface-panel[hidden],.palette-furniture-choice label[hidden] { display:none; }
[data-palette-textures][hidden] { display:none; }
.palette-textures { grid-template-columns:repeat(3,minmax(0,1fr)); }
[data-palette-textures] { margin-top:12px; }
.palette-apply-zone { padding-bottom:10px; }
.palette-control-heading,.palette-color-row { font-size:11px; color:var(--color-secondary); margin:6px 0; }
.project-palette-dialog .finish-material { min-height:60px; padding:6px 2px; font-size:11px; line-height:1.2; background:var(--color-page); overflow-wrap:anywhere; }
.project-palette-dialog .finish-material[aria-pressed=true] { border-color:var(--color-focus); background:var(--color-accent-soft); }
.project-palette-dialog .finish-colors { grid-template-columns:repeat(7,minmax(0,1fr)); margin:7px 0; }
.project-palette-dialog .finish-color { padding:3px; min-height:32px; border-color:transparent; }
.project-palette-dialog .finish-color[aria-pressed=true] { border-color:var(--color-focus); background:var(--color-accent-soft); }
.palette-color-row { display:flex; align-items:center; justify-content:space-between; margin-top:12px; }
.palette-custom-color input { width:36px; height:27px; border:1px solid var(--color-border); border-radius:5px; padding:2px; background:white; }
.project-palette-dialog .palette-neutral { min-height:24px; padding:2px 0; border:0; background:none; color:var(--color-secondary); font-size:11px; text-decoration:underline; text-underline-offset:3px; }
.palette-surface-preview { display:flex; align-items:center; gap:10px; margin:9px 0 12px; padding:8px; border:1px solid var(--color-border); border-radius:7px; font-size:11px; color:var(--color-secondary); }
.palette-surface-preview .finish-cube { flex:0 0 27px; }
.finish-keep::after { content:'—'; display:grid; place-items:center; height:100%; color:var(--color-secondary); }
.palette-furniture-choice { border-top:1px solid var(--color-border); padding-top:10px; margin-top:12px; }
.palette-furniture-choice label { margin-top:8px; }
.palette-note { color:var(--color-secondary); font-size:11px; line-height:1.45; }
[data-palette-status] { font-size:12px; line-height:1.4; overflow-wrap:anywhere; margin:6px 0; }
[data-palette-status]:empty { display:none; }
[data-palette-status].error { color:var(--color-danger); }
.palette-designer-sets { border:1px solid var(--color-border); border-radius:8px; padding:9px; margin-bottom:12px; background:var(--color-page); }
.palette-designer-sets summary { font-size:12px; }
.palette-kit-count { margin-left:4px; font-size:10px; font-weight:400; color:var(--color-secondary); }
.palette-kit-filters { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:3px; margin-top:10px; }
.project-palette-dialog .palette-kit-filters button { min-width:0; min-height:27px; padding:4px 2px; font-size:10px; }
.project-palette-dialog .palette-kit-filters [aria-pressed=true] { border-color:var(--color-focus); background:var(--color-accent-soft); }
[data-kit-name] { display:block; margin:4px 0 0 14px; font-size:10px; color:var(--color-secondary); line-height:1.4; }
[data-kit-name]:empty { display:none; }
.palette-kit-list { display:grid; gap:6px; margin-top:10px; }
.project-palette-dialog .palette-kit { display:grid; grid-template-columns:44px minmax(0,1fr) 12px; gap:8px; align-items:center; width:100%; padding:8px; text-align:left; }
.palette-kit-copy { display:grid; gap:3px; min-width:0; }
.palette-kit-copy :is(strong,small) { overflow-wrap:anywhere; }
.palette-kit-copy strong { font-size:12px; font-weight:500; }
.palette-kit-copy small { font-size:10px; line-height:1.35; color:var(--color-secondary); }
.palette-kit-swatches { display:flex; height:35px; overflow:hidden; border:1px solid #0001; border-radius:5px; }
.palette-kit-swatches i { flex:1; background:var(--swatch); }
.palette-kit-check { visibility:hidden; color:var(--color-focus); }
.project-palette-dialog .palette-kit[aria-pressed=true] { border-color:var(--color-focus); background:var(--color-accent-soft); }
.palette-kit[aria-pressed=true] .palette-kit-check { visibility:visible; }
.project-palette-dialog .palette-kit[hidden] { display:none; }
.palette-kit-options { border-left:2px solid var(--color-focus); padding:1px 0 1px 9px; margin-bottom:12px; }
.palette-kit-options label { margin:7px 0; font-size:11px; }
.palette-kit-wet { border-top:1px solid var(--color-border); margin-top:9px; padding-top:2px; }
[data-kit-options][hidden],[data-kit-adaptation][hidden],[data-palette-empty-items][hidden] { display:none; }
.palette-kit-adaptation { padding:7px 8px; border-radius:6px; background:var(--color-accent-soft); }
.palette-door-scope { flex-wrap:wrap; justify-content:space-between; }
.palette-door-scope select { max-width:100%; min-width:0; border:1px solid var(--color-border); border-radius:6px; padding:5px; color:var(--color-ink); background:var(--color-surface); font:400 11px/1.3 var(--font-ui); }
.project-palette-dialog footer { border-top:1px solid var(--color-border); margin-top:auto; }
.project-palette-dialog [data-apply-palette] { background:var(--color-accent); flex:1; }
@media(max-width:900px) { .canvas-toolbar .breadcrumbs { display:none; } }
@media(prefers-reduced-motion:reduce) { .project-modes button,.canvas-toolbar .canvas-action { transition:none; } }
