:root{font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#121826;background-color:#f9fafb;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background-color:#f9fafb;color:inherit}#root{width:100%;min-height:100vh}a{font-weight:500;color:#4994d1;text-decoration:none}a:hover{color:#3b84c1}button{font-family:inherit}.auth-layout{min-height:100vh;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:stretch;background:#f9fafb}.auth-wrapper{max-width:1120px;margin:0 auto;padding:2rem 1.5rem}.auth-card{display:grid;grid-template-columns:1.1fr 1fr;gap:0;background:#fff;border-radius:1.25rem;overflow:hidden;border:1px solid #e5e6eb;box-shadow:0 18px 40px #0f172a14}@media(max-width:900px){.auth-card{grid-template-columns:1fr}}.auth-form-section{padding:2.5rem 2.75rem}@media(max-width:640px){.auth-form-section{padding:2rem 1.5rem}}.auth-form-header-title{font-size:2rem;font-weight:600;color:#1c1a30;margin:0 0 .75rem}.auth-form-header-subtitle{margin:0;color:#394150;font-size:.98rem}.auth-image-section{position:relative;background:radial-gradient(circle at top,#b5e0f2 0,#4994d1,#1c1a30 80%);color:#f9fafb;padding:2.5rem;display:none}@media(min-width:901px){.auth-image-section{display:block}}.auth-image-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .9rem;border-radius:999px;background:#0f172a3d;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;margin-bottom:1.25rem}.auth-image-title{font-size:1.85rem;font-weight:600;line-height:1.25;margin-bottom:.75rem}.auth-image-subtitle{font-size:.98rem;color:#e5e6eb;max-width:18rem}.auth-image-pill-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1.75rem}.auth-image-pill{font-size:.75rem;padding:.35rem .7rem;border-radius:999px;background:#f9fafb29}.auth-form{margin-top:1.75rem;display:flex;flex-direction:column;gap:1.25rem}.auth-field-label{font-size:.85rem;font-weight:500;color:#121826;margin-bottom:.3rem}.auth-input{width:100%;border-radius:.8rem;border:1px solid #e5e6eb;padding:.7rem .9rem;font-size:.95rem;transition:border-color .15s ease,box-shadow .15s ease,transform .12s ease;background-color:#fff}.auth-input:focus{outline:none;border-color:#4994d1;box-shadow:0 0 0 1px #4994d140,0 0 0 4px #4994d114}.auth-error{margin-top:.25rem;font-size:.8rem;color:#b91c1c}.auth-button-primary{margin-top:.75rem;width:100%;border-radius:999px;border:none;padding:.7rem 1rem;font-size:.96rem;font-weight:600;color:#fff;background:#4994d1;box-shadow:0 10px 30px #4994d159;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease,background-color .12s ease}.auth-button-primary:hover{transform:translateY(-1px);box-shadow:0 14px 35px #4994d166;background:#3b84c1}.auth-button-primary:active{transform:translateY(0);box-shadow:0 8px 20px #4994d14d}.auth-footer{margin-top:1.5rem;font-size:.9rem;color:#394150}.auth-footer a{color:#4994d1;font-weight:600}.auth-footer a:hover{color:#3b84c1}.auth-error-banner{margin-top:.75rem;padding:.65rem .8rem;border-radius:.75rem;border:1px solid #fecaca;background:#fef2f2;font-size:.85rem;color:#b91c1c}.dashboard-layout{min-height:100vh;width:100%;display:grid;grid-template-columns:260px 1fr;background-color:#f3f4f6}.dashboard-sidebar{background:#fff;color:#111827;padding:1.5rem 1.25rem 1.75rem;display:flex;flex-direction:column;gap:1.5rem;border-right:1px solid #e5e7eb}.sidebar-top-card{border-radius:1rem;background:#f9fafb;padding:.75rem .9rem;display:flex;align-items:center;gap:.75rem;box-shadow:0 1px 3px #0f172a0f}.sidebar-top-icon{width:2.25rem;height:2.25rem;border-radius:.9rem;background:#fef3c7;display:flex;align-items:center;justify-content:center;color:#f59e0b;font-size:1.25rem}.sidebar-top-text-main{font-size:.86rem;font-weight:600}.sidebar-top-text-sub{font-size:.78rem;color:#9ca3af}.sidebar-section-label{margin-top:1.25rem;font-size:.75rem;font-weight:600;text-transform:uppercase;color:#9ca3af;letter-spacing:.08em}.sidebar-nav{margin-top:.5rem;display:flex;flex-direction:column;gap:.25rem}.sidebar-item{width:100%;border-radius:.9rem;border:none;background:transparent;padding:.55rem .7rem;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:.9rem;color:#4b5563;transition:background-color .14s ease,color .14s ease,box-shadow .14s ease,transform .12s ease}.sidebar-item:hover{background:#f3f4f6}.sidebar-item-active{background:#f3f4f6;box-shadow:0 0 0 1px #e5e7eb;color:#111827}.sidebar-item-main{display:flex;align-items:center;gap:.6rem}.sidebar-item-icon{width:1.7rem;height:1.7rem;border-radius:.7rem;background:#f9fafb;display:flex;align-items:center;justify-content:center;color:#6b7280}.sidebar-item-active .sidebar-item-icon{background:#111827;color:#f9fafb}.sidebar-item-label{font-size:.9rem}.sidebar-chevron{font-size:.85rem;color:#9ca3af;transition:transform .15s ease}.sidebar-chevron.open{transform:rotate(180deg)}.sidebar-submenu{margin-top:.25rem;padding-left:.6rem;display:flex;flex-direction:column;gap:.15rem}.sidebar-subitem{border:none;background:transparent;padding:.35rem .3rem .35rem .2rem;display:flex;align-items:center;gap:.5rem;font-size:.84rem;color:#6b7280;cursor:pointer}.sidebar-subitem:hover{color:#111827}.sidebar-subitem-active{color:#111827;font-weight:500}.sidebar-subitem-bar{width:2px;height:1.2rem;background:#111827;border-radius:999px}.dashboard-main{padding:1.75rem 2rem}.dashboard-header{display:none}.dashboard-brand-title{font-size:.95rem;font-weight:700;letter-spacing:.18em}.dashboard-brand-subtitle{margin-top:.2rem;font-size:.78rem;color:#9ca3af}.dashboard-hamburger{width:2.25rem;height:2.25rem;border-radius:999px;border:1px solid rgba(148,163,184,.4);background:radial-gradient(circle at 30% 0,#fff,#e5e7eb);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 18px #0f172a14;transition:background .15s ease,box-shadow .15s ease,transform .12s ease,border-color .15s ease}.dashboard-hamburger:hover{transform:translateY(-1px);box-shadow:0 10px 24px #0f172a24;border-color:#94a3b8b3}.dashboard-hamburger:active{transform:translateY(0);box-shadow:0 4px 12px #0f172a1f}.dashboard-hamburger-lines{width:1.3rem;height:1.1rem;display:flex;flex-direction:column;justify-content:space-between}.dashboard-hamburger-line{width:100%;height:2px;border-radius:999px;background:#0f172a;transition:transform .18s ease,opacity .14s ease,background-color .15s ease;transform-origin:center}.dashboard-hamburger.is-open{background:#0f172a;border-color:#0f172ae6;box-shadow:0 10px 26px #0f172a73}.dashboard-hamburger.is-open .dashboard-hamburger-line{background:#f9fafb}.dashboard-hamburger.is-open .dashboard-hamburger-line:nth-child(1){transform:translateY(4px) rotate(42deg)}.dashboard-hamburger.is-open .dashboard-hamburger-line:nth-child(2){opacity:0}.dashboard-hamburger.is-open .dashboard-hamburger-line:nth-child(3){transform:translateY(-4px) rotate(-42deg)}.dashboard-overlay{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:20}.dashboard-sidebar-flyout{position:fixed;inset:0 0 0 auto;width:260px;max-width:80%;background:linear-gradient(180deg,#0f172a,#020617);color:#e5e7eb;padding:1.5rem 1.25rem;display:flex;flex-direction:column;gap:1.5rem;z-index:30;box-shadow:-8px 0 24px #0f172a80}@media(max-width:900px){.dashboard-layout{grid-template-columns:1fr;grid-template-rows:auto 1fr}.dashboard-sidebar{display:none}.dashboard-header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.25rem;background:#f8fafce6;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.dashboard-main{padding:1.25rem 1.25rem 1.75rem}}@media(max-width:900px){.dashboard-layout{grid-template-columns:1fr;grid-template-rows:auto 1fr}.dashboard-sidebar{flex-direction:row;align-items:center;justify-content:space-between;padding:1rem 1.25rem;gap:1rem;overflow-x:auto}.dashboard-main{padding:1.25rem 1.25rem 1.75rem}}@media(max-width:640px){.dashboard-sidebar{flex-wrap:wrap}.dashboard-main{padding:1rem}}
