/* Shared brand primitives. Used by operator pages and the isolated customer demo. */
@font-face{font-family:Epilogue;src:url('/fonts/epilogue.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Mulish;src:url('/fonts/mulish.woff2') format('woff2');font-style:normal;font-weight:200 1000;font-display:swap}
:root{
 color-scheme:light;--bg:#edf2f7;--card:#fff;--raised:#e7eef5;--inset:#f4f7fa;--ink:#172333;--ink-2:#46576a;--ink-3:#526276;--line:#c8d3df;--line-strong:#8799ae;--dm-orange-ink:#a84200;--on-accent:#172333;--ok:#176641;--warn:#864500;--bad:#a02630;--info:#24568b;--positive-bg:#e6f4ed;--warning-bg:#fff2dc;--danger-bg:#fff0f0;--info-bg:#edf4ff;--shadow:none;
 --dm-orange:#ff7500;--dm-charcoal:#191b1e;--dm-page:var(--inset);--dm-black:var(--ink);--dm-white:#fff;--ai:var(--ink-2);
 --radius:16px;--pill:100px;--tap:44px;--bar-h:64px;
 --head:Epilogue,'Segoe UI',system-ui,sans-serif;--body:Mulish,'Segoe UI',system-ui,sans-serif;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{color:var(--ink);background:var(--bg);font:400 16px/1.5 var(--body);-webkit-text-size-adjust:100%;scroll-padding-top:90px}
body{margin:0;min-height:100vh;min-height:100dvh;color:var(--ink);background:var(--bg)}
button,input,textarea,select{font:inherit}
button,a,summary{touch-action:manipulation}
a{color:var(--dm-orange-ink)}
button{cursor:pointer}
button:disabled{cursor:not-allowed}
:where(a,button,input,textarea,select,summary):focus-visible{outline:2px solid var(--dm-orange);outline-offset:3px;box-shadow:0 0 0 2px var(--bg)}
h1,h2,h3{font-family:var(--head);color:var(--ink);letter-spacing:-.035em;line-height:1.18}
h1{font-size:32px}h2{font-size:24px}h3{font-size:20px}
input,textarea,select{color-scheme:light}
::placeholder{color:var(--ink-3);opacity:1}
::selection{color:var(--on-accent);background:var(--dm-orange)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

