/**
 * File: /modules/authentication/public/css/authentication.css
 * MICROBA Living Authentication™
 * Version: 0.4.0
 * Revised: 2026-07-22
 */
:root{--mba-gold:#d8ae4b;--mba-gold-bright:#f2d58a;--mba-ink:#fffaf0;--mba-muted:rgba(255,250,240,.72);--mba-glass:rgba(17,19,13,.40);--mba-glass-strong:rgba(15,17,12,.56);--mba-line:rgba(255,255,255,.18);--mba-radius:32px;--mba-shadow:0 34px 100px rgba(0,0,0,.42)}
*{box-sizing:border-box}
html{background:#11150d}
body.microba-auth-page{margin:0;background:#11150d;color:var(--mba-ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.mba-auth-shell{min-height:100vh;position:relative;display:grid;grid-template-columns:minmax(390px,46%) 1fr;overflow:hidden;background:#11150d}
.mba-auth-visual{position:absolute;inset:0;min-height:100vh;background-image:linear-gradient(90deg,rgba(5,7,4,.18),rgba(5,7,4,.34) 52%,rgba(5,7,4,.56)),var(--mba-auth-image);background-size:cover;background-position:center;transform:scale(1.01)}
.mba-auth-panel{position:relative;z-index:1;grid-column:2;display:flex;align-items:center;justify-content:center;padding:48px}
.mba-auth-card{width:min(100%,610px);padding:50px;border:1px solid var(--mba-line);border-radius:var(--mba-radius);background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.035)),var(--mba-glass);box-shadow:var(--mba-shadow),inset 0 1px rgba(255,255,255,.12);backdrop-filter:blur(26px) saturate(125%);-webkit-backdrop-filter:blur(26px) saturate(125%)}
.mba-auth-eyebrow{margin:0;font-size:12px;letter-spacing:.22em;color:var(--mba-gold-bright);font-weight:760;text-transform:uppercase}
.mba-auth-card h1,.mba-modal-content h2,.mba-state-card h1{font:600 clamp(38px,4vw,58px)/1.05 Georgia,serif;margin:8px 0 16px;color:#fff}
.mba-modal-content h2{font-size:clamp(34px,4vw,48px)}
.mba-auth-intro,.mba-state-card p{margin:0;color:var(--mba-muted);font-size:17px;line-height:1.65}
.mba-auth-alert,.mba-auth-message{margin:24px 0;padding:14px 16px;border-radius:14px;background:rgba(139,47,15,.34);color:#fff1e8;border:1px solid rgba(255,181,130,.35);backdrop-filter:blur(12px)}
.mba-auth-alert-success{background:rgba(24,94,46,.35);color:#effff1;border-color:rgba(149,230,163,.35)}
.mba-auth-form{display:grid;gap:12px;margin-top:30px}
.mba-auth-form label{font-weight:650;font-size:14px;color:#fff}
.mba-auth-form label small,.mba-auth-help{font-weight:500;color:var(--mba-muted)}
.mba-auth-form input[type=text],.mba-auth-form input[type=email],.mba-auth-form input[type=password]{width:100%;min-height:56px;border:1px solid rgba(255,255,255,.20);border-radius:15px;padding:0 16px;font:inherit;font-size:16px;background:rgba(255,255,255,.075);color:#fff;outline:none;box-shadow:inset 0 1px rgba(255,255,255,.05);transition:.2s ease}
.mba-auth-form input::placeholder{color:rgba(255,255,255,.48)}
.mba-auth-form input:hover{background:rgba(255,255,255,.11)}
.mba-auth-form input:focus{border-color:var(--mba-gold);background:rgba(255,255,255,.12);box-shadow:0 0 0 4px rgba(216,174,75,.18)}
.mba-auth-label-row{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.mba-auth-label-row a{font-size:14px;color:var(--mba-gold-bright);text-decoration:none}.mba-auth-label-row a:hover{text-decoration:underline}
.mba-password-wrap{position:relative}.mba-password-wrap input{padding-right:76px!important}.mba-password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--mba-gold-bright);font-weight:750;cursor:pointer}
.mba-auth-check{display:flex!important;gap:10px;align-items:flex-start;margin:8px 0 12px;color:var(--mba-muted)!important;font-weight:500!important;line-height:1.5}.mba-auth-check input{margin-top:4px;accent-color:var(--mba-gold)}
.mba-auth-primary,.mba-auth-secondary{min-height:56px;border-radius:15px;display:flex;align-items:center;justify-content:center;gap:12px;font-weight:760;text-decoration:none;padding:0 18px;transition:.2s ease}
.mba-auth-primary{border:1px solid rgba(255,225,150,.5);color:#201808;background:linear-gradient(120deg,#f0cf79,#b9821f);cursor:pointer;font-size:16px;box-shadow:0 12px 32px rgba(130,84,10,.28)}.mba-auth-primary:hover{transform:translateY(-1px);filter:brightness(1.05)}.mba-auth-primary span{margin-left:auto}
.mba-auth-secondary{border:1px solid rgba(236,199,108,.55);color:#ffe5a3;background:rgba(255,255,255,.055)}.mba-auth-secondary:hover{background:rgba(255,255,255,.10)}
.mba-auth-divider{display:flex;align-items:center;gap:16px;color:rgba(255,255,255,.5);margin:26px 0}.mba-auth-divider:before,.mba-auth-divider:after{content:"";height:1px;background:rgba(255,255,255,.16);flex:1}
.mba-auth-join{text-align:center;color:var(--mba-muted);margin:0 0 12px}.mba-auth-security{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:28px;color:var(--mba-muted);font-size:13px}.mba-auth-security img{border-radius:50%}.mba-auth-brand-mobile{display:none}.mba-auth-help{display:block;margin-top:-4px;line-height:1.45}
.mba-auth-notice-panel{text-align:center;margin-top:28px;padding:28px;border:1px solid rgba(255,255,255,.17);border-radius:20px;background:rgba(255,255,255,.07)}.mba-auth-notice-panel h2{font:600 30px/1.15 Georgia,serif;margin:12px 0;color:#fff}.mba-auth-notice-panel p{color:var(--mba-muted);line-height:1.6}.mba-auth-notice-icon{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:rgba(57,146,77,.35);color:#dffff0;font-size:24px;font-weight:800}.mba-auth-notice-error .mba-auth-notice-icon{background:rgba(170,62,20,.35);color:#ffe8dc}.mba-link-button{margin-top:18px}
body.mba-modal-open{overflow:hidden}.mba-modal[hidden]{display:none!important}.mba-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:24px}.mba-modal-backdrop{position:absolute;inset:0;background:rgba(4,6,3,.78);backdrop-filter:blur(10px)}
.mba-modal-dialog{position:relative;z-index:1;width:min(1120px,100%);max-height:min(900px,calc(100vh - 48px));display:grid;grid-template-columns:42% 1fr;overflow:hidden;border:1px solid rgba(255,255,255,.20);border-radius:32px;background:rgba(15,17,12,.48);box-shadow:0 40px 120px rgba(0,0,0,.55);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}
.mba-modal-visual{min-height:660px;background-image:linear-gradient(90deg,rgba(6,8,4,.08),rgba(6,8,4,.28)),var(--mba-auth-image);background-size:cover;background-position:center}
.mba-modal-content{overflow:auto;padding:42px 48px 48px;background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.025)),var(--mba-glass-strong)}
.mba-modal-close{position:absolute;right:18px;top:16px;z-index:3;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.20);background:rgba(15,17,12,.52);color:#fff;font-size:28px;line-height:1;cursor:pointer;backdrop-filter:blur(12px)}
.mba-modal-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 32px;padding:5px;border-radius:14px;background:rgba(255,255,255,.07)}.mba-modal-tab{min-height:44px;border:0;border-radius:10px;background:transparent;font-weight:750;color:var(--mba-muted);cursor:pointer}.mba-modal-tab.is-active{background:rgba(255,255,255,.13);color:var(--mba-gold-bright);box-shadow:0 6px 18px rgba(0,0,0,.16)}.mba-modal-view[hidden]{display:none!important}.mba-modal-view.is-active{display:block}
.mba-state{min-height:100vh;display:grid;place-items:center;padding:32px;background-image:linear-gradient(rgba(5,7,4,.48),rgba(5,7,4,.68)),url('../../../../common/branding/auth-background.webp');background-size:cover;background-position:center}.mba-state-card{width:min(100%,620px);padding:48px;text-align:center;border:1px solid var(--mba-line);border-radius:var(--mba-radius);background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.035)),var(--mba-glass);box-shadow:var(--mba-shadow);backdrop-filter:blur(26px);-webkit-backdrop-filter:blur(26px)}.mba-state-card .mba-auth-primary,.mba-state-card .mba-auth-secondary{margin-top:18px}.mba-auth-message.is-error{color:#fff1e8}
@media(max-width:900px){.mba-auth-shell{display:block}.mba-auth-visual{position:fixed;inset:0;background-image:linear-gradient(rgba(5,7,4,.24),rgba(5,7,4,.62)),var(--mba-auth-image);background-position:center}.mba-auth-panel{min-height:100vh;padding:24px;align-items:center}.mba-auth-card{padding:36px 26px}.mba-auth-brand-mobile{display:flex;align-items:center;gap:12px;margin-bottom:26px;font-family:Georgia,serif;letter-spacing:.16em;color:var(--mba-gold-bright)}.mba-auth-brand-mobile img{border-radius:16px}.mba-modal{padding:0;place-items:stretch}.mba-modal-dialog{width:100%;height:100%;max-height:none;border:0;border-radius:0;display:block;overflow:auto;background:#12160f}.mba-modal-visual{display:block;min-height:220px;background-position:center}.mba-modal-content{min-height:calc(100% - 220px);padding:48px 24px 36px}.mba-modal-close{position:fixed;right:14px;top:14px}.mba-modal-tabs{position:sticky;top:12px;z-index:2}.mba-modal-content h2{font-size:38px}}
@media(max-width:520px){.mba-auth-panel{padding:16px}.mba-auth-card,.mba-state-card{padding:30px 20px;border-radius:24px}.mba-auth-card h1,.mba-state-card h1{font-size:40px}.mba-auth-form{margin-top:24px}.mba-modal-content{padding-left:20px;padding-right:20px}}


/* File: /modules/authentication/public/css/authentication.css
 * MICROBA Profile v0.4.1 security icon repair
 * Revised: 2026-07-22
 */
.mba-auth-security__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    color: #e5bd58;
}

.mba-auth-security__icon svg {
    display: block;
    width: 28px;
    height: 28px;
}


/* MICROBA Origin notice mark — revised 2026-07-28 */
.mba-auth-notice-icon--origin{
    width:58px;
    height:58px;
    background:linear-gradient(145deg,rgba(242,213,138,.20),rgba(216,174,75,.08));
    color:var(--mba-gold-bright);
    border:1px solid rgba(242,213,138,.42);
    box-shadow:0 10px 28px rgba(117,76,10,.22),inset 0 1px rgba(255,255,255,.16);
}
.mba-auth-notice-icon--origin svg{
    display:block;
    width:34px;
    height:34px;
    fill:none;
    stroke:currentColor;
    stroke-width:2.6;
    stroke-linecap:round;
    stroke-linejoin:round;
}
