.btn{justify-content:center;align-items:center;gap:var(--space-2);min-block-size:var(--target-min);min-inline-size:var(--target-min);padding:var(--space-2) var(--space-5);border:2px solid var(--color-ink);border-radius:var(--radius-control);font-family:var(--font-display);text-transform:uppercase;letter-spacing:var(--label-tracking);cursor:pointer;box-shadow:var(--shadow-panel);transition:transform var(--duration-fast) var(--ease-out-expo), box-shadow var(--duration-fast) var(--ease-out-expo);font-size:1.1875rem;font-weight:800;line-height:1;text-decoration:none;display:inline-flex}.btn--primary{background:var(--color-accent);color:var(--color-on-accent)}.btn--ghost{background:var(--color-surface);color:var(--color-ink);box-shadow:var(--shadow-card)}.btn--danger{background:var(--color-danger);color:var(--color-on-accent);border-color:var(--color-danger)}.btn:hover{box-shadow:var(--shadow-panel-hover);transform:translate(2px,2px)}.btn:active{transform:translate(4px,4px);box-shadow:0 0 #0000}.btn[aria-disabled=true]{background:var(--color-sunken);color:var(--color-ink-soft);box-shadow:none;cursor:not-allowed;border-style:dashed;transform:none}.btn[aria-busy=true]{cursor:progress}.spinner{align-items:center;display:inline-flex}.spinner-ring{border:3px solid;border-block-start-color:#0000;border-radius:50%;block-size:1em;inline-size:1em;animation:.8s linear infinite spin}.spinner[data-reduced=true] .spinner-ring,.skeleton-group[data-reduced=true] .skeleton{animation:none}.skeleton-group{gap:var(--space-2);display:grid}.skeleton{border-radius:var(--radius-panel);background:var(--color-sunken);block-size:1.25rem;animation:1.4s ease-in-out infinite skeleton-pulse;display:block}.field{gap:var(--space-1);display:grid}.field-label{font-family:var(--font-display);text-transform:uppercase;letter-spacing:var(--label-tracking);font-size:1.0625rem;font-weight:700}.field-optional{font-family:var(--font-text);font-size:var(--text-small);text-transform:none;letter-spacing:0;color:var(--color-ink-soft);font-weight:400}.field-hint,.field-counter{font-size:var(--text-small);color:var(--color-ink-soft)}.field-counter{text-align:end;font-variant-numeric:tabular-nums}.field-counter--over{color:var(--color-danger);font-weight:700}.field-error{gap:var(--space-2);font-size:var(--text-small);color:var(--color-danger);font-weight:600;display:flex}.field-error:before{content:"!";content:"!" / "";text-align:center;border:2px solid;border-radius:50%;flex:none;block-size:1.25em;inline-size:1.25em;font-size:.85em;line-height:1.05}.control{inline-size:100%;min-block-size:var(--target-min);padding:var(--space-2) var(--space-3);border:2px solid var(--color-control-border);border-radius:var(--radius-control);background:var(--color-sunken);color:var(--color-ink);font:inherit}.control--area{resize:vertical;line-height:1.45}.field--error .control{border-color:var(--color-danger)}.control:focus-visible{border-color:var(--color-focus)}.chip-group{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{min-block-size:var(--target-min);padding:var(--space-1) var(--space-4);border:2px solid var(--color-control-border);border-radius:var(--radius-chip);background:var(--color-surface);color:var(--color-ink);font:inherit;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out-expo);font-weight:600}.chip:hover{border-color:var(--color-ink)}.chip[aria-checked=true]{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-paper)}.chip[aria-checked=true]:before{content:"✓ ";content:"✓ " / ""}.chip-group--tile{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));display:grid}.chip--tile{min-block-size:5.5rem;padding:var(--space-3) var(--space-4);border-radius:var(--radius-panel);box-shadow:var(--shadow-card);font-family:var(--font-display);letter-spacing:var(--label-tracking);text-transform:uppercase;text-align:start;font-size:1.5rem;font-weight:800}.chip--tile[aria-checked=true]{background:var(--color-ink);box-shadow:var(--shadow-panel)}.chip--tile[aria-checked=true]:before{content:none}.dialog{inline-size:min(36rem, calc(100vw - 2 * var(--space-4)));max-block-size:calc(100vh - 2 * var(--space-4));border:2px solid var(--color-ink);border-radius:var(--radius-panel);background:var(--color-surface);color:var(--color-ink);box-shadow:var(--shadow-panel);padding:0}.dialog::backdrop{background:#08080c9e}.dialog-body{gap:var(--space-4);padding:var(--space-5);display:grid}html:has(dialog[open]){overflow:hidden}.notice{gap:var(--space-1) var(--space-3);padding:var(--space-3) var(--space-4);border:2px solid var(--notice-color,var(--color-ink));border-radius:var(--radius-panel);background:var(--color-surface);grid-template-columns:auto 1fr;display:grid}.notice:before{content:"i";content:"i" / "";border:2px solid var(--notice-color,var(--color-ink));block-size:1.5rem;inline-size:1.5rem;color:var(--notice-color,var(--color-ink));font-family:var(--font-display);text-align:center;border-radius:50%;grid-row:1/span 2;font-weight:800;line-height:1.25}.notice--success{--notice-color:var(--band-strong)}.notice--success:before{content:"✓";content:"✓" / ""}.notice--warn{--notice-color:var(--band-solid)}.notice--warn:before{content:"!";content:"!" / ""}.notice--error{--notice-color:var(--color-danger)}.notice--error:before{content:"×";content:"×" / ""}.notice-title{font-weight:700}.notice-body{grid-column:2}.load-more,.load-more-end{padding-block:var(--space-4);color:var(--color-ink-soft);justify-content:center;display:flex}.empty-state{justify-items:start;gap:var(--space-3);padding:var(--space-6) var(--space-5);border:2px dashed var(--color-control-border);border-radius:var(--radius-panel);display:grid}.empty-state-title{font-size:var(--text-h2)}.empty-state-body{max-inline-size:40rem;color:var(--color-ink-soft)}@media (forced-colors:active){.btn,.control,.chip,.notice,.dialog{border-color:canvastext}.chip[aria-checked=true]{color:highlighttext;forced-color-adjust:none;background:highlight}}.settings-actions{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}
