:root{
  --wlc-bg:#fff; --wlc-border:#e5e7eb; --wlc-muted:#64748b; --wlc-text:#0f172a;
  --btn:#111827; --btn-text:#fff; --btn-hover:#0b1220; --btn-ghost:#fff; --btn-ghost-text:#0f172a; --btn-ghost-border:#cbd5e1;
}
.wlc-wrap{max-width:980px;margin:1.5rem auto;padding:1rem;border:1px solid var(--wlc-border);border-radius:14px;background:var(--wlc-bg);box-shadow:0 6px 18px rgba(0,0,0,.05)}
.wlc-grid{display:grid;grid-template-columns:1fr 360px;gap:1.25rem;align-items:start}
.wlc-card{padding:1rem;border:1px solid var(--wlc-border);border-radius:12px;background:#fafafa}
.wlc-controls-2col{display:grid;grid-template-columns:1.15fr .85fr;gap:1.25rem;align-items:start}
.wlc-group{display:grid;gap:.9rem}
.wlc-field{display:grid;grid-template-columns:140px 1fr;gap:.6rem;align-items:center}
.wlc-field label{font-weight:600;font-size:.9rem;color:var(--wlc-text);text-align:left}
.wlc-field input[type="text"], .wlc-field input[type="color"], .wlc-field select{border:1px solid var(--wlc-border);border-radius:10px;padding:.55rem .7rem;background:#fff}
.wlc-field input[type="range"]{width:100%}
.wlc-radio{display:flex;gap:.8rem;align-items:center;flex-wrap:wrap}
.wlc-radio input{accent-color:#111827}
.wlc-btn{appearance:none;border:none;border-radius:12px;padding:.65rem 1rem;font-weight:600;cursor:pointer;transition:transform .04s ease, box-shadow .2s ease}
.wlc-btn:active{transform:translateY(1px)}
.wlc-btn.primary{background:var(--btn);color:var(--btn-text);box-shadow:0 6px 14px rgba(0,0,0,.12)}
.wlc-btn.primary:hover{background:var(--btn-hover)}
.wlc-btn.ghost{background:var(--wlc-bg);color:var(--wlc-text);border:1px solid var(--btn-ghost-border)}
canvas#wlc-canvas{width:100%;height:auto;border:1px dashed #cbd5e1;background:#fff;border-radius:12px;display:block}
.wlc-note{font-size:.86rem;color:var(--wlc-muted)}
.wlc-download-under{display:flex;gap:.6rem;justify-content:flex-start;margin-top:.75rem;flex-wrap:wrap}
@media (max-width:960px){.wlc-grid{grid-template-columns:1fr}.wlc-controls-2col{grid-template-columns:1fr}}
@media (max-width:640px){.wlc-field{grid-template-columns:1fr;gap:.4rem}}