@font-face{font-family:AtlasUI;src:url(AtlasUI.ttf) format('truetype');font-display:swap}
:root{--atlas-control-face:linear-gradient(180deg,#344051f2 0%,#242e3ff7 47%,#1c2533fa 100%);--atlas-control-edge:#8b9aaf37;--atlas-control-ink:#e9edf3;--atlas-control-shadow:0 3px 7px #0006,0 1px 0 #ffffff0b inset,0 -1px 0 #0008 inset}
button,input[type=button],input[type=submit],.button,.btn{font-family:AtlasUI,system-ui,sans-serif!important;font-weight:600;letter-spacing:.015em;text-transform:none;color:var(--atlas-control-ink);background:var(--atlas-control-face);border:1px solid var(--atlas-control-edge);border-radius:5px;box-shadow:var(--atlas-control-shadow);text-shadow:0 1px 2px #0007;transition:background .16s,box-shadow .16s,transform .16s;line-height:1.3}
button:not(:disabled):hover,input[type=submit]:hover,.button:hover,.btn:hover{background:linear-gradient(180deg,#435369,#2b384c);border-color:#a9c5e06b;box-shadow:0 5px 12px #0007,0 1px 0 #ffffff19 inset;transform:translateY(-1px)}
button:not(:disabled):active,.button:active,.btn:active{transform:translateY(1px);box-shadow:0 1px 3px #0006,0 2px 5px #0007 inset}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #87bde5;outline-offset:3px}
button:disabled{opacity:.43;cursor:default;text-shadow:none}
button.primary,button[aria-pressed=true],button.active,.button.primary{background:linear-gradient(180deg,#466276,#2b4254 50%,#213442);border-color:#87bde56b;color:#f0f5f9}
button.danger,button[data-action=stop],button[data-action=cancel]{background:linear-gradient(180deg,#773940,#52292f);border-color:#e46f7355}
.app-header nav a{font-family:AtlasUI,system-ui,sans-serif;letter-spacing:.015em;text-shadow:0 1px 2px #0006}
body[data-theme=light]{--atlas-control-face:linear-gradient(180deg,#faf8f4,#ece6dc 50%,#ded6c8);--atlas-control-edge:#7a6c5144;--atlas-control-ink:#3e454f;--atlas-control-shadow:0 3px 6px #4b3e3329,0 1px 0 #fff inset,0 -1px 0 #76695b20 inset}
body[data-theme=light] button{text-shadow:0 1px #fff9}
@media(prefers-reduced-motion:reduce){button,.button,.btn{transition:none!important;transform:none!important}}

/* Shared tactile finish; preserve the existing sizes and semantic button colours. */
:root{--atlas-control-face:linear-gradient(180deg,#3c485af7 0%,#2b3546fa 43%,#202a39 100%);--atlas-control-edge:#99adc342;--atlas-control-shadow:0 4px 8px #0006,0 1px 0 #e6f2ff1c inset,0 -2px 0 #0c131c88 inset}
button:not(:disabled):hover,input[type=submit]:hover,.button:hover,.btn:hover{box-shadow:0 6px 13px #0008,0 1px 0 #e8f4ff29 inset,0 -1px 0 #0007 inset}
button.primary:not(:disabled):hover,button[aria-pressed=true]:not(:disabled):hover,button.active:not(:disabled):hover,.button.primary:hover{background:linear-gradient(180deg,#55758b,#365268 50%,#294255)}
button.danger:not(:disabled):hover,button[data-action=stop]:not(:disabled):hover,button[data-action=cancel]:not(:disabled):hover{background:linear-gradient(180deg,#8a454d,#64323a);border-color:#e9919870}
body[data-theme=light] button:not(:disabled):hover,body[data-theme=light] .button:hover,body[data-theme=light] .btn:hover{background:linear-gradient(180deg,#fffdf9,#f4ede1 50%,#e5dacc);border-color:#7a6c5180;color:#333d49;box-shadow:0 5px 9px #4b3e3335,0 1px #fff inset}
