/* Calm burgundy and ivory for the protected MIBERLY RENT workspace. */
.auth-page { min-height:calc(100svh - 44px); background:#f4efe8; color:#302a2b; padding:64px 28px; display:grid; place-items:center; }
.auth-layout { width:min(100%,1060px); display:grid; grid-template-columns:.95fr 1.05fr; border:1px solid #ded2c8; border-radius:20px; overflow:hidden; background:#fffdfa; box-shadow:0 20px 80px #3e263010; }
.auth-brand-panel { padding:46px; background:#3e2630; color:#fff9f4; display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; gap:60px; }
.auth-brand-panel .miberly-brand { color:#fff9f4; }
.auth-brand-panel .miberly-mark { background:#f1e4db; color:#682b3d; border-color:#f1e4db; }
.auth-brand-panel .miberly-mark svg { fill:currentColor; }
.auth-brand-panel .miberly-word > span { color:#d7c0c4; }
.auth-eyebrow { display:block; font-size:10px; line-height:1.6; font-weight:650; letter-spacing:1.8px; text-transform:uppercase; color:#682b3d; }
.auth-brand-panel .auth-eyebrow { color:#d7c0c4; }
.auth-brand-copy h2 { font-family:Georgia,'Times New Roman',serif; font-size:clamp(31px,3.2vw,43px); font-weight:400; line-height:1.16; letter-spacing:-1px; margin:17px 0; }
.auth-brand-copy p { font-size:13px; line-height:1.85; max-width:275px; color:#dbcbd0; margin:0; }
.auth-brand-line { width:65px; height:2px; background:#c5a494; margin-top:29px; }
.auth-back { display:inline-flex; align-items:center; gap:10px; font-size:12px; line-height:1.6; color:#f3e8e1; }
.auth-back .icon { width:16px; height:16px; }
.auth-card { padding:48px; align-self:center; min-width:0; }
.auth-card h1 { font-family:Georgia,'Times New Roman',serif; font-size:clamp(28px,3vw,36px); line-height:1.16; font-weight:400; letter-spacing:-.8px; margin:13px 0; }
.auth-intro { color:#71676a; font-size:13px; line-height:1.8; margin:0 0 25px; }
.auth-card fieldset,.admin-security-card fieldset { border:0; margin:0; padding:0; min-width:0; }
.auth-field { display:grid; gap:8px; margin-bottom:18px; min-width:0; }
.auth-field > span:first-child { font-size:12px; font-weight:600; line-height:1.5; color:#302a2b; }
.auth-input-wrap { display:flex; border:1px solid #c9b9b4; border-radius:8px; background:#fffdfa; overflow:hidden; align-items:center; }
.auth-input-wrap:focus-within { outline:2px solid #8b4a5e; outline-offset:2px; border-color:#682b3d; }
.auth-input-wrap input { flex:1; width:100%; min-width:0; min-height:47px; border:0; border-radius:0; padding:12px 13px; background:transparent; font:inherit; font-size:15px; color:#302a2b; box-shadow:none; outline:0; }
.auth-input-wrap input:focus { outline:0; box-shadow:none; }
.auth-input-wrap:has([aria-invalid="true"]) { border-color:#9c3048; }
.auth-show-password { flex:0 0 auto; border:0; background:transparent; color:#682b3d; font:inherit; font-size:11px; font-weight:650; min-height:44px; padding:0 12px; cursor:pointer; }
.auth-field small { color:#71676a; font-size:11px; line-height:1.65; }
.auth-submit.button { display:flex; width:100%; justify-content:center; margin-top:23px; min-height:47px; background:#682b3d; color:#fff9f4; border-color:#682b3d; font-size:13px; gap:14px; }
.auth-submit.button:hover:not(:disabled) { background:#702f40; border-color:#702f40; color:#fff9f4; }
.auth-submit.button:disabled { opacity:.5; }
.auth-card .button.secondary,.admin-security-aside .button.secondary { color:#682b3d; background:#f8f1eb; border-color:#d4bfc0; }
.auth-card .button.secondary:hover,.admin-security-aside .button.secondary:hover { color:#682b3d; background:#eee1df; border-color:#c4a3ad; }
.auth-text-link { border:0; padding:12px 0; background:transparent; color:#682b3d; font:inherit; font-size:12px; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.auth-footnote { color:#71676a; font-size:10px; line-height:1.8; margin:18px 0 0; }
.auth-footnote a { text-decoration:underline; text-underline-offset:2px; color:#682b3d; }
.auth-error { font-size:12px; color:#8c273e; line-height:1.65; border:1px solid #d7aab3; border-radius:7px; padding:11px 13px; background:#fbf0f1; margin:0 0 20px; }
.auth-error[hidden] { display:none; }
.auth-notice { background:#f1e7e4; color:#682b3d; padding:11px 13px; border-radius:7px; line-height:1.7; font-size:12px; margin-bottom:20px; }
.auth-symbol { width:45px; height:45px; border-radius:12px; background:#eee1df; color:#682b3d; display:grid; place-items:center; margin-bottom:21px; }
.auth-symbol .icon { width:23px; height:23px; }
.auth-recovery-key { padding:19px; border:1px solid #d4bfc0; border-radius:9px; background:#f4ece6; }
.auth-recovery-key > span { display:block; color:#71676a; font-size:10px; margin-bottom:10px; text-transform:uppercase; letter-spacing:1px; }
.auth-recovery-key code { font:14px/1.9 ui-monospace,SFMono-Regular,Consolas,monospace; letter-spacing:.5px; overflow-wrap:anywhere; user-select:all; color:#3e2630; }
.auth-recovery-actions { display:flex; flex-wrap:wrap; gap:9px; margin-top:13px; }
.auth-recovery-actions .button { flex:1 1 120px; justify-content:center; min-height:42px; }
.auth-check { display:flex; align-items:flex-start; gap:10px; font-size:12px; line-height:1.6; color:#302a2b; margin-top:25px; cursor:pointer; }
.auth-check input { width:18px; height:18px; flex:0 0 18px; accent-color:#682b3d; margin:1px 0 0; }
.auth-sr-only { position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; clip-path:inset(50%)!important; white-space:nowrap!important; }
.admin-security-layout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(245px,.75fr); gap:24px; align-items:start; }
.admin-security-card,.admin-security-aside { padding:30px; }
.admin-security-card h2,.admin-security-aside h2 { font-size:20px; line-height:1.3; margin:0 0 13px; }
.admin-security-card > p,.admin-security-aside > p { color:#71676a; font-size:12px; line-height:1.8; margin:0 0 22px; }
.admin-security-card form { margin-top:23px; }
.auth-account { display:grid; gap:5px; background:#f4efe8; padding:13px 16px; border-radius:8px; }
.auth-account > span { color:#71676a; font-size:10px; }
.auth-account > strong { font-size:14px; overflow-wrap:anywhere; }
.admin-security-aside .auth-eyebrow { margin-bottom:16px; }
.owner-strip button[data-action="admin-logout"] { display:inline-flex; align-items:center; gap:7px; border:0; background:transparent; color:inherit; padding:0; font:inherit; letter-spacing:0; font-size:11px; cursor:pointer; }
.auth-page :is(a,button):focus-visible,.admin-security-layout :is(a,button):focus-visible { outline:3px solid #8b4a5e; outline-offset:3px; }
.auth-brand-panel a:focus-visible { outline-color:#eed3da; }
.admin-session-check { position:fixed; inset:44px 0 0; z-index:20000; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:17px; background:#f4efe8; color:#682b3d; }
.admin-session-check[hidden] { display:none; }
.admin-session-check strong { font-size:17px; letter-spacing:3px; }
.admin-session-check span { font-size:13px; color:#71676a; }
body[data-admin-verifying="true"] #app,body[data-admin-verifying="true"] #app-dialog { visibility:hidden; pointer-events:none; }
body[data-admin-verifying="true"] #app-dialog::backdrop { background:transparent; }
@media (max-width:800px) { .auth-page{padding:32px 20px}.auth-layout{grid-template-columns:1fr;max-width:550px}.auth-brand-panel{padding:25px 30px;gap:23px}.auth-brand-copy{display:none}.auth-brand-panel .miberly-brand{transform:scale(.9);transform-origin:left center}.auth-card{padding:32px 30px}.auth-back{font-size:11px}.admin-security-layout{grid-template-columns:1fr}.admin-security-aside{max-width:none} }
@media (max-width:480px) { .auth-page{padding:18px 14px}.auth-card{padding:28px 22px}.auth-brand-panel{padding:22px}.auth-layout{border-radius:14px}.auth-input-wrap input{font-size:16px}.admin-security-card,.admin-security-aside{padding:23px}.owner-strip button[data-action="admin-logout"]{font-size:9px} }
