/* tool styles, tokenised onto the shared design system */
*{box-sizing:border-box}
  .wrap{max-width:560px;margin:0 auto;padding:18px 16px 64px}
  h1{font-size:24px;margin:0 0 2px}
  .sub{color:var(--muted);margin:0 0 16px}
  #drop{display:block;position:relative;border:2px dashed var(--line-strong);border-radius:16px;padding:38px 20px;text-align:center;color:var(--muted);cursor:pointer;background:var(--surface)}
  #drop.over{border-color:var(--accent);background:var(--accent-weak);color:var(--accent)}
  #drop strong{color:var(--ink);font-size:17px}
  #drop input{position:absolute;width:1px;height:1px;opacity:0}
  #status{text-align:center;color:var(--muted);min-height:20px;margin:10px 0}
  #status.bad{color:var(--warn);font-weight:600}
  #app{display:none}
  .card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px;margin-bottom:12px}
  .q{font-size:17px;font-weight:700;margin:0 0 12px}
  .prevRow{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
  .prevCol{text-align:center}
  .prevCol p{margin:0 0 6px;font-size:13px;color:var(--muted);font-weight:600}
  .cbox{display:inline-block;background:conic-gradient(var(--chk1) 25%,#0000 0 50%,var(--chk1) 0 75%,#0000 0) 0 0/16px 16px,var(--chk2);border:1px solid var(--line);border-radius:12px;padding:8px}
  canvas{display:block;image-rendering:pixelated;width:192px;height:144px}
  .tiny{font-size:13px;color:var(--muted)}
  .ok{color:var(--ok)} .warn{color:var(--warn)}
  .seg{display:flex;gap:8px;margin-top:4px}
  .seg button{flex:1;border:2px solid var(--line);background:var(--surface);border-radius:10px;padding:10px;font:inherit;font-size:14px;cursor:pointer;color:var(--ink)}
  .seg button[aria-pressed="true"]{border-color:var(--accent);background:var(--accent-weak);font-weight:700}
  .download{width:100%;border:0;background:var(--accent);color:var(--accent-ink);font:inherit;font-weight:700;font-size:17px;padding:15px;border-radius:14px;cursor:pointer}
  .download:disabled{opacity:.5;cursor:not-allowed}
  .fname{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:13px;color:var(--muted)}
  .fname input{flex:1;min-width:0;font:inherit;font-size:14px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;color:var(--ink)}
  .poselist{font-size:13px;color:var(--muted);margin:6px 0 0}
  @media (max-width:480px){ body{padding:12px} canvas{width:160px;height:120px} }
