body,html{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-body)}.app-shell__footer{display:flex;align-items:center;justify-content:space-between;padding:14px 32px;margin-top:8px;border-top:1px solid var(--border,#e4e3dd);color:var(--text-muted,#6b6a63);font-size:12.5px}.app-shell__footer a{color:inherit}.app-shell__footer button{background:none;border:none;color:inherit;font:inherit;cursor:pointer;padding:0;text-decoration:underline}.app-shell__lang{display:flex;gap:6px;margin-left:auto;margin-right:16px}.app-shell__lang button{padding:4px 10px;border:1px solid var(--border,#e4e3dd);background:transparent;color:var(--text-muted,#6b6a63);border-radius:6px;cursor:pointer;font-size:12px}.app-shell__lang button[aria-pressed=true]{background:var(--text,#16150f);color:var(--bg,#fff);border-color:var(--text,#16150f)}.modal[hidden]{display:none}.status-pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600}.status-pill--active{background:color-mix(in srgb,#1f7a4d 14%,transparent);color:#1f7a4d}.status-pill--pending{background:color-mix(in srgb,#a8700a 16%,transparent);color:#a8700a}.status-pill--rejected,.status-pill--suspended{background:color-mix(in srgb,#b3261e 14%,transparent);color:#b3261e}.row-actions{display:flex;gap:8px}.row-actions button{border:1px solid var(--border,#e4e3dd);background:var(--panel,#fff);border-radius:8px;padding:6px 12px;font-size:12.5px;cursor:pointer;font-weight:600}.row-actions .btn-approve{color:#1f7a4d;border-color:color-mix(in srgb,#1f7a4d 40%,transparent)}.row-actions .btn-reject{color:#b3261e;border-color:color-mix(in srgb,#b3261e 40%,transparent)}.row-actions button:disabled{opacity:.5;cursor:not-allowed}.banner{margin:0 0 20px;padding:12px 16px;border-radius:10px;font-size:13.5px;line-height:1.4}.banner--warn{background:color-mix(in srgb,#a8700a 12%,transparent);border:1px solid color-mix(in srgb,#a8700a 35%,transparent);color:#8a5c08}.banner--error{background:color-mix(in srgb,#d1332f 12%,transparent);border:1px solid color-mix(in srgb,#d1332f 35%,transparent);color:#b3261e}.auth-split__error{display:none;align-items:flex-start;gap:10px;margin:0 0 16px;padding:12px 14px;border-radius:10px;background:color-mix(in srgb,var(--danger,#d1332f) 12%,transparent);border:1px solid color-mix(in srgb,var(--danger,#d1332f) 35%,transparent);color:var(--danger,#b3261e);font-size:13.5px;line-height:1.4}.auth-split__error.is-visible{display:flex}.auth-split__error svg{flex:none;width:18px;height:18px;margin-top:1px}