@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');
:root{--wavo:#5865f2;--wavo2:#7a63f5;--ink:#161a22;--muted:#697386;--line:#e3e6ec;--soft:#f6f7fb;--cream:#f7f5f1;--success:#18a96b}
*{box-sizing:border-box}.hidden{display:none!important}html,body{min-height:100%}body{margin:0;font-family:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--cream)}button,input{font:inherit}.wavo-login-page{min-height:100vh;background:radial-gradient(circle at 12% 14%,rgba(88,101,242,.10),transparent 27%),radial-gradient(circle at 86% 86%,rgba(122,99,245,.09),transparent 26%),#f7f7fb}
.desktop-link-login{min-height:100vh;padding:28px clamp(22px,4vw,60px) 22px;display:flex;flex-direction:column;gap:18px}.device-login-brand{display:inline-flex;align-items:center;gap:10px;color:#171b24;text-decoration:none;font-size:19px;font-weight:850;width:max-content}.device-login-brand img{width:36px;height:36px}.device-login-brand small{font-size:9px;letter-spacing:.14em;color:var(--wavo);background:#eef0ff;border:1px solid #e1e4ff;padding:4px 7px;border-radius:999px}
.desktop-link-card{width:min(1160px,100%);min-height:610px;margin:auto;background:rgba(255,255,255,.94);border:1px solid rgba(214,219,229,.95);border-radius:32px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:34px;padding:46px 50px;box-shadow:0 28px 80px rgba(40,48,76,.10),0 1px 0 rgba(255,255,255,.9) inset;position:relative;overflow:hidden}.desktop-link-card:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-90px;top:-120px;background:linear-gradient(145deg,rgba(88,101,242,.13),rgba(122,99,245,.03));pointer-events:none}.desktop-link-copy{display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1}.login-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:850;letter-spacing:.13em;color:var(--wavo);margin-bottom:16px}.login-eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--wavo);box-shadow:0 0 0 5px rgba(88,101,242,.09)}.desktop-link-copy h1,.desktop-code-copy h1{font-size:clamp(38px,4vw,56px);line-height:1.02;margin:0 0 16px;letter-spacing:-.052em;font-weight:760;max-width:650px}.login-lead,.desktop-code-copy>p{font-size:16px;line-height:1.65;color:#5f6878;max-width:620px;margin:0 0 30px}
.device-login-steps{list-style:none;margin:0;padding:0;display:grid;gap:17px;position:relative}.device-login-steps:before{content:"";position:absolute;left:16px;top:31px;bottom:31px;border-left:1px solid #d5d9e3}.device-login-steps li{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:12px;font-size:15px;position:relative;color:#2d3440}.device-login-steps i{width:33px;height:33px;border:1px solid #cdd2dc;border-radius:50%;background:#fff;display:grid;place-items:center;font-style:normal;font-size:12px;font-weight:760;z-index:1;box-shadow:0 4px 14px rgba(45,55,78,.05)}.device-login-steps strong{font-weight:780}.login-trust-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:27px}.login-trust-row span{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border-radius:11px;background:#f6f7fb;color:#555f70;font-size:11px;font-weight:650}.login-trust-row i{color:var(--wavo)}.login-copy-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:28px}.device-help-link{color:#202632;font-weight:760;font-size:13px;text-decoration:none;display:inline-flex;gap:7px;align-items:center}.device-help-link:hover{color:var(--wavo)}.stay-linked-check{display:flex;align-items:center;gap:9px;cursor:pointer;color:#3f4754;font-size:12px}.stay-linked-check input{position:absolute;opacity:0}.stay-linked-check>span{width:19px;height:19px;border:1.5px solid #aeb5c0;border-radius:6px;display:grid;place-items:center;background:#fff}.stay-linked-check input:checked+span{background:var(--wavo);border-color:var(--wavo)}.stay-linked-check input:checked+span:after{content:"✓";color:#fff;font-size:12px;font-weight:900}
.desktop-link-qr-side{align-self:center;justify-self:stretch;background:linear-gradient(180deg,#fbfbff,#f5f6ff);border:1px solid #e6e8f3;border-radius:26px;padding:24px;display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}.qr-panel-head{width:100%;display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.qr-panel-head span{font-size:9px;letter-spacing:.12em;font-weight:850;color:#7b8493}.qr-panel-head b{font-size:10px;color:#15915d;background:#e9fbf3;border:1px solid #d3f4e4;padding:6px 9px;border-radius:999px}.desktop-qr-box{width:276px;height:276px;background:#fff;border:1px solid #e3e6ef;border-radius:24px;position:relative;display:grid;place-items:center;padding:16px;box-shadow:0 13px 34px rgba(46,54,80,.08)}.desktop-login-qr canvas{display:block}.desktop-qr-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:15px;background:#fff;display:grid;place-items:center;padding:7px;box-shadow:0 0 0 5px #fff,0 6px 18px rgba(41,49,75,.14)}.desktop-qr-logo img{width:100%;height:100%}.desktop-qr-meta{width:100%;display:flex;justify-content:space-between;align-items:center;margin:16px 0 16px;color:#727c8b;font-size:11px}.desktop-qr-meta span{display:flex;align-items:center;gap:6px}.desktop-qr-meta button{border:0;background:transparent;color:var(--wavo);font-size:11px;font-weight:740;cursor:pointer;display:flex;gap:6px;align-items:center}.device-switch-link{width:100%;border:0;background:#fff;border:1px solid #e0e4ef;border-radius:14px;min-height:50px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;color:#202632;cursor:pointer;font-weight:760;font-size:13px}.device-switch-link:hover{border-color:#cfd4ff;background:#fdfdff}.device-switch-link span{display:flex;align-items:center;gap:9px}.device-switch-link i{color:var(--wavo)}.desktop-no-account{font-size:10.5px;color:#7b8390;text-align:center;line-height:1.45;margin:14px 5px 0}.desktop-no-account strong{font-weight:720;color:#5c6574}.desktop-login-foot{display:flex;justify-content:center;align-items:center;gap:9px;font-size:10.5px;color:#8a929f}.desktop-login-foot a{color:#636df4;text-decoration:none;font-weight:700}
.desktop-code-flow{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.9fr);gap:46px;align-items:center;position:relative}.desktop-code-back{position:absolute;left:-16px;top:-12px;width:40px;height:40px;border:0;border-radius:50%;background:#f5f6fa;color:#343b47;cursor:pointer;display:grid;place-items:center}.desktop-code-copy{padding:26px 0 16px}.desktop-code-copy h1{font-size:48px}.desktop-code-copy .device-help-link{margin-top:24px}.desktop-code-inner{background:#f8f9fd;border:1px solid #e4e7f0;border-radius:24px;padding:28px}.code-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.code-card-head span{font-size:10px;letter-spacing:.11em;font-weight:820;color:#747d8c}.code-card-head small{font-size:10px;color:#8a929f}.desktop-username-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.desktop-username-form label{display:grid;gap:7px}.desktop-username-form label>span{font-size:11px;color:#6f7886;font-weight:650}.desktop-username-form label>div{height:50px;border:1px solid #ccd2dd;border-radius:13px;display:flex;align-items:center;padding:0 13px;background:#fff}.desktop-username-form label>div:focus-within{border-color:#7881f7;box-shadow:0 0 0 3px rgba(88,101,242,.09)}.desktop-username-form input{border:0;outline:0;flex:1;font-size:15px;background:transparent}.desktop-username-form button{height:50px;border:0;border-radius:13px;background:linear-gradient(135deg,var(--wavo),var(--wavo2));color:#fff;padding:0 18px;font-weight:780;cursor:pointer;box-shadow:0 10px 22px rgba(88,101,242,.18)}.desktop-link-code{min-height:112px;background:#fff;border:1px solid #e1e4ec;border-radius:16px;display:flex;align-items:center;justify-content:center;gap:7px;margin:18px 0 12px;padding:14px}.desktop-link-code b{width:43px;height:50px;border:1px solid #c7ccd7;border-radius:9px;background:#fff;display:grid;place-items:center;font-size:20px;font-weight:760;box-shadow:0 4px 10px rgba(39,48,73,.04)}.desktop-link-code em{font-style:normal;font-size:24px;margin:0 2px;color:#7d8591}.code-wait-state{min-height:31px;color:#7b8491;font-size:11px;display:flex;align-items:center}.device-switch-link.left{margin-top:9px}.code-steps{gap:14px}.code-steps li{font-size:14px}
.mobile-primary-login{min-height:100vh;padding:28px 18px;background:linear-gradient(180deg,#fff,#fafaff);display:flex;align-items:flex-start}.mobile-login-card{width:min(460px,100%);margin:6vh auto 0}.mobile-login-brand{display:flex;align-items:center;gap:9px;font-size:23px;font-weight:850;margin-bottom:38px;color:#1a1f27;text-decoration:none}.mobile-login-brand img{width:39px;height:39px}.mobile-primary-badge{font-size:9px;font-weight:850;letter-spacing:.14em;color:var(--wavo);background:#eef0ff;padding:6px 9px;border-radius:999px}.mobile-login-card h1{font-size:35px;margin:15px 0 8px;letter-spacing:-.045em}.mobile-login-card>p{color:var(--muted);line-height:1.6;margin:0 0 27px;font-size:14px}.mobile-primary-form .field-label-row a{margin-left:auto;font-size:12px;text-decoration:none;color:var(--wavo);font-weight:700}.mobile-create-account,.mobile-login-help{display:block;text-align:center;margin-top:18px;color:var(--wavo);text-decoration:none;font-weight:700;font-size:14px}.mobile-login-help{font-size:11px;color:#777f8b;margin-top:11px}
.device-approve-page{min-height:100vh;background:var(--cream);display:grid;place-items:center;padding:20px}.device-approve-shell{width:min(500px,100%)}.device-approve-card{background:#fff;border:1px solid #dfe3ea;border-radius:26px;padding:34px;box-shadow:0 24px 70px rgba(25,31,40,.10)}.device-approve-logo{width:48px;height:48px}.device-approve-kicker{display:block;margin-top:18px;color:var(--wavo);font-size:10px;letter-spacing:.14em;font-weight:850}.device-approve-card h1{font-size:29px;margin:8px 0}.device-approve-card p{color:var(--muted);line-height:1.6}.device-approve-card form{display:grid;gap:14px;margin-top:22px}.device-approve-card label{display:grid;gap:7px;font-size:12px;font-weight:700}.device-approve-card input{height:48px;border:1px solid #cfd5dc;border-radius:12px;padding:0 13px;font-size:16px}.device-approve-card button{height:48px;border:0;border-radius:12px;background:var(--wavo);color:#fff;font-weight:800}.device-approve-card small{display:block;margin-top:18px;color:#7d858e;line-height:1.5}.device-approve-error{background:#fff0f1;color:#b4232d;padding:10px 12px;border-radius:10px}.device-approve-success{margin:20px 0;background:#eefbf4;color:#13834e;padding:12px;border-radius:11px;font-weight:750}.device-approve-link{display:inline-block;color:var(--wavo);font-weight:750;text-decoration:none}
@media(max-width:900px){.desktop-link-card{grid-template-columns:1fr;max-width:720px}.desktop-link-qr-side{width:min(430px,100%);justify-self:center}.desktop-code-flow{grid-template-columns:1fr}.desktop-code-inner{width:100%}}
@media(max-width:760px){.desktop-link-login{display:none}.mobile-primary-login{display:flex}.wavo-login-page{background:#fff}}
@media(min-width:761px){.mobile-primary-login{display:none!important}}
.device-approve-card select{height:48px;border:1px solid #cfd5dc;border-radius:12px;padding:0 13px;font-size:14px;background:#fff;color:#222831}


/* ===== Wavo 8.2.18 — simple QR login + expired state ===== */
.wavo-login-page{background:#f7f4ee!important}
.desktop-link-login{padding:28px clamp(24px,4vw,58px) 20px!important;gap:14px!important}
.desktop-link-card{width:min(1080px,100%)!important;min-height:520px!important;grid-template-columns:minmax(0,1fr) 360px!important;gap:42px!important;padding:40px 48px!important;border:1.25px solid #20242b!important;border-radius:28px!important;box-shadow:0 18px 54px rgba(25,29,36,.07)!important;background:#fff!important}
.desktop-link-card:before{display:none!important}
.desktop-link-copy{justify-content:center!important}
.desktop-link-copy h1{font-size:42px!important;line-height:1.08!important;letter-spacing:-.04em!important;font-weight:700!important;margin:0 0 8px!important}
.login-lead{font-size:14px!important;line-height:1.55!important;margin:0 0 28px!important;color:#68717d!important}
.device-login-steps{gap:16px!important}.device-login-steps li{font-size:14px!important}.device-login-steps i{width:30px!important;height:30px!important;font-weight:600!important}.device-login-steps:before{left:15px!important;top:29px!important;bottom:29px!important}
.login-copy-actions{margin-top:26px!important;display:grid!important;gap:16px!important}.device-help-link{font-size:13px!important;font-weight:650!important}.stay-linked-check{font-size:12px!important}
.desktop-link-qr-side{background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important}
.qr-panel-head{margin-bottom:12px!important}.qr-panel-head span{font-size:9px!important;font-weight:700!important;letter-spacing:.12em!important}.qr-panel-head b{background:transparent!important;border:0!important;padding:0!important;color:#6b7480!important;font-weight:600!important}
.desktop-qr-box{width:286px!important;height:286px!important;border-radius:24px!important;border:1px solid #dadde3!important;padding:18px!important;box-shadow:none!important;overflow:hidden!important}
.desktop-qr-logo{width:46px!important;height:46px!important;border-radius:14px!important;box-shadow:0 0 0 5px #fff!important}
.desktop-qr-helper{width:286px!important;margin:14px 0 18px!important;color:#747d88!important;font-size:11.5px!important;line-height:1.5!important;text-align:center!important}
.desktop-qr-helper strong{font-weight:700!important;color:#343a43!important}
.desktop-qr-expired{position:absolute!important;inset:13px!important;z-index:8!important;border:0!important;border-radius:21px!important;background:rgba(43,45,49,.96)!important;color:#fff!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:24px!important;text-align:center!important;cursor:pointer!important;box-shadow:0 10px 30px rgba(0,0,0,.16)!important}
.desktop-qr-expired.hidden{display:none!important}.desktop-qr-expired i{font-size:34px!important;margin-bottom:5px!important;font-weight:700!important}.desktop-qr-expired strong{font-size:15px!important;font-weight:700!important}.desktop-qr-expired span{font-size:12px!important;line-height:1.45!important;color:#f0f1f3!important;max-width:170px!important}.desktop-qr-expired:hover{background:rgba(35,37,41,.98)!important}
.desktop-qr-box.is-expired .desktop-login-qr,.desktop-qr-box.is-expired .desktop-qr-logo{opacity:.08!important;filter:grayscale(1)!important}
.device-switch-link{min-height:46px!important;border-radius:12px!important;font-size:12.5px!important;font-weight:650!important}.desktop-no-account{font-size:10.5px!important;margin-top:12px!important}.desktop-login-foot{font-size:10px!important}
.desktop-code-copy h1{font-weight:700!important;letter-spacing:-.04em!important}.desktop-code-copy>p{font-size:14px!important}.desktop-username-form button,.device-approve-card button{font-weight:700!important}
@media(max-width:900px){.desktop-link-card{grid-template-columns:1fr!important;max-width:720px!important}.desktop-link-qr-side{width:286px!important;justify-self:center!important}}

/* ===== Wavo 8.2.19 — local QR reliability + Font Awesome login iconography ===== */
.desktop-login-qr{width:240px!important;height:240px!important;display:grid!important;place-items:center!important;background:#fff!important;border-radius:14px!important;overflow:hidden!important}
.desktop-login-qr svg{width:240px!important;height:240px!important;display:block!important}
.desktop-qr-box:not(.is-expired) .desktop-login-qr:empty::after{content:"Preparing secure QR…";font-size:11px;color:#747d89;font-weight:600}
.device-login-steps.icon-steps:before{display:none!important}
.device-login-steps.icon-steps li{grid-template-columns:38px minmax(0,1fr)!important;gap:13px!important}
.device-login-steps.icon-steps li>i:first-child{width:38px!important;height:38px!important;border:1px solid #d9dde6!important;border-radius:12px!important;background:#f8f9fc!important;color:var(--wavo)!important;font-size:15px!important;display:grid!important;place-items:center!important;box-shadow:none!important}
.device-help-link>i{color:var(--wavo)!important;font-size:12px!important}
.device-switch-link>i:last-child{color:#747d89!important;font-size:11px!important}
.desktop-qr-logo{pointer-events:none!important}
