:root{
  --a-bg:#fbf8f3;--a-paper:#fffdf9;--a-ink:#2d1a13;--a-text:#574239;--a-muted:#8d7a70;
  --a-brown:#4b2717;--a-brown2:#6e3f29;--a-gold:#bc8748;--a-gold-soft:#e5cfad;--a-line:#e9ddd1;
  --a-success:#50725a;--a-danger:#a55854;--a-serif:"Cormorant Garamond",Georgia,serif;--a-sans:"DM Sans",Arial,sans-serif;
  --a-shadow:0 30px 90px rgba(54,30,18,.13)
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--a-bg);color:var(--a-ink);font-family:var(--a-sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}
.zi-auth{min-height:100vh;overflow-x:hidden}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.05fr) minmax(500px,.95fr);background:var(--a-paper)}
.auth-visual{position:sticky;top:0;height:100vh;min-height:760px;overflow:hidden;isolation:isolate;background:#2c1b13}.auth-visual-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:52% center;z-index:-4;transform:scale(1.015);animation:authCinematic 18s ease-in-out infinite alternate}.auth-visual-overlay{position:absolute;inset:0;z-index:-3;background:linear-gradient(180deg,rgba(22,11,7,.34) 0%,rgba(22,11,7,.12) 36%,rgba(22,11,7,.72) 100%),linear-gradient(90deg,rgba(25,13,8,.26),transparent 46%)}
.auth-visual::after{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 75% 18%,rgba(240,188,117,.18),transparent 28%),linear-gradient(180deg,transparent 72%,rgba(21,11,7,.25))}
@keyframes authCinematic{from{transform:scale(1.015) translate3d(0,0,0)}to{transform:scale(1.065) translate3d(-1%,.7%,0)}}
.auth-brand{position:absolute;z-index:4;display:flex;flex-direction:column;align-items:flex-start;line-height:1}.auth-brand strong{font:500 43px/.78 var(--a-serif);letter-spacing:-.04em}.auth-brand span{margin:12px 0 0 5px;font:600 8px/1 var(--a-sans);letter-spacing:.46em}.auth-brand-light{top:42px;left:48px;color:#fff}.auth-brand-dark{display:none;color:var(--a-brown);position:static}.auth-visual-copy{position:absolute;left:48px;right:60px;bottom:104px;color:#fff;max-width:690px}.auth-kicker{display:block;margin-bottom:22px;font:600 10px/1 var(--a-sans);letter-spacing:.26em;color:#f1d2ac}.auth-visual-copy h1{margin:0 0 22px;font:400 clamp(52px,5.8vw,90px)/.87 var(--a-serif);letter-spacing:-.04em;text-wrap:balance}.auth-visual-copy p{max-width:530px;margin:0;font:400 18px/1.6 var(--a-serif);color:rgba(255,255,255,.86)}.auth-visual-foot{position:absolute;left:48px;right:48px;bottom:34px;color:rgba(255,255,255,.58);display:flex;align-items:center;gap:16px;font-size:8px;letter-spacing:.28em}.auth-visual-foot i{height:1px;flex:1;background:rgba(255,255,255,.24)}
.auth-visual-flair{position:absolute;pointer-events:none;user-select:none;z-index:-1;opacity:.36;filter:saturate(.72) brightness(1.18)}.auth-flair-top{width:290px;right:-85px;top:-25px;transform:rotate(24deg)}.auth-flair-bottom{width:330px;left:-120px;bottom:-100px;transform:rotate(-15deg);opacity:.3}
.auth-panel{position:relative;min-height:100vh;background:linear-gradient(145deg,#fffdf9 0%,#fcf8f2 52%,#f9f3eb 100%);overflow:hidden;display:grid;grid-template-rows:auto 1fr auto}.auth-panel::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 100% 0%,rgba(195,145,83,.08),transparent 28%),radial-gradient(circle at 0% 100%,rgba(169,107,81,.06),transparent 32%)}.auth-panel-flair{position:absolute;right:-122px;bottom:-70px;width:355px;opacity:.13;pointer-events:none;transform:rotate(-8deg);mix-blend-mode:multiply}.auth-panel-topbar{height:94px;padding:28px 42px 0;display:flex;align-items:flex-start;justify-content:flex-end;position:relative;z-index:3}.auth-back{width:46px;height:46px;border:1px solid var(--a-line);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.72);backdrop-filter:blur(12px);transition:.25s}.auth-back:hover{transform:translateX(-3px);border-color:#d4b58c}.auth-back svg{width:20px;fill:none;stroke:var(--a-brown);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.auth-panel-scroll{display:flex;align-items:center;justify-content:center;padding:42px 56px 70px;position:relative;z-index:2}.auth-card{width:min(100%,560px);animation:authCardIn .72s cubic-bezier(.22,1,.36,1) both}@keyframes authCardIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.auth-card-wide{width:min(100%,670px)}.auth-panel-footer{min-height:62px;padding:0 42px 26px;display:flex;justify-content:space-between;align-items:end;color:var(--a-muted);font-size:10px;position:relative;z-index:2}.auth-panel-footer a{text-decoration:underline;text-underline-offset:3px}
.auth-eyebrow{margin:0 0 14px;font:600 9px/1 var(--a-sans);letter-spacing:.27em;text-transform:uppercase;color:var(--a-gold)}.auth-title{margin:0;font:400 clamp(48px,5vw,66px)/.92 var(--a-serif);letter-spacing:-.035em;text-wrap:balance}.auth-lead{margin:18px 0 34px;max-width:520px;color:var(--a-muted);font:400 17px/1.55 var(--a-serif)}.auth-lead a{color:var(--a-brown);font-weight:600}.auth-mini-note{color:var(--a-muted);font-size:11px;line-height:1.55}.auth-form{display:grid;gap:19px}.auth-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.auth-field{display:grid;gap:8px;position:relative}.auth-field label{font:600 9px/1 var(--a-sans);letter-spacing:.12em;text-transform:uppercase;color:#6c5548}.auth-field input,.auth-field select,.auth-field textarea{width:100%;height:57px;border:1px solid #e2d5c9;border-radius:15px;background:rgba(255,255,255,.82);padding:0 16px;color:var(--a-ink);outline:none;transition:border-color .2s,box-shadow .2s,background .2s}.auth-field textarea{height:112px;padding-top:15px;resize:vertical}.auth-field input:focus,.auth-field select:focus,.auth-field textarea:focus{border-color:#c99c66;background:#fff;box-shadow:0 0 0 4px rgba(188,135,72,.09)}.auth-field input::placeholder,.auth-field textarea::placeholder{color:#b2a299}.auth-input-wrap{position:relative}.auth-input-wrap input{padding-right:50px}.auth-password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:40px;height:40px;border:0;background:transparent;border-radius:50%;display:grid;place-items:center;color:var(--a-muted)}.auth-password-toggle:hover{background:#f4ede5;color:var(--a-brown)}.auth-password-toggle svg{width:18px;fill:none;stroke:currentColor;stroke-width:1.5}
.auth-meta-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:-2px}.auth-check{display:inline-flex;align-items:center;gap:9px;color:var(--a-muted);font-size:11px}.auth-check input{appearance:none;width:18px;height:18px;border:1px solid #d8c7b9;border-radius:5px;background:#fff;display:grid;place-content:center}.auth-check input:checked{background:var(--a-brown);border-color:var(--a-brown)}.auth-check input:checked::after{content:"✓";color:#fff;font-size:12px}.auth-link{font-size:11px;color:var(--a-brown);font-weight:600}.auth-link:hover{text-decoration:underline;text-underline-offset:4px}.auth-submit{width:100%;height:58px;border:0;border-radius:999px;background:linear-gradient(135deg,var(--a-brown),#6a3823);color:#fff;font:600 12px var(--a-sans);letter-spacing:.03em;box-shadow:0 14px 34px rgba(75,39,23,.18);display:flex;align-items:center;justify-content:center;gap:10px;transition:.25s}.auth-submit:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(75,39,23,.22)}.auth-submit:disabled{opacity:.6;cursor:wait;transform:none}.auth-submit svg{width:17px;fill:none;stroke:currentColor;stroke-width:1.6}.auth-submit .auth-btn-spinner{display:none;width:17px;height:17px;border:2px solid rgba(255,255,255,.32);border-top-color:#fff;border-radius:50%;animation:authSpin .75s linear infinite}.auth-submit.is-loading .auth-btn-spinner{display:block}.auth-submit.is-loading .auth-btn-label{opacity:.72}@keyframes authSpin{to{transform:rotate(360deg)}}
.auth-separator{display:flex;align-items:center;gap:13px;margin:27px 0 23px;color:#ad9b90;font-size:9px;letter-spacing:.14em;text-transform:uppercase}.auth-separator::before,.auth-separator::after{content:"";height:1px;background:var(--a-line);flex:1}.auth-switch{text-align:center;color:var(--a-muted);font-size:12px}.auth-switch a{color:var(--a-brown);font-weight:600}.auth-error-list{margin:0;padding:0;list-style:none;color:var(--a-danger);font-size:11px}.auth-alert{padding:13px 15px;border-radius:12px;font-size:11px;line-height:1.5;border:1px solid transparent}.auth-alert.error{color:#7d3936;background:#fff2f0;border-color:#f0d1ce}.auth-alert.success{color:#385f45;background:#f0f7f1;border-color:#d0e1d4}.auth-help{margin-top:5px;font-size:10px;color:var(--a-muted)}
.auth-password-meter{display:grid;gap:8px;padding:12px 0 0}.auth-meter-track{height:3px;border-radius:999px;background:#eee6de;overflow:hidden}.auth-meter-track span{display:block;height:100%;width:0;background:var(--a-danger);transition:.25s}.auth-requirements{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;color:#a09086;font-size:9px}.auth-requirements span::before{content:"○";margin-right:5px}.auth-requirements span.met{color:var(--a-success)}.auth-requirements span.met::before{content:"✓"}
.auth-code-row{display:grid;grid-template-columns:repeat(8,1fr);gap:7px;margin:9px 0 6px}.auth-code-input{min-width:0;height:58px;text-align:center;border:1px solid #e2d5c9;border-radius:13px;background:#fff;font:500 25px/1 var(--a-serif);outline:none}.auth-code-input:focus{border-color:#c89b65;box-shadow:0 0 0 4px rgba(188,135,72,.08)}.auth-state-icon{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;margin-bottom:24px;background:#f7efe5;border:1px solid #eadbc9;color:var(--a-brown)}.auth-state-icon svg{width:32px;fill:none;stroke:currentColor;stroke-width:1.35}.auth-state-icon.success{background:#f0f6f1;border-color:#d4e1d7;color:var(--a-success)}.auth-state-icon.danger{background:#fbf0ef;border-color:#efd4d1;color:var(--a-danger)}
.auth-toast{position:fixed;z-index:9999;right:24px;top:24px;max-width:min(420px,calc(100% - 48px));padding:14px 18px;border-radius:14px;background:#2c1a13;color:#fff;box-shadow:var(--a-shadow);font-size:12px;opacity:0;transform:translateY(-10px);pointer-events:none;transition:.25s}.auth-toast.show{opacity:1;transform:none}.auth-toast.error{background:#7d3936}.auth-toast.success{background:#3f664b}
.auth-loader{position:fixed;inset:0;z-index:10000;display:grid;place-content:center;justify-items:center;gap:10px;background:#fbf8f3;transition:opacity .5s,visibility .5s}.auth-loader.hidden{opacity:0;visibility:hidden;pointer-events:none}.auth-loader-mark{font:400 58px/1 var(--a-serif);color:var(--a-brown)}.auth-loader-name{font:600 10px/1 var(--a-sans);letter-spacing:.34em}.auth-loader-name small{display:block;text-align:center;margin-top:6px;font-size:7px;letter-spacing:.48em;color:#aa7355}.auth-loader-line{width:125px;height:1px;background:#e6ddd5;overflow:hidden}.auth-loader-line span{display:block;width:38%;height:100%;background:linear-gradient(90deg,#aa7355,#c79859);animation:authLoad 1.2s ease-in-out infinite}@keyframes authLoad{0%{transform:translateX(-110%)}100%{transform:translateX(330%)}}
.auth-terms{display:flex;align-items:flex-start;gap:10px;color:var(--a-muted);font-size:10px;line-height:1.5}.auth-terms input{margin-top:2px}.auth-terms a{color:var(--a-brown);text-decoration:underline;text-underline-offset:3px}
@media(max-width:1050px){.auth-shell{grid-template-columns:.9fr 1.1fr}.auth-visual-copy{left:34px;right:34px}.auth-brand-light{left:34px}.auth-visual-foot{left:34px;right:34px}.auth-panel-scroll{padding-inline:38px}}
@media(max-width:820px){.auth-shell{display:block}.auth-visual{position:relative;height:34vh;min-height:290px}.auth-visual-photo{object-position:center 34%}.auth-brand-light{top:28px;left:26px}.auth-brand-light strong{font-size:35px}.auth-visual-copy{left:26px;right:26px;bottom:28px}.auth-visual-copy h1{font-size:44px;margin-bottom:10px}.auth-visual-copy p,.auth-visual-foot,.auth-kicker{display:none}.auth-flair-top{width:190px}.auth-panel{min-height:66vh}.auth-panel-topbar{height:74px;padding:20px 24px 0;justify-content:space-between}.auth-brand-dark{display:flex}.auth-brand-dark strong{font-size:31px}.auth-brand-dark span{font-size:6px;margin-top:8px}.auth-panel-scroll{padding:30px 24px 55px;align-items:flex-start}.auth-panel-footer{padding:0 24px 20px}.auth-panel-flair{width:250px;right:-115px;opacity:.11}.auth-title{font-size:49px}}
@media(max-width:560px){.auth-visual{height:27vh;min-height:230px}.auth-visual-copy h1{font-size:37px;max-width:320px}.auth-brand-light{display:none}.auth-panel-topbar{height:66px}.auth-panel-scroll{padding:20px 18px 44px}.auth-card{width:100%}.auth-title{font-size:43px}.auth-lead{font-size:16px;margin-bottom:27px}.auth-grid-2{grid-template-columns:1fr;gap:18px}.auth-meta-row{align-items:flex-start;flex-direction:column;gap:12px}.auth-code-row{gap:4px}.auth-code-input{height:49px;border-radius:10px;font-size:20px}.auth-panel-footer{font-size:9px}.auth-requirements{grid-template-columns:1fr}.auth-panel-flair{opacity:.08}.auth-field input,.auth-field select{height:55px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.auth-visual-photo{transform:none!important}}

/* Sequential entrance for premium first impression */
.auth-card>.auth-eyebrow,.auth-card>.auth-title,.auth-card>.auth-lead,.auth-form>*{opacity:0;animation:authFieldIn .7s cubic-bezier(.22,1,.36,1) forwards}.auth-card>.auth-eyebrow{animation-delay:.08s}.auth-card>.auth-title{animation-delay:.14s}.auth-card>.auth-lead{animation-delay:.2s}.auth-form>*:nth-child(1){animation-delay:.26s}.auth-form>*:nth-child(2){animation-delay:.31s}.auth-form>*:nth-child(3){animation-delay:.36s}.auth-form>*:nth-child(4){animation-delay:.41s}.auth-form>*:nth-child(5){animation-delay:.46s}.auth-form>*:nth-child(6){animation-delay:.51s}.auth-form>*:nth-child(7){animation-delay:.56s}@keyframes authFieldIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.auth-card>.auth-eyebrow,.auth-card>.auth-title,.auth-card>.auth-lead,.auth-form>*{opacity:1!important;transform:none!important}}

/* V4.8 official Ziarama brand assets */
.auth-brand-logo img{display:block;width:150px;height:auto;max-height:82px;object-fit:contain}
.auth-brand-light img{filter:drop-shadow(0 2px 10px rgba(0,0,0,.18))}
.auth-panel-topbar .auth-brand-logo img{width:136px}
@media(max-width:720px){.auth-brand-logo img,.auth-panel-topbar .auth-brand-logo img{width:118px}}
