
  .lay .lcell{background:#c7ccd6;border-radius:2px;flex:1}

  #stageWrap{background:#000;box-shadow:0 8px 34px rgba(0,0,0,.35);border-radius:2px}
  #stage{position:relative;overflow:hidden}
  .slot{position:absolute;overflow:hidden;background:#222;cursor:pointer}
  .slot .ph{position:absolute;inset:0;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;color:#888;font-size:11px;text-align:center;padding:6px;pointer-events:none}
  .slot .ph b{font-size:20px;color:#aaa;font-weight:400}
  .slot img{position:absolute;user-select:none;-webkit-user-drag:none}
  .slot.sel{outline:3px solid var(--accent);outline-offset:-3px;z-index:5}
  .slot.dragover{outline:3px dashed var(--accent2);outline-offset:-3px}
  .slot.empty{background:#2b2b2b}

  .pagebar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:center;max-width:100%}
  .pagechip{padding:5px 9px;border-radius:20px;background:var(--panel2);border:1px solid var(--line);font-size:12px;cursor:pointer;white-space:nowrap}
  .pagechip.active{border-color:var(--accent);color:var(--accent);font-weight:700}
  .pagechip.incomplete::after{content:"•";color:var(--warn);margin-left:4px;font-size:16px;line-height:0}
  .pagechip.done::after{content:"•";color:var(--ok);margin-left:4px;font-size:16px;line-height:0}

  label.row{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--muted);margin:8px 0}
  input[type=range]{width:120px;accent-color:var(--accent)}
  .swatch{width:24px;height:24px;border-radius:6px;border:1px solid var(--line);cursor:pointer;display:inline-block;vertical-align:middle;margin-left:4px}
  .swatch.active{outline:2px solid var(--accent);outline-offset:1px}
  .divider{height:1px;background:var(--line);margin:14px 0}
  .hint{font-size:11px;color:var(--muted);line-height:1.5}

  #cartBar{position:fixed;left:0;right:0;bottom:var(--pv);height:var(--cart);background:var(--panel);border-top:1px solid var(--line);display:flex;align-items:center;gap:12px;padding:0 16px;z-index:30;box-shadow:0 -4px 18px rgba(0,0,0,.06)}
  #status{font-size:12.5px;font-weight:600;flex:1;min-width:0;line-height:1.3;overflow:hidden;text-overflow:ellipsis}
  #status .s-ok{color:var(--ok)} #status .s-warn{color:var(--warn)}
  #tutorialBtn{display:none;align-items:center;gap:6px;text-decoration:none;background:var(--panel2);border:1px solid var(--line);color:var(--txt);border-radius:9px;padding:10px 12px;font-size:13px;font-weight:600;white-space:nowrap}
  #addCart{min-width:210px;font-size:15px;padding:13px 18px}
  #addCart:disabled{opacity:.45;cursor:not-allowed;filter:none}

  #tabbar{display:none}

  #toast{position:fixed;bottom:calc(var(--cart) + 14px);left:50%;transform:translateX(-50%);background:#111;color:#fff;padding:10px 18px;border-radius:10px;font-size:13px;opacity:0;transition:.3s;pointer-events:none;z-index:60;max-width:88%;text-align:center}
  #toast.show{opacity:.95}