/* Newrona admin design: shared branded controls, scoped away from public pages. */
.admin .button,.admin .smallBtn,.accessPage button,.accessPage nav a{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:10px 20px;border:1px solid #dadada;border-radius:999px;background:white;color:#111;font:600 15px/1.3 Arial,Helvetica,sans-serif;text-decoration:none;cursor:pointer;transition:background .2s,box-shadow .2s,transform .2s;vertical-align:middle}
.admin .button,.accessPage button[type=submit]{background:#111;color:#fff;border-color:#111;padding-right:8px}
.admin .button.primary{background:#ffd000;color:#111;border-color:#ffd000}
.admin .button::after,.adminUtility .smallBtn::after,.accessPage button[type=submit]::after{content:"";display:block;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:#ffd000 url('/assets/icon.png') center/21px auto no-repeat;transition:transform .4s}
.admin .button.primary::after{background-color:#fff}.adminUtility .smallBtn::after{background-color:#f3f3f3}
.admin .button:hover,.admin .smallBtn:hover,.accessPage button:hover,.accessPage nav a:hover{transform:translateY(-2px);box-shadow:0 5px 14px #00000012}
.admin .button:hover::after,.adminUtility .smallBtn:hover::after,.accessPage button[type=submit]:hover::after{transform:rotate(-10deg)}
.admin .button:disabled,.accessPage button:disabled{opacity:.55;transform:none;cursor:wait}
.admin .danger{color:#a52515;background:#fff5f3;border-color:#efd6d0}
.adminUtility{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 28px;padding:0}.adminUtility .smallBtn{padding-right:8px}
.admin .panel{border:1px solid #e5e5e5;border-radius:22px;padding:28px;box-shadow:0 6px 26px #00000003}
.admin{background:#f6f6f6}.adminMain{background:#f6f6f6}.adminTop{background:#f6f6f6;gap:20px;padding:20px 0}.adminTop h1{font-size:clamp(28px,3.3vw,42px);letter-spacing:-1.2px;line-height:1.1}
.admin .sidebar{background:#111;padding:30px 20px}.admin .sidebar a{border-radius:12px;padding:14px 16px;margin:6px 0;font:600 15px/1.3 Arial;text-decoration:none;transition:background .2s}.admin .sidebar a:not(.active):hover{background:#292929}.admin .sidebar a.active{background:#ffd000;color:#111}
.admin input:not([type=checkbox]),.admin textarea,.admin select{border-radius:12px;border-color:#d3d3d3;padding:13px 14px;background:#fff}.admin label{color:#333;font-size:14px}.admin input[type=checkbox],.accessPage input[type=checkbox]{accent-color:#111}
.admin .notice{border-radius:12px;background:#fff9d7;border-left:3px solid #ffd000;padding:14px 18px;font:14px/1.5 Arial;color:#4b4527}
.admin button:focus-visible,.admin a:focus-visible,.admin input:focus-visible,.admin textarea:focus-visible,.admin select:focus-visible{outline:3px solid #b28b00;outline-offset:3px}
.accessPage{background:#f6f6f6}.accessPage main{max-width:1120px;margin:0 auto;padding:48px 36px 72px}.accessPage .brand img{width:165px;height:auto;display:block}.accessPage .eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;margin:28px 0 12px;color:#666}.accessPage h1{letter-spacing:-1.5px;font-size:clamp(32px,5vw,52px);margin:0 0 20px}.accessPage h2{font-size:23px;letter-spacing:-.6px;line-height:1.2;margin:0 0 12px}.accessPage h3{font-size:20px;margin:0 0 16px}
.accessPage .identityLine{display:flex;align-items:center;flex-wrap:wrap;gap:12px;color:#555;overflow-wrap:anywhere}.roleBadge,.statusBadge{display:inline-flex;align-items:center;font-size:12px;font-weight:700;letter-spacing:.2px;border-radius:100px;padding:6px 12px;background:#ffd000;color:#111}.roleBadge.neutral{background:#ececec}.statusBadge{background:#f0f0f0;margin-left:auto}.statusBadge.inactive{background:#fff0ec;color:#923e2d}
.accessPage nav{gap:10px;margin:24px 0 32px;padding-bottom:24px;border-bottom:1px solid #ddd}.accessPage nav a{margin:0}.accessPage #logout{margin:0 0 0 auto;background:transparent;border-color:#ccc;color:#555}
.permissionsGuide{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:28px 0}.permissionsGuide article{padding:26px;background:#111;color:#fff;border-radius:20px}.permissionsGuide article+article{background:#eaeaea;color:#111}.permissionsGuide h2{margin-top:18px}.permissionsGuide p{font-size:16px;line-height:1.55;margin:0;color:inherit;opacity:.8}
.accessPage .card,.accessPage form{border:1px solid #e2e2e2;border-radius:22px;box-shadow:0 6px 26px #00000003;padding:30px}.accessPage #password,.accessPage #bootstrap,.accessPage #login{max-width:620px}.accessPage label{font-size:14px;font-weight:600;color:#444}.accessPage input,.accessPage select{font-size:16px;font-weight:400;border-color:#ccc;border-radius:12px;padding:13px 14px;min-height:48px}.accessPage #create{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) auto;align-items:end;gap:18px;background:#f8f8f8;box-shadow:none;padding:24px;margin:26px 0}.accessPage #create h3{grid-column:1/-1;margin:0}.accessPage #create label{margin:0}.accessPage #create button{margin:0}
.accessPage .row{border:1px solid #e2e2e2;border-radius:16px;padding:22px;margin:14px 0;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.userHeading{width:100%;display:flex;align-items:center;gap:12px;margin-bottom:5px;min-width:0}.userHeading strong{overflow-wrap:anywhere;font-size:16px;min-width:0}.avatar{display:grid;place-items:center;background:#111;color:#ffd000;width:40px;height:40px;flex:0 0 40px;border-radius:50%;font-weight:bold}.accessPage .row label{margin:0 12px 0 0}.accessPage .row select{width:auto;min-width:140px;margin:0}.accessPage .row button{font-size:14px;min-height:44px;margin:0}.accessPage .row [data-action=reset]{background:#f6f6f6;border-color:transparent;color:#555}
.accessPage #message{position:sticky;bottom:18px;border:1px solid #e0bd39;box-shadow:0 6px 25px #0001;font-size:16px}.accessPage details{max-width:620px;font-size:14px;color:#666}.accessPage details a{display:inline-block;padding:16px 0;min-height:44px}
@media(max-width:760px){.admin .panel{padding:20px;border-radius:18px}.adminTop{position:static;align-items:flex-start}.adminUtility{display:grid;grid-template-columns:1fr;margin-bottom:22px}.adminUtility .smallBtn{justify-content:space-between}.admin .toolbar{gap:8px;flex-wrap:wrap}.admin .button{font-size:14px}.admin .sidebar{padding:18px}.accessPage main{padding:28px 20px 48px}.accessPage .brand img{width:145px}.accessPage nav{gap:8px}.accessPage nav a,.accessPage #logout{width:auto;margin:0;font-size:14px}.accessPage .permissionsGuide{grid-template-columns:1fr}.accessPage .card,.accessPage form{padding:20px}.accessPage #create{grid-template-columns:1fr;padding:18px}.accessPage #create h3{grid-column:auto}.accessPage .row{padding:16px}.accessPage .row button{width:100%}.accessPage .row label{flex:1}.userHeading{flex-wrap:wrap}.userHeading strong{flex:1}.accessPage #message{bottom:8px}.admin .smallBtn{font-size:14px}}
@media(prefers-reduced-motion:reduce){.admin .button,.admin .smallBtn,.accessPage button,.accessPage nav a,.admin .button::after,.adminUtility .smallBtn::after,.accessPage button[type=submit]::after{transition:none!important;transform:none!important}}
