.login-shell{--ink:#0b1b2e;--muted:#6e6e73;--dim:#a1a1a6;--line:#e3e3e8;--ivory:#f2f2f7;--ivory-2:#f7f7fa;--gold:#b28a49;--gold-bright:#c9a66a;--gold-soft:#dcc28c;--gold-deep:#8e6d33;--midnight:#0b1b2e;--midnight-hi:#0e2139;--midnight-lo:#050c1a;--display:var(--font-cormorant,"Cormorant Garamond"),"Iowan Old Style","Palatino Linotype",Georgia,serif;--body:var(--font-manrope,"Manrope"),system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--action:var(--login-accent,var(--midnight));--action-on:var(--login-accent-on,#fff);background:radial-gradient(60% 45% at 50% 0%,#c9a66a33,transparent 70%), radial-gradient(70% 55% at 100% 100%,#2c436873,transparent 70%), linear-gradient(170deg,var(--midnight-hi) 0%,var(--midnight) 55%,var(--midnight-lo) 100%);min-height:100dvh;color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;grid-template-rows:auto auto 1fr;grid-template-columns:minmax(0,1fr);align-content:start;justify-items:center;row-gap:28px;padding:clamp(32px,7vh,72px) 16px 28px;display:grid}.login-shell *{box-sizing:border-box}.login-shell ::selection{background:#b28a4942}.login-brand{display:contents}.login-brand>a,.login-brand>img,.login-brand>.login-brand-name{grid-row:1;justify-self:center}.login-brand img{filter:brightness(0)invert();width:170px;display:block}.login-brand img[alt]:not([alt=ArvoOS]):not([alt=ArvoARC]){filter:none;object-fit:contain;background:#fff;border-radius:14px;width:auto;max-width:220px;max-height:78px;padding:12px 16px;box-shadow:0 12px 30px #050c1a59}.login-brand-name{font:600 32px var(--display);letter-spacing:.01em;color:#fbf8f1;display:inline-block}.login-brand>div{display:none}.login-brand>small{color:#8f9ab0;letter-spacing:.14em;text-align:center;grid-row:3;align-self:end;padding-top:12px;font-size:11px}.login-form-wrap{background:0 0;grid-row:2;place-items:center;width:100%;padding:0;display:grid}.login-card-brand{display:none}.login-card{border:1px solid var(--line);background:#fff;border-radius:22px;width:min(460px,100%);padding:48px 46px 40px;position:relative;box-shadow:0 1px 2px #0b1b2e0a,0 30px 80px #0b1b2e1a}.login-card:before{content:"";background:var(--gold);width:44px;height:2px;position:absolute;top:0;left:46px}.mark{background:linear-gradient(150deg,var(--gold-soft),var(--gold));width:48px;height:48px;color:var(--midnight);font:700 24px var(--display);border-radius:14px;place-items:center;margin-bottom:28px;display:grid}.login-card>span{letter-spacing:.2em;color:var(--gold-deep);font-size:12px;font-weight:700}.login-card h2{font:600 36px/1.08 var(--display);letter-spacing:0;color:var(--ink);margin:12px 0 8px}.login-card>p{color:var(--muted);margin:0 0 26px;font-size:14px;line-height:1.65}.login-card label{letter-spacing:.04em;color:var(--ink);margin:16px 0;font-size:12px;font-weight:700;display:block}.login-card input{border:1px solid var(--line);background:var(--ivory-2);width:100%;height:52px;color:var(--ink);font:500 15px var(--body);border-radius:12px;outline:none;margin-top:8px;padding:0 16px;transition:border-color .15s,box-shadow .15s,background-color .15s;display:block}.login-card input::placeholder{color:var(--dim)}.login-card input:focus{border-color:var(--gold);background:#fff;box-shadow:0 0 0 4px #b28a4929}.login-card button{background:var(--action);width:100%;height:54px;color:var(--action-on);font:700 15px var(--body);letter-spacing:.02em;cursor:pointer;border:0;border-radius:12px;justify-content:space-between;align-items:center;margin-top:12px;padding:0 20px;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:inset 0 1px #ffffff1a,0 0 0 1px #c9a66a59,0 10px 24px #0b1b2e2e}.login-card button:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff1f,0 0 0 1px #c9a66a99,0 14px 30px #0b1b2e3d}.login-card button:active{transform:scale(.99)}.login-card button b{opacity:.85;font-weight:700}.login-card>a{text-align:center;color:var(--gold-deep);margin:18px 0 0;font-size:13px;font-weight:700;text-decoration:none;display:block}.login-card>a+a{margin-top:10px}.login-card>a:hover{text-underline-offset:3px;text-decoration:underline}.login-card>small{border-top:1px solid var(--line);text-align:center;color:var(--muted);margin-top:22px;padding-top:18px;font-size:12px;line-height:1.6;display:block}.login-account{border:1px solid var(--line);background:color-mix(in srgb,var(--line) 28%,transparent);border-radius:10px;flex-direction:column;gap:2px;margin:2px 0 8px;padding:11px 14px;display:flex}.login-account small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.login-account b{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:650;overflow:hidden}.login-error,.login-success,.login-shell .login-notice{border-radius:10px;margin-bottom:6px;padding:12px 14px;font-size:13px;line-height:1.5}.login-error{color:#8c2f2b;background:#f9e9e7;border:1px solid #efcdc8}.login-success,.login-shell .login-notice{color:#1f5c3f;background:#e7f3ec;border:1px solid #c9e3d3}.login-shell :is(a,button,input):focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media (max-width:600px){.login-shell{row-gap:20px;padding:28px 14px 22px}.login-brand img{width:140px}.login-card{padding:32px 22px 26px}.login-card:before{left:22px}.login-card h2{font-size:30px}}@media (prefers-reduced-motion:reduce){.login-card input,.login-card button{transition:none}}
