/* v0.6 authentication and access gate */
.auth-overlay{position:fixed;inset:0;z-index:1000;background:linear-gradient(135deg,#ede8de 0%,#f8f5ef 45%,#e9e1d6 100%);display:grid;place-items:center;padding:24px}.auth-shell{width:min(980px,96vw);min-height:590px;background:rgba(251,250,246,.97);border:1px solid rgba(23,63,54,.12);border-radius:28px;box-shadow:0 36px 110px rgba(29,38,33,.20);display:grid;grid-template-columns:minmax(280px,.85fr) minmax(390px,1.15fr);overflow:hidden}.auth-brand{background:linear-gradient(155deg,#173f36,#0f2f29);color:#f8f2e6;padding:48px 42px;display:flex;flex-direction:column;justify-content:space-between;position:relative}.auth-brand:after{content:'';position:absolute;right:-80px;bottom:-95px;width:250px;height:250px;border:1px solid rgba(213,182,138,.28);border-radius:50%}.auth-brand-mark{font-size:30px;color:#d5b68a}.auth-brand h1{font-family:'Libre Caslon Display',serif;font-size:42px;line-height:1.02;margin:18px 0 12px}.auth-brand p{color:#d9d0c1;line-height:1.65;margin:0}.auth-brand-foot{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#bfae94}.auth-panel{padding:46px 46px 38px;display:flex;flex-direction:column;justify-content:center}.auth-eyebrow{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:#8b7d6d;margin-bottom:10px}.auth-panel h2{font-family:'Libre Caslon Display',serif;font-size:38px;margin:0 0 10px}.auth-panel>p{color:#6d6b65;line-height:1.6;margin:0 0 24px}.auth-google-host{min-height:42px;margin:4px 0 12px}.auth-separator{display:flex;align-items:center;gap:12px;color:#99958d;font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin:15px 0}.auth-separator:before,.auth-separator:after{content:'';height:1px;background:#e5e0d7;flex:1}.auth-demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.auth-demo-btn{border:1px solid #dfd7cc;background:#fff;border-radius:12px;padding:13px 14px;text-align:left;cursor:pointer;font:inherit}.auth-demo-btn:hover{border-color:#9fb2aa;background:#f5f1e8}.auth-demo-btn strong{display:block;font-size:13px}.auth-demo-btn span{font-size:11px;color:#77756f}.auth-note{margin-top:17px;padding:13px 14px;border-radius:12px;background:#f3eee6;color:#635f58;font-size:12px;line-height:1.55}.auth-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.auth-actions .btn{flex:0 0 auto}.auth-user-card{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid #e5e0d7;border-radius:14px;background:white;margin:10px 0}.auth-user-avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#173f36;color:white;font-weight:700}.auth-user-main{flex:1}.auth-user-main strong{display:block}.auth-user-main span{font-size:12px;color:#77756f}.auth-status{padding:5px 9px;border-radius:999px;font-size:11px;font-weight:700}.auth-status.pending{background:#f5e8c9;color:#8b681c}.auth-status.approved{background:#dfeee4;color:#2c6b49}.auth-status.rejected{background:#f6dddd;color:#873232}.auth-config-warning{border:1px solid #e2c9a6;background:#f8efe2;padding:14px;border-radius:12px;font-size:12px;color:#705f4d;line-height:1.55}.auth-hidden{display:none!important}.auth-topbar-user{display:flex;align-items:center;gap:8px}.auth-signout{border:1px solid var(--line);background:white;border-radius:9px;padding:8px 10px;font:inherit;font-size:12px;cursor:pointer}.auth-signout:hover{background:var(--cream)}
.auth-email-form{display:grid;gap:11px}.auth-email-form label{display:grid;gap:6px;color:#494842;font-size:12px;font-weight:600}.auth-email-form input{width:100%;box-sizing:border-box;border:1px solid #dcd6cd;background:#fff;border-radius:10px;padding:11px 12px;font:inherit;color:#272722;outline:none}.auth-email-form input:focus{border-color:#779488;box-shadow:0 0 0 3px rgba(23,63,54,.08)}.auth-email-submit{width:100%;justify-content:center;margin-top:2px}.auth-reset-link{border:0;background:transparent;padding:2px 0;color:#456c61;font:inherit;font-size:12px;text-align:left;cursor:pointer}.auth-reset-link:hover{text-decoration:underline}.auth-inline-error{border:1px solid #e6c4bd;background:#faece8;color:#7c4138;border-radius:10px;padding:10px 12px;font-size:12px;line-height:1.45;margin:-8px 0 12px}.auth-loading{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid #e2ddd4;background:#fff;border-radius:12px;color:#44534d}.auth-loading span{width:17px;height:17px;border-radius:50%;border:2px solid #c8d4cf;border-top-color:#173f36;animation:authspin .8s linear infinite}.auth-loading strong{font-size:13px}@keyframes authspin{to{transform:rotate(360deg)}}
@media(max-width:760px){.auth-overlay{padding:0}.auth-shell{width:100%;min-height:100vh;border-radius:0;grid-template-columns:1fr}.auth-brand{padding:30px 24px;min-height:210px}.auth-brand h1{font-size:33px}.auth-brand p{max-width:520px}.auth-brand-foot{display:none}.auth-panel{padding:30px 22px 36px;justify-content:flex-start}.auth-panel h2{font-size:32px}.auth-demo-grid{grid-template-columns:1fr}}
