/* Wallpaper Kingdom visualiser + builder v2 (preview). Mobile-first. Uses the bedkingdom group palette. */
.wkw-main{--ink:#1C1614;--line:#D9D0C9;--muted:#726860;--acc:#3E6B6B;--tint:#E6EEEC;--bg:#FAF7F5}
.wkv{max-width:1320px;margin:0 auto;padding:12px 12px 40px}
.wkv h1{font:500 clamp(1.7rem,5vw,2.6rem)/1.1 Jost,Inter,sans-serif;margin:.2em 0 .3em;letter-spacing:-.01em}
.wkv-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:var(--acc);margin:0;font-weight:600}
.wkv-lede{font-size:1.02rem;color:#3a302c;max-width:46em;margin:0 0 18px}
.wkv-cta{display:flex;flex-direction:column;gap:10px}.wkv-big{min-height:56px!important;font-size:1.02rem!important;gap:10px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
@media(min-width:600px){.wkv-cta{flex-direction:row}.wkv-big{min-width:220px}}
.wkv-drop{display:none;color:var(--muted);font-size:.9rem;margin:8px 0}@media(hover:hover){.wkv-drop{display:block}}
.wkv-tips{display:flex;flex-wrap:wrap;gap:6px 18px;padding:0;margin:14px 0 0;list-style:none;font-size:.86rem;color:var(--muted)}.wkv-tips li:before{content:"✓ ";color:var(--acc)}
.wkv-start{display:grid;gap:22px;padding:10px 0}@media(min-width:900px){.wkv-start{grid-template-columns:1.1fr 1fr;align-items:center;padding:30px 0}}
.wkv-samples p{margin:0 0 8px}.wkv-sample-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}@media(min-width:600px){.wkv-sample-row{grid-template-columns:repeat(5,1fr)}}@media(min-width:900px){.wkv-sample-row{grid-template-columns:repeat(3,1fr)}}
.wkv-sample{border:1px solid var(--line);background:#fff;padding:0;cursor:pointer;text-align:left;font:500 .8rem Inter,sans-serif}.wkv-sample img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.wkv-sample span{display:block;padding:6px 8px}.wkv-sample:hover,.wkv-sample:focus-visible{outline:2px solid var(--acc)}
.wkv-privacy{font-size:.78rem;color:var(--muted);line-height:1.45;grid-column:1/-1;margin:6px 0 0}.wkv-privacy.small{font-size:.72rem}
/* app */
.wkv-app{display:grid;gap:14px}@media(min-width:980px){.wkv-app{grid-template-columns:minmax(0,1fr) 380px;align-items:start}}
.wkv-stagewrap{position:sticky;top:0;z-index:5;background:var(--bg);padding-bottom:6px}@media(min-width:980px){.wkv-stagewrap{top:10px}}
.wkv-stage{position:relative;width:100%;max-height:62vh;margin:0 auto;background:#e9e3de;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}
@media(min-width:980px){.wkv-stage{max-height:78vh}}
.wkv-stage>canvas,.wkv-stage>img,.wkv-before,.wkv-before canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.wkv-ai[hidden],.wkv-before[hidden]{display:none!important}
.wkv-ov{z-index:4;pointer-events:none}.wkv-ov.active{pointer-events:auto;cursor:crosshair}
.wkv-before{z-index:3}.wkv-handle{position:absolute;top:0;bottom:0;width:44px;margin-left:-22px;z-index:6;cursor:ew-resize;touch-action:none;display:flex;align-items:center;justify-content:center}
.wkv-handle:before{content:"";position:absolute;top:0;bottom:0;left:21px;width:2px;background:#fff;box-shadow:0 0 6px rgba(0,0,0,.4)}
.wkv-handle span{position:relative;background:#fff;color:var(--ink);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;box-shadow:0 2px 10px rgba(0,0,0,.3)}
.wkv-tag{position:absolute;top:10px;z-index:6;background:rgba(28,22,20,.75);color:#fff;font-size:.72rem;padding:4px 8px;letter-spacing:.06em;text-transform:uppercase}.wkv-tag-b{left:10px}.wkv-tag-a{right:10px}
.wkv-badge{position:absolute;left:10px;bottom:10px;z-index:6;background:rgba(255,255,255,.92);font-size:.75rem;padding:5px 9px;font-weight:600}.wkv-badge.ai{background:var(--acc);color:#fff}
.wkv-busy{position:absolute;inset:0;z-index:8;background:rgba(28,22,20,.55);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px}
.wkv-busy p{margin:12px 0;font-weight:500;max-width:22em}.wkv-bar{width:min(320px,80%);height:4px;background:rgba(255,255,255,.3)}.wkv-bar i{display:block;height:100%;width:0;background:#fff}
.wkv-spin{width:38px;height:38px;border:3px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:wkvs 1s linear infinite}@keyframes wkvs{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.wkv-spin{animation:none}}
.wkv-toolbar{display:flex;flex-direction:column;gap:8px;margin-top:8px}
.wkv-seg{display:flex;border:1px solid var(--ink)}.wkv-seg button{flex:1;min-height:42px;background:#fff;border:0;font:500 .86rem Inter,sans-serif;cursor:pointer;color:var(--ink)}.wkv-seg button+button{border-left:1px solid var(--ink)}.wkv-seg button.on{background:var(--ink);color:#fff}
.wkv-tools{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.wkv-tools::-webkit-scrollbar{display:none}
.wkv-tools button,.wkv-brush button{flex:0 0 auto;min-height:40px;padding:0 12px;background:#fff;border:1px solid var(--line);font:500 .82rem Inter,sans-serif;cursor:pointer;color:var(--ink);white-space:nowrap}
.wkv-tools button.on{background:var(--acc);border-color:var(--acc);color:#fff}
.wkv-brush{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.82rem}.wkv-brush input{vertical-align:middle;width:110px}.wkv-hint{color:var(--muted);flex-basis:100%}
.wkv-panel{background:#fff;border:1px solid var(--line);padding:14px}
.wkv-cur{display:flex;gap:12px;align-items:center}.wkv-cur-sw{flex:0 0 64px;height:64px;background-size:cover;border:1px solid var(--line)}.wkv-cur b{display:block;font-weight:600}.wkv-cur small{color:var(--muted);font-size:.8rem}
.wkv-cws{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.wkv-cw{width:30px;height:30px;border:1px solid var(--line);background-size:cover;cursor:pointer;padding:0}.wkv-cw.on{outline:2px solid var(--ink);outline-offset:2px}
.wkv-tabs{display:flex;margin:14px -14px 0;border-bottom:1px solid var(--line)}.wkv-tabs button{flex:1;background:none;border:0;border-bottom:2px solid transparent;min-height:44px;font:500 .88rem Inter,sans-serif;cursor:pointer;color:var(--muted)}.wkv-tabs button[aria-selected=true]{color:var(--ink);border-color:var(--ink)}.wkv-tabs button[hidden]{display:none}
.wkv-tabpanel{padding-top:12px}
.wkv-search input{width:100%;min-height:44px;border:1px solid var(--line);padding:0 12px;font:inherit;font-size:16px}
.wkv-chips{display:flex;gap:6px;overflow-x:auto;padding:10px 0;scrollbar-width:none}.wkv-chip{flex:0 0 auto;border:1px solid var(--line);background:#fff;padding:6px 10px;font:500 .78rem Inter,sans-serif;cursor:pointer}.wkv-chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.wkv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;max-height:340px;overflow-y:auto}@media(min-width:600px) and (max-width:979px){.wkv-grid{grid-template-columns:repeat(6,1fr)}}
.wkv-grid button{border:1px solid var(--line);background:#fff;padding:0;cursor:pointer;text-align:left}.wkv-grid button span{display:block;aspect-ratio:1;background-size:200%;background-position:center}.wkv-grid button small{display:block;font-size:.66rem;padding:3px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wkv-grid button.on{outline:2px solid var(--ink);outline-offset:-2px}
.wkv-more{width:100%;margin-top:8px}.wkv-own{display:block;margin-top:12px;font-weight:600;color:var(--acc)}
.wkv-field{display:block;margin:0 0 14px}.wkv-field>span{display:flex;justify-content:space-between;font-size:.86rem;font-weight:500;margin-bottom:6px}.wkv-field em{font-style:normal;font-size:.72rem;background:#fbecd9;color:#7a4a12;padding:2px 6px}
.wkv-field input[type=range]{width:100%;accent-color:var(--ink);min-height:32px}.wkv-num{display:flex;align-items:center;gap:8px}.wkv-num input{width:120px;min-height:44px;border:1px solid var(--ink);padding:0 10px;font:600 1rem Inter,sans-serif}
.wkv-help{font-size:.8rem;color:var(--muted);margin:-6px 0 14px}
.wkv-actions{display:grid;gap:8px;margin-top:14px;border-top:1px solid var(--line);padding-top:14px}
.wkv-ai-btn{flex-direction:column;min-height:60px!important;background:var(--acc)!important;line-height:1.2}.wkv-ai-btn small{font-weight:400;opacity:.85;font-size:.74rem;margin-top:2px}
.wkv-row{display:flex;gap:6px;flex-wrap:wrap}.wkv-row>*{flex:1;min-width:0;white-space:nowrap;text-decoration:none}
.wkv-check{font-size:.8rem;color:var(--muted);display:flex;gap:6px;align-items:flex-start}
.wkv-looks{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:10px}.wkv-look{position:relative;border:1px solid var(--line);cursor:pointer;font-size:.72rem}.wkv-look.on{outline:2px solid var(--ink)}.wkv-look img{display:block;width:100%}.wkv-look span{display:block;padding:4px 6px}.wkv-look input{position:absolute;top:6px;left:6px;width:20px;height:20px}
.wkv-dlg{border:0;padding:0;max-width:min(560px,94vw);width:100%}.wkv-dlg.wide{max-width:min(1300px,96vw)}.wkv-dlg::backdrop{background:rgba(28,22,20,.6)}.wkv-dlg-in{padding:18px;position:relative}.wkv-x{position:absolute;right:6px;top:4px;border:0;background:none;font-size:1.8rem;cursor:pointer;line-height:1;padding:6px 10px}
.wkv-sharebox{display:flex;gap:6px}.wkv-sharebox input{flex:1;min-height:40px;border:1px solid var(--line);padding:0 8px;font-size:14px}
.wkv-cmp{display:grid;gap:10px}@media(min-width:700px){.wkv-cmp.n2{grid-template-columns:1fr 1fr}.wkv-cmp.n3,.wkv-cmp.n4{grid-template-columns:1fr 1fr}}.wkv-cmp figure{margin:0}.wkv-cmp img{width:100%;display:block}.wkv-cmp figcaption{font-size:.82rem;padding:4px 0}
.wkw-pad{padding:40px 16px}
button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.wkv [hidden],.wkd [hidden]{display:none!important}
/* stage width follows the photo aspect so it never distorts when height-capped */
.wkv-stage{width:min(100%,calc(62vh * var(--ar,1.333)))}@media(min-width:980px){.wkv-stage{width:min(100%,calc(78vh * var(--ar,1.333)))}}
.wkv-share{max-width:1000px}.wkv-share .wkv-stage{width:100%;max-height:none;aspect-ratio:4/3}.wks-cta{margin:14px 0}
.wkv-embed{padding:0}.wkv-embed .wkv-start{grid-template-columns:1fr!important;padding:8px 0}.wkv-embed h1{font-size:1.4rem}.wkv-embed .wkv-app{grid-template-columns:1fr!important}.wkv-embed .wkv-stagewrap{position:static}
/* ---------- builder v2 ---------- */
.wkd{max-width:1320px;margin:0 auto;padding:12px 12px 110px}
.wkd-head{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;flex-wrap:wrap}.wkd-head h1{font:500 clamp(1.6rem,5vw,2.4rem)/1.1 Jost,Inter,sans-serif;margin:.15em 0 .2em}
.wkd-headact{display:flex;gap:6px;align-items:center}.wkd-ic{width:42px;height:42px;border:1px solid var(--line);background:#fff;font-size:1.1rem;cursor:pointer}.wkd-ic:disabled{opacity:.35;cursor:default}
.wkd-steps{display:flex;gap:4px;overflow-x:auto;margin:12px 0;scrollbar-width:none;border-bottom:1px solid var(--line)}.wkd-steps::-webkit-scrollbar{display:none}
.wkd-steps button{flex:0 0 auto;display:flex;align-items:center;gap:8px;background:none;border:0;border-bottom:2px solid transparent;padding:10px 10px 12px;font:500 .88rem Inter,sans-serif;color:var(--muted);cursor:pointer;min-height:44px}
.wkd-steps button span{width:24px;height:24px;border-radius:50%;border:1px solid currentColor;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem}
.wkd-steps button.on{color:var(--ink);border-color:var(--ink)}.wkd-steps button.on span{background:var(--ink);color:#fff;border-color:var(--ink)}.wkd-steps button.done{color:var(--acc)}
.wkd-body{display:grid;gap:16px}@media(min-width:980px){.wkd-body{grid-template-columns:minmax(0,1fr) 400px;align-items:start}.wkd-preview{position:sticky;top:10px}}
.wkd-vtabs{display:flex;border:1px solid var(--ink);margin-bottom:10px}.wkd-vtabs button{flex:1;min-height:42px;background:#fff;border:0;font:500 .86rem Inter,sans-serif;cursor:pointer}.wkd-vtabs button+button{border-left:1px solid var(--ink)}.wkd-vtabs button[aria-selected=true]{background:var(--ink);color:#fff}
.wkd-canvaswrap{background:#efe9e4;padding:14px;text-align:center;min-height:200px}.wkd-canvaswrap canvas{max-width:100%;box-shadow:0 6px 24px rgba(28,22,20,.18);touch-action:none;cursor:grab;background:#fff}
.wkd-dim{font-size:.8rem;color:var(--muted);margin:8px 0 0}.wkd-drag{font-size:.74rem;color:var(--muted);margin:2px 0 0}.wkd-guides{display:flex;gap:6px;font-size:.82rem;margin-top:8px}
.wkd-scenes{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin-top:10px}.wkd-scenes button{border:1px solid var(--line);background:#fff;padding:6px 10px;cursor:pointer;font-size:.8rem}.wkd-scenes button.on{background:var(--ink);color:#fff}
.wkd-panel{background:#fff;border:1px solid var(--line);padding:16px}.wkd-panel h2{font:500 1.25rem Jost,Inter,sans-serif;margin:0 0 12px;display:flex;align-items:center;gap:10px}.wkd-panel h2 span{width:28px;height:28px;background:var(--ink);color:#fff;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem}
.wkd-units,.wkd-src{display:flex;border:1px solid var(--ink);margin-bottom:12px}.wkd-units button,.wkd-src button{flex:1;min-height:40px;background:#fff;border:0;cursor:pointer;font:500 .84rem Inter,sans-serif}.wkd-units button+button,.wkd-src button+button{border-left:1px solid var(--ink)}.wkd-units button.on,.wkd-src button.on{background:var(--ink);color:#fff}
.wkd-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.wkd-f{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.wkd-f>span{flex-basis:100%;font-size:.86rem;font-weight:500;display:flex;justify-content:space-between}.wkd-f input[type=number]{width:100%;flex:1;min-height:48px;border:1px solid var(--ink);padding:0 10px;font:600 1.05rem Inter,sans-serif}.wkd-f em{font-style:normal;color:var(--muted)}
.wkd-col input[type=range]{width:100%;accent-color:var(--ink);min-height:32px}
.wkd-presets{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:12px}.wkd-presets button{border:1px solid var(--line);background:#fff;text-align:left;padding:8px 10px;cursor:pointer;font:500 .82rem Inter,sans-serif}.wkd-presets small{display:block;color:var(--muted);font-weight:400}
.wkd-measure summary{cursor:pointer;font-weight:600;color:var(--acc);padding:6px 0}.wkd-measure ol{font-size:.84rem;padding-left:18px}
.wkd-in{width:100%;min-height:44px;border:1px solid var(--line);padding:10px 12px;font:inherit;font-size:16px}
.wkd-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;max-height:380px;overflow-y:auto}.wkd-grid button{border:1px solid var(--line);background:#fff;padding:0;cursor:pointer;text-align:left}.wkd-grid span{display:block;aspect-ratio:1;background-size:200%;background-position:center}.wkd-grid small{display:block;font-size:.66rem;padding:3px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wkd-grid button.on{outline:2px solid var(--ink);outline-offset:-2px}
.wkd-wide{width:100%;margin-top:8px}.wkd-drop{display:flex;flex-direction:column;align-items:center;gap:4px;border:2px dashed var(--line);padding:28px 12px;cursor:pointer;font-weight:600;text-align:center}.wkd-drop small{font-weight:400;color:var(--muted)}
.wkd-note{font-size:.8rem;color:var(--muted)}.wkd-q{font-size:.85rem;padding:8px 10px}.wkd-q.ok{background:#e6f0ea}.wkd-q.meh{background:#fbf1dc}.wkd-q.bad{background:#f8e1dc}.wkd-q:empty{display:none}
.wkd-gens{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:8px}.wkd-gens button{padding:0;border:1px solid var(--line);cursor:pointer}.wkd-gens img{width:100%;display:block}
.wkd-sub{font-weight:600;font-size:.86rem;margin:10px 0 6px}.wkd-cwrow{display:flex;gap:8px;flex-wrap:wrap}.wkd-cwrow button{border:1px solid var(--line);background:#fff;padding:4px;cursor:pointer;font-size:.72rem;width:84px}.wkd-cwrow span{display:block;aspect-ratio:1;background-size:cover;margin-bottom:3px}.wkd-cwrow button.on{outline:2px solid var(--ink)}
.wkd-palettes{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.wkd-palettes button{display:flex;border:1px solid var(--line);padding:2px;cursor:pointer;background:#fff}.wkd-palettes i{width:18px;height:28px;display:block}
.wkd-check{display:flex;align-items:center;gap:8px;font-size:.86rem;margin:4px 0 12px}.wkd-check input[type=color]{width:34px;height:30px;border:1px solid var(--line);padding:0;background:none}
.wkd-layouts{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:12px}.wkd-layouts button{border:1px solid var(--line);background:#fff;text-align:left;padding:8px 10px;cursor:pointer}.wkd-layouts button.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.wkd-layouts small{display:block;color:var(--muted);font-size:.72rem}
.wkd-row{display:flex;gap:8px;flex-wrap:wrap}
.wkd-papers{display:grid;gap:8px}.wkd-paper{display:grid;grid-template-columns:auto 1fr auto;gap:2px 10px;align-items:center;border:1px solid var(--line);padding:12px;cursor:pointer}.wkd-paper.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.wkd-paper input{grid-row:span 2}.wkd-paper span{grid-column:2;font-size:.78rem;color:var(--muted)}.wkd-paper em{grid-row:1/3;grid-column:3;font-style:normal;font-weight:600;font-size:.82rem;text-align:right}
.wkd-nav{display:flex;justify-content:space-between;gap:8px;margin-top:16px;border-top:1px solid var(--line);padding-top:14px}.wkd-nav .btn{flex:1}
.wkd-summary{position:fixed;left:0;right:0;bottom:0;z-index:50;background:#fff;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -6px 20px rgba(28,22,20,.08)}
.wkd-sum-l b{font-size:1.25rem;display:block}.wkd-sum-l small{font-size:.74rem;color:var(--muted)}
.wkd,.wkv{overflow-x:clip}.wkd-body>*,.wkv-app>*,.wkd-panel>*,.wkd-step>*{min-width:0}.wkd-src button,.wkd-units button{min-width:0;padding:0 4px;font-size:.8rem}
