.auth-layout{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px;background:radial-gradient(circle at 15% 20%,rgba(56,189,248,.35),transparent 45%),radial-gradient(circle at 85% 20%,rgba(245,158,11,.25),transparent 40%),linear-gradient(135deg,#0b1324,#0f172a,#122438);font-family:Space Grotesk,sans-serif;position:relative;overflow:hidden}.auth-layout:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(16,185,129,.2),transparent 70%);bottom:-180px;left:-120px;filter:blur(8px);opacity:.7}.auth-container{width:100%;max-width:980px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:28px;position:relative;z-index:1}.auth-hero{background:#0f172ad1;border-radius:20px;border:1px solid rgba(148,163,184,.2);padding:36px;color:#e2e8f0;display:flex;flex-direction:column;gap:22px;box-shadow:0 24px 60px #02061766}.hero-badge{align-self:flex-start;padding:6px 12px;border-radius:999px;font-size:12px;letter-spacing:1px;text-transform:uppercase;background:#0e749059;color:#e2e8f0;border:1px solid rgba(56,189,248,.4)}.auth-hero h1{margin:0;font-size:40px;font-family:Fraunces,serif;color:#f8fafc}.hero-title{display:flex;align-items:center;gap:14px}.hero-logo{width:44px;height:44px}.auth-hero p{margin:0;color:#cbd5f5;line-height:1.5}.hero-grid{display:none;gap:12px}.hero-card{background:#1e293b99;border:1px solid rgba(148,163,184,.2);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}.hero-label{font-size:12px;text-transform:uppercase;letter-spacing:.8px;color:#94a3b8}.hero-value{font-size:15px;font-weight:600;color:#e2e8f0}.hero-footer{font-size:12px;color:#94a3b8;letter-spacing:.4px}.auth-panel{background:#fff;border-radius:20px;padding:32px;box-shadow:0 20px 60px #0f172a40;display:flex;flex-direction:column;gap:20px}.auth-header h2{margin:0;font-size:26px;color:#0f172a}.auth-header p{margin:6px 0 0;color:#475569}.auth-content{display:flex;flex-direction:column;gap:16px}@media(max-width:760px){.auth-layout{padding:24px}.auth-container{grid-template-columns:1fr}.auth-hero{padding:28px}}@media(max-width:600px){.auth-layout{padding:20px}.auth-container{gap:16px}.auth-hero{padding:20px;gap:12px}.auth-hero h1{font-size:28px}.auth-hero p,.hero-grid,.hero-footer{display:none}.auth-panel{padding:20px}}.notification-bell{position:relative;display:flex;align-items:center}.notification-button{width:40px;height:40px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:#1a1a2ef2;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;position:relative;box-shadow:0 10px 24px #0f172a4d;transition:transform .2s ease,box-shadow .2s ease}.notification-button:hover{transform:translateY(-1px);box-shadow:0 12px 28px #0f172a59}.notification-button svg{width:20px;height:20px}.notification-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#ef4444;color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.notification-panel{position:absolute;top:calc(100% + 12px);right:0;z-index:1200;width:320px;max-height:360px;background:#fff;color:#0f172a;border-radius:12px;overflow:hidden;box-shadow:0 16px 40px #0f172a38;display:flex;flex-direction:column}.notification-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#1a1a2e;color:#fff;font-weight:600}.notification-clear{background:transparent;border:1px solid rgba(255,255,255,.4);color:#fff;font-size:12px;padding:4px 8px;border-radius:6px;cursor:pointer}.notification-list{padding:8px 12px 12px;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.notification-item{border:1px solid rgba(148,163,184,.35);border-radius:10px;padding:10px 12px;background:#f8fafc;display:flex;flex-direction:column;gap:6px}.notification-item-message{font-size:14px;font-weight:600;color:#0f172a}.notification-item-time{font-size:12px;color:#475569}.notification-empty{padding:24px 8px;text-align:center;color:#475569;font-size:13px}@media(max-width:640px){.notification-panel{width:calc(100vw - 32px);right:-8px}}.main-layout{min-height:100vh;display:flex;flex-direction:column;background:#f5f7fa}.main-header{background:#1a1a2e;color:#fff;padding:0 24px;min-height:64px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 2px 8px #0000001a;width:100%}.header-brand h1{margin:0;font-size:24px;font-weight:600}.header-brand{display:flex;align-items:center;gap:12px}.brand-logo{width:36px;height:36px}.header-nav{display:flex;gap:24px}.nav-link{color:#fffc;text-decoration:none;font-weight:500;transition:color .2s}.nav-link:hover{color:#fff}.nav-link-highlight{color:#fffc}.nav-link-highlight:hover{color:#fff}.header-user{display:flex;align-items:center;gap:16px}.header-user-group{display:flex;align-items:center;gap:16px;padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.15);background:#ffffff0f}.user-identity{display:flex;align-items:center;gap:10px}.user-actions{display:flex;align-items:center;gap:8px}.user-name{font-weight:500}.user-tag{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;padding:4px 8px;border-radius:999px;background:#ffffff26;color:#f8fafc}.user-tag.admin{background:#10b98133;border:1px solid rgba(16,185,129,.6);color:#ecfdf5}.btn-logout{background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.header-user .notification-button{width:36px;height:36px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:transparent;box-shadow:none}.header-user .notification-button:hover{transform:translateY(-1px);box-shadow:none}.header-user .notification-button svg{width:18px;height:18px}.header-user .btn-logout{border-radius:999px;padding:8px 14px}.btn-logout:hover{background:#ffffff1a;border-color:#ffffff80}.menu-toggle{display:none;width:40px;height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:#ffffff14;align-items:center;justify-content:center;gap:4px;cursor:pointer;padding:0}.menu-toggle span{display:block;width:18px;height:2px;background:#fff;border-radius:999px;transition:transform .2s ease,opacity .2s ease}.main-header.is-open .menu-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}.main-header.is-open .menu-toggle span:nth-child(2){opacity:0}.main-header.is-open .menu-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.main-content{flex:1;padding:32px;max-width:1200px;width:100%;margin:0 auto}.main-content.full-width{max-width:none}.main-footer{padding:12px 24px 20px;text-align:center;color:#475569;font-size:12px}@media(max-width:1100px){.header-nav{gap:16px}.nav-link{font-size:14px}.header-user{gap:12px}}@media(max-width:900px){.main-header{padding:12px 16px;display:grid;grid-template-columns:1fr auto;grid-template-areas:"brand toggle" "nav nav" "user user";row-gap:10px}.header-brand{grid-area:brand}.header-user{grid-area:user}.header-nav{grid-area:nav;width:100%;flex-wrap:wrap;gap:12px 16px}.menu-toggle{display:inline-flex;grid-area:toggle;justify-self:end}.header-nav,.header-user{display:none;width:100%;flex-direction:column;align-items:flex-start;gap:12px}.main-header.is-open .header-nav,.main-header.is-open .header-user{display:flex}.header-user{order:4}.header-user-group{width:100%;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px}.user-actions{width:auto;justify-content:flex-end}.header-user .btn-logout{width:auto;justify-content:center}}@media(max-width:640px){.header-user-group{grid-template-columns:1fr;align-items:stretch}.user-actions{width:100%;justify-content:space-between}.header-user .btn-logout{width:100%}}@media(max-width:640px){.main-content{padding:16px;max-width:100%}.header-brand h1{font-size:20px}}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/SpaceGrotesk-latin-ext-D9tNdqV9.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/SpaceGrotesk-latin-BhU9QXUp.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:600 700;font-display:swap;src:url(/assets/Fraunces-latin-ext-CJcjJNj7.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fraunces;font-style:normal;font-weight:600 700;font-display:swap;src:url(/assets/Fraunces-latin-DihXLNYH.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f7fa}:root{--btn-primary-bg: #1a1a2e;--btn-primary-bg-hover: #111827;--btn-primary-text: #ffffff;--btn-secondary-bg: #e2e8f0;--btn-secondary-text: #1e293b;--btn-ghost-border: #cbd5f5;--btn-ghost-border-hover: #475569;--btn-ghost-text: #1a1a2e;--btn-danger-bg: #ef4444;--btn-danger-bg-hover: #dc2626;--btn-danger-text: #ffffff;--btn-success-bg: #10b981;--btn-success-bg-hover: #059669;--btn-success-text: #ffffff;--btn-info-bg: #2563eb;--btn-info-bg-hover: #1d4ed8;--btn-info-text: #ffffff;--btn-outline-border: #667eea;--btn-outline-text: #667eea;--btn-outline-hover-bg: #667eea;--btn-outline-hover-text: #ffffff}.loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-size:18px;color:#475569}
