@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-wght-normal.DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-ext-wght-normal.DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-wght-normal.CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-vietnamese-wght-normal.CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-ext-wght-normal.DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-wght-normal.Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--crust:#11111b;--mantle:#181825;--base:#1e1e2e;--surface0:#313244;--surface1:#45475a;--surface2:#585b70;--text:#cdd6f4;--subtext0:#a6adc8;--subtext1:#bac2de;--overlay0:#6c7086;--mauve:#cba6f7;--blue:#89b4fa;--green:#a6e3a1;--red:#f38ba8;--peach:#fab387;--yellow:#f9e2af;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:20px;--focus-ring:0 0 0 3px #89b4fa59}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px}body{font-feature-settings:"cv02", "cv03", "cv04", "cv11";background:var(--crust);color:var(--text);min-height:100dvh;font-family:Inter Variable,Inter,sans-serif;line-height:1.5}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--subtext1);letter-spacing:.01em;font-size:.8125rem;font-weight:500}.input{background:var(--mantle);border:1px solid var(--surface0);border-radius:var(--radius-md);color:var(--text);outline:none;width:100%;padding:10px 14px;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.input::placeholder{color:var(--overlay0)}.input:focus{border-color:var(--blue);box-shadow:var(--focus-ring)}.btn{border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.9375rem;font-weight:500;transition:opacity .15s,box-shadow .15s;display:inline-flex}.btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.btn:active{opacity:.85}.btn--primary{background:var(--mauve);color:var(--crust)}.btn--primary:hover{opacity:.9}.btn--ghost{border:1px solid var(--surface1);color:var(--subtext1);background:0 0}.btn--ghost:hover{border-color:var(--surface2);color:var(--text)}.btn--full{width:100%}.card{background:var(--base);border:1px solid var(--surface0);border-radius:var(--radius-xl);padding:32px}.auth-wrap{justify-content:center;align-items:center;min-height:100dvh;padding:24px;display:flex}.auth-card{flex-direction:column;gap:24px;width:100%;max-width:400px;display:flex}.auth-header{align-items:center;gap:16px;display:flex}.auth-header h1{letter-spacing:-.02em;font-size:1.375rem;font-weight:600;line-height:1.2}.auth-header .subtitle{color:var(--subtext0);margin-top:2px;font-size:.9375rem}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-footer{text-align:center;color:var(--subtext0);font-size:.875rem}.error-banner{background:color-mix(in srgb, var(--red) 15%, transparent);border:1px solid color-mix(in srgb, var(--red) 40%, transparent);border-radius:var(--radius-md);color:var(--red);padding:10px 14px;font-size:.875rem}.app-shell{min-height:100dvh;display:flex}.sidebar{background:var(--mantle);border-right:1px solid var(--surface0);flex-direction:column;flex-shrink:0;gap:4px;width:220px;padding:24px 16px;display:flex}.sidebar-logo{align-items:center;gap:10px;padding:4px 12px 20px;display:flex}.sidebar-logo span{letter-spacing:-.02em;color:var(--text);font-size:1.125rem;font-weight:700}.nav-link{border-radius:var(--radius-md);color:var(--subtext1);align-items:center;gap:10px;padding:9px 12px;font-size:.9375rem;font-weight:450;text-decoration:none;transition:background .1s,color .1s;display:flex}.nav-link:hover{background:var(--surface0);color:var(--text);text-decoration:none}.nav-link.active{background:color-mix(in srgb, var(--mauve) 15%, transparent);color:var(--mauve)}.sidebar-spacer{flex:1}.sidebar-logout{text-align:left;border-radius:var(--radius-md);width:100%;color:var(--subtext0);cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:9px 12px;font-size:.9375rem;transition:background .1s,color .1s;display:flex}.sidebar-logout:hover{background:color-mix(in srgb, var(--red) 15%, transparent);color:var(--red)}.main-content{flex:1;padding:40px;overflow-y:auto}.page-title{letter-spacing:-.02em;margin-bottom:24px;font-size:1.5rem;font-weight:600}
