 :root {
   --bg-100: #f4f8fb;
   --bg-80: #e6f6f8;
   --card: #ffffff;
   --muted: #071124;
   --text: #2563eb;
   --brand: #0ea5a4;
   --accent: #2563eb;
   --good: #16a34a;
   --warn: #f59e0b;
   --danger: #ef4444;
   --shadow: 0 12px 40px rgba(11, 20, 40, 0.08);
   --radius-xl: 16px;
   --radius: 12px;
   --header-h: 76px;
   --maxW: 1180px;
   --accent-1: #0b63ff;
   --accent-2: #0f766e;
 }

 body {
   margin: 0;
   font-family: Inter, system-ui, sans-serif;
   background: linear-gradient(90deg, var(--accent-2) 0%, var(--accent-1) 100%);
   color: #0b63ff;
 }

 .auth-wrap {
   display: flex;
   justify-content: center;
   align-items: center;
   min-height: 100vh;
 }

 .auth-card {
   background: #fff;
   padding: 2rem;
   border-radius: 12px;
   box-shadow: 0 6px 20px rgba(8, 20, 40, .08);
   width: 100%;
   max-width: 360px;
 }

 .brand {
   font-size: 1.3rem;
   font-weight: 800;
   margin: 0 0 0.2rem;
   border-radius: 8px;
 }

 .subtitle {
   font-size: .85rem;
   color: #556677;
   margin-bottom: 1rem;
 }

 h2 {
   margin: 0 0 1rem;
   font-size: 1.1rem;
   color: linear-gradient(90deg, var(--accent-2) 0%, var(--accent-1) 100%);
 }

 .field {
   margin-bottom: 1rem;
 }

 label {
   display: block;
   margin-bottom: 4px;
   font-size: .9rem;
   color: #334155;
 }

 input,
 select {
   width: 100%;
   padding: 8px;
   border: 1px solid #cfe6ff;
   border-radius: 6px;
   font-size: .95rem;
 }

 .btn {
   display: block;
   width: 100%;
   padding: 10px;
   margin-top: .5rem;
   font-size: 1rem;
   font-weight: 600;
   border: none;
   border-radius: 6px;
   cursor: pointer;
 }

 .btn.primary {
   background: linear-gradient(90deg, #0b63d6, #0f74f0);
   color: #fff;
 }

 .btn.primary:hover {
   background: #0f74f0;
 }

 .switch {
   margin-top: .8rem;
   font-size: .9rem;
   text-align: center;
 }

 .switch a {
   color: #0b63d6;
   text-decoration: none;
   font-weight: 600;
 }

 .switch a:hover {
   text-decoration: underline;
 }
