/* Stradi Midnight / Blue — shared by every customer and admin page. */
:root{--bg:#0D1424;--panel:#172237;--input:#111D30;--border:#354A69;--hover:#233551;--text:#E8EEF8;--muted:#A6B4CC;--accent:#729DFF;--accent-soft:#A6C5FF;--accent-hover:#8EB1FF;--on-accent:#0D1424;--selected:#20365A;--ambient:#416BB826;--trace:#415B80;--pulse:#9CC3FF;--glow:#729DFF66}
:root{color-scheme:dark;font:14px/1.6 "Segoe UI",sans-serif;background:var(--bg);color:var(--text)}*{box-sizing:border-box}body{margin:0}header{display:flex;align-items:center;gap:28px;padding:20px 32px;border-bottom:1px solid var(--border)}header strong{letter-spacing:.18em;color:var(--accent)}header span,.muted{color:var(--muted)}header button{margin-left:auto}main{max-width:1500px;padding:28px;margin:auto}h1,h2,p{margin:0 0 14px}h1{font-size:26px;font-weight:600}h2{font-size:20px}.panel,dialog{background:var(--panel);border:1px solid var(--border);border-radius:16px}.login{max-width:420px;margin:8vh auto;padding:30px}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}button,input,select,textarea{font:inherit;color:inherit;border:1px solid var(--border);border-radius:8px;background:var(--input);padding:10px 13px}button{cursor:pointer;white-space:nowrap}button:hover{background:var(--hover)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}label{display:block;margin-bottom:16px;color:var(--text)}label input,label select,label textarea{display:block;width:100%;margin-top:6px}.table-wrap{overflow:auto;margin:20px 0}table{border-collapse:collapse;width:100%;text-align:left}th{color:var(--muted);font-size:12px;font-weight:500}td,th{padding:18px 20px;border-bottom:1px solid var(--border);vertical-align:top}td small{display:block;color:var(--muted)}td button{padding:5px 10px;margin:0 5px 5px 0}#search{width:min(100%,450px)}dialog{width:min(720px,92vw);max-height:90vh;padding:26px;color:inherit}dialog::backdrop{background:#0009;backdrop-filter:blur(4px)}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.features{display:grid;grid-template-columns:1fr 1fr;gap:8px}.features label{display:flex;gap:10px;align-items:center;margin:0}.features input{width:17px;height:17px;margin:0;accent-color:var(--accent)}fieldset{border:1px solid var(--border);border-radius:10px;margin:6px 0 20px;padding:16px}#notice,#form-error{color:#f1bdb5}#issued-key{width:100%;margin-bottom:16px}.event{border-top:1px solid var(--border);padding:16px 0}.event p{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted)}#logout[hidden],[hidden]{display:none!important}@media(max-width:700px){main{padding:16px}.fields{grid-template-columns:1fr}.heading{align-items:flex-start}header{padding:16px}.heading h1{font-size:22px}}
/* Login: scoped visual treatment, shared administration controls remain unchanged. */
body:not(.signed-in){background:radial-gradient(ellipse at 22% 44%,var(--ambient),transparent 58%),var(--bg)}
body:not(.signed-in)>header{border-bottom:0;padding:30px 48px}
body:not(.signed-in)>header span{font-size:12px;color:var(--muted)}
body:not(.signed-in)>main{max-width:1280px}
.login-screen{min-height:calc(100svh - 190px);display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:90px;padding:32px 22px 70px}
.login-story .eyebrow,.login .eyebrow{font-size:10px;letter-spacing:.2em;color:var(--muted);font-weight:600}
.login-story h1{font-size:clamp(30px,3.2vw,44px);line-height:1.45;font-weight:550;letter-spacing:-.045em;margin:24px 0}
.login-story h1 span{color:var(--accent-soft)}
.login-story>p{color:var(--muted);line-height:1.9;font-size:15px}
.circuit-art{width:100%;max-width:560px;display:block;margin:8px -12px 4px}
.story-caption{display:flex;align-items:center;gap:9px;font-size:11px;letter-spacing:.08em;color:var(--muted)}
.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#86bda9;flex-shrink:0}
.login{width:100%;max-width:410px;margin:0;padding:40px 0 40px 42px;border-left:1px solid var(--border);border-radius:0}
.login h2{font-size:27px;font-weight:550;letter-spacing:-.035em;margin:16px 0 8px}
.login-intro{font-size:14px;color:var(--muted);margin-bottom:36px}
.login label{font-size:13px;margin-bottom:9px}
.login>input{display:block;width:100%;height:50px;background:var(--input);border-color:var(--border);border-radius:9px}
.login>input::placeholder{color:var(--muted)}
.login-submit{display:flex;align-items:center;justify-content:space-between;width:100%;height:49px;background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:650;margin-top:6px}
.login-submit:hover{background:var(--accent-hover)}.login-submit:disabled{opacity:.65;cursor:wait}
.login-submit span{font-size:20px;font-weight:400}
#login-error{min-height:22px;margin:9px 0;color:#efb9ac;font-size:12px}
.login-footnote{display:flex;gap:9px;align-items:center;border-top:1px solid var(--border);padding-top:22px;margin-top:29px;color:var(--muted);font-size:11px}
@media(max-width:900px){.login-screen{gap:35px;grid-template-columns:1fr 1fr;padding-inline:0}.login{padding-left:26px}.login-story h1{font-size:30px}}
@media(max-width:640px){body:not(.signed-in)>header{padding:24px}body:not(.signed-in)>header span{font-size:11px}.login-screen{display:block;min-height:0;padding:28px 8px}.login-story{display:none}.login{padding:20px 0;border:0;margin:auto;max-width:390px}.login h2{font-size:28px}.login-footnote{margin-top:36px}}
.brand-logo{display:block;width:156px;height:52px;object-fit:contain;filter:brightness(0) invert(1)}
.login-story h1{font-size:clamp(30px,3vw,43px);letter-spacing:-.045em;line-height:1.35}
@media(max-width:640px){.brand-logo{width:126px;height:42px}body:not(.signed-in)>header{gap:18px}}
.admin-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.admin-toolbar #license-count{margin-left:auto;font-size:12px}
#editor{padding:0;overflow:hidden;max-height:90svh}#license{display:flex;flex-direction:column;max-height:90svh}#license>.heading{padding:20px 24px;margin:0;border-bottom:1px solid var(--border);flex-shrink:0}#license>.heading h2{margin:0}#close{width:34px;height:34px;padding:0}.editor-content{padding:20px 24px;overflow:auto;min-height:0}.editor-footer{display:flex;align-items:center;gap:12px;padding:14px 24px;border-top:1px solid var(--border);background:var(--panel);flex-shrink:0}.editor-footer #form-error{flex:1;margin:0;font-size:12px}.editor-content label{font-size:13px}.editor-content fieldset{margin-bottom:0}.history-fields{display:grid;grid-template-columns:110px 1fr;gap:12px 20px;font-size:13px}.history-fields dt{color:var(--muted)}.history-fields dd{margin:0;overflow-wrap:anywhere}#rows td:nth-child(4){white-space:pre-line}#rows td:last-child{white-space:nowrap}@media(max-width:600px){.editor-footer{padding:12px;flex-wrap:wrap}.editor-footer #form-error{flex-basis:100%}.editor-content{padding:16px}.history-fields{grid-template-columns:85px 1fr}}

.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
input[type=checkbox]{accent-color:var(--accent)}
/* Admin decorative circuit follows the shared brand palette. */
.circuit-art stop{stop-color:var(--trace)}
.circuit-art stop[offset=".5"]{stop-color:var(--pulse)}
.circuit-art>path{stroke:var(--trace)}
.circuit-art>path:first-of-type{stroke:var(--pulse)}
.circuit-art>g{stroke:var(--accent-soft)}
.circuit-art>circle{fill:var(--panel);stroke:var(--border)}
.circuit-art>path:last-child{stroke:var(--accent-soft)}
