.sd .sd-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.5rem}
.sd .sd-head h1{font-size:1.5rem;margin:.2rem 0 .1rem}
.sd-hs{display:flex;align-items:center;gap:.6rem}
.sd-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:1.5rem;align-items:start;margin-top:1rem}
.sd-prev{position:sticky;top:.75rem;display:flex;flex-direction:column;gap:.5rem}
.sd-scroll{background:var(--bg-card2);border:1px solid var(--border);border-radius:var(--r-3);padding:1rem;display:grid;place-items:center}
.sd-cap{margin:0;text-align:center}
.sd-stage{flex:none;box-shadow:var(--sh-2);background:#fff;line-height:0;margin:auto}
.sd-stage svg{width:100%;height:auto;display:block}
.sd-chk{display:flex;align-items:center;gap:.5rem;font-size:.9rem}
.sd-ctl{display:flex;flex-direction:column;gap:1.1rem;min-width:0}
.sd-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;border-bottom:1px solid var(--border)}
.sd-steps button{width:100%;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font:inherit;font-size:.9rem;padding:.6rem .2rem;cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:center;gap:.4rem;margin-bottom:-1px}
.sd-steps button b{display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;border:1px solid var(--border-ctl);font-size:.78rem;font-weight:600}
.sd-steps button.done b{background:var(--champagne);border-color:var(--border-amber)}
.sd-steps button[aria-current=step]{color:var(--white);border-bottom-color:var(--border-amber);font-weight:600}
.sd-steps button[aria-current=step] b{background:var(--amber);border-color:var(--amber);color:var(--on-amber)}
.sd-pane h2{font-family:var(--font-head);font-size:1.25rem;font-weight:500;margin:0}
.sd-nav{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-top:.4rem}
.sd-nav .btn-primary{margin-left:auto}
.sd-logo-r{flex-wrap:nowrap}.sd-logo-a{display:flex;flex-wrap:wrap;gap:.4rem}
.sd-sum{margin:0;font-variant-numeric:tabular-nums;color:var(--muted)}
.sd-pane{display:flex;flex-direction:column;gap:.7rem}.sd-pane[hidden]{display:none}
.sd-pane h3{font-size:.95rem;margin:.6rem 0 0;display:flex;gap:.5rem;align-items:center}
.sd-f{display:flex;flex-direction:column;gap:.3rem;font-size:.84rem;color:var(--muted)}
.sd-f textarea,.sd-f input,.sd-f select,.sd-pane select{width:100%;font:inherit}
.sd-f textarea{padding:.6rem .8rem;border:1px solid var(--border-ctl);border-radius:var(--r-sm);background:var(--bg-card);color:var(--white);resize:vertical}
.sd-note{margin:0}
.sd-r{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}
.sd-rl{min-width:6.5rem;font-size:.86rem;color:var(--muted)}
.sd-r input[type=range]{flex:1;min-width:120px;accent-color:var(--amber)}
.sd-r output{min-width:3rem;text-align:right;font-variant-numeric:tabular-nums;font-size:.84rem}
.sd-r input[type=color]{width:38px;height:34px;padding:2px;border:1px solid var(--border-ctl);border-radius:8px;background:var(--bg-card);cursor:pointer}
.sd-r input[type=number]{width:5rem}
.sd-seg{display:inline-flex;flex-wrap:wrap;border:1px solid var(--border-ctl);border-radius:999px;overflow:hidden}
.sd-seg button{border:0;background:transparent;color:var(--white);font:inherit;font-size:.86rem;padding:.4rem .85rem;cursor:pointer;min-height:36px}
.sd-seg button[aria-checked=true]{background:var(--amber);color:var(--on-amber);font-weight:700}
.sd-chips{display:flex;gap:.4rem;overflow-x:auto;padding-bottom:.2rem}
.sd-chip{flex:none;border:1px solid var(--border-ctl);background:transparent;color:var(--white);font:inherit;font-size:.84rem;padding:.35rem .8rem;border-radius:999px;cursor:pointer;min-height:36px}
.sd-chip[aria-pressed=true]{background:var(--amber);color:var(--on-amber);border-color:var(--amber);font-weight:700}
.sd-tpls{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:.6rem}
.sd-tpl{position:relative;display:flex;flex-direction:column;gap:.35rem;padding:.4rem;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg-card);color:var(--white);font:inherit;cursor:pointer;text-align:center}
.sd-tpl.on{border-color:var(--border-amber);box-shadow:0 0 0 2px var(--amber-glow)}
.sd-tpl span{display:block;line-height:0;background:#fff}.sd-tpl svg{width:100%;height:auto;display:block}
.sd-tpl small{font-size:.74rem;line-height:1.2}
.sd-tpl em{position:absolute;top:.6rem;left:.6rem;z-index:1;font-style:normal;font-size:.62rem;font-weight:700;background:var(--amber);color:var(--on-amber);padding:.1rem .4rem;border-radius:999px}
.sd-themes{display:flex;flex-wrap:wrap;gap:.5rem}
.sd-th{width:36px;height:36px;border-radius:50%;border:2px solid var(--border-ctl);cursor:pointer}
.sd-th[aria-checked=true]{outline:3px solid var(--amber);outline-offset:2px}
.sd-logo{width:56px;height:56px;border:1px dashed var(--border-ctl);border-radius:var(--r-sm);display:grid;place-items:center;background:#fff;overflow:hidden}
.sd-logo img{max-width:100%;max-height:100%}
.sd-sizes{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.5rem}
.sd-sizes button{display:flex;flex-direction:column;gap:.15rem;text-align:left;padding:.6rem .7rem;border:1px solid var(--border-ctl);border-radius:var(--r-sm);background:var(--bg-card);color:var(--white);font:inherit;cursor:pointer}
.sd-sizes button[aria-checked=true]{border-color:var(--amber);box-shadow:0 0 0 2px var(--amber-glow)}
.sd-sizes small{color:var(--muted);font-size:.74rem}
.sd-more summary{cursor:pointer;color:var(--amber-text);font-weight:600;padding:.3rem 0}
.sd-more>*:not(summary){margin-top:.5rem}
.sd-list{display:flex;flex-direction:column;gap:.5rem}
.sd-card{display:grid;grid-template-columns:56px 1fr auto;gap:.6rem;align-items:center;padding:.5rem;border:1px solid var(--border);border-radius:var(--r-sm)}
.sd-card>span{line-height:0;background:#fff}.sd-card>span svg{width:100%;height:auto}
.sd-card b,.sd-card small{display:block;overflow-wrap:anywhere}
.sd-acts{display:flex;gap:.3rem;flex-wrap:wrap}
.sd-exp{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}
@media(max-width:900px){.sd-grid{grid-template-columns:minmax(0,1fr);gap:1rem}.sd-prev{position:static}.sd-scroll{padding:.6rem}.sd-exp .btn{flex:1 1 100%}.sd-steps button{font-size:.8rem;gap:.25rem}.sd-nav .btn-lg{flex:1}}
