:root{--primary-color: #dc2626;--primary-hover: #b91c1c;--secondary-color: #374151;--accent-color: #fbbf24;--accent-hover: #f59e0b;--success-color: #10b981;--danger-color: #ef4444;--sgp-black: #111827;--sgp-red: #dc2626;--sgp-red-dark: #b91c1c;--sgp-red-light: #f87171;--sgp-yellow: #fbbf24;--sgp-yellow-light: #fde047;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--bg-primary: #ffffff;--bg-secondary: #f9fafb;--bg-tertiary: #f3f4f6;--bg-dark: #111827;--text-primary: #111827;--text-secondary: #374151;--text-muted: #6b7280;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;font-weight:400;color:var(--text-primary);background-color:var(--bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg-primary)}a{font-weight:500;color:var(--primary-color);text-decoration:none;transition:color .2s ease}a:hover{color:var(--primary-hover)}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;line-height:1.3;color:var(--text-primary)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}p{margin:0;line-height:1.6}button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border-radius:var(--radius-md);border:1px solid transparent;padding:var(--space-2) var(--space-4);font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s ease;text-decoration:none}button:disabled{opacity:.5;cursor:not-allowed}input,textarea,select{border-radius:var(--radius-md);border:1px solid var(--gray-300);padding:var(--space-3);font-size:.875rem;font-family:inherit;background:var(--bg-primary);color:var(--text-primary);transition:all .2s ease}input:focus,textarea:focus,select:focus{outline:2px solid var(--primary-color);outline-offset:2px;border-color:var(--primary-color)}@media (prefers-color-scheme: dark){:root{--bg-primary: #111827;--bg-secondary: #1f2937;--bg-tertiary: #374151;--text-primary: #f9fafb;--text-secondary: #d1d5db;--text-muted: #9ca3af;--gray-50: #1f2937;--gray-100: #374151;--gray-200: #4b5563;--gray-300: #6b7280}}@media (max-width: 1024px){:root{font-size:15px}h1{font-size:2.25rem}h2{font-size:1.875rem}h3{font-size:1.375rem}h4{font-size:1.125rem}p{line-height:1.7}}@media (max-width: 768px){:root{font-size:14px;line-height:1.7}h1{font-size:2rem;line-height:1.2}h2{font-size:1.75rem;line-height:1.3}h3{font-size:1.25rem;line-height:1.4}h4{font-size:1.125rem;line-height:1.4}p{line-height:1.8;margin-bottom:var(--space-4)}button{font-size:1rem;line-height:1.4}}@media (max-width: 480px){:root{font-size:13px}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.125rem}h4{font-size:1rem}}#root{min-height:100vh;width:100%}.app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1;padding:0}.main-header{background:var(--bg-primary);border-bottom:1px solid var(--gray-200);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100}.header-content{width:100%;padding:var(--space-4) var(--space-6);display:flex;align-items:center;justify-content:space-between;gap:var(--space-8)}.brand-section{display:flex;align-items:center;gap:var(--space-4);cursor:pointer;transition:opacity .2s ease}.brand-section:hover{opacity:.8}.brand-logo{width:48px;height:48px;object-fit:contain}.brand-text{display:flex;flex-direction:column}.app-title{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0}.brand-tagline{font-size:.875rem;color:var(--text-muted);margin:0}.mobile-menu-toggle,.mobile-nav-overlay{display:none}.main-nav{display:flex;align-items:center;gap:var(--space-1)}.nav-link{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:linear-gradient(to bottom,var(--bg-primary),var(--bg-tertiary));border:1px solid var(--gray-300);color:var(--text-secondary);font-weight:500;transition:all .15s ease;box-shadow:0 2px 4px #0000001a,inset 0 1px #fffc;transform:translateY(0)}.nav-link:hover{background:linear-gradient(to bottom,var(--bg-tertiary),var(--gray-200));color:var(--text-primary);transform:translateY(1px);box-shadow:0 1px 2px #00000026,inset 0 1px #fffc}.nav-link.active{background:linear-gradient(to bottom,var(--primary-color),var(--primary-hover));color:#fff;border-color:var(--primary-hover);box-shadow:0 2px 4px #dc26264d,inset 0 1px #fff3;transform:translateY(1px)}.nav-link:active{transform:translateY(2px);box-shadow:0 1px 2px #0003,inset 0 1px #fff9}.auth-section{display:flex;align-items:center;gap:var(--space-3)}.user-menu{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;justify-content:center}.user-info{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-1)}.user-name{font-weight:500;color:var(--text-primary)}.header-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--sgp-red) 0%,var(--sgp-yellow) 100%);color:#fff;font-weight:700;box-shadow:0 2px 6px #00000026;transition:transform .15s ease,box-shadow .15s ease}.header-avatar:hover{transform:scale(1.05);box-shadow:0 4px 10px #0003}.header-avatar img{width:100%;height:100%;object-fit:cover;display:block}.avatar-initial{font-size:.95rem}.session-timer{font-size:.75rem;color:var(--text-muted);font-weight:400}.auth-buttons{display:flex;align-items:center;gap:var(--space-2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border-radius:var(--radius-md);border:2px solid transparent;padding:var(--space-2) var(--space-4);font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s ease;text-decoration:none;position:relative;box-shadow:0 4px 8px #00000026,inset 0 1px #fff3;transform:translateY(0)}.btn.primary{background:linear-gradient(to bottom,var(--primary-color),var(--primary-hover));color:#fff;border-color:var(--primary-hover);box-shadow:0 4px 8px #dc26264d,inset 0 1px #fff3}.btn.primary:hover{background:linear-gradient(to bottom,var(--primary-hover),#991b1b);transform:translateY(1px);box-shadow:0 2px 4px #dc262666,inset 0 1px #fff3}.btn.primary:active{transform:translateY(2px);box-shadow:0 1px 2px #dc262680,inset 0 1px #ffffff1a}.btn.secondary{background:linear-gradient(to bottom,var(--bg-primary),var(--bg-tertiary));color:var(--text-secondary);border-color:var(--gray-300);box-shadow:0 4px 8px #0000001a,inset 0 1px #fffc}.btn.secondary:hover{background:linear-gradient(to bottom,var(--bg-tertiary),var(--gray-200));color:var(--text-primary);border-color:var(--gray-400);transform:translateY(1px);box-shadow:0 2px 4px #00000026,inset 0 1px #fffc}.btn.secondary:active{transform:translateY(2px);box-shadow:0 1px 2px #0003,inset 0 1px #fff9}.btn.danger{background:linear-gradient(to bottom,var(--danger-color),#dc2626);color:#fff;border-color:#dc2626;box-shadow:0 4px 8px #ef44444d,inset 0 1px #fff3}.btn.danger:hover{background:linear-gradient(to bottom,#dc2626,#b91c1c);border-color:#b91c1c;transform:translateY(1px);box-shadow:0 2px 4px #ef444466,inset 0 1px #fff3}.btn.danger:active{transform:translateY(2px);box-shadow:0 1px 2px #ef444480,inset 0 1px #ffffff1a}.btn.large{padding:var(--space-3) var(--space-6);font-size:1rem}.home-page{padding:0}.hero-section{background:var(--bg-primary);color:var(--text-primary);padding:var(--space-16) var(--space-6);display:flex;align-items:center;justify-content:center;gap:var(--space-12);min-height:500px}.hero-content{flex:1;max-width:600px}.hero-title{font-size:3rem;font-weight:800;margin-bottom:var(--space-6);line-height:1.1}.hero-description{font-size:1.25rem;margin-bottom:var(--space-8);line-height:1.6;color:var(--text-secondary)}.hero-cta{display:flex;gap:var(--space-4);flex-wrap:wrap}.hero-visual{flex:0 0 300px;display:flex;justify-content:center;align-items:center}.hero-logo{width:100%;max-width:280px;height:auto;filter:drop-shadow(0 8px 20px rgba(0,0,0,.2))}.features-section{padding:var(--space-16) var(--space-6);background:var(--bg-primary);content-visibility:auto;contain-intrinsic-size:800px}.features-title{text-align:center;font-size:2.5rem;margin-bottom:var(--space-12);color:var(--text-primary)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-8);max-width:1200px;margin:0 auto}.feature-card{background:var(--bg-primary);padding:var(--space-8);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;transition:transform .2s ease,box-shadow .2s ease}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-top:3px solid var(--sgp-yellow)}.feature-icon{font-size:3rem;margin-bottom:var(--space-4);display:block}.feature-card h4{font-size:1.25rem;margin-bottom:var(--space-3);color:var(--text-primary)}.feature-card p{color:var(--text-secondary);line-height:1.6}.dashboard-layout{display:grid;grid-template-columns:260px 1fr;min-height:calc(100vh - 80px)}.dashboard-sidebar{border-right:1px solid var(--gray-200);background:var(--bg-secondary);padding:var(--space-6) var(--space-4);position:sticky;top:64px;align-self:start;height:calc(100vh - 64px)}.dash-sidebar-header h3{margin:0;color:var(--text-primary)}.dash-sidebar-header .small{color:var(--text-muted)}.dash-nav{margin-top:var(--space-6);display:grid;gap:var(--space-2)}.dash-nav-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--gray-300);background:linear-gradient(to bottom,var(--bg-primary),var(--bg-tertiary));color:var(--text-secondary);cursor:pointer;transition:all .15s ease;text-align:left}.dash-nav-link:hover{color:var(--text-primary);border-color:var(--gray-400)}.dash-nav-link.active{background:linear-gradient(to bottom,var(--primary-color),var(--primary-hover));color:#fff;border-color:var(--primary-hover);box-shadow:0 2px 4px #dc26264d,inset 0 1px #fff3}.dash-nav-emoji{width:1.25rem;display:inline-flex;justify-content:center}.dash-help{margin-top:auto;padding-top:var(--space-6);color:var(--text-muted)}.dashboard-content{padding:var(--space-8) var(--space-8)}.dash-section{display:grid;gap:var(--space-6)}.section-header{display:flex;align-items:center;justify-content:space-between}.section-header h2{margin:0}.section-actions{display:flex;gap:var(--space-2)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}.kpi-card{background:var(--bg-primary);border:1px solid var(--gray-200);border-top:3px solid var(--sgp-yellow);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm)}.kpi-title{display:flex;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-weight:600}.kpi-emoji{font-size:1.1rem}.kpi-value{font-size:1.75rem;font-weight:800;color:var(--text-primary);margin-top:var(--space-2)}.kpi-subtext{color:var(--text-muted);font-size:.85rem;margin-top:var(--space-1)}.panel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-4)}.panel{background:var(--bg-primary);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm)}.panel-title{font-weight:700;color:var(--text-primary);margin-bottom:var(--space-3)}.activity-list{margin:0;padding-left:var(--space-4);color:var(--text-secondary)}.quick-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.empty-state{border:2px dashed var(--gray-300);border-radius:var(--radius-lg);padding:var(--space-12) var(--space-6);text-align:center;color:var(--text-secondary)}.empty-emoji{font-size:2rem;margin-bottom:var(--space-2)}@media (max-width: 960px){.dashboard-layout{grid-template-columns:1fr}.dashboard-sidebar{position:relative;top:0;height:auto;border-right:0;border-bottom:1px solid var(--gray-200)}}.field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.field label{font-weight:500;color:var(--text-primary);font-size:.875rem}.field input,.field select,.field textarea{width:100%;border-radius:var(--radius-md);border:1px solid var(--gray-300);padding:var(--space-3);font-size:.875rem;background:var(--bg-primary);color:var(--text-primary);transition:all .2s ease}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--primary-color);outline-offset:2px;border-color:var(--primary-color)}.tokenbox{background:var(--bg-tertiary);border:1px solid var(--gray-300);border-radius:var(--radius-md);padding:var(--space-3);font-family:monospace;font-size:.875rem;word-break:break-all}.row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875rem}.small{font-size:.875rem;color:var(--text-muted)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6)}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--bg-primary)}.auth-container{background:var(--bg-primary);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-xl);width:100%;max-width:420px}.auth-header{text-align:center;margin-bottom:var(--space-8)}.auth-logo{width:64px;height:64px;margin-bottom:var(--space-4);object-fit:contain}.auth-header h2{font-size:1.75rem;margin-bottom:var(--space-2);color:var(--text-primary)}.auth-header p{color:var(--text-secondary);font-size:.95rem}.auth-form{margin-bottom:var(--space-6)}.auth-submit{width:100%;margin:var(--space-6) 0 var(--space-4)}.auth-links{display:flex;gap:var(--space-3);justify-content:center}.auth-links .btn{flex:1}.error-box{background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md);padding:var(--space-4);color:var(--danger-color);font-size:.875rem;text-align:center}.success-box{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:var(--radius-md);padding:var(--space-4);color:var(--success-color);font-size:.875rem;text-align:center}.verification-form{margin-bottom:var(--space-6)}.verification-header{text-align:center;margin-bottom:var(--space-6)}.verification-header h3{font-size:1.5rem;margin-bottom:var(--space-2);color:var(--text-primary)}.verification-header p{color:var(--text-secondary);font-size:.95rem;line-height:1.5}.verification-actions{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-6)}.auth-mode-selector{margin-bottom:var(--space-6)}.mode-tabs{display:flex;background:var(--bg-tertiary);border-radius:var(--radius-lg);padding:var(--space-1);margin-bottom:var(--space-3)}.mode-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:none;background:transparent;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.mode-tab.active{background:var(--bg-primary);color:var(--text-primary);box-shadow:var(--shadow-sm)}.mode-tab:hover:not(.active){color:var(--text-primary)}.mode-icon{font-size:1.1rem}.mode-description{text-align:center}.mode-description p{margin:0;color:var(--text-muted);font-size:.875rem}.otp-info-box{background:var(--bg-tertiary);border:1px solid var(--gray-300);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.otp-step{font-size:.75rem;font-weight:600;color:var(--primary-color);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-2)}.otp-info-box p{margin:0;color:var(--text-secondary);font-size:.875rem;line-height:1.5}.account-page{padding:var(--space-8) var(--space-6);max-width:1000px;margin:0 auto}.account-header{display:flex;align-items:center;gap:var(--space-6);margin-bottom:var(--space-12);padding:var(--space-8);background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--gray-200)}.account-avatar{flex-shrink:0}.avatar-circle{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--sgp-red) 0%,var(--sgp-yellow) 100%);display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:#fff;text-transform:uppercase;box-shadow:0 4px 12px #dc26264d;transition:all .2s ease}.avatar-circle:hover{transform:scale(1.05);box-shadow:0 6px 16px #dc262666}.avatar-circle:hover:after{content:"";position:absolute;inset:0;background:#0009;border-radius:50%;display:flex;align-items:center;justify-content:center}.avatar-circle:hover:before{content:"✏️";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:1.5rem;z-index:10;pointer-events:none}.avatar-circle.drag-over{transform:scale(1.1);box-shadow:0 8px 20px #dc262680;border:3px solid var(--sgp-yellow)}.avatar-circle.uploading{opacity:.8}.upload-status{display:flex;align-items:center;gap:8px}.uploading-text{color:var(--text-secondary);font-size:.9rem;font-style:italic}.account-title h2{font-size:2rem;margin-bottom:var(--space-2);color:var(--text-primary)}.account-title p{color:var(--text-secondary);font-size:1.1rem;margin:0}.account-content{display:flex;flex-direction:column;gap:var(--space-8)}.account-section{background:var(--bg-primary);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-sm)}.account-section h3{font-size:1.5rem;margin-bottom:var(--space-6);color:var(--text-primary);border-bottom:2px solid var(--sgp-yellow);padding-bottom:var(--space-3);display:flex;align-items:center;gap:var(--space-3)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-6)}.info-item{background:var(--bg-secondary);padding:var(--space-4);border-radius:var(--radius-md);border-left:3px solid var(--sgp-yellow)}.info-label{font-size:.75rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:var(--space-2)}.info-value{font-size:1.1rem;color:var(--text-primary);font-weight:600;word-break:break-all}.status-badge{display:inline-flex;align-items:center;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px}.status-badge.active{background:var(--success-color);color:#fff;box-shadow:0 2px 4px #10b9814d}.management-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--space-4)}.management-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-6);background:var(--bg-secondary);border:1px solid var(--gray-200);border-radius:var(--radius-md);transition:all .2s ease}.management-item:hover{border-color:var(--sgp-yellow);box-shadow:var(--shadow-sm);background:var(--bg-tertiary)}.management-content h4{font-size:1.1rem;margin-bottom:var(--space-2);color:var(--text-primary);font-weight:600}.management-content p{color:var(--text-secondary);font-size:.9rem;margin:0;line-height:1.4}.danger-zone{border:2px solid var(--danger-color);background:var(--bg-secondary);position:relative}.danger-zone:before{content:"⚠️";position:absolute;top:var(--space-4);right:var(--space-6);font-size:1.5rem;opacity:.6}.danger-zone h3{color:var(--danger-color);border-bottom-color:var(--danger-color)}.danger-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-6)}.danger-item{display:flex;align-items:flex-start;justify-content:space-between;padding:var(--space-6);border:1px solid var(--danger-color);border-radius:var(--radius-md);background:var(--bg-primary);transition:all .2s ease;gap:var(--space-4)}.danger-item:hover{box-shadow:0 4px 12px #ef444433;border-width:2px}.danger-content{flex:1}.danger-content h4{font-size:1.1rem;margin-bottom:var(--space-2);color:var(--danger-color);font-weight:600}.danger-content p{color:var(--text-secondary);font-size:.9rem;margin:0;line-height:1.4}.danger-item .btn{flex-shrink:0}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:90%;max-width:480px;max-height:90vh;overflow-y:auto;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{padding:var(--space-6) var(--space-6) var(--space-4);border-bottom:1px solid var(--gray-200)}.modal-header h3{font-size:1.5rem;margin:0;color:var(--text-primary);font-weight:600}.modal-body{padding:var(--space-6)}.modal-body p{margin:0 0 var(--space-3);color:var(--text-primary);font-size:1rem;line-height:1.5}.modal-body p:last-child{margin-bottom:0}.modal-subtext{color:var(--text-secondary)!important;font-size:.875rem!important}.modal-actions{padding:var(--space-4) var(--space-6) var(--space-6);display:flex;gap:var(--space-3);justify-content:flex-end;border-top:1px solid var(--gray-200)}.modal-actions .btn{min-width:100px}.about-page{padding:var(--space-8) var(--space-6) 0;max-width:900px;margin:0 auto;line-height:1.7}.about-hero{text-align:center;margin-bottom:var(--space-16)}.about-title{font-size:2.5rem;font-weight:700;margin-bottom:var(--space-4);color:var(--text-primary);line-height:1.2}.about-subtitle{font-size:1.25rem;color:var(--text-secondary);line-height:1.6}.education-badge{display:inline-block;background:var(--sgp-yellow);color:var(--sgp-black);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-weight:600;font-size:.6rem;text-transform:uppercase;letter-spacing:.5px;margin-left:var(--space-2);vertical-align:middle}.section-title{font-size:1.75rem;font-weight:600;margin:var(--space-12) 0 var(--space-6) 0;color:var(--text-primary);border-bottom:2px solid var(--gray-200);padding-bottom:var(--space-3)}.paths-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8);margin-bottom:var(--space-12)}.learning-path{padding:0}.path-header h4{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--space-3);display:flex;align-items:center;gap:var(--space-2)}.path-icon{font-size:1.5rem}.path-content p{color:var(--text-secondary);margin-bottom:var(--space-4)}.feature-list{list-style:none;padding:0;margin:0 0 var(--space-4) 0}.feature-list li{margin-bottom:var(--space-2);color:var(--text-secondary)}.feature-list li:before{content:"→";color:var(--primary-color);font-weight:700;margin-right:var(--space-2)}.source-code-note{background:var(--bg-tertiary);padding:var(--space-3);border-radius:var(--radius-md);margin-top:var(--space-4)}.source-code-note p{margin:0 0 var(--space-2) 0;font-size:.875rem;color:var(--text-secondary)}.source-code-link{color:var(--primary-color);text-decoration:none;font-weight:600;font-size:.875rem}.source-code-link:hover{text-decoration:underline}.simple-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-6);margin:var(--space-8) 0}.simple-feature{text-align:center}.simple-feature h4{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--space-2)}.simple-feature p{color:var(--text-secondary);font-size:.95rem}.tech-list{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-8);margin:var(--space-8) 0}.tech-category h4{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--space-3)}.tech-items{list-style:none;padding:0;margin:0}.tech-items li{color:var(--text-secondary);margin-bottom:var(--space-2);font-size:.95rem;padding-left:var(--space-4);position:relative}.tech-items li:before{content:"•";color:var(--primary-color);font-weight:700;position:absolute;left:0}.contact-section{text-align:center;margin-top:var(--space-16);padding-top:var(--space-8);border-top:1px solid var(--gray-200)}.contact-email{color:var(--primary-color);text-decoration:none;font-weight:600;font-size:1.125rem}.contact-email:hover{text-decoration:underline}.about-footer{margin-top:var(--space-16);margin-bottom:0;padding:var(--space-8) 0;border-top:1px solid var(--gray-300);background:var(--bg-tertiary);width:100vw;margin-left:calc(-50vw + 50%);content-visibility:auto;contain-intrinsic-size:200px}.footer-content{display:flex;align-items:center;justify-content:space-between;max-width:900px;margin:0 auto;padding:0 var(--space-6);gap:var(--space-6)}.disclaimer-text p{margin:0;color:var(--text-secondary);font-size:.875rem;line-height:1.4}.footer-logos{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.footer-logo{height:32px;width:auto;opacity:.8;transition:opacity .2s ease}.footer-logo:hover{opacity:1}@media (max-width: 768px){.footer-content{flex-direction:column;text-align:center;gap:var(--space-4)}.footer-logos{justify-content:center}}.icon-container{display:inline-flex;align-items:center;justify-content:center}.icon-image{width:100%;height:100%;object-fit:contain}.icon-emoji{font-size:inherit;line-height:1}.feature-icon .icon-container{width:3rem;height:3rem}.feature-icon .icon-emoji{font-size:3rem}@media (prefers-color-scheme: dark){.main-header{border-bottom:1px solid var(--gray-700)}.feature-card{border:1px solid var(--gray-700)}.feature-card:hover{border-color:var(--sgp-yellow)}.metric-card,.auth-container,.modal-content{border:1px solid var(--gray-700)}.modal-header{border-bottom:1px solid var(--gray-700)}.modal-actions,.about-footer,.contact-section{border-top:1px solid var(--gray-700)}.account-header,.account-section,.management-item{border:1px solid var(--gray-700)}.danger-item{border:1px solid var(--danger-color);background:var(--bg-secondary)}.status-badge.active{background:var(--success-color);box-shadow:0 2px 4px #10b98166}.btn{box-shadow:0 4px 8px #0000004d,inset 0 1px #ffffff1a}.feature-card{box-shadow:0 4px 6px -1px #0000004d,0 2px 4px -2px #0000004d}.feature-card:hover{box-shadow:0 10px 15px -3px #0000004d,0 4px 6px -4px #0000004d}.icon-image{filter:invert(1) brightness(1)}.education-badge,.btn.primary,.btn.danger,.nav-link.active{filter:none}}@media (max-width: 1024px){.header-content{padding:var(--space-4) var(--space-4);gap:var(--space-6)}.hero-section{padding:var(--space-12) var(--space-4);gap:var(--space-8)}.hero-title{font-size:2.75rem}.features-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-6)}.dashboard-content{padding:var(--space-6) var(--space-6)}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.panel-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}@media (max-width: 768px){.header-content{flex-direction:column;gap:var(--space-4);padding:var(--space-4)}.main-nav{order:1;width:100%;justify-content:center;flex-wrap:wrap}.auth-section{order:2;width:100%;justify-content:center}.hero-section{flex-direction:column;text-align:center;padding:var(--space-12) var(--space-4)}.hero-title{font-size:2.5rem}.hero-visual{flex:none}.features-grid,.categories-grid{grid-template-columns:1fr}.account-header{flex-direction:column;text-align:center;gap:var(--space-4)}.info-grid,.management-grid,.danger-actions{grid-template-columns:1fr}.management-item,.danger-item{flex-direction:column;align-items:flex-start;gap:var(--space-4);text-align:left}.danger-item .btn{align-self:stretch}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}.mode-tabs{flex-direction:column;gap:var(--space-1)}.mode-tab{justify-content:flex-start}.about-page{padding:var(--space-6) var(--space-4)}.about-title{font-size:2rem}.paths-grid,.tech-list{grid-template-columns:1fr}}.public-profile-page{min-height:100vh;background:var(--bg-primary);padding:0}.discord-profile-container{max-width:800px;margin:0 auto;background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;margin-top:var(--space-8);margin-bottom:var(--space-8);position:relative}.profile-banner{height:200px;background:linear-gradient(135deg,#5865f2,#3ba55c,#faa61a);position:relative}.profile-views-overlay{position:absolute;top:16px;right:16px;background:#000000b3;color:#fff;border-radius:20px;padding:8px 12px;display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 8px #0000004d;transition:all .2s ease}.profile-views-overlay:hover{background:#000c;transform:scale(1.05)}.profile-views-overlay svg{width:16px;height:16px}.profile-info-container{padding:20px var(--space-6) var(--space-6) var(--space-6);position:relative}.discord-profile-avatar{position:absolute;top:-60px;left:var(--space-6);width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,var(--sgp-red) 0%,var(--sgp-yellow) 100%);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 8px var(--bg-primary);overflow:hidden;transition:all .3s ease}.discord-profile-avatar:hover{transform:scale(1.05);box-shadow:0 0 0 8px var(--bg-primary),0 8px 25px #0003}.discord-profile-avatar img{width:100%;height:100%;object-fit:cover;display:block}.discord-profile-avatar .avatar-initial{font-size:2.5rem;font-weight:700;color:#fff;text-transform:uppercase}.profile-details{margin-left:160px;display:flex;flex-direction:column;gap:var(--space-3);align-items:flex-start}.discord-username{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0;line-height:1.2;text-align:left}.profile-roles-section{margin:var(--space-4) 0}.roles-label{font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-2)}.discord-roles{display:flex;flex-wrap:wrap;gap:var(--space-2)}.discord-role-badge{display:inline-flex;align-items:center;padding:4px 8px;background:#5865f2;color:#fff;font-size:.75rem;font-weight:600;border-radius:4px;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 1px 3px #5865f24d;transition:all .2s ease}.discord-role-badge:hover{background:#4752c4;transform:translateY(-1px);box-shadow:0 2px 6px #5865f266}.discord-role-badge:nth-child(2n){background:#3ba55c;box-shadow:0 1px 3px #3ba55c4d}.discord-role-badge:nth-child(2n):hover{background:#2d7d32;box-shadow:0 2px 6px #3ba55c66}.discord-role-badge:nth-child(3n){background:#faa61a;box-shadow:0 1px 3px #faa61a4d}.discord-role-badge:nth-child(3n):hover{background:#e8930e;box-shadow:0 2px 6px #faa61a66}.joined-date{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-4);padding:var(--space-3);background:var(--bg-secondary);border-radius:var(--radius-md);border-left:3px solid #5865f2}.joined-label{font-size:.875rem;font-weight:600;color:var(--text-secondary)}.joined-value{font-size:.875rem;font-weight:500;color:var(--text-primary)}.public-profile-header{padding:var(--space-6);background:var(--bg-primary);border-bottom:1px solid var(--gray-200);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:50}.back-button{transition:all .2s ease}.back-button:hover{transform:translate(-2px)}.profile-error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;padding:var(--space-8)}.error-icon{font-size:4rem;margin-bottom:var(--space-4);opacity:.6}.profile-error-state h3{font-size:1.75rem;margin-bottom:var(--space-3);color:var(--text-primary)}.profile-error-state p{font-size:1.1rem;color:var(--text-secondary);margin-bottom:var(--space-6);max-width:400px}.public-profile-content{max-width:900px;margin:0 auto;padding:0}.profile-hero{position:relative;background:var(--bg-primary);border-radius:0 0 var(--radius-xl) var(--radius-xl);overflow:hidden;margin-bottom:var(--space-8);box-shadow:var(--shadow-lg)}.profile-hero-bg{position:absolute;top:0;left:0;right:0;height:120px;background:linear-gradient(135deg,var(--sgp-red) 0%,var(--sgp-yellow) 100%);opacity:.1}.profile-hero-content{position:relative;padding:var(--space-8);padding-top:var(--space-12);display:flex;align-items:center;gap:var(--space-8)}.profile-avatar-container{position:relative;flex-shrink:0}.profile-avatar{width:120px;height:120px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,var(--sgp-red) 0%,var(--sgp-yellow) 100%);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 25px #dc26264d,0 0 0 4px var(--bg-primary),0 0 0 6px var(--gray-200);transition:all .3s ease;position:relative}.profile-avatar:hover{transform:scale(1.05);box-shadow:0 12px 35px #dc262666,0 0 0 4px var(--bg-primary),0 0 0 6px var(--sgp-yellow)}.profile-avatar img{width:100%;height:100%;object-fit:cover;display:block}.profile-avatar .avatar-initial{font-size:2.5rem;font-weight:700;color:#fff;text-transform:uppercase}.profile-info{flex:1;min-width:0}.profile-username{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-3);line-height:1.2}.profile-roles{display:flex;flex-direction:column;gap:var(--space-2)}.roles-label{font-size:.875rem;font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-1)}.roles-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.role-badge{display:inline-flex;align-items:center;padding:var(--space-2) var(--space-3);background:linear-gradient(135deg,var(--sgp-red) 0%,var(--primary-hover) 100%);color:#fff;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border-radius:var(--radius-md);box-shadow:0 2px 6px #dc26264d;transition:all .2s ease}.role-badge:hover{transform:translateY(-1px);box-shadow:0 4px 12px #dc262666}.profile-stats-section{padding:0 var(--space-8);margin-bottom:var(--space-8)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-6)}.stat-card{background:var(--bg-primary);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:var(--space-6);display:flex;align-items:center;gap:var(--space-4);transition:all .2s ease;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--sgp-red) 0%,var(--sgp-yellow) 100%);transition:height .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--sgp-yellow)}.stat-card:hover:before{height:4px}.stat-icon{font-size:2.5rem;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 100%);border-radius:50%;flex-shrink:0}.stat-content h4{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--space-2)}.stat-value{font-size:1.5rem;font-weight:700;color:var(--sgp-red);margin:0 0 var(--space-1) 0}.stat-description{font-size:.875rem;color:var(--text-muted);margin:0;font-style:italic}@media (prefers-color-scheme: dark){.profile-hero,.stat-card,.about-card{border:1px solid var(--gray-700)}.public-profile-header{border-bottom:1px solid var(--gray-700)}.profile-avatar{box-shadow:0 8px 25px #dc262666,0 0 0 4px var(--bg-primary),0 0 0 6px var(--gray-700)}.profile-avatar:hover{box-shadow:0 12px 35px #dc262680,0 0 0 4px var(--bg-primary),0 0 0 6px var(--sgp-yellow)}.discord-profile-container{background:var(--bg-secondary);border:1px solid var(--gray-700)}.discord-profile-avatar{box-shadow:0 0 0 8px var(--bg-secondary)}.discord-profile-avatar:hover{box-shadow:0 0 0 8px var(--bg-secondary),0 8px 25px #0006}.joined-date{background:var(--bg-tertiary);border-left-color:#5865f2}}@media (max-width: 1024px){.discord-profile-container{margin:var(--space-6) var(--space-4);max-width:600px}.profile-banner{height:140px}.discord-profile-avatar{width:90px;height:90px;top:-45px}.discord-profile-avatar .avatar-initial{font-size:1.75rem}.profile-details{margin-left:120px}.discord-username{font-size:1.5rem}}@media (max-width: 768px){.btn{min-height:44px;padding:var(--space-3) var(--space-4);font-size:1rem}.btn.large{min-height:48px;padding:var(--space-4) var(--space-6);font-size:1.125rem}input,textarea,select,.nav-link{min-height:44px;padding:var(--space-3) var(--space-4);font-size:1rem}.auth-buttons{gap:var(--space-3);width:100%;justify-content:center}.auth-buttons .btn{flex:1;max-width:120px}.user-menu{flex-direction:column;gap:var(--space-3);width:100%;align-items:center}.user-info{order:-1;align-items:center;text-align:center}.user-menu .btn{width:100%;max-width:150px}}@media (max-width: 769px){.hero-visual{display:none}.hero-section{justify-content:center;text-align:center}.hero-cta{justify-content:center}.desktop-nav,.brand-section{display:none}.mobile-menu-toggle{display:flex;flex-direction:column;justify-content:space-around;width:30px;height:30px;background:transparent;border:none;cursor:pointer;padding:0;z-index:1001;margin-left:auto}.hamburger-line{width:100%;height:3px;background-color:var(--text-primary);border-radius:2px;transition:all .3s ease}.mobile-nav-overlay{display:block;position:fixed;inset:0;background-color:#00000080;z-index:1000;opacity:0;visibility:hidden;transition:all .3s ease}.mobile-nav-overlay.open{opacity:1;visibility:visible}.mobile-nav-menu{position:fixed;top:0;right:0;width:300px;height:100vh;background:var(--bg-primary);box-shadow:-2px 0 10px #0000001a;transform:translate(100%);transition:transform .3s ease;display:flex;flex-direction:column;overflow-y:auto}.mobile-nav-menu.open{transform:translate(0)}.mobile-nav-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6) var(--space-4);border-bottom:1px solid var(--border-color)}.mobile-nav-header h2{margin:0;font-size:1.5rem;color:var(--text-primary)}.mobile-nav-close{background:none;border:none;font-size:2rem;color:var(--text-primary);cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.mobile-nav-content{flex:1;padding:var(--space-4);display:flex;flex-direction:column;justify-content:space-between}.mobile-user-info{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);margin-top:auto;background:var(--bg-secondary);border-radius:var(--border-radius)}.mobile-avatar{width:50px;height:50px;border-radius:50%;overflow:hidden;background:var(--primary-color);display:flex;align-items:center;justify-content:center}.mobile-avatar img{width:100%;height:100%;object-fit:cover}.mobile-avatar .avatar-initial{color:#fff;font-weight:600;font-size:1.25rem}.mobile-user-name{font-weight:600;color:var(--text-primary)}.mobile-nav-links{display:flex;flex-direction:column;gap:var(--space-2)}.mobile-nav-link{display:block;width:100%;padding:var(--space-4);background:none;border:none;text-align:left;font-size:1.1rem;color:var(--text-primary);cursor:pointer;border-radius:var(--border-radius);transition:background-color .2s ease}.mobile-nav-link:hover{background-color:var(--bg-secondary)}.mobile-nav-link.primary{background-color:var(--primary-color);color:#fff;margin-top:var(--space-4)}.mobile-nav-link.primary:hover{background-color:var(--primary-hover)}.mobile-nav-link.secondary{background-color:var(--bg-secondary);border:1px solid var(--border-color)}.mobile-nav-link.secondary:hover{background-color:var(--bg-tertiary)}.mobile-nav-auth{display:flex;flex-direction:column;gap:var(--space-2);margin-top:auto}.public-profile-header{padding:var(--space-4)}.profile-hero-content{flex-direction:column;text-align:center;gap:var(--space-6);padding:var(--space-6);padding-top:var(--space-8)}.profile-avatar{width:100px;height:100px}.profile-avatar .avatar-initial{font-size:2rem}.profile-username{font-size:2rem;text-align:center}.profile-roles{align-items:center}.roles-list{justify-content:center}.profile-stats-section{padding:0 var(--space-4)}.stats-grid{grid-template-columns:1fr;gap:var(--space-4)}.stat-card{padding:var(--space-4)}.stat-icon{width:50px;height:50px;font-size:2rem}.discord-profile-container{margin:0;border-radius:0;max-width:none;width:100%}.profile-banner{height:150px;border-radius:0;width:100%}.discord-profile-avatar{left:50%;transform:translate(-50%);width:120px;height:120px;top:-60px;box-shadow:0 0 0 6px var(--bg-primary)}.discord-profile-avatar:hover{box-shadow:0 0 0 6px var(--bg-primary),0 8px 25px #0003}.discord-profile-avatar .avatar-initial{font-size:2.5rem}.profile-info-container{padding:70px var(--space-4) var(--space-6) var(--space-4);width:100%}.profile-details{margin-left:0;display:flex;flex-direction:column;gap:var(--space-5);width:100%}.discord-username{font-size:2rem;text-align:center;word-wrap:break-word;overflow-wrap:break-word;width:100%;display:block;margin-bottom:var(--space-2)}.profile-roles-section{text-align:left;margin:0;width:100%;padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-md)}.roles-label{font-size:.875rem;margin-bottom:var(--space-3);font-weight:600}.discord-roles{justify-content:flex-start;gap:var(--space-2)}.joined-date{justify-content:flex-start;text-align:left;margin:0;padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-md);width:100%}.profile-views-overlay{top:16px;right:16px;padding:8px 12px;font-size:14px}.profile-views-overlay svg{width:16px;height:16px}}@media (max-width: 480px){.brand-section{flex-direction:column;text-align:center;gap:var(--space-2)}.brand-logo{width:40px;height:40px}.app-title{font-size:1.5rem}.brand-tagline{font-size:.8rem}.hero-cta{flex-direction:column;width:100%}.hero-cta .btn{width:100%;justify-content:center}.discord-profile-container{margin:0;border-radius:0}.profile-banner{height:120px;border-radius:0}.discord-profile-avatar{width:100px;height:100px;top:-50px;box-shadow:0 0 0 4px var(--bg-primary)}.discord-profile-avatar:hover{box-shadow:0 0 0 4px var(--bg-primary),0 6px 20px #0003}.discord-profile-avatar .avatar-initial{font-size:2rem}.profile-info-container{padding:60px var(--space-3) var(--space-4) var(--space-3)}.profile-details{gap:var(--space-4)}.discord-username{font-size:1.75rem;text-align:center}.profile-roles-section{padding:var(--space-3)}.roles-label{font-size:.8rem;margin-bottom:var(--space-2)}.discord-role-badge{padding:2px 6px;font-size:.7rem}.joined-date{padding:var(--space-3)}.profile-views-overlay{top:12px;right:12px;padding:6px 8px;font-size:12px}.profile-views-overlay svg{width:14px;height:14px}.auth-buttons{flex-direction:column;width:100%}.auth-buttons .btn{max-width:none;width:100%}.modal-content{width:95%;margin:var(--space-2)}.features-section,.hero-section{padding:var(--space-8) var(--space-3)}}
