:root{color-scheme:light;--background:#f6f7f9;--foreground:#0a0a0a;--card:#fff;--card-foreground:#172131;--brand:#635bff;--primary:#4f46e5;--primary-hover:#4338ca;--primary-foreground:#fff;--secondary:#f0f3f7;--muted:#f0f3f7;--muted-foreground:#606a78;--accent:#f5f5fa;--support:#00b8d9;--support-foreground:#00768a;--support-muted:#e6fbff;--border:#e6e8ed;--input:#d4d8e1;--ring:rgb(99 91 255 / 28%);--destructive:#df1b41;--destructive-muted:#fff1f0;--success:#168a5b;--radius:0.5rem;--font-xs:0.75rem;--font-sm:0.875rem;--font-base:0.875rem;--font-lg:1.125rem;--font-xl:1.25rem;--font-2xl:1.5rem}body{min-height:100vh;background:var(--background);color:var(--foreground);font-family:"Inter Variable",Inter,system-ui,sans-serif;font-size:var(--font-base);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--primary);font-weight:500;text-decoration:none}a:hover{color:var(--primary-hover)}h1,h2,h3,h4,h5,h6{color:var(--foreground);font-weight:600;letter-spacing:0;line-height:1.15}.django-page{min-height:100vh}.content-card,.modern-form,.page-header,.alert.modern-alert{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 2px 5px rgb(10 37 64 / 0.06)}.content-card{max-width:95vw;margin:0 auto;overflow:hidden}.page-header{margin-bottom:1rem;padding:1rem 1.5rem}.page-title{margin:0;font-size:var(--font-2xl);font-weight:600}.auth-body{background:var(--background)}.auth-shell{display:flex;min-height:100vh;background:var(--card)}.auth-aside{display:none;flex:0 1 540px;flex-direction:column;justify-content:space-between;gap:3rem;padding:3rem;background:var(--primary);color:#fff}.auth-aside h2{margin:0 0 0.75rem;color:#fff;font-size:2.25rem;font-weight:600;letter-spacing:-0.02em;line-height:1.12;text-wrap:balance}.auth-aside p{margin:0;color:rgb(255 255 255 / 82%);font-size:1rem}.auth-aside-brand{display:flex;align-items:center;gap:0.6rem;color:#fff;font-size:1.4rem;font-weight:700}.auth-aside-brand img{width:2.1rem;height:2.1rem;filter:brightness(0) invert(1)}.auth-aside-foot{color:rgb(255 255 255 / 70%);font-size:0.8rem}.auth-main{display:flex;min-width:0;flex:1 1 420px;flex-direction:column;align-items:center;justify-content:center;padding:3.5rem 1.5rem 2rem}.auth-panel{display:flex;width:min(100%,360px);flex-direction:column;gap:1.5rem}.auth-brand{display:grid;width:3.25rem;height:3.25rem;place-items:center;border:1px solid var(--border);border-radius:0.875rem;background:var(--accent)}.auth-brand-icon{width:1.9rem;height:1.9rem}@media (min-width:768px){.auth-aside{display:flex}.auth-main{padding-top:2rem}.auth-brand{display:none}}.auth-alert{position:relative;display:flex;align-items:flex-start;gap:0.65rem;margin-bottom:0.7rem;padding:0.7rem 2.15rem 0.7rem 0.85rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);box-shadow:0 2px 5px rgb(10 37 64 / 0.06);color:var(--foreground);font-size:0.82rem;font-weight:500;line-height:1.35}.auth-alert::before{width:0.45rem;height:0.45rem;flex:0 0 auto;margin-top:0.38rem;border-radius:999px;background:var(--primary);content:""}.auth-alert-success::before{background:var(--success)}.auth-alert-error::before,.auth-alert-danger::before{background:var(--destructive)}.auth-alert-text{min-width:0}.auth-alert-close{position:absolute;top:50%;right:0.75rem;display:inline-flex;width:1rem;height:1rem;align-items:center;justify-content:center;padding:0;border:0;background:transparent;color:var(--muted-foreground);font-size:1rem;font-weight:400;line-height:1;transform:translateY(-50%);opacity:0.75}.auth-alert-close:hover{color:var(--foreground);opacity:1}.auth-card{background:transparent}.auth-card-header{margin-bottom:1.05rem}.auth-title{margin:0;color:var(--foreground);font-size:1.375rem;font-weight:600;letter-spacing:-0.015em;line-height:1.25}.auth-subtitle{margin:0.4rem 0 0;color:var(--muted-foreground);font-size:var(--font-sm);line-height:1.45}.auth-switch{margin:0 0 1.25rem;color:var(--muted-foreground);font-size:var(--font-sm)}.auth-card form + .auth-switch{margin-top:0.85rem}.auth-note{margin:1rem 0 0;color:var(--muted-foreground);font-size:0.8rem;line-height:1.45}.auth-form,.auth-card form{margin:0}.auth-actions{display:flex;justify-content:flex-end;gap:0.625rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border)}.auth-actions .btn-modern{min-width:7rem}.auth-divider{border-color:var(--border);margin:1.25rem 0;opacity:1}.auth-card>.auth-divider:last-child,.auth-card>hr.my-4:last-child{display:none}.auth-field{margin-bottom:1rem}.auth-field:last-child{margin-bottom:0}.auth-field .form-check{display:flex;align-items:center;gap:0.5rem;padding-left:0}.auth-field .form-check-input{margin:0;border-color:var(--input)}.auth-field .form-check-input:checked{background-color:var(--primary);border-color:var(--primary)}.auth-field .form-check-label{margin:0;font-weight:500}.form-label,label{color:var(--foreground);font-size:var(--font-sm);font-weight:600;margin-bottom:0.4rem}.form-control,.form-select{min-height:2.5rem;border:1px solid var(--input);border-radius:var(--radius);background-color:var(--card);color:var(--foreground);font-size:var(--font-sm);padding:0 0.75rem;transition:border-color 0.15s ease,box-shadow 0.15s ease}.form-control:disabled{background-color:color-mix(in oklab,var(--input) 50%,transparent);opacity:0.5}.form-control::placeholder{color:var(--muted-foreground)}.form-control:focus,.form-select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--ring)}.form-text,.invalid-feedback,.errorlist,.helptext{font-size:0.78rem}.form-text,.helptext{color:var(--muted-foreground)}.invalid-feedback,.errorlist{color:var(--destructive)}.btn-modern{display:inline-flex;min-height:2.5rem;align-items:center;justify-content:center;gap:0.4rem;border-radius:var(--radius);box-shadow:0 1px 1px rgb(10 37 64 / 0.08);font-size:var(--font-sm);font-weight:500;padding:0 1rem;transition:background-color 0.15s ease,border-color 0.15s ease,color 0.15s ease}.btn-primary.btn-modern,.btn.btn-primary{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.btn-primary.btn-modern:hover,.btn.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:var(--primary-foreground)}.btn-outline-primary.btn-modern,.btn-secondary.btn-modern{background:var(--card);border:1px solid var(--border);color:var(--foreground)}.btn-outline-primary.btn-modern:hover,.btn-secondary.btn-modern:hover{background:var(--muted);border-color:var(--border);color:var(--foreground)}.button{display:inline-flex;min-height:2.5rem;align-items:center;justify-content:center;gap:0.4rem;border:1px solid transparent;border-radius:var(--radius);box-shadow:0 1px 1px rgb(10 37 64 / 0.08);font-size:var(--font-sm);font-weight:500;line-height:1.2;padding:0 1rem;text-align:center;transition:background-color 0.15s ease,border-color 0.15s ease,color 0.15s ease}.button:hover{text-decoration:none}.button-primary{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.button-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:var(--primary-foreground)}.button-secondary{background:var(--card);border-color:var(--border);color:var(--foreground)}.button-secondary:hover{background:var(--muted);border-color:var(--border);color:var(--foreground)}.alert.modern-alert,.alert{border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 2px 5px rgb(10 37 64 / 0.06);color:var(--foreground);font-size:var(--font-sm);font-weight:500;padding:0.9rem 1rem}.error-shell{display:flex;min-height:calc(100vh - 4rem);align-items:center;justify-content:center;padding:2rem 1rem}.error-card{width:min(100%,30rem);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 2px 5px rgb(10 37 64 / 0.08),0 16px 32px -28px rgb(10 37 64 / 0.45);padding:1.5rem;text-align:center}.error-mark{display:inline-flex;min-width:4.5rem;min-height:2.25rem;align-items:center;justify-content:center;margin-bottom:1rem;border-radius:999px;background:var(--accent);color:var(--primary);font-size:var(--font-lg);font-weight:600;letter-spacing:0}.error-mark-danger{background:var(--destructive-muted);color:var(--destructive)}.error-title{margin:0;font-size:var(--font-xl);font-weight:600}.error-description{max-width:24rem;margin:0.65rem auto 0;color:var(--muted-foreground);font-size:var(--font-sm)}.error-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:0.625rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border)}.btn:focus-visible,.button:focus-visible,.form-control:focus-visible,.form-select:focus-visible,a:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@media (max-width:576px){.auth-main{align-items:stretch;justify-content:flex-start}.auth-panel{width:100%}.form-control,.form-select,.btn-modern,.button{min-height:2.75rem}.form-control{font-size:1rem}.auth-actions{display:grid;grid-template-columns:1fr}.error-card{padding:1.1rem}.error-actions{display:grid;grid-template-columns:1fr}.page-header{padding:0.75rem}.page-title{font-size:var(--font-xl)}}@media print{.btn,.button,.page-header{display:none!important}.content-card,.auth-card{border:1px solid #ccc!important;box-shadow:none!important}}