@font-face{font-family:Mortend;src:url(/fonts/Mortend%20-%20Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Byotone;src:url(/fonts/Byotone-Regular.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Byotone;src:url(/fonts/Byotone-Medium.otf)format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Byotone;src:url(/fonts/Byotone-SemiBold.otf)format("opentype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Byotone;src:url(/fonts/Byotone-Bold.otf)format("opentype");font-weight:700;font-style:normal;font-display:swap}:root{--color-brand-500:#ff6038;--color-brand-600:#cb4017;--color-teal-700:#11363e;--color-teal-link:#1f6f78;--color-white:#fff;--color-cream-50:#f5f5ed;--color-cream-100:#ecebe3;--color-input:#ecece6;--color-ink-500:#8c867d;--color-ink-700:#4d4842;--color-ink-900:#16120e;--color-danger-500:#c90c0c;--color-overlay-08:#16120e14;--font-display:"Mortend", sans-serif;--font-body:"Byotone", system-ui, sans-serif;--radius-md:10px;--radius-lg:28px;--radius-sm:8px;--easing:cubic-bezier(.22, 1, .36, 1);--duration:.28s}*,:before,:after{box-sizing:border-box}.auth-body,.app-body{min-height:100dvh;font-family:var(--font-body);color:var(--color-ink-900);background:var(--color-cream-50);-webkit-font-smoothing:antialiased;margin:0}.login{background:var(--color-cream-50);grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);min-height:100dvh;display:grid}.login__panel--form{justify-content:center;align-items:center;padding:48px 40px;display:flex}.login__form-inner{width:100%;max-width:400px;animation:login-rise .55s var(--easing) both}.login__locale{letter-spacing:.08em;justify-content:flex-end;align-items:center;gap:6px;margin:0 0 28px;font-size:12px;display:flex}.login__locale-sep{color:var(--color-ink-500);-webkit-user-select:none;user-select:none}.login__locale-link{color:var(--color-ink-500);transition:color var(--duration) var(--easing);font-weight:500;text-decoration:none}.login__locale-link:hover{color:var(--color-ink-900)}.login__locale-link--active{color:var(--color-ink-900);font-weight:700}.guest-auth{background:var(--color-cream-50,#f5f5ed);flex-direction:column;min-height:100dvh;display:flex}.guest-auth__header{justify-content:flex-end;align-items:center;padding:16px 24px 0;display:flex}.login--solo{flex:1;grid-template-columns:1fr}.login__brand{transition:opacity var(--duration) var(--easing);margin-bottom:36px;display:inline-block}.login__brand:hover{opacity:.85}.login__brand img{width:min(220px,100%);height:auto;display:block}.login__title{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-900);margin:0 0 10px;font-size:clamp(1.55rem,2.4vw,1.9rem);font-weight:700}.login__subtitle{color:var(--color-ink-700);margin:0 0 28px;font-size:15px;line-height:1.45}.login__form{flex-direction:column;gap:16px;display:flex}.login__field{flex-direction:column;gap:7px;display:flex}.login__label{color:var(--color-ink-700);font-size:13px;font-weight:600}.login__input{border-radius:var(--radius-md);background:var(--color-input);width:100%;font:inherit;color:var(--color-ink-900);transition:border-color var(--duration) var(--easing), box-shadow var(--duration) var(--easing), background var(--duration) var(--easing);border:1px solid #0000;outline:none;padding:14px 16px;font-size:14px}.login__input::placeholder{color:var(--color-ink-500)}.login__input:focus{border-color:var(--color-brand-500);background:var(--color-white);box-shadow:0 0 0 3px #ff603829}.login__input--error{border-color:var(--color-danger-500)}.login__password-wrap{position:relative}.login__input--password{padding-right:48px}.login__password-toggle{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--color-ink-500);cursor:pointer;transition:color var(--duration) var(--easing);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.login__password-toggle:hover{color:var(--color-ink-900)}.login__password-toggle:focus-visible{outline:2px solid var(--color-brand-500);outline-offset:1px}[x-cloak]{display:none!important}.login__error{color:var(--color-danger-500);margin:0;font-size:12px}.login__submit{border-radius:var(--radius-md);background:var(--color-brand-500);width:100%;color:var(--color-white);font:inherit;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background var(--duration) var(--easing), transform var(--duration) var(--easing);border:0;margin-top:6px;padding:14px 16px;font-size:13px;font-weight:700}.login__submit:hover:not(:disabled){background:var(--color-brand-600)}.login__submit:active:not(:disabled){transform:translateY(1px)}.login__submit:disabled{opacity:.7;cursor:wait}.login__divider{color:var(--color-ink-500);align-items:center;gap:12px;margin:24px 0 16px;font-size:12px;display:flex}.login__divider:before,.login__divider:after{content:"";background:var(--color-overlay-08);flex:1;height:1px}.login__social{grid-template-columns:1fr 1fr;gap:12px;display:grid}.login__social-btn{border:1px solid var(--color-overlay-08);border-radius:var(--radius-md);background:var(--color-white);width:100%;min-height:46px;font:inherit;color:var(--color-ink-700);cursor:not-allowed;opacity:.85;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-size:12px;font-weight:600;display:inline-flex}.login__social-icon{flex-shrink:0}.login__register{text-align:center;color:var(--color-ink-700);margin:28px 0 0;font-size:13px}.login__register-link{font:inherit;color:var(--color-teal-link);cursor:not-allowed;opacity:.9;background:0 0;border:0;margin-left:4px;padding:0;font-weight:700}.login__panel--hero{animation:login-fade .7s var(--easing) both;padding:24px 24px 24px 8px;display:flex}.login__hero-card{isolation:isolate;border-radius:var(--radius-lg);flex:1;min-height:calc(100dvh - 48px);position:relative;overflow:hidden;box-shadow:0 18px 48px -24px #311d1e73}.login__hero-media{animation:login-kenburns 18s var(--easing) infinite alternate;background-position:50%;background-size:cover;position:absolute;inset:0;transform:scale(1.04)}.login__hero-overlay{background:linear-gradient(165deg,#ff6038c7 0%,#cb4017b8 42%,#311d1eb3 100%);position:absolute;inset:0}.login__hero-copy{z-index:1;height:100%;color:var(--color-white);flex-direction:column;justify-content:flex-end;padding:48px 44px;display:flex;position:relative}.login__hero-headline{max-width:11ch;font-family:var(--font-display);letter-spacing:.02em;text-transform:uppercase;margin:0 0 16px;font-size:clamp(2.1rem,3.6vw,3.2rem);font-weight:700;line-height:1.05}.login__hero-sub{max-width:28ch;margin:0 0 18px;font-size:clamp(1.05rem,1.6vw,1.35rem);font-weight:600;line-height:1.3}.login__hero-body{opacity:.92;max-width:36ch;margin:0;font-size:14px;line-height:1.55}.app-home{min-height:100dvh}.app-home__header{border-bottom:1px solid var(--color-overlay-08);background:var(--color-white);justify-content:space-between;align-items:center;gap:16px;padding:20px 28px;display:flex}.app-home__brand img{height:auto;display:block}.app-home__logout{border:1px solid var(--color-overlay-08);border-radius:var(--radius-sm);background:var(--color-cream-50);font:inherit;color:var(--color-ink-700);cursor:pointer;transition:background var(--duration) var(--easing);padding:9px 14px;font-size:13px;font-weight:600}.app-home__logout:hover{background:var(--color-cream-100)}.app-home__main{max-width:640px;padding:48px 28px}.app-home__title{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;margin:0 0 10px;font-size:1.75rem}.app-home__lead{color:var(--color-ink-700);margin:0;font-size:15px;line-height:1.5}@keyframes login-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes login-fade{0%{opacity:0}to{opacity:1}}@keyframes login-kenburns{0%{transform:scale(1.04)translate(0,0)}to{transform:scale(1.1)translate(-1.5%,-1%)}}@media (width<=960px){.login{grid-template-columns:1fr}.login__panel--hero{order:-1;padding:16px 16px 0}.login__hero-card{min-height:280px}.login__hero-copy{padding:28px 24px}.login__hero-headline{max-width:none;font-size:1.8rem}.login__panel--form{padding:36px 24px 48px}.login__social{grid-template-columns:1fr}}
