.adm-btn{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--v3-r-sm);border:1px solid var(--v3-line);background:var(--v3-card);color:var(--v3-ink);padding:8px 14px;font-size:var(--v3-t-action);font-weight:600;font-family:inherit;line-height:1.3;cursor:pointer;text-decoration:none;min-height:44px;transition:background var(--v3-mo-quick) var(--v3-mo-ease),border-color var(--v3-mo-quick) var(--v3-mo-ease),opacity var(--v3-mo-quick) var(--v3-mo-ease)}.adm-btn:hover{background:var(--v3-paper)}.adm-btn:disabled{opacity:.55;cursor:not-allowed}.adm-btn:focus-visible{outline:3px solid var(--v3-orange);outline-offset:2px}.adm-btn--primary{background:var(--v3-orange);border-color:var(--v3-orange);color:var(--v3-card)}.adm-btn--primary:hover{background:var(--v3-orange-deep);border-color:var(--v3-orange-deep)}.adm-btn--approve{background:var(--v3-green);border-color:var(--v3-green);color:var(--v3-card)}.adm-btn--approve:hover{background:var(--v3-green-deep);border-color:var(--v3-green-deep)}.adm-btn--danger{background:var(--v3-card);border-color:var(--v3-red-line);color:var(--v3-red)}.adm-btn--danger:hover{background:var(--v3-red-soft)}.adm-btn--quiet{background:var(--v3-paper);color:var(--v3-muted);font-weight:600;font-size:12.5px}.adm-btn--quiet:hover{background:var(--v3-card);color:var(--v3-ink)}.adm-btn--danger-solid{background:var(--v3-red);border-color:var(--v3-red);color:var(--v3-card)}.adm-btn--danger-solid:hover{background:var(--v3-red-deep);border-color:var(--v3-red-deep)}.adm-btn--sm{padding:5px 10px;font-size:var(--v3-t-pill);border-radius:var(--v3-r-sm)}label.adm-btn{cursor:pointer}label.adm-btn.is-disabled{opacity:.55;cursor:not-allowed;pointer-events:none}label.adm-btn>input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.upload-btn{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.upload-btn__name{font-size:14px;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-btn label{cursor:pointer}.upload-btn__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.upload-btn:focus-within label{outline:2px solid currentColor;outline-offset:2px}