:root{font:14px 'Segoe UI',Arial,sans-serif;color:#24364b;background:#edf3f7;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100svh;display:grid;place-items:center;padding:40px}button,input{font:inherit}button{cursor:pointer}button,input{outline:none}button:focus-visible,input:focus-visible{outline:3px solid #38b8cd55;outline-offset:3px}[hidden]{display:none!important}.auth-frame{width:min(1120px,100%);min-height:690px;display:grid;grid-template-columns:1fr 1fr;border:1px solid #dce5ec;background:white;box-shadow:0 22px 70px #183a5510;border-radius:8px;overflow:hidden}.brand-panel{position:relative;background:#10263d;color:white;padding:36px 42px;display:flex;flex-direction:column;overflow:hidden}.brand-panel:before{content:'';position:absolute;width:570px;height:570px;border-radius:50%;right:-350px;bottom:-250px;background:#0e4d60;opacity:.8}.brand-top,.brand-bottom{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1}.brand-top>span:first-child{font-size:22px;letter-spacing:-.8px;font-weight:700}.brand-top>span:first-child span{font-weight:400;color:#70d2df}.brand-top>span:last-child{font-size:10px;color:#94adc1;letter-spacing:.5px}.brand-copy{position:relative;z-index:1;margin-top:80px}.brand-copy h1{font-size:43px;line-height:1.18;letter-spacing:-1.5px;font-weight:650;margin:0}.brand-copy p{font-size:14px;line-height:1.8;color:#a7bfce;margin:22px 0 0}.brand-bottom{margin-top:auto;font-size:10px;color:#829fb2;padding-top:16px;border-top:1px solid #ffffff0b}.form-panel{padding:48px 54px 24px;display:flex;flex-direction:column;justify-content:space-between;background:#fff}.form-content{width:100%;max-width:370px;margin:0 auto}.brand-logo{display:block;width:190px;height:74px;object-fit:contain;object-position:left center;margin:0 0 38px}.form-panel h2{font-size:31px;line-height:1.25;letter-spacing:-1px;font-weight:650;margin:0 0 13px}.form-panel #login-description{font-size:12px;line-height:1.7;color:#8091a3;margin:0 0 31px}label{display:block;font-size:12px;color:#34475b;font-weight:600;margin-bottom:10px}.input-shell{display:flex;align-items:center;gap:11px;height:50px;padding:0 14px;border:1px solid #dce5ed;background:#fbfcfe;border-radius:4px;margin-bottom:22px;transition:border-color .15s,box-shadow .15s}.input-shell:focus-within{border-color:#078d9f;box-shadow:0 0 0 3px #078d9f0b;background:#fff}.input-shell>svg{width:17px;height:17px;flex-shrink:0;color:#8c9caf}.input-shell svg{fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.input-shell input{border:0;background:transparent;padding:0;height:100%;width:100%;min-width:0;font-size:13px;color:#24364b}.input-shell input:focus-visible{outline:0}.input-shell input::placeholder{color:#99a7b6}.input-shell button{border:0;background:transparent;display:grid;place-items:center;width:30px;height:36px;flex-shrink:0;color:#678092;padding:5px;border-radius:4px}.input-shell button:hover{color:#008b9c;background:#eaf5f7}.input-shell button svg{width:18px;height:18px}.sign-in{width:100%;height:46px;display:flex;align-items:center;justify-content:center;gap:14px;border:1px solid #008799;border-radius:4px;background:#008b9c;color:white;font-size:13px;font-weight:650;margin-top:7px;transition:background .15s,transform .15s}.sign-in svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.sign-in:hover{background:#007384}.sign-in:active{transform:translateY(1px)}.sign-in:disabled{opacity:.7;cursor:wait}.form-error{font-size:12px;line-height:1.7;background:#fff4f2;border:1px solid #f1d5d0;border-radius:4px;padding:10px 12px;color:#ab4439;margin:0 0 15px}.mode-switch{display:block;margin:16px auto 0;border:0;background:transparent;color:#628496;font-size:11px;padding:8px}.mode-switch:hover{color:#008b9c;text-decoration:underline}.form-divider{display:flex;align-items:center;gap:12px;margin-top:25px;font-size:10px;color:#a0acba;white-space:nowrap}.form-divider:before,.form-divider:after{content:'';height:1px;flex:1;background:#e8edf2}.form-panel footer{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:#9babb9;margin-top:30px}.form-content{animation:appear .25s ease-out}@keyframes appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media(max-width:1100px){body{padding:28px}.brand-panel{padding:32px}.brand-copy h1{font-size:37px}.brand-copy{margin-top:74px}.form-panel{padding:42px 38px 24px}}@media(max-width:760px){body{padding:20px}.auth-frame{grid-template-columns:1fr;min-height:0;max-width:450px}.brand-panel{display:none}.form-panel{padding:35px 32px 24px}.brand-logo{width:168px;height:65px;margin-bottom:26px}.form-panel h2{font-size:28px}.form-panel #login-description{margin-bottom:26px}.form-divider{margin-top:22px}.form-panel footer{margin-top:32px}.input-shell{height:50px}}@media(max-width:420px){body{padding:16px}.form-panel{padding:28px 23px 22px}.brand-logo{width:154px;height:60px}.form-panel h2{font-size:26px}.form-panel #login-description{font-size:12px}.form-panel footer{font-size:9px}.mode-switch{font-size:11px}.auth-frame{border-radius:6px;box-shadow:0 12px 35px #183a5509}}@media(max-height:760px) and (min-width:761px){body{padding:24px}.auth-frame{min-height:640px}.brand-copy{margin-top:55px}.brand-visual{margin-top:22px;height:200px}.form-panel{padding-top:36px}.brand-logo{margin-bottom:26px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
/* Fixapay brand palette and animated transfer network */
:root{--fixa-blue:#2b4094;--fixa-cyan:#45b8e8;background:#edf3fb}
.brand-panel{background:linear-gradient(145deg,#263880 0%,#2449a3 62%,#2166b8 100%)}
.brand-panel:before{width:520px;height:520px;right:-300px;bottom:-280px;background:#40bdf3;opacity:.14}
.brand-top>span:first-child span{color:#79d6fc}.brand-top>span:last-child,.brand-bottom{color:#b1c6ec}.brand-copy p{color:#c0d5ef}
.brand-copy{margin-top:65px}.brand-copy h1{font-weight:650}
.transfer-scene{position:relative;width:min(420px,calc(100% + 20px));margin:18px auto 20px;flex:1;min-height:220px;display:flex;flex-direction:column;justify-content:center}
.transfer-scene>svg{width:100%;height:auto;display:block;overflow:visible}
.network-caption{display:flex;align-items:center;justify-content:center;gap:8px;color:#bad9f6;font-size:10px;letter-spacing:.4px;margin-top:5px}
.network-caption span{width:5px;height:5px;background:#79ddff;border-radius:50%;box-shadow:0 0 10px #79ddff88}
.network-ring{transform-origin:210px 135px;animation:network-turn 70s linear infinite}
.hub-pulse{transform-box:fill-box;transform-origin:center;animation:hub-breathe 4s ease-in-out infinite}
.bank-node{animation:bank-breathe 5s ease-in-out infinite}.bank-node:nth-of-type(2n){animation-delay:2s}
@keyframes network-turn{to{transform:rotate(360deg)}}
@keyframes hub-breathe{0%,100%{opacity:.4;scale:.93}50%{opacity:1;scale:1.08}}
@keyframes bank-breathe{0%,100%{opacity:.75}50%{opacity:1}}
.sign-in{background:#2b4094;border-color:#2b4094;box-shadow:0 5px 14px #2b409416}.sign-in:hover{background:#23367d}
.input-shell:focus-within{border-color:#45b8e8;box-shadow:0 0 0 3px #45b8e814}
button:focus-visible,input:focus-visible{outline-color:#45b8e855}.input-shell button:hover{color:#2b4094;background:#edf6fc}.mode-switch:hover{color:#2b4094}
@media(max-height:760px) and (min-width:761px){.brand-copy{margin-top:45px}.transfer-scene{min-height:180px;margin-top:8px;margin-bottom:14px}.transfer-scene>svg{max-height:215px}}
@media(prefers-reduced-motion:reduce){.flow-dots{display:none}.network-ring,.hub-pulse,.bank-node{animation:none!important}}
/* Full-screen entrance, using the panel's frosted palette. */
:root{color:#23302a;background:#e9eeea;font-family:'Inter','Segoe UI',Arial,sans-serif}
body{padding:0;background:radial-gradient(ellipse at 10% 65%,#d3eced99,transparent 60%),radial-gradient(ellipse at 80% 15%,#eeecd977,transparent 60%),#e9eeea}
.auth-frame{width:100%;min-height:100svh;border:0;border-radius:0;box-shadow:none;background:transparent;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
.brand-panel{background:transparent;color:#22342a;padding:48px clamp(32px,6vw,100px);border-right:1px solid #ffffffa0}
.brand-panel:before{background:radial-gradient(circle,#dbe8db88,transparent 70%);right:-200px;bottom:-100px;opacity:.8}
.brand-top>span:first-child{color:#23382d;font-size:25px;font-weight:600}.brand-top>span:first-child span{color:#548b79}.brand-top>span:last-child{color:#7a8c80;font-size:11px}
.brand-copy{margin-top:clamp(50px,11vh,130px)}.brand-copy h1{font-size:clamp(36px,4.1vw,58px);font-weight:500;letter-spacing:-2px;line-height:1.16;color:#25372d}.brand-copy p{font-size:16px;line-height:1.9;color:#7b8b80;margin-top:24px}
.brand-bottom{color:#839289;border-color:#ffffffa0;font-size:11px;padding-top:22px}
.transfer-scene{background:#ffffff32;border:1px solid #ffffff80;border-radius:24px;padding:24px;margin:38px 0;min-height:240px;backdrop-filter:blur(12px)}.transfer-scene>svg{max-height:290px}.bank-node rect{fill:#fff;fill-opacity:.5;stroke:#94b6a6}.bank-node g{stroke:#567966}.network-ring{stroke:#789b86;stroke-opacity:.3}.hub-pulse{stroke:#7fae95}.transfer-hub>circle:nth-of-type(2){fill:#344c3e}.network-caption{color:#6a8574;font-size:12px}.network-caption span{background:#65a281}
.form-panel{background:transparent;padding:clamp(35px,6vw,90px);justify-content:center;position:relative}
.form-content{max-width:420px;width:100%;padding:36px;border:1px solid #ffffffa0;border-radius:23px;background:#ffffff58;backdrop-filter:blur(18px);box-shadow:0 16px 45px #36584906}
.brand-logo{width:165px;height:64px;margin:0 0 32px;mix-blend-mode:multiply}.form-panel h2{font-size:34px;font-weight:500;letter-spacing:-1px;color:#22342a}.form-panel #login-description{font-size:13px;line-height:1.8;color:#809084;margin-bottom:28px}
label{font-size:12px;color:#42574a;font-weight:500}.input-shell{height:52px;border-radius:11px;background:#ffffff90;border-color:#ffffffb0;margin-bottom:23px;padding:0 15px;gap:12px}.input-shell input{font-size:14px;color:#304338}.input-shell input::placeholder{color:#92a296}.input-shell>svg{color:#82998a}.input-shell:focus-within{border-color:#80a28f;box-shadow:0 0 0 3px #8daf9b17;background:#ffffffc0}
.sign-in{height:49px;border-radius:11px;background:#293b30;border-color:#ffffffa0;box-shadow:none;font-size:14px;font-weight:500}.sign-in:hover{background:#1e2d24}.input-shell button:hover{color:#365a46;background:#e6eee8}.mode-switch{color:#78917f;font-size:12px}.mode-switch:hover{color:#294c36}.secure-note{color:#85978a}.form-footer{position:absolute;left:38px;right:38px;bottom:26px;color:#8b9b8f;font-size:11px}
button:focus-visible,input:focus-visible{outline-color:#7ea48b66}
@media(max-width:900px){.brand-panel{padding:35px}.brand-copy h1{font-size:39px}.form-panel{padding:35px 24px}.form-content{padding:28px}.brand-copy p{font-size:14px}}
@media(max-width:760px){body{padding:0}.auth-frame{display:flex;min-height:100svh}.brand-panel{display:none}.form-panel{width:100%;min-height:100svh;padding:30px 20px 75px;justify-content:center}.form-content{max-width:440px;padding:30px 24px;border-radius:20px}.form-panel h2{font-size:31px}.form-footer{left:24px;right:24px;bottom:24px}.brand-logo{width:155px;height:60px}}
@media(max-height:650px) and (min-width:761px){.brand-copy{margin-top:40px}.transfer-scene{min-height:150px;padding:14px;margin:20px 0}.transfer-scene>svg{max-height:180px}.form-panel{padding-top:25px;padding-bottom:65px}.form-content{padding:25px}.brand-logo{margin-bottom:22px}}
/* FixaPay blue / turquoise, with the network drawn directly in the backdrop. */
:root{color:#24364e;background:#edf5f8}
body{background:radial-gradient(ellipse at 8% 75%,#bfeaf077,transparent 62%),radial-gradient(ellipse at 78% 8%,#dce7fd77,transparent 60%),#edf5f8}
.brand-panel{color:#263d68}.brand-panel:before{background:radial-gradient(circle,#aedbea77,transparent 70%)}
.brand-top{position:relative;z-index:3}.brand-top .left-brand-logo{display:block;width:164px;height:62px;object-fit:contain;object-position:left center;mix-blend-mode:multiply}.brand-top a{display:block}.brand-top>span:last-child{color:#8599ae}
.brand-copy{z-index:2}.brand-copy h1{color:#263d68}.brand-copy p{color:#7c92a8}.brand-bottom{color:#859bb1;z-index:2;border-color:#ffffff80}
.transfer-scene{position:absolute;left:-7%;right:-7%;bottom:75px;height:48vh;min-height:300px;max-height:540px;margin:0;padding:0;border:0;border-radius:0;background:transparent;backdrop-filter:none;pointer-events:none;z-index:0}
.transfer-scene>svg{display:block;width:100%;height:100%;max-width:none;max-height:none;opacity:.86}.network-caption{display:none}.bank-node rect{fill:#f4fbff;fill-opacity:.65;stroke:#8fcadf}.bank-node g{stroke:#5091b0}.network-ring{stroke:#64bdd2;stroke-opacity:.26}.hub-pulse{stroke:#5fc9de}.transfer-hub>circle:nth-of-type(2){fill:#2e4b9a}
.form-panel h2{color:#283f62}.form-panel #login-description{color:#8298ad}.form-content{background:#ffffff58;box-shadow:0 16px 45px #304a7006}label{color:#45627f}.input-shell input{color:#2c4565}.input-shell input::placeholder{color:#91a6bb}.input-shell>svg{color:#7b9eb4}.input-shell:focus-within{border-color:#66bed4;box-shadow:0 0 0 3px #66bed414}.sign-in{background:#2d4898;border-color:#2d4898}.sign-in:hover{background:#243c83}.input-shell button:hover{color:#2d4898;background:#e7f4fb}.mode-switch{color:#7497ae}.mode-switch:hover{color:#294c8c}.secure-note,.form-footer{color:#8da5b9}button:focus-visible,input:focus-visible{outline-color:#52bbd466}
@media(min-width:761px) and (max-height:750px){.transfer-scene{height:44vh;min-height:250px;bottom:48px;opacity:.7}.brand-copy{margin-top:40px}.brand-copy h1{font-size:40px}.brand-copy p{font-size:14px;margin-top:16px}}
@media(max-width:760px){.brand-logo{mix-blend-mode:multiply}}
.transfer-scene{width:auto;max-width:none;display:block;left:-4%;right:-4%}
/* Airy full-screen composition with a single brand anchor. */
body{background:radial-gradient(ellipse at 17% 70%,#93e7f34d,transparent 54%),radial-gradient(ellipse at 80% 20%,#d4e5ff8c,transparent 58%),#eff8fc}
.brand-panel{border-right:0}.brand-top>span:last-child{position:fixed;right:clamp(32px,6vw,90px);top:60px;font-size:12px;color:#42628d}
.brand-copy h1{font-size:clamp(38px,4.3vw,62px);font-weight:600;letter-spacing:-2px;line-height:1.15;color:#192c5b}.brand-copy p{font-size:17px;line-height:1.8;color:#718bad}
.form-content{max-width:450px;padding:42px;border:1px solid #ffffffde;background:linear-gradient(135deg,#ffffff6e,#e8f5ff55);backdrop-filter:blur(24px);box-shadow:0 25px 80px #448bc20b,inset 0 1px 0 #fff}
.form-content>.brand-logo{display:none}.form-panel h2{font-size:36px;font-weight:600;letter-spacing:-1px;color:#1c2e59}.sign-in{background:#2861d5;border-color:#2861d5}.sign-in:hover{background:#2253bb}
.transfer-scene{left:-1%;right:-1%;bottom:70px;height:49vh;max-height:550px;min-height:330px}.login-network-art{display:block;width:100%;height:100%;object-fit:contain;animation:network-drift 8s ease-in-out infinite}
@keyframes network-drift{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@media(max-width:900px){.form-content{padding:30px}.brand-copy h1{font-size:40px}.brand-copy p{font-size:14px}}
@media(max-width:760px){.form-content>.brand-logo{display:block}.form-content{padding:30px 24px}.form-panel h2{font-size:32px}}
@media(max-height:750px) and (min-width:761px){.brand-copy{margin-top:32px}.brand-copy h1{font-size:38px}.transfer-scene{height:43vh;min-height:250px;bottom:45px}.form-content{padding:30px}.form-panel h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.login-network-art{animation:none}}
.dark body{background:radial-gradient(ellipse at 17% 70%,#12627a32,transparent 54%),radial-gradient(ellipse at 80% 20%,#244c862d,transparent 58%),#0c1c35;color:#deebff}
.dark .brand-panel:before{background:radial-gradient(circle,#0d496f45,transparent 70%)}.dark .brand-copy h1,.dark .form-panel h2{color:#e1ecff}.dark .brand-copy p,.dark .form-panel #login-description{color:#90a9cb}
.dark .form-content{background:linear-gradient(135deg,#203c5d66,#13284566);border-color:#a6c6e332;box-shadow:0 25px 80px #020b1c33,inset 0 1px 0 #dcecff0c;backdrop-filter:blur(24px)}
.dark label{color:#b4cce8}.dark .input-shell{background:#19375c66;border-color:#8baacf27}.dark .input-shell input{color:#e1ecff}.dark .input-shell input::placeholder{color:#7b9bc0}.dark .input-shell>svg,.dark .input-shell button{color:#96b9df}.dark .input-shell:focus-within{background:#20436977;border-color:#5ebed17a}.dark .mode-switch{color:#8dafd2}.dark .mode-switch:hover{color:#b1d9ff}.dark .brand-top>span:last-child,.dark .brand-bottom,.dark .form-panel footer,.dark .form-divider{color:#7592b5}
.dark .left-brand-logo,.dark .brand-logo{mix-blend-mode:normal;background:#eff6ff;border-radius:9px;padding:5px}
.sign-in{background:#252b30;border-color:#ffffffa0;box-shadow:0 2px 5px #1224360b;font-weight:500;border-radius:10px}.sign-in:hover{background:#363f46}.input-shell{border-radius:10px}.dark .sign-in{background:#dbe5ef;color:#1d2d42;border-color:#ffffff9c;box-shadow:none}.dark .sign-in:hover{background:#eff4fa}.dark .sign-in svg{stroke:currentColor}
body .popup-actions button{border-radius:10px;font-weight:500;background:#ffffffb0;border-color:#e0e6eb;color:#44515b;box-shadow:none}body .popup-actions .popup-accept{background:#252b30;border-color:#252b30;color:#fff}.dark body .popup-actions button{background:#ffffff0a;border-color:#ffffff22;color:#bacde2}.dark body .popup-actions .popup-accept{background:#dbe5ef;border-color:#dbe5ef;color:#1d2d42}
.sign-in{height:auto;min-height:49px;padding:12px 16px;line-height:1.4;white-space:normal}.mode-switch{height:auto;min-height:38px;line-height:1.5;white-space:normal;padding:10px 8px;max-width:100%}
