@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Outfit:wght@400;500;600;700;800&display=swap";
:root{--font-primary:"Inter", sans-serif;--font-display:"Outfit", sans-serif;--bg-main:#090b0e;--bg-surface:#12161c;--bg-surface-glass:#12161cb3;--border-color:#ffffff14;--border-color-hover:#ffffff26;--color-primary:#00875a;--color-primary-hover:#00a36c;--color-accent:#fff;--color-accent-subtle:#8a94a6;--text-main:#f3f4f6;--text-muted:#8e9aa8;--text-inverse:#090b0e;--color-success:#10b981;--color-warning:#f59e0b;--color-danger:#ef4444;--color-info:#3b82f6;--shadow-sm:0 2px 8px #0003;--shadow-md:0 8px 24px #00000059;--shadow-lg:0 16px 40px #00000080;--radius-sm:6px;--radius-md:12px;--radius-lg:18px;--transition-fast:.15s ease;--transition-normal:.25s ease}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-main);font-family:var(--font-primary);-webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:hidden}button,input,select,textarea{color:inherit;font-family:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{background:var(--border-color-hover);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.02em;font-weight:700}.glass{background:var(--bg-surface-glass);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-md)}.btn{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);border:none;outline:none;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:550;display:inline-flex}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover{background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 0 12px #00875a66}.btn-secondary{color:var(--text-main);border:1px solid var(--border-color);background-color:#0000}.btn-secondary:hover{border-color:var(--border-color-hover);background-color:#ffffff0d}.btn-danger{color:var(--color-danger);background-color:#ef444426;border:1px solid #ef44444d}.btn-danger:hover{background-color:var(--color-danger);color:#fff}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.form-group{flex-direction:column;gap:6px;margin-bottom:18px;display:flex}.form-group label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.input-field{border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-main);transition:all var(--transition-fast);background-color:#0003;outline:none;padding:12px 14px;font-size:14px}.input-field:focus{border-color:var(--color-primary);box-shadow:0 0 8px #00875a33}.input-field::placeholder{color:#ffffff40}.dashboard-container{background-color:var(--bg-main);min-height:100vh;display:flex}.sidebar{background-color:var(--bg-surface);border-right:1px solid var(--border-color);z-index:10;flex-direction:column;width:260px;height:100vh;padding:24px 16px;display:flex;position:fixed}.sidebar-logo{font-family:var(--font-display);letter-spacing:1px;color:var(--color-accent);align-items:center;gap:10px;margin-bottom:32px;font-size:20px;font-weight:800;display:flex}.sidebar-logo span{color:var(--color-primary)}.sidebar-menu{flex-direction:column;flex:1;gap:6px;list-style:none;display:flex}.sidebar-item{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:12px 16px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.sidebar-item:hover,.sidebar-item.active{color:var(--text-main);background-color:#ffffff0d}.sidebar-item.active{color:#fff;border-left:3px solid var(--color-primary);background-color:#00875a26}.sidebar-footer{border-top:1px solid var(--border-color);flex-direction:column;gap:12px;padding-top:16px;display:flex}.user-info{flex-direction:column;display:flex}.user-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.user-role{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.main-content{flex:1;min-height:100vh;margin-left:260px;padding:40px}.page-header{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.page-title{font-size:28px;font-weight:700}.table-container{margin-top:20px;overflow-x:auto}.custom-table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.custom-table th{color:var(--text-muted);border-bottom:2px solid var(--border-color);background-color:#0003;padding:16px;font-weight:600}.custom-table td{border-bottom:1px solid var(--border-color);color:var(--text-main);padding:16px}.custom-table tr:hover td{background-color:#ffffff05}.badge{text-transform:uppercase;letter-spacing:.02em;border-radius:12px;align-items:center;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.badge-success{color:var(--color-success);background-color:#10b98126}.badge-warning{color:var(--color-warning);background-color:#f59e0b26}.badge-danger{color:var(--color-danger);background-color:#ef686826}.badge-info{color:var(--color-info);background-color:#3b82f626}.card-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;display:grid}.card{transition:all var(--transition-normal);padding:24px}.card:hover{border-color:var(--border-color-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.grid-2{grid-template-columns:1fr 1fr;gap:30px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.tab-nav{border-bottom:1px solid var(--border-color);gap:8px;margin-bottom:24px;display:flex}.tab-btn{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;padding:12px 20px;font-size:14px;font-weight:600}.tab-btn:hover{color:var(--text-main)}.tab-btn.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.modal-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{width:100%;max-width:550px;max-height:90vh;padding:30px;position:relative;overflow-y:auto}.modal-content-lg{width:100%;max-width:800px;max-height:90vh;padding:30px;position:relative;overflow-y:auto}.details-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:15px;margin-bottom:20px;display:grid}.detail-block{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#ffffff05;padding:14px}.detail-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:11px;font-weight:600}.detail-value{color:#fff;font-size:14px;font-weight:500}.modal-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;position:absolute;top:20px;right:20px}.alert{border-radius:var(--radius-sm);border:1px solid;margin-bottom:20px;padding:14px 18px;font-size:14px}.alert-success{color:#a7f3d0;background-color:#10b98114;border-color:#10b98133}.alert-error{color:#fca5a5;background-color:#ef444414;border-color:#ef444433}.upload-dropzone{border:2px dashed var(--border-color);border-radius:var(--radius-md);text-align:center;cursor:pointer;transition:all var(--transition-fast);background-color:#0000001a;padding:30px}.upload-dropzone:hover{border-color:var(--color-primary);background-color:#00875a08}.auth-wrapper{background:radial-gradient(circle at 10% 20%,#00875a26 0%,#090b0e 90.2%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card{width:100%;max-width:480px;padding:40px}.auth-header{text-align:center;margin-bottom:30px}.auth-header h2{margin-top:10px;font-size:24px}.auth-header span{color:var(--color-primary)}.auth-toggle{text-align:center;color:var(--text-muted);margin-top:20px;font-size:13px}.auth-toggle a{color:var(--color-primary);font-weight:600;text-decoration:none}.auth-toggle a:hover{text-decoration:underline}.cart-floating{background-color:var(--color-primary);color:#fff;box-shadow:var(--shadow-lg);cursor:pointer;transition:transform var(--transition-fast);z-index:40;border-radius:50%;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;bottom:30px;right:30px}.cart-floating:hover{transform:scale(1.1)}.cart-count{background-color:var(--color-danger);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:10px;font-weight:700;display:flex;position:absolute;top:-5px;right:-5px}.search-bar-container{gap:12px;margin-bottom:24px;display:flex}.search-input-wrapper{flex:1;position:relative}.search-icon{color:var(--text-muted);position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-input-wrapper .input-field{width:100%;padding-left:44px}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s ease-in-out infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.details-grid p{margin-bottom:8px}.details-grid h4{margin-top:10px}.animate-pulse{animation:1.5s infinite pulse-animation}@keyframes pulse-animation{0%{opacity:1}50%{opacity:.6}to{opacity:1}}
