:root{color-scheme:dark;--bg:#111513;--panel:#1A211C;--panel2:#252D26;--line:#39453C;--txt:#EEF2ED;--muted:#9EAEA2;--green:#009640;--hi:#33D077;--red:#F07176}
:root[data-theme="light"]{color-scheme:light;--bg:#F2F5F2;--panel:#fff;--panel2:#EDF2ED;--line:#CBD6CD;--txt:#202E23;--muted:#596A5C;--green:#009640;--hi:#00863a;--red:#ba3548}
*{box-sizing:border-box}body{margin:0;font:14px Inter,Segoe UI,Arial,sans-serif;color:var(--txt);background:radial-gradient(ellipse at 78% -20%,rgba(0,150,64,.11),transparent 48%),var(--bg)}button,input,select{font:inherit}.auth-page{min-height:100vh;display:grid;place-items:center;padding:22px}.auth-card{width:min(460px,100%);background:linear-gradient(145deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:0 24px 80px rgba(0,0,0,.28)}.auth-card-wide{width:min(500px,100%)}.auth-brand{padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:24px}.auth-word{font-size:30px;font-weight:900;letter-spacing:-1.2px}.auth-word span{color:var(--green);font-size:23px}.auth-claim{font-size:9px;letter-spacing:2px;color:var(--muted);font-weight:800;margin-top:7px}.auth-kicker{font-size:10px;letter-spacing:2px;color:var(--hi);font-weight:800}.auth-card h1{font-size:27px;margin:7px 0 9px}.auth-copy{color:var(--muted);line-height:1.6}.auth-form{display:grid;gap:13px;margin-top:18px}.auth-form label{display:grid;gap:6px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.7px}.auth-form input,.auth-form select{width:100%;border:1px solid var(--line);border-radius:9px;background:#151d17;color:var(--txt);padding:11px 12px;outline:none}.auth-form input:focus,.auth-form select:focus{border-color:var(--green);box-shadow:0 0 0 2px rgba(0,150,64,.16)}:root[data-theme="light"] .auth-form input,:root[data-theme="light"] .auth-form select{background:#fff}.auth-primary{display:inline-flex;align-items:center;justify-content:center;border:1px solid #009640;border-radius:9px;padding:11px 14px;background:linear-gradient(115deg,#008434,#006c2d);color:#fff;font-weight:800;cursor:pointer;text-decoration:none}.auth-primary:hover{background:linear-gradient(115deg,#009a40,#007f35)}.auth-linkbtn{margin-top:15px}.auth-tabs{display:flex;gap:7px;margin-top:18px}.auth-tabs button{flex:1;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--panel2);color:var(--muted);cursor:pointer}.auth-tabs button.active{border-color:var(--green);color:var(--txt);background:rgba(0,150,64,.12)}.auth-msg{padding:10px 12px;border-radius:9px;margin:15px 0;font-size:12px}.auth-msg.err{border:1px solid rgba(240,113,118,.5);background:rgba(240,113,118,.08);color:#ffb0b4}.auth-msg.ok{border:1px solid rgba(51,208,119,.45);background:rgba(0,150,64,.10);color:#8ce8af}:root[data-theme="light"] .auth-msg.err{color:#8d1e2a}:root[data-theme="light"] .auth-msg.ok{color:#096a31}.auth-note{font-size:11px;line-height:1.55;color:var(--muted)}.auth-foot{margin-top:25px;padding-top:15px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:10px;letter-spacing:1px}.auth-foot select{background:var(--panel2);color:var(--txt);border:1px solid var(--line);border-radius:7px;padding:6px}
/* In-app account UI */
.auth-user-btn{white-space:nowrap}.auth-pop{position:fixed;z-index:2000;min-width:240px;background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:7px;box-shadow:0 20px 55px rgba(0,0,0,.35)}.auth-pop button{width:100%;text-align:left;margin:2px 0}.auth-pop-head{padding:9px 10px 10px;border-bottom:1px solid var(--line);margin-bottom:5px}.auth-pop-head strong{display:block}.auth-pop-head small{color:var(--muted)}.auth-admin-overlay{position:fixed;inset:0;z-index:2100;background:rgba(3,8,5,.72);display:grid;place-items:center;padding:18px}.auth-admin{width:min(1050px,100%);max-height:88vh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:18px}.auth-admin-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.auth-admin-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:14px;margin-top:14px}.auth-admin table{width:100%;border-collapse:collapse;font-size:12px}.auth-admin th,.auth-admin td{padding:9px;border-bottom:1px solid var(--line);vertical-align:middle}.auth-admin select,.auth-admin input{background:var(--panel2);color:var(--txt);border:1px solid var(--line);border-radius:7px;padding:6px}.auth-admin .mini{padding:6px 8px;font-size:11px}.auth-audit{max-height:430px;overflow:auto;font-size:11px}.auth-audit-row{padding:7px 4px;border-bottom:1px solid var(--line)}.auth-audit-row small{display:block;color:var(--muted);margin-top:3px}.auth-secret{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;word-break:break-all;background:var(--panel2);border:1px solid var(--green);padding:10px;border-radius:8px;margin-top:9px}.auth-change{display:grid;gap:10px}.auth-change input{width:100%;padding:10px;background:var(--panel2);color:var(--txt);border:1px solid var(--line);border-radius:8px}@media(max-width:800px){.auth-admin-grid{grid-template-columns:1fr}.auth-admin{padding:12px}.auth-admin table{font-size:11px}.auth-admin th:nth-child(2),.auth-admin td:nth-child(2){display:none}}
/* V1.2 central access control */
.auth-access-mini{padding:7px 10px;color:var(--muted);font-size:10px;border-bottom:1px solid var(--line);margin-bottom:4px}
.auth-admin-grid-v12{grid-template-columns:minmax(0,1.55fr) minmax(260px,.65fr)}
.auth-user-list{display:grid;gap:12px;margin-top:10px}
.auth-user-card{border:1px solid var(--line);border-radius:12px;background:linear-gradient(145deg,var(--panel2),var(--panel));padding:13px}
.auth-user-summary{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.auth-user-summary strong{display:block;font-size:14px}.auth-user-summary small{display:block;color:var(--muted);margin-top:4px;font-size:10px}
.auth-user-fields{display:grid;grid-template-columns:minmax(180px,1.5fr) 120px 110px;gap:9px;margin-top:11px}.auth-user-fields label{display:grid;gap:5px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.55px}.auth-user-fields input,.auth-user-fields select{width:100%}
.auth-rights{margin-top:11px;border-top:1px solid var(--line);padding-top:9px}.auth-rights summary{cursor:pointer;font-weight:750;color:var(--txt);display:flex;justify-content:space-between;gap:10px}.auth-rights summary span{font-size:10px;color:var(--muted);font-weight:500}
.auth-right-block{margin-top:13px}.auth-right-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.auth-right-head>strong{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted)}
.auth-right-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.auth-machine-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.auth-right-item{display:flex;gap:7px;align-items:flex-start;padding:8px;border:1px solid var(--line);border-radius:8px;background:rgba(0,0,0,.06);font-size:11px}.auth-right-item input{width:auto;margin-top:2px;accent-color:var(--green)}.auth-right-item strong{display:block;font-size:11px}.auth-right-item small{display:block;color:var(--muted);font-size:9px;margin-top:2px;line-height:1.35}
.auth-inline-check,.auth-unknown{display:flex;align-items:center;gap:7px;color:var(--txt);font-size:11px}.auth-inline-check input,.auth-unknown input{width:auto;accent-color:var(--green)}.auth-unknown{margin-top:13px}.auth-right-note{font-size:10px;color:var(--muted);margin:5px 0 0;line-height:1.45}.auth-admin-full{margin-top:10px;padding:10px;border:1px solid rgba(0,150,64,.35);background:rgba(0,150,64,.08);border-radius:8px;color:var(--muted);font-size:11px}
.auth-user-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.auth-user-actions button{border:1px solid var(--line);background:var(--panel2);color:var(--txt);border-radius:8px;cursor:pointer}.auth-user-actions button.primary{border-color:var(--green);background:linear-gradient(115deg,#008434,#006c2d);color:#fff}.auth-right-head .mini{border:1px solid var(--line);background:var(--panel2);color:var(--txt);border-radius:7px;cursor:pointer}
:root[data-theme="light"] .auth-user-card{background:linear-gradient(145deg,#fff,#f7faf7)}:root[data-theme="light"] .auth-right-item{background:#f5f8f5}
@media(max-width:980px){.auth-admin-grid-v12{grid-template-columns:1fr}.auth-right-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-machine-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.auth-user-fields{grid-template-columns:1fr}.auth-right-grid,.auth-machine-grid{grid-template-columns:1fr}.auth-rights summary{display:block}.auth-rights summary span{display:block;margin-top:4px}.auth-admin-overlay{padding:6px}.auth-admin{max-height:96vh;border-radius:10px}.auth-user-summary{align-items:center}}
