[hidden]{display:none!important}
.access-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(125deg,#121212,#1d1d1d);color:#e8e8e8}
.access-card{width:min(100%,460px);border-top:3px solid #b82e28;background:#202020;padding:36px;box-shadow:0 24px 90px #0005}
.access-card .brand{margin-bottom:48px}.access-card h1{font-size:40px;margin:10px 0}.access-card p{color:#aaa;line-height:1.6}.access-card form{display:grid;gap:20px;margin-top:28px}
.access-card label,.account-form label,.import-panel label{display:grid;gap:8px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.access-card input{width:100%;padding:13px;background:#181818;color:#eee;border:1px solid #555;font:inherit}.access-card input:focus{outline:2px solid #d6524b;outline-offset:2px}
.access-card .primary{padding:14px}.access-card .access-help{font-size:12px;margin:24px 0}.access-card footer{font:10px monospace;border-top:1px solid #444;padding-top:20px;display:flex;justify-content:space-between}
#accessError,.system-error{color:#ed827b;white-space:pre-wrap}.account-bar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 24px;border-bottom:1px solid var(--line,#555);font:12px monospace}.account-bar strong{margin-right:auto}.account-bar button{padding:7px 10px}
.system-status{padding:10px 24px;background:#382722;color:#ffcf9d;margin:0;white-space:pre-wrap}.system-account-dialog{width:min(950px,96vw);max-height:90vh;overflow:auto;padding:24px;background:var(--panel,#222);color:var(--text,#eee);border:1px solid #666}.system-account-dialog::backdrop{background:#000a}
.system-account-dialog header{display:flex;align-items:center;justify-content:space-between}.account-form{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:20px 0}.account-form input,.account-form select,.account-row select,.import-panel input{padding:10px;color:inherit;background:var(--bg,#181818);border:1px solid #777;min-width:0}
.account-row{display:grid;grid-template-columns:minmax(180px,1fr) 120px 150px auto auto;align-items:center;gap:10px;border-bottom:1px solid #555;padding:15px 0}.account-row small{display:block;overflow-wrap:anywhere}.account-row button{padding:8px}.activation-result{margin:20px 0;padding:15px;border:1px solid #b82e28;overflow-wrap:anywhere}.activation-result input{width:100%;padding:10px;background:transparent;color:inherit;border:1px solid #777}.import-panel{margin-top:30px;border-top:1px solid #666;padding-top:20px;display:grid;gap:15px}.crew-portal{max-width:950px;margin:30px auto;padding:20px}.crew-job{padding:20px;border:1px solid #555;margin:15px 0}.crew-job h2{margin:8px 0}.audit-list{font:12px monospace;line-height:1.8;max-height:250px;overflow:auto}
html[data-save-busy="true"] .app-shell{pointer-events:none;opacity:.7}
html[data-save-busy="true"] dialog{pointer-events:none;opacity:.7}
html[data-account-role="warehouse"] #newBookingBtn,html[data-account-role="warehouse"] #addCrewBtn,html[data-account-role="warehouse"] .day-add,html[data-account-role="warehouse"] #jobForm button[type="submit"],html[data-account-role="warehouse"] #crewForm button[type="submit"]{display:none}
@media(max-width:720px){.account-row{grid-template-columns:1fr 1fr}.account-form{grid-template-columns:1fr}.access-card{padding:24px}}

.system-account-dialog{width:100vw;max-width:100vw;height:100vh;max-height:100vh;margin:0;border:0;border-radius:0;padding:clamp(20px,4vw,56px)}.system-account-dialog>header{position:sticky;top:-1px;background:var(--panel,#222);z-index:1}.account-search{display:grid;gap:8px;max-width:480px;margin:24px 0}.account-search input{padding:12px;background:var(--bg,#181818);color:inherit;border:1px solid #777}.account-row>div:last-child{display:flex;flex-wrap:wrap;gap:8px}.account-row{grid-template-columns:minmax(180px,1fr) 110px 140px auto minmax(180px,1fr)}@media(max-width:900px){.account-row{grid-template-columns:1fr 1fr}.account-row>div:last-child{grid-column:1/-1}}

.dbl-logo{width:110px;height:65px;object-fit:contain;background:#000;border-radius:4px;flex-shrink:0}.access-card .dbl-logo{width:140px;height:80px}.account-state{font-weight:600}.activation-result{border:2px solid #36c9cb;background:#173033;padding:24px}.activation-result h3{margin-top:0}.account-row button[data-action="remove"]{color:#ed827b}.account-row button[data-action="restore"]{color:#55d9bb}
