html.access-pending body{visibility:hidden}.access-mode-banner{display:flex;align-items:center;justify-content:center;gap:.45rem;padding:.45rem .8rem;background:#fff3d6;color:#684a08;border-bottom:1px solid #e8cc85;font-size:.82rem;font-weight:700}.access-user-chip{display:inline-flex;align-items:center;gap:.45rem;padding:.42rem .65rem;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:#fff;font-size:.82rem}.access-user-chip button{border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;text-decoration:underline}.login-body{min-height:100vh;margin:0;background:linear-gradient(145deg,#071a33,#102b4c);display:grid;place-items:center;padding:2rem;font-family:Inter,Arial,sans-serif;color:#14233a}.login-shell{width:min(460px,100%);background:#fffdf8;border-radius:22px;padding:2rem;box-shadow:0 30px 80px rgba(0,0,0,.28);border:1px solid rgba(200,162,74,.5)}.login-brand{text-align:center;margin-bottom:1.4rem}.login-brand img{width:112px;height:112px;object-fit:contain}.login-brand h1{font-family:Georgia,serif;font-size:1.6rem;margin:.5rem 0 .25rem;color:#071a33}.login-brand p{margin:0;color:#64748b}.login-form{display:grid;gap:.85rem}.login-form label{display:grid;gap:.35rem;font-weight:700}.login-form input{font:inherit;padding:.78rem .85rem;border:1px solid #cbd5e1;border-radius:10px}.login-form button{padding:.8rem 1rem}.login-links{display:flex;justify-content:space-between;gap:1rem;margin-top:.85rem;font-size:.9rem}.login-message{min-height:1.25rem;margin:.8rem 0 0;color:#7f1d1d}.access-setup{margin-top:1rem;padding:1rem;border-radius:12px;background:#fff8e5;border:1px solid #edd598;color:#5f470d}.capability-matrix{width:100%;border-collapse:collapse}.capability-matrix th,.capability-matrix td{padding:.7rem;border-bottom:1px solid #e2e8f0;text-align:left}.capability-matrix th{font-size:.78rem;text-transform:uppercase;color:#64748b}.security-callout{padding:1rem;border-left:5px solid #c8a24a;background:#fffdf8;border-radius:10px}.access-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.access-status-card{border:1px solid #dbe2ea;border-radius:14px;padding:1rem;background:#fff}.access-status-card strong{display:block;font-size:1.35rem;color:#071a33}.access-status-card span{color:#64748b;font-size:.86rem}@media(max-width:760px){.access-status-grid{grid-template-columns:1fr}.login-links{flex-direction:column}}
.login-divider{display:flex;align-items:center;gap:.75rem;color:#667085;font-size:.8rem;margin:.35rem 0}.login-divider:before,.login-divider:after{content:"";height:1px;background:#d7dde5;flex:1}
.access-invite-form{display:grid;grid-template-columns:minmax(220px,2fr) minmax(180px,1fr) auto;gap:.75rem;align-items:end;margin:1rem 0}.access-invite-form label{display:grid;gap:.35rem;font-weight:700}.access-invite-form input,.access-invite-form select{min-height:42px;border:1px solid #cbd5e1;border-radius:8px;padding:.55rem .7rem;background:#fff}@media(max-width:760px){.access-invite-form{grid-template-columns:1fr}}

.recovery-heading{text-align:center;margin-bottom:.25rem}.recovery-heading h2{font-family:Georgia,serif;color:#071a33;margin:0 0 .3rem;font-size:1.35rem}.recovery-heading p{margin:0;color:#64748b;font-size:.9rem}

/* AUTH-002: hidden auth states must remain truly hidden despite display rules. */
[hidden]{display:none!important}

/* GUIDON brand refresh: wide black lockup on light access cards. */
.login-brand img[src*="guidon-logo-black.png"]{width:min(320px,90%);height:auto;max-height:150px;object-fit:contain}
.guidon-role-notice{margin:0 0 16px;padding:10px 14px;border:1px solid rgba(183,137,46,.35);border-radius:10px;background:#fffaf0;color:#55410f;font-size:.9rem;font-weight:650}
.guidon-access-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.guidon-access-table td small{display:block;color:#667085;margin-top:3px}.guidon-access-table input,.guidon-access-table select{min-width:145px;width:100%}@media(max-width:900px){.guidon-access-grid{grid-template-columns:1fr}}

/* FIX24B · Users & Permissions management */
.access-board-heading{align-items:center}.access-board-help{margin:.15rem 0 1rem}.access-person{display:grid;gap:2px}.access-person strong{color:#14233a}.access-person span{font-size:.8rem;color:#667085}.access-role-pill,.access-status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:.28rem .55rem;font-size:.78rem;font-weight:700}.access-role-pill{background:#eef3f8;color:#20344f}.access-status-pill.active{background:#e7f5ec;color:#25603d}.access-status-pill.pending{background:#fff2d7;color:#7a5310}.access-row-actions{display:flex;gap:.5rem;align-items:center;justify-content:flex-end;white-space:nowrap}
.access-dialog{border:0;padding:0;background:transparent;width:min(620px,calc(100vw - 32px));max-width:none}.access-dialog::backdrop{background:rgba(5,18,35,.62)}.access-dialog-card{display:grid;gap:14px;background:#fff;border:1px solid #d8dee8;border-radius:18px;padding:22px;box-shadow:0 30px 80px rgba(5,18,35,.28)}.access-dialog-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.access-dialog-header h2{margin:.1rem 0 0;font-family:Georgia,serif;color:#14233a}.access-dialog-close{border:0;background:#f3f5f7;width:38px;height:38px;border-radius:999px;font-size:1.5rem;line-height:1;cursor:pointer}.access-dialog-card>label{display:grid;gap:.4rem;font-weight:700;color:#14233a}.access-dialog-card input,.access-dialog-card select{min-height:44px;border:1px solid #cbd5e1;border-radius:9px;padding:.58rem .72rem;background:#fff;font:inherit}.access-dialog-actions{display:flex;justify-content:flex-end;gap:.7rem;padding-top:4px}
@media(max-width:760px){.access-board-heading{align-items:flex-start}.access-row-actions{justify-content:flex-start;flex-wrap:wrap}.access-dialog-actions{flex-direction:column-reverse}.access-dialog-actions .button{width:100%}}

/* FIX24C · invitation onboarding + permission controls */
.login-brand{margin-bottom:1.15rem}.login-brand img[src*="guidon-logo-black.png"]{width:min(360px,94%);max-height:180px}
#addUserButton,.access-row-actions .button,.access-row-actions .button-link{appearance:none;border-radius:9px;font:inherit;font-weight:750;cursor:pointer;min-height:36px;padding:.45rem .75rem;text-decoration:none}
#addUserButton{border:1px solid #0b2747;background:#0b2747;color:#fff}
.access-row-actions .button.secondary{border:1px solid #b8c5d6;background:#fff;color:#0b2747}
.access-row-actions .button-link{border:1px solid #d7aeb2;background:#fff;color:#8f1723}
.access-row-actions .button:hover,#addUserButton:hover{filter:brightness(.96)}


/* FIX26: authenticated identity + effective role treatment */
.access-user-chip{border-radius:12px;padding:.38rem .6rem;gap:.7rem}
.access-user-identity{display:grid;grid-template-columns:auto auto;column-gap:.45rem;row-gap:.08rem;align-items:baseline;line-height:1.05}
.access-user-label{grid-column:1/-1;font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;opacity:.72;font-weight:700}
.access-user-identity strong{font-size:.78rem;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.access-user-role{font-size:.68rem;font-weight:800;color:#f0d88a;border-left:1px solid rgba(255,255,255,.25);padding-left:.45rem;text-transform:none}
.access-user-chip button[aria-busy='true']{opacity:.7;cursor:pointer;text-decoration:none}
@media(max-width:980px){.access-user-role{display:none}.access-user-identity{display:block}.access-user-label{display:none}}

/* GUIDON FIX28D · protected Platform Owner */
.platform-owner-badge{display:inline-flex;margin-left:8px;padding:2px 7px;border-radius:999px;background:#071a33;color:#f0ca66;font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;vertical-align:middle}.protected-access-note{display:inline-flex;padding:5px 9px;border:1px solid #d9c27e;border-radius:999px;background:#fffaf0;color:#6f5513;font-size:.72rem;font-weight:800}

/* RC3.1 Google OAuth authentication */
.google-login-intro{text-align:center;margin:.15rem 0 1.15rem}.google-login-intro h1{font-family:Georgia,serif;color:#071a33;margin:0 0 .45rem;font-size:1.55rem}.google-login-intro p{margin:0;color:#64748b;line-height:1.45}.google-signin{width:100%;display:flex;align-items:center;justify-content:center;gap:.7rem;min-height:48px;font-size:1rem;font-weight:750}.google-g{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff;color:#4285f4;font-family:Arial,sans-serif;font-weight:900}.login-links{justify-content:center;text-align:center;line-height:1.45;color:#64748b}
