.btn{min-height:var(--touch);border-radius:var(--radius-control);font-weight:700;font-size:var(--text-body);transition:transform .12s var(--ease-out), background-color .12s var(--ease-out);border:2px solid #0000;justify-content:center;align-items:center;gap:10px;padding:0 22px;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn--primary{background:var(--team);color:var(--team-ink)}.btn--secondary{background:var(--paper);color:#14181f;border-color:var(--control-line)}.btn--ink{background:var(--ink);color:var(--ground)}.btn--danger{background:var(--danger);color:#fff}.btn--ghost{color:inherit;background:0 0;border-color:currentColor}.icon-btn{width:var(--touch);height:var(--touch);border-radius:var(--radius-control);color:inherit;transition:transform .12s var(--ease-out);background:0 0;border:2px solid #ffffff4d;place-items:center;display:grid}.icon-btn:active{transform:scale(.94)}@media (hover:hover) and (pointer:fine){.btn--secondary:hover{background:#f1f4f8}.btn--primary:hover,.btn--ink:hover,.btn--danger:hover{filter:brightness(1.08)}.icon-btn:hover{background:#ffffff1f}}.segmented{border:0;min-width:0;margin:0;padding:0}.segmented legend,.field__label{font-weight:700;font-size:var(--text-label);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:8px;padding:0}.segmented__track{flex-wrap:wrap;gap:8px;display:flex}.segmented__option{position:relative}.segmented__option input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.segmented__option>span{min-height:var(--touch);border-radius:var(--radius-control);border:2px dashed var(--slot-line);-webkit-user-select:none;user-select:none;align-items:center;padding:0 18px;font-weight:700;display:inline-flex}.segmented__option>input:checked+span{border-style:solid;border-color:var(--team);background:var(--team);color:var(--team-ink)}.segmented__option>input:focus-visible+span{outline:3px solid var(--focus);outline-offset:3px}.dialog-backdrop{z-index:50;padding:var(--gutter);animation:backdrop-in .16s var(--ease-out);background:#0b0e138c;place-items:center;display:grid;position:fixed;inset:0}.dialog{width:min(520px,100%);max-height:calc(100dvh - 2 * var(--gutter));overscroll-behavior:contain;background:var(--paper);color:#14181f;border-radius:var(--radius-sticker);box-shadow:var(--shadow-lift);animation:dialog-in .2s var(--ease-out);gap:18px;padding:24px;display:grid;overflow:hidden auto}.dialog__head{justify-content:space-between;align-items:center;gap:16px;display:flex}.dialog__head h2{font-size:var(--text-headline)}@media (width<=480px),(height<=520px){.dialog-backdrop{place-items:start center;padding:12px}.dialog{gap:10px;width:min(360px,100%);max-height:calc(100dvh - 24px);padding:14px 16px 16px}.dialog__head h2{font-size:var(--text-lead)}.dialog__actions .btn{min-height:var(--touch);padding-inline:16px}}.dialog__close{border-color:var(--control-line)}.dialog__actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}@keyframes backdrop-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}@media (prefers-reduced-motion:reduce){.dialog,.dialog-backdrop{animation-duration:.12s}.dialog{animation-name:backdrop-in}}.toggle{position:relative}.toggle input{opacity:0;width:1px;height:1px;position:absolute}.toggle label{min-height:var(--touch);cursor:pointer;align-items:flex-start;gap:14px;display:flex}.toggle__track{border-radius:var(--radius-pill);border:2px dashed var(--slot-line);width:56px;height:32px;transition:background-color .14s var(--ease-out), border-color .14s var(--ease-out);flex:none;margin-top:2px;position:relative}.toggle__thumb{background:var(--slot-line);width:22px;height:22px;transition:transform .16s var(--ease-out);border-radius:50%;position:absolute;top:3px;left:3px}.toggle input:checked+label .toggle__track{border-style:solid;border-color:var(--ink);background:var(--ink)}.toggle input:checked+label .toggle__thumb{background:var(--ground);transform:translate(24px)}.toggle input:focus-visible+label .toggle__track{outline:3px solid var(--focus);outline-offset:3px}.toggle__text{gap:2px;display:grid}.toggle__label{font-weight:700}.toggle__help{color:var(--ink-muted);font-size:var(--text-small);max-width:52ch}
