:root{color-scheme:light;--boot-canvas: #f4f5f8;--boot-surface: #ffffff;--boot-surface-muted: #f7f7fa;--boot-border: rgba(24, 28, 39, .11);--boot-border-strong: rgba(24, 28, 39, .17);--boot-ink: #191b21;--boot-muted: #646a75;--boot-subtle: #858b96;--boot-accent: #5965d8;--boot-accent-hover: #4f5bcf;--boot-accent-soft: #eef0ff;--boot-shadow: 0 34px 90px rgba(31, 35, 52, .13), 0 4px 16px rgba(31, 35, 52, .06);background:var(--boot-canvas);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Segoe UI,sans-serif}:root[data-theme=dark]{color-scheme:dark;--boot-canvas: #090a0d;--boot-surface: #14161b;--boot-surface-muted: #1a1c22;--boot-border: rgba(255, 255, 255, .1);--boot-border-strong: rgba(255, 255, 255, .17);--boot-ink: #f5f6f8;--boot-muted: #b0b5bf;--boot-subtle: #858b95;--boot-accent: #7e89f5;--boot-accent-hover: #919aff;--boot-accent-soft: rgba(126, 137, 245, .14);--boot-shadow: 0 36px 100px rgba(0, 0, 0, .44), 0 4px 18px rgba(0, 0, 0, .24)}*{box-sizing:border-box}body{margin:0}button,input{color:inherit;font:inherit}button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.boot-shell{background:radial-gradient(circle at 12% 8%,color-mix(in srgb,var(--boot-accent) 12%,transparent),transparent 30rem),radial-gradient(circle at 92% 90%,color-mix(in srgb,var(--boot-accent) 7%,transparent),transparent 26rem),var(--boot-canvas);color:var(--boot-ink);display:grid;min-height:100dvh;overflow:hidden;padding:clamp(24px,5vh,54px) clamp(20px,5vw,64px);place-items:center;position:relative}.boot-shell:before{background-image:linear-gradient(color-mix(in srgb,var(--boot-border) 38%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--boot-border) 38%,transparent) 1px,transparent 1px);background-size:52px 52px;content:"";inset:0;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.42),transparent 72%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.42),transparent 72%);pointer-events:none;position:absolute}.boot-auth-frame{animation:boot-enter .44s cubic-bezier(.16,1,.3,1) both;display:grid;gap:18px;max-width:460px;position:relative;width:100%;z-index:1}.boot-auth-topbar,.boot-auth-footer{align-items:center;display:flex}.boot-auth-topbar{justify-content:space-between}.boot-auth-footer{justify-content:flex-end}.boot-brand{align-items:center;display:flex;gap:11px}.boot-brand-floating{left:28px;position:fixed;top:24px;z-index:1}.boot-brand-mark{align-items:center;background:var(--boot-accent);border-radius:10px;box-shadow:0 8px 22px color-mix(in srgb,var(--boot-accent) 24%,transparent);color:#fff;display:inline-flex;height:36px;justify-content:center;width:36px}.boot-brand-mark svg{fill:currentColor;height:21px;width:21px}.boot-brand-copy{display:flex;flex-direction:column;line-height:1.1}.boot-brand-copy strong{font-size:.92rem;letter-spacing:-.015em}.boot-brand-copy>span{color:var(--boot-muted);font-size:.76rem;margin-top:4px}.boot-theme{align-items:center;background:color-mix(in srgb,var(--boot-surface) 82%,transparent);border:1px solid var(--boot-border);border-radius:12px;cursor:pointer;display:inline-flex;flex:0 0 auto;height:42px;justify-content:center;padding:0;transition:border-color .14s ease,transform .18s cubic-bezier(.16,1,.3,1),background-color .14s ease;width:42px}.boot-theme:hover{background:var(--boot-accent-soft);border-color:color-mix(in srgb,var(--boot-accent) 42%,var(--boot-border))}.boot-theme:active{transform:scale(.95)}.boot-theme:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb,var(--boot-accent) 16%,transparent);outline:none}.boot-theme svg{fill:none;height:19px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;width:19px}.boot-auth-card{background:var(--boot-surface);border:1px solid var(--boot-border);border-radius:24px;box-shadow:var(--boot-shadow);overflow:hidden}.boot-login-card{background:var(--boot-surface);display:flex;flex-direction:column;min-width:0;padding:42px}.boot-login-heading h1{font-size:clamp(2rem,4vw,2.45rem);font-weight:650;letter-spacing:-.047em;line-height:1.05;margin:0}.boot-login-form{display:grid;gap:17px;margin-top:32px}.boot-field{display:grid;gap:8px}.boot-field>label{color:var(--boot-muted);font-size:.75rem;font-weight:680}.boot-field-control{position:relative}.boot-field-control input{appearance:none;background:var(--boot-surface-muted);border:1px solid var(--boot-border-strong);border-radius:12px;font-size:.92rem;height:48px;outline:none;padding:0 14px;transition:border-color .14s ease,box-shadow .18s cubic-bezier(.16,1,.3,1),background-color .14s ease;width:100%}.boot-field-control input::placeholder{color:var(--boot-subtle);opacity:.82}.boot-field-control input:hover:not(:focus){border-color:color-mix(in srgb,var(--boot-border-strong) 75%,var(--boot-muted))}.boot-field-control input:focus{background:var(--boot-surface);border-color:var(--boot-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--boot-accent) 14%,transparent)}.boot-field-control input[aria-invalid=true]{border-color:#cf4750}.boot-password-control input{padding-right:66px}.boot-password-toggle{background:transparent;border:0;color:var(--boot-muted);cursor:pointer;font-size:.7rem;font-weight:720;padding:8px;position:absolute;right:8px;top:50%;transform:translateY(-50%)}.boot-password-toggle:hover{color:var(--boot-ink)}.boot-password-toggle:focus-visible{border-radius:7px;box-shadow:0 0 0 3px color-mix(in srgb,var(--boot-accent) 16%,transparent);outline:none}.boot-password-toggle-icon{align-items:center;display:flex}.boot-password-toggle-icon svg{height:17px;width:17px}.boot-submit{align-items:center;background:var(--boot-accent);border:0;border-radius:12px;box-shadow:0 9px 24px color-mix(in srgb,var(--boot-accent) 22%,transparent);color:#fff;cursor:pointer;display:inline-flex;font-size:.84rem;font-weight:720;gap:9px;height:48px;justify-content:center;margin-top:2px;transition:background-color .14s ease,box-shadow .18s cubic-bezier(.16,1,.3,1),opacity .14s ease,transform .18s cubic-bezier(.16,1,.3,1)}.boot-submit:hover{background:var(--boot-accent-hover);box-shadow:0 12px 28px color-mix(in srgb,var(--boot-accent) 30%,transparent);transform:translateY(-1px)}.boot-submit:active{transform:scale(.985)}.boot-submit:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb,var(--boot-accent) 20%,transparent),0 9px 24px color-mix(in srgb,var(--boot-accent) 22%,transparent);outline:none}.boot-submit:disabled{cursor:wait;opacity:.7;transform:none}.boot-error{background:#fff0f1;border:1px solid rgba(189,39,52,.12);border-radius:10px;color:#b52531;font-size:.76rem;line-height:1.4;margin:-2px 0 0;padding:10px 11px}:root[data-theme=dark] .boot-error{background:#ff737a1a;border-color:#ff737a24;color:#ff9499}.boot-auth-footer{color:var(--boot-subtle);font-size:.68rem;padding:0 4px}.boot-release{font-variant-numeric:tabular-nums;letter-spacing:.02em}.boot-loading-state{align-items:center;color:var(--boot-muted);display:flex;font-size:.82rem;gap:10px;position:relative;z-index:1}.boot-loading-footer{bottom:22px;color:var(--boot-subtle);font-size:.68rem;position:fixed;right:26px;z-index:1}.boot-spinner{animation:boot-spin .75s linear infinite;border:2px solid color-mix(in srgb,var(--boot-muted) 22%,transparent);border-radius:50%;border-top-color:var(--boot-accent);display:inline-block;height:18px;width:18px}@keyframes boot-enter{0%{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:none}}@keyframes boot-spin{to{transform:rotate(360deg)}}@media(max-width:800px){.boot-shell{overflow:auto;padding:28px 20px}.boot-login-card{padding:38px 34px}}@media(max-width:580px){.boot-shell{display:block;padding:20px 16px}.boot-auth-frame{gap:14px;margin:0 auto}.boot-auth-topbar{padding:0 2px}.boot-auth-card{border-radius:21px}.boot-login-card{padding:30px 22px}.boot-login-heading h1{font-size:2rem}.boot-login-form{margin-top:26px}.boot-auth-footer{justify-content:flex-end;padding:0 3px 4px}.boot-brand-floating{left:18px;top:18px}.boot-loading-footer{bottom:16px;right:18px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}@media(prefers-contrast:more){.boot-auth-card,.boot-theme,.boot-field-control input{border-color:currentColor}}
