:root{--primary-gradient: linear-gradient(135deg, #0c67df 0%, #0a52b0 100%);--primary-color: #0c67df;--primary-dark: #0a52b0;--sidebar-bg: #202124;--text-primary: #202124;--text-secondary: #5f6368;--text-light: #80868b;--text-on-dark: #ffffff;--bg-main: #f8f9fa;--bg-white: #ffffff;--bg-card: #ffffff;--bg-input: #ffffff;--bg-modal: #ffffff;--bg-light: #f8f9fa;--modal-border: #e8eaed;--focus-ring: rgba(12,103,223,.3);--bg-hover: rgba(12, 103, 223, .08);--primary-color-light: rgba(12, 103, 223, .08);--border-color: #e8eaed;--border-light: #dadce0;--border-strong: #bdc1c6;--status-active: #2e7d32;--status-pending: #f57c00;--status-rejected: #d32f2f;--status-info: #1565c0;--status-success: #2e7d32;--status-error: #d32f2f;--status-pink: #c2185b;--accent-blue: #e8f0fe;--accent-green: #e8f5e9;--accent-purple: #f3e5f5;--accent-orange: #fff3e0;--accent-yellow: #fffde7;--accent-red: #ffebee;--accent-pink: #fce4ec;--scrollbar-thumb: #bdc1c6;--scrollbar-thumb-hover: #80868b;--chip-hover: #e8f0fe;--toast-error-bg: rgba(211, 47, 47, .12);--overlay-bg: rgba(0,0,0,.5);--accent-magenta: #fce4ec;--shadow-overlay: 0 1px 3px 0 rgba(60,64,67,.3), 0 4px 8px 3px rgba(60,64,67,.15)}body{font-family:Inter,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-width:320px;min-height:100vh;background-color:var(--bg-main);color:var(--text-primary)}#root{min-height:100vh}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;max-width:400px}.toast{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius-md);background:var(--bg-card);box-shadow:none;cursor:pointer;animation:slideIn .3s ease-out;transition:transform .2s ease,opacity .2s ease}.toast:hover{transform:translate(-4px)}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.toast-success{border-left:4px solid var(--status-success)}.toast-success .toast-icon{background:var(--accent-green);color:var(--text-primary)}.toast-error{border-left:4px solid var(--status-error)}.toast-error .toast-icon{background:var(--toast-error-bg);color:var(--status-error)}.toast-warning{border-left:4px solid var(--status-pending)}.toast-warning .toast-icon{background:var(--accent-yellow);color:var(--status-pending)}.toast-info{border-left:4px solid var(--status-info)}.toast-info .toast-icon{background:var(--accent-blue);color:var(--status-info)}.toast-content{flex:1;min-width:0}.toast-message{color:var(--text-primary);font-size:14px;line-height:1.4;word-break:break-word}.toast-close{background:none;border:none;font-size:20px;color:var(--text-light);cursor:pointer;padding:0;line-height:1;transition:color .2s ease;flex-shrink:0}.toast-close:hover{color:var(--text-primary)}@media(max-width:480px){.toast-container{left:10px;right:10px;max-width:none}}.login-page{background:#000;min-height:100vh;display:flex;align-items:center;justify-content:center}.login-container{background:#fff;padding:16px 36px 28px;border-radius:8px;box-shadow:0 6px 18px #0000001f;text-align:center;max-width:450px;width:92%;display:flex;flex-direction:column;justify-content:space-between;min-height:170px}.logo{font-size:48px;margin-bottom:2px}.login-container h1,.login-container h4{color:#202124;margin:2px 0 8px}.subtitle{color:#5f6368;margin-bottom:40px;font-size:14px}.login-btn{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 24px;font-size:16px;border-radius:6px;cursor:pointer;width:100%;transition:background .3s;margin-bottom:20px}.login-btn:hover{opacity:.95}.login-btn svg{width:24px;height:24px}.divider{color:var(--text-secondary);font-size:12px;margin:20px 0}.info{color:var(--text-secondary);font-size:12px;line-height:1.6}.features{text-align:left;margin-top:30px;padding-top:30px;border-top:1px solid var(--border-color)}.features h3{color:var(--text-primary);margin-bottom:15px;font-size:14px}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.feature-item{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:12px}.feature-item:before{content:"✓";color:var(--text-primary);font-weight:700}.loading-spinner{width:40px;height:40px;border:4px solid var(--bg-light);border-top:4px solid var(--text-primary);border-radius:50%;animation:spin 1s linear infinite;margin:20px auto}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message{background:var(--toast-error-bg);color:var(--status-error);padding:12px 16px;border-radius:var(--radius-md);margin-bottom:20px;font-size:14px}.login-btn:disabled{opacity:.6;cursor:not-allowed}*{margin:0;padding:0;box-sizing:border-box}:root{--sidebar-width: 260px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 20px;--spacing-2xl: 25px;--spacing-3xl: 30px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 50%;--shadow-sm: 0 1px 2px 0 rgba(60,64,67,.3), 0 1px 3px 1px rgba(60,64,67,.15);--shadow-md: 0 1px 2px 0 rgba(60,64,67,.3), 0 2px 6px 2px rgba(60,64,67,.15);--shadow-subtle: 0 1px 3px rgba(60,64,67,.3), 0 4px 8px 3px rgba(60,64,67,.15);--shadow-lg: 0 8px 12px 6px rgba(60,64,67,.15), 0 4px 4px rgba(60,64,67,.3);--button-bg: #0c67df;--button-text: #ffffff;--button-border: #0c67df;--button-hover: #0a52b0}body{background:#fff;min-height:100vh;color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.dashboard-layout,.main-content{background:#fff}button:not(.MuiIconButton-root),.btn,.btn-primary,input[type=submit],input[type=button],.MuiButton-root{background-color:var(--button-bg)!important;color:var(--button-text)!important;border:1px solid var(--button-border)!important;border-radius:4px;padding:8px 24px;font-weight:500;font-size:.875rem;text-transform:none;letter-spacing:.25px;cursor:pointer;transition:background-color .2s,box-shadow .2s}button:hover,.btn:hover,.btn-primary:hover,input[type=submit]:hover,.MuiButton-root:hover{background-color:var(--button-hover)!important;border-color:var(--button-hover)!important;box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326}.btn-secondary{background:#fff;color:var(--button-bg);border:1px solid #dadce0}.btn-secondary:hover{background:#f8f9fa;border-color:var(--button-bg)}.MuiIconButton-root{background-color:transparent!important;color:inherit!important;border:none!important;padding:6px}.dashboard-layout{display:flex;min-height:100vh}.main-content{margin-left:var(--sidebar-width);padding:var(--spacing-3xl);flex:1}@media(max-width:768px){.main-content{margin-left:0;padding:var(--spacing-lg)}.sidebar{transform:translate(-100%);transition:transform .3s ease;z-index:1000}.sidebar.open{transform:translate(0)}}select,select *{color:var(--text-primary);background:transparent}option{color:var(--text-primary);background:var(--bg-card)}input,textarea,select{background:#fff;color:var(--text-primary);border:1px solid #dadce0;border-radius:6px;padding:10px 15px;font-size:14px;transition:border-color .2s,box-shadow .2s}input::placeholder,textarea::placeholder,select::placeholder{color:var(--text-secondary)}input:-webkit-autofill,textarea:-webkit-autofill,select:-webkit-autofill{-webkit-box-shadow:0 0 0px 1000px #ffffff inset;-webkit-text-fill-color:var(--text-primary)!important}input:focus,textarea:focus,select:focus{outline:none;border-color:#0c67df;box-shadow:0 0 0 3px #0c67df1a}.search-box input,.search-box textarea{background:#fff;color:var(--text-primary);-webkit-appearance:none;appearance:none;caret-color:var(--text-primary)}.search-box input::placeholder,.search-box textarea::placeholder{color:var(--text-secondary)}.card{background:#fff;border-radius:8px;padding:var(--spacing-2xl);box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326;border:1px solid #e8eaed;color:#202124;transition:box-shadow .2s}.card:hover{box-shadow:0 1px 3px #3c40434d,0 4px 8px 3px #3c404326}code,.code,[class*=badge][style*=monospace]{background:#f8f9fa;color:#0c67df;padding:2px 6px;border-radius:4px;font-family:ui-monospace,SFMono-Regular,Roboto Mono,Fira Code,Monaco,Consolas,Courier New,monospace;font-size:.875em;font-weight:600;border:1px solid #dadce0}a,.link,[class*=link]{color:#0c67df;text-decoration:none;font-weight:500}a:hover,.link:hover,[class*=link]:hover{text-decoration:underline}.card{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-2xl);box-shadow:var(--shadow-md);border:1px solid var(--border-color);color:var(--text-primary)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.card-header h3{color:var(--text-primary);font-size:18px}.card-header .action{color:var(--text-primary);font-size:14px;text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:8px 24px;border-radius:4px;font-size:.875rem;font-weight:500;border:none;cursor:pointer;text-transform:none;letter-spacing:.25px;transition:background-color .2s,box-shadow .2s}.card-actions{display:flex;gap:var(--spacing-sm);align-items:center}.card-actions.right{justify-content:flex-end}.card-actions.wrap{flex-wrap:wrap;gap:var(--spacing-sm)}.card-actions.center{align-items:center}h1,h2,h3,h4,h5,h6{color:var(--text-primary);margin:0 0 var(--spacing-md) 0}label,p{color:var(--text-secondary)}.card-header h3{margin:0}.card{padding:var(--spacing-xl)}.center{display:flex;align-items:center;justify-content:center}.btn-approve{background:var(--status-success);color:var(--text-primary);padding:6px 12px;border-radius:var(--radius-sm);font-size:12px}.btn-reject{background:var(--status-error);color:var(--text-primary);padding:6px 12px;border-radius:var(--radius-sm);font-size:12px}.btn-primary{background:var(--button-bg)!important;color:var(--button-text)!important;border:1px solid var(--button-border)!important}.btn-primary:hover{background:var(--button-hover)!important;transform:none}.badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500}.badge-pending{background:var(--accent-yellow);color:var(--status-pending)}.badge-active{background:var(--accent-green);color:var(--status-active)}.badge-rejected{background:var(--accent-red);color:var(--status-rejected)}.trend{font-size:12px;margin-top:10px}.trend.up{color:var(--status-success)}.trend.down{color:var(--status-error)}.MuiCard-root{display:flex;flex-direction:column;height:100%}.MuiCardContent-root{flex:1 1 auto;display:block}.main-content .MuiGrid-item{display:flex;flex-direction:column}.main-content .MuiGrid-item{min-height:140px}.card{display:flex;flex-direction:column;height:auto}.card>.card-content,.card>.content,.card>.card-body{flex:1 1 auto}.main-content .MuiGrid-item .MuiCard-root,.main-content .MuiGrid-item .card,.projects-grid .project-card,.stat-card{height:100%}
