:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#181b22;background:#f6f7f9;font-size:16px;line-height:1.5;--accent:#205ae8;--muted:#636976;--border:#dde1e8}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;border:0;border-radius:9px;background:var(--accent);color:white;padding:12px 18px;font-weight:600}button:disabled{opacity:.5;cursor:wait}button.secondary{background:#eef1f6;color:#242c3b}button.danger{background:#b92c39}a{color:var(--accent)}input,textarea,select{width:100%;padding:12px;border:1px solid var(--border);border-radius:8px;background:white;color:inherit}label{display:block;font-size:.875rem;font-weight:600;margin-bottom:18px}label input,label textarea,label select{margin-top:7px}button:focus-visible,a:focus-visible{outline:3px solid #82a3ff;outline-offset:3px}h1{font-size:2.6rem;letter-spacing:-.045em;line-height:1.12;margin:18px 0}h2{font-size:1.4rem;letter-spacing:-.025em}p{color:var(--muted)}small,.eyebrow{font-size:.875rem;color:var(--muted)}.eyebrow{letter-spacing:.12em;font-weight:700}.brand{font-size:2rem;letter-spacing:-.08em;color:#171b24;text-decoration:none;font-weight:800;display:flex;align-items:center;gap:22px}.brand span{letter-spacing:0;font-size:.875rem;font-weight:500;border-left:1px solid var(--border);padding-left:22px;color:var(--muted)}.login{max-width:1080px;margin:auto;min-height:100dvh;padding:38px 32px;display:flex;flex-direction:column}.login section{width:min(100%,430px);margin:70px auto}.login form{margin-top:32px}.login button{width:100%;display:flex;justify-content:space-between}.login footer{margin-top:auto;font-size:.875rem;color:var(--muted)}#login-error{color:#ac2434}dialog{max-width:680px;width:calc(100% - 32px);max-height:90dvh;border:0;border-radius:16px;padding:28px}dialog::backdrop{background:#11182788}#toast{position:fixed;bottom:24px;right:24px;max-width:420px;background:#182235;color:white;border-radius:10px;padding:0;z-index:5}#toast:not(:empty){padding:16px 22px}@media(max-width:600px){.login{padding:24px}.login section{margin:48px auto}h1{font-size:2.2rem}}
.shell{display:grid;grid-template-columns:236px 1fr;min-height:100dvh}.sidebar{background:#fff;border-right:1px solid var(--border);padding:30px 20px;display:flex;flex-direction:column;gap:30px;position:sticky;top:0;height:100dvh}.sidebar .brand{display:block}.sidebar .brand span{display:block;border:0;padding:0;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;margin-top:5px}.sidebar nav{display:grid;gap:7px}.sidebar nav button{color:var(--muted);background:none;text-align:left;font-size:.9rem;font-weight:500}.sidebar nav button.active{background:#eef3ff;color:#1749c2;font-weight:700}.account{margin-top:auto;overflow-wrap:anywhere;font-size:.875rem}.account small{display:block;margin:10px 0}.workspace{max-width:1400px;width:100%;padding:36px 46px;margin:auto;align-self:start}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:35px}.topbar h1{font-size:2rem;margin:7px 0}.tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:22px}.tools input{max-width:420px}.count{font-size:.875rem;color:var(--muted);margin-left:auto}.panel{background:white;border:1px solid var(--border);border-radius:14px;overflow:hidden}.row{display:flex;gap:18px;align-items:center;padding:21px 24px;border-bottom:1px solid #eef0f4}.row:last-child{border-bottom:0}.row .body{flex:1;min-width:0}.row h3{font-size:1rem;margin:0 0 5px;overflow-wrap:anywhere}.row p{margin:2px 0;font-size:.875rem;overflow-wrap:anywhere}.badge{display:inline-block;padding:4px 9px;border-radius:6px;background:#f0f2f6;color:#566174;font-size:.8125rem;font-weight:600}.badge.pending,.badge.open,.badge.new{color:#805000;background:#fff2d9}.badge.verified,.badge.done{color:#0d694a;background:#e2f6ed}.badge.rejected,.badge.declined{color:#a12a37;background:#fde8eb}.avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#eef2f9;color:#354760;font-weight:700;flex-shrink:0}.actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;margin-top:20px}.detail{padding:20px 0;border-bottom:1px solid var(--border)}.detail h3{margin:0 0 6px;font-size:1rem}.detail p{white-space:pre-wrap;overflow-wrap:anywhere}.empty{padding:65px 25px;text-align:center}.empty h2{margin-bottom:8px}.notice{background:#eef3ff;padding:14px 18px;border-radius:10px;color:#244374;font-size:.875rem;margin:20px 0}.error{color:#ac2434;padding:14px;background:#fff0f1;border-radius:10px}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.dialog-head h2{margin:0}.dialog-head button{padding:5px 10px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.metrics div{padding:14px;background:#f5f7fa;border-radius:10px}.metrics strong{display:block;font-size:1.05rem;margin-top:5px}.pagination{display:flex;align-items:center;justify-content:space-between;margin:20px 0}dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:.875rem}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}.loading{padding:65px 20px;text-align:center;color:var(--muted)}.muted{color:var(--muted)}@media(max-width:850px){.shell{grid-template-columns:1fr}.sidebar{height:auto;position:static;border-right:0;border-bottom:1px solid var(--border);padding:20px;gap:18px}.sidebar nav{display:flex;flex-wrap:wrap}.sidebar .brand{display:flex}.sidebar .brand span{margin:0}.account{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.account small{margin:0}.workspace{padding:25px 20px}.row{padding:18px;flex-wrap:wrap}.row>.secondary{margin-left:60px}.metrics{grid-template-columns:1fr}.topbar{align-items:flex-start}dialog{padding:22px}}

input[type=checkbox]{width:auto;margin-right:10px}.sidebar{overflow-y:auto}.badge{font-size:.875rem}dialog{max-width:900px}

.settings{padding:24px}.settings form{max-width:420px}.sidebar nav button{font-size:.875rem}

.brand-logo{display:block;width:52px;height:52px;object-fit:contain;flex-shrink:0}

 .otp-fieldset{border:0;padding:0;margin:0 0 22px;min-width:0}.otp-fieldset legend{font-size:.875rem;font-weight:600;margin-bottom:10px}.otp-groups{display:flex;gap:24px}.otp-group{display:flex;gap:8px;flex:1;min-width:0}.otp-digit{width:calc((100% - 16px)/3);min-width:0;aspect-ratio:1;padding:0;text-align:center;font-size:1.8rem;font-weight:600;font-variant-numeric:tabular-nums;border-radius:10px;caret-color:var(--accent)}.otp-digit:focus{outline:3px solid #82a3ff;outline-offset:2px;border-color:var(--accent)}.otp-hint{font-size:.875rem;margin:12px 0 0}@media(max-width:380px){.otp-groups{gap:16px}.otp-group{gap:6px}.otp-digit{width:calc((100% - 12px)/3)}}

/* Riferr Intense — stationary mark, door → head → body, native 1.5 s cycle. */
:root{--loading-ink:#000;--loading-surface:#fff}
.riferr-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}
.riferr-loading-mark{display:block;width:40px;height:40px;flex-shrink:0;fill:var(--loading-ink)}
.riferr-loading-part{animation:riferr-intense 1.5s cubic-bezier(.37,0,.63,1) infinite}
.riferr-loading-part.part-1{animation-delay:-1s}
.riferr-loading-part.part-2{animation-delay:-.5s}
@keyframes riferr-intense{0%,100%{opacity:1}50%{opacity:.04}}
button[aria-busy=true]{position:relative;opacity:1;background:var(--loading-surface);color:var(--loading-ink);box-shadow:inset 0 0 0 1px var(--border)}
button[aria-busy=true] .riferr-button-label{visibility:hidden}
button[aria-busy=true]>.riferr-loading-mark{position:absolute;width:24px;height:24px;left:50%;top:50%;transform:translate(-50%,-50%)}
.riferr-network-loading{position:fixed;right:24px;bottom:24px;z-index:4;pointer-events:none;border:1px solid var(--border);border-radius:12px;background:var(--loading-surface);box-shadow:0 4px 24px #0000000d}
.riferr-network-loading>.loading{padding:12px 18px;flex-direction:row;font-size:.875rem}
.riferr-network-loading .riferr-loading-mark{width:24px;height:24px}
/* Prefer the indicator nearest the action, with the global one as fallback. */
body:has(#root .riferr-loading, #root button[aria-busy=true], dialog[open])>.riferr-network-loading,
dialog:has(.riferr-loading:not(.riferr-network-loading .riferr-loading),button[aria-busy=true])>.riferr-network-loading{display:none}
@media(prefers-reduced-motion:reduce){.riferr-loading-part{animation:none;opacity:1}}
@media(prefers-color-scheme:dark){
 :root{color-scheme:dark;color:#f1f2f5;background:#111318;--muted:#adb3c0;--border:#363b46;--accent:#8eafff;--loading-ink:#fff;--loading-surface:#1b1e25}
 .sidebar,.panel,dialog,input,textarea,select{background:#1b1e25;color:#f1f2f5}
 .brand{color:#fff}.brand-logo{filter:invert(1)}
 button{background:#416fdc;color:#fff}button.secondary{background:#292f3b;color:#edf0f7}
 button[aria-busy=true]{background:var(--loading-surface);color:var(--loading-ink)}
 .sidebar nav button.active,.notice{background:#233251;color:#c5d5ff}
 .row{border-color:#303540}.avatar,.metrics div{background:#272d38;color:#e0e7f4}
 .badge{background:#303744;color:#d2d9e6}.error{background:#42232b;color:#ffb9c2}#login-error{color:#ffb9c2}
}
