#login{box-sizing:border-box;min-height:100dvh;padding:24px 16px;overflow-y:auto}#login form{box-sizing:border-box;width:min(100%,400px);margin:auto}#login .captain-login-field{display:block;text-align:start;font-size:14px;margin:14px 0 7px}#login .captain-username{box-sizing:border-box;width:100%;min-height:48px;font-size:18px;text-align:start;padding:10px 14px;border-radius:12px}#login .pin-input{box-sizing:border-box;width:100%;min-height:48px;margin:0 0 14px}#login #login-mode{width:100%;margin-top:12px;min-height:44px;background:transparent}#login [hidden]{display:none!important}#login h1{font-size:clamp(20px,4vw,28px);margin:18px 0}#login .brand{justify-content:center}#user-username-label[hidden]{display:none!important}@media(max-height:600px){#login{padding:12px}#login h1{margin:10px 0}#login .captain-login-field{margin-top:8px}}
#login .brand{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:12px}#login .brand-logo{position:static!important;float:none!important;margin:0!important;width:24px;height:39px}#login form{padding:24px!important}#login #pin-submit{margin-top:8px}
#login:not([hidden]){position:relative;isolation:isolate;display:grid!important;grid-template-columns:minmax(0,530px) minmax(0,430px);justify-content:center;align-items:center;gap:clamp(32px,6vw,96px);padding:70px 40px 45px;min-height:100dvh;background:#062f2f;color:#edf5f1;overflow:hidden}
#login:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 14% 30%,#26726760,transparent 55%),radial-gradient(ellipse at 95% 85%,#b4995840,transparent 50%),linear-gradient(120deg,#051f25,#063a37 60%,#133936);z-index:-2}
#login:after{content:"";position:absolute;width:65vw;height:65vw;border:1px solid #d3bc7630;border-radius:50%;right:-30vw;top:-30vw;box-shadow:0 0 0 90px #d3bc7605,0 0 0 180px #d3bc7604;z-index:-1;pointer-events:none}
#login .login187-identity{max-width:530px;animation:login187-enter .65s ease both;text-align:start}
#login .login187-brand{display:flex;align-items:center;gap:17px;letter-spacing:5px;color:#e6d8aa;font-size:21px}
#login .login187-brand img{width:34px;height:55px;object-fit:contain}
#login .login187-eyebrow{font-size:11px;letter-spacing:4px;color:#b6c5ba;margin-top:60px}
#login .login187-heading{font-family:Georgia,serif;font-weight:400;font-size:clamp(40px,4.5vw,64px);line-height:1.13;margin:22px 0}
#login .login187-description{font-size:16px;line-height:1.9;color:#bccfc8;max-width:390px}
#login .login187-rule{width:55px;height:2px;background:#d4bd7b;margin:32px 0}
#login .login187-tag{font-size:11px;letter-spacing:2px;color:#bdcfc5}
#login #login-form{width:100%;max-width:430px;margin:0;padding:44px 36px 28px!important;text-align:start;background:linear-gradient(145deg,#f3fff312,#c9ddcd06);border:1px solid #cadfcb29;border-radius:25px;box-shadow:0 30px 80px #00151360,inset 0 1px #ffffff10;backdrop-filter:blur(18px);animation:login187-enter .65s ease both}
#login #login-form>.brand{display:none!important}
#login .login187-kicker{color:#d9c792;font-size:10px;letter-spacing:3px}
#login #pin-title{font-size:28px;font-weight:500;margin:14px 0 10px;color:inherit}
#login .login187-subtitle{color:#bed0c9;font-size:13px;margin:0 0 28px;line-height:1.6}
#login label{display:block!important;text-align:start;font-size:12px!important;color:#e0e9e2;margin:20px 0 10px!important}
#login input{box-sizing:border-box;width:100%;height:52px;min-height:52px;font-size:16px!important;padding:12px 15px!important;border:1px solid #ccdfce35!important;border-radius:11px!important;background:#01272455!important;color:#fff!important;text-align:start;outline:none;margin:0!important}
#login input:focus{border-color:#dfc98d!important;box-shadow:0 0 0 3px #dac58815}
#login #pin-submit{margin-top:28px;width:100%;min-height:51px;border-radius:11px;color:#243b30;background:linear-gradient(110deg,#efdfb3,#cbb575);border:0;font-size:14px;font-weight:600;box-shadow:0 8px 20px #00000020}
#login #login-mode{margin-top:12px;width:100%;min-height:51px;border-radius:11px;background:transparent;color:#d3e0d7;border:1px solid #c6dbcc30;font-size:13px}
#login .login187-foot{margin-top:24px;padding-top:22px;border-top:1px solid #bed4c51e;color:#a8c1b5;display:flex;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:1px}
#login #login-error{color:#ffd5bd;line-height:1.6;white-space:normal;overflow-wrap:anywhere;margin:15px 0 0}
#login #login-error:empty{display:none}
#login #pin-pad{margin-top:18px;gap:8px}
#login #pin-pad button{min-height:48px;border-radius:10px;background:#ffffff0a;border:1px solid #c6dbcc30;color:inherit}
#login #login187-language{position:absolute;inset-inline-end:40px;top:26px;min-height:44px;padding:8px 20px;background:transparent;color:#ddd1ae;border:1px solid #d2c29235;border-radius:24px;font-size:13px}
#login .login187-ar{display:none}html[lang="ar"] #login .login187-en{display:none}html[lang="ar"] #login .login187-ar{display:inline}html[lang="ar"] #login .login187-heading{font-family:Arial,sans-serif;line-height:1.4;letter-spacing:0}html[lang="ar"] #login .login187-kicker{letter-spacing:0}
#login [hidden]{display:none!important}
html[data-theme="light"] #login{color:#1c3e35;background:#e9eee6}
html[data-theme="light"] #login:before{background:radial-gradient(ellipse at 14% 30%,#c8d9c9,transparent 55%),radial-gradient(ellipse at 95% 85%,#d9c79755,transparent 50%),#eef1e9}
html[data-theme="light"] #login #login-form{background:linear-gradient(145deg,#ffffffd9,#ffffff80);border-color:#a6b8a850;box-shadow:0 24px 65px #25493718}
html[data-theme="light"] #login input{background:#f3f6ee!important;border-color:#aabdaf!important;color:#1c3e35!important}
html[data-theme="light"] #login label,html[data-theme="light"] #login #login-mode{color:#2d5143}
html[data-theme="light"] #login .login187-subtitle,html[data-theme="light"] #login .login187-description{color:#5b7365}
html[data-theme="light"] #login .login187-kicker,html[data-theme="light"] #login .login187-brand,html[data-theme="light"] #login #login187-language{color:#7b683a}
html[data-theme="light"] #login .login187-eyebrow,html[data-theme="light"] #login .login187-tag,html[data-theme="light"] #login .login187-foot{color:#597b67}
html[data-theme="light"] #login #login-error{color:#9e3929}
html[data-theme="light"] #login #pin-pad button{color:#234d3e;border-color:#b6cbbd}
@keyframes login187-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){#login .login187-identity,#login #login-form{animation:none}}
@media(max-width:850px){#login:not([hidden]){grid-template-columns:minmax(0,430px);gap:0;padding:85px 24px 38px}#login .login187-identity{display:none}#login #login-form{padding:34px 27px 26px!important}#login #login-form>.brand{display:flex!important;flex-direction:row;gap:16px;font-size:15px;margin:0 0 32px}#login #login-form>.brand img{width:26px;height:42px}#login #login187-language{inset-inline-end:24px;top:22px}#login #pin-title{font-size:26px}}
@media(max-height:650px){#login:not([hidden]){padding-top:80px;align-items:start;overflow-y:auto}#login #login-form{padding:24px 28px!important}#login .login187-eyebrow{margin-top:25px}#login .login187-subtitle{margin-bottom:14px}#login .login187-heading{font-size:40px}}

/* BOOT204C: external CSP-compatible loader */
.boot204{position:fixed;inset:0;min-height:100svh;display:grid;place-items:center;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 43%,#19463c 0%,#0b2c25 34%,#061c18 76%)}.boot204:before,.boot204:after{content:"";position:absolute;width:min(86vw,820px);aspect-ratio:1;border:1px solid #d4b67612;border-radius:50%;z-index:-1}.boot204:after{width:min(112vw,1100px);border-color:#d4b67608}.b204-content{text-align:center;padding:24px;max-width:100%;transform:translateY(-2vh)}.b204-mark{width:clamp(82px,11vw,126px);aspect-ratio:316/512;position:relative;margin:0 auto 36px;filter:drop-shadow(0 0 23px #d8b67518)}.b204-piece{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;animation:bloom204 3.6s cubic-bezier(.22,.65,.3,1) infinite;animation-delay:calc(var(--i)*.14s)}.b204-brand{font-size:clamp(17px,2.1vw,25px);font-weight:500;letter-spacing:.2em;line-height:1.5;margin:0}.b204-pos{display:block;color:#cdb57c;font-size:11px;letter-spacing:.45em;margin-top:10px}.b204-rule{height:1px;width:48px;margin:29px auto 22px;background:linear-gradient(90deg,transparent,#c9ac6b,transparent)}.b204-message{font-size:13px;color:#b6c8be;letter-spacing:.03em;line-height:1.9;margin:0}.b204-message [lang=ar]{display:block;font-size:14px}.b204-dots{display:flex;gap:6px;justify-content:center;margin-top:18px}.b204-dots i{width:3px;height:3px;border-radius:50%;background:#dcc287;animation:pulse204 1.4s ease-in-out infinite}.b204-dots i:nth-child(2){animation-delay:.2s}.b204-dots i:nth-child(3){animation-delay:.4s}.b204-footer{position:absolute;bottom:max(23px,env(safe-area-inset-bottom));font-size:9px;letter-spacing:.18em;color:#718f81;text-align:center;width:100%}@keyframes bloom204{0%,7%{opacity:0;transform:translateY(7px) scale(.96)}26%,78%{opacity:1;transform:translateY(0) scale(1)}96%,100%{opacity:0;transform:translateY(-2px)}}@keyframes pulse204{0%,100%{opacity:.25}50%{opacity:1}}@media(max-height:450px){.b204-mark{width:58px;margin-bottom:14px}.b204-rule{margin:13px auto}.b204-dots{margin-top:10px}.b204-footer{bottom:12px}.b204-content{padding:16px}.b204-brand{font-size:17px}}@media(prefers-reduced-motion:reduce){.b204-piece{animation:none;opacity:1}.b204-dots i{animation:none;opacity:.6}}.b204-piece{background-image:url(/villaggio-mark.png?v=70);background-size:contain;background-repeat:no-repeat}.boot204{z-index:2147483000;font-family:Arial,sans-serif;color:#f5f0df;box-sizing:border-box}.boot204 *{box-sizing:border-box}.boot204[hidden]{display:none!important}.b204-retry{margin-top:14px;padding:10px 20px;border:1px solid #b79b62;border-radius:10px;background:transparent;color:#f5f0df}.login187-foot{flex-wrap:wrap;gap:8px}.login187-foot span:first-child{font-size:10px;letter-spacing:.03em;overflow-wrap:anywhere}
.b204-piece:nth-child(1){--i:0;clip-path:polygon(0% 47%,24% 47%,24% 63%,78% 63%,78% 47%,100% 47%,100% 100%,0% 100%)}
.b204-piece:nth-child(2){--i:1;clip-path:inset(47% 50% 38% 23%)}
.b204-piece:nth-child(3){--i:2;clip-path:inset(47% 22% 38% 50%)}
.b204-piece:nth-child(4){--i:3;clip-path:inset(32% 50% 53% 23%)}
.b204-piece:nth-child(5){--i:4;clip-path:inset(32% 22% 53% 50%)}
.b204-piece:nth-child(6){--i:5;clip-path:inset(19% 50% 68% 25%)}
.b204-piece:nth-child(7){--i:6;clip-path:inset(19% 24% 68% 50%)}
.b204-piece:nth-child(8){--i:7;clip-path:inset(0% 35% 81% 35%)}
.b204-retry{position:absolute;bottom:65px}.b204-retry[hidden]{display:none!important}
