@import"https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Poppins,Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%;height:100vh}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}svg{display:inline-block;vertical-align:middle}.edit-button,.delete-button{padding:0;background-color:transparent;border:none;border-radius:4px;transition:all .2s ease}.edit-button:hover,.delete-button:hover{border-color:transparent}.edit-button:focus,.delete-button:focus{outline:none}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{width:100%;min-height:100vh}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.app{width:100%;min-height:100vh}.landing-root{min-height:100vh;position:relative;overflow:hidden;font-family:Plus Jakarta Sans,sans-serif;background:radial-gradient(circle at 10% 10%,rgba(16,185,129,.15),transparent 40%),radial-gradient(circle at 90% 0%,rgba(14,165,233,.15),transparent 40%),linear-gradient(160deg,#f8fafc,#f1f5f9,#e2e8f0)}.landing-root *{font-family:Plus Jakarta Sans,sans-serif!important}.landing-container{position:relative;z-index:2;padding-top:32px;padding-bottom:32px}.landing-aurora{position:absolute;width:500px;height:500px;border-radius:50%;filter:blur(80px);opacity:.3;animation:drift 15s ease-in-out infinite alternate}.landing-aurora-left{top:-100px;left:-200px;background:#10b981}.landing-aurora-right{right:-200px;bottom:-100px;background:#0ea5e9;animation-delay:2s}.landing-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:56px}.landing-brand{font-weight:800;color:#0f172a;letter-spacing:-.02em}.landing-brand-emblem{position:relative;width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#10b981,#0ea5e9);box-shadow:0 10px 24px #0ea5e959}.landing-brand-emblem-ring{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:16px;border:1.5px solid rgba(16,185,129,.35);pointer-events:none}.landing-brand-emblem-dot{position:absolute;width:8px;height:8px;right:-1px;top:-1px;border-radius:50%;background:#34d399;border:2px solid #f8fafc;box-shadow:0 0 0 3px #34d39933}.landing-nav-btn{color:#0f172a!important;font-weight:600!important;background:#ffffff8c!important;border:1px solid rgba(148,163,184,.35)!important;border-radius:999px!important;padding:8px 18px!important;box-shadow:0 8px 18px #0f172a0f!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.landing-nav-btn:hover{background:#ffffffbf!important;border-color:#94a3b88c!important;box-shadow:0 12px 24px #0f172a1a!important}.landing-nav-btn-outline{border-color:#0f172a59!important;color:#0f172a!important;font-weight:600!important;border-radius:999px!important;background:#ffffff73!important;padding:8px 18px!important;box-shadow:0 8px 18px #0f172a0f!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.landing-nav-btn-outline:hover{background-color:#ffffffb3!important;border-color:#0f172a8c!important;box-shadow:0 12px 24px #0f172a1a!important}.landing-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;animation:fadeUp .8s ease-out forwards}.landing-copy{background:#ffffffb3;border:1px solid rgba(255,255,255,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:32px;padding:40px;box-shadow:0 20px 40px #0f172a0a}.landing-chip{font-weight:700!important;margin-bottom:20px!important;background:#ecfdf5!important;color:#059669!important;border:1px solid #a7f3d0!important}.text-gradient{background:linear-gradient(135deg,#059669,#0ea5e9);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.landing-title{font-size:clamp(2.2rem,4vw,3.8rem)!important;line-height:1.15!important;font-weight:800!important;letter-spacing:-.03em!important;color:#0f172a}.landing-subtitle{margin-top:16px!important;color:#475569!important;font-size:1.1rem!important;line-height:1.7!important}.landing-cta-wrap{margin-top:32px!important}.landing-cta-primary{border-radius:999px!important;padding:14px 28px!important;text-transform:none!important;font-weight:700!important;background:#0f172a!important;color:#fff!important;box-shadow:0 10px 20px #0f172a26!important;transition:all .3s ease!important}.landing-cta-primary:hover{background:#1e293b!important;transform:translateY(-2px);box-shadow:0 14px 24px #0f172a40!important}.landing-cta-secondary{border-radius:999px!important;padding:14px 28px!important;text-transform:none!important;font-weight:600!important;border:2px solid #e2e8f0!important;color:#334155!important}.landing-cta-secondary:hover{border-color:#cbd5e1!important;background:#f1f5f980!important}.landing-visual-card{position:relative;border-radius:32px;overflow:hidden;box-shadow:0 24px 50px #0ea5e926;transition:transform .4s ease}.landing-visual-card:hover{transform:translateY(-5px)}.landing-visual-image{width:100%;height:100%;max-height:500px;object-fit:cover;display:block}.landing-visual-caption{position:absolute;left:20px;right:20px;bottom:20px;border-radius:20px;padding:16px 20px;background:#0f172ab3;color:#f8fafc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.landing-visual-caption .MuiTypography-body2{font-weight:700!important}.landing-section-block{margin-top:64px;background:#fff9;border:1px solid rgba(255,255,255,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:32px;padding:48px;box-shadow:0 20px 40px #0f172a0a}.landing-section-head{margin-bottom:32px;text-align:center}.landing-section-title{font-weight:800!important;letter-spacing:-.02em!important;color:#0f172a!important}.landing-section-subtitle{margin-top:12px!important;color:#64748b!important;line-height:1.7!important;max-width:600px;margin-left:auto!important;margin-right:auto!important}.landing-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.landing-feature-card{background:#fff;border-radius:20px;padding:20px 22px;border:1px solid #f1f5f9;box-shadow:0 4px 6px #0f172a05;transition:all .3s ease;display:grid;grid-template-columns:52px 1fr;column-gap:16px;row-gap:6px;align-items:flex-start}.landing-feature-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0f172a14;border-color:#e2e8f0}.landing-feature-icon-wrapper{width:48px;height:48px;border-radius:16px;background:#f8fafc;display:flex;align-items:center;justify-content:center;grid-row:1 / span 2}.landing-feature-title{font-weight:700!important;color:#0f172a!important;font-size:1.05rem!important;margin:0!important;text-align:left!important}.landing-feature-desc{margin-top:0!important;color:#64748b!important;line-height:1.5!important;font-size:.95rem!important;text-align:left!important}.landing-workflow-block{background:linear-gradient(135deg,#f0fdf4,#e0f2fe);border:1px solid #bae6fd}.landing-workflow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}.landing-workflow-step{position:relative;text-align:center;padding:20px 16px}.landing-workflow-number{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#0f172a;color:#fff;font-weight:800;font-size:.85rem;margin-bottom:14px;box-shadow:0 4px 12px #0f172a33}.landing-workflow-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin:0 auto 12px;border-radius:18px;background:#ffffffd9;border:1px solid rgba(255,255,255,.95);box-shadow:0 8px 20px #0f172a0f;transition:transform .3s ease,box-shadow .3s ease}.landing-workflow-step:hover .landing-workflow-icon{transform:translateY(-4px);box-shadow:0 12px 28px #0f172a1f}.landing-workflow-title{font-weight:700!important;color:#0f172a!important;font-size:1.05rem!important;margin-bottom:6px!important}.landing-workflow-desc{color:#475569!important;font-size:.9rem!important;line-height:1.55!important;max-width:200px;margin:0 auto!important}.landing-workflow-connector{position:absolute;top:38px;right:-18px;width:36px;height:2px;background:linear-gradient(90deg,#10b981,#0ea5e9);opacity:.5;z-index:1}.landing-footer{margin-top:40px;padding:32px 40px;border-radius:24px;background:#0f172a;color:#f8fafc;box-shadow:0 20px 40px #0f172a33}.landing-footer-brand{font-weight:800!important}.landing-footer-text{margin-top:8px!important;color:#cbd5e1!important}@keyframes drift{0%{transform:translate(0)}50%{transform:translate(30px,40px)}to{transform:translate(-20px,20px)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 980px){.landing-hero-grid{grid-template-columns:1fr}.landing-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-workflow-grid{grid-template-columns:repeat(2,1fr);gap:24px}.landing-workflow-connector{display:none}.landing-brand-emblem{width:40px;height:40px;border-radius:12px}.landing-copy{order:2}.landing-visual-card{order:1}}@media (max-width: 600px){.landing-container{padding-top:16px}.landing-nav{flex-direction:column;align-items:flex-start;margin-bottom:32px}.landing-copy{padding:24px}.landing-section-block{padding:32px 24px}.landing-feature-grid{grid-template-columns:1fr}.landing-workflow-grid{grid-template-columns:1fr;gap:16px}.landing-title{font-size:2.2rem!important}}.forgot-password-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f0f2f5;padding:20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.forgot-password-card{background:#fff;border-radius:20px;padding:40px;width:100%;max-width:420px;box-shadow:0 20px 40px #0000001a;text-align:center;position:relative;animation:slideUp .6s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.forgot-password-logo{margin-bottom:20px;color:#667eea}.forgot-password-title{font-size:28px;font-weight:700;color:#2d3748;margin-bottom:8px}.forgot-password-subtitle{color:#718096;font-size:16px;margin-bottom:32px;line-height:1.5}.form-group{margin-bottom:24px;text-align:left}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#374151;font-size:14px}.input-with-icon{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:16px;color:#9ca3af;z-index:1}.input-with-icon input{width:100%;padding:16px 16px 16px 48px;border:2px solid #e5e7eb;border-radius:12px;font-size:16px;transition:all .3s ease;background:#f9fafb;box-sizing:border-box}.input-with-icon input:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a}.reset-button{width:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:16px;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:24px}.reset-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.reset-button:disabled{opacity:.7;cursor:not-allowed}.loading-spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.back-to-login{margin-bottom:24px}.back-button{background:none;border:none;color:#667eea;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .3s ease;padding:8px;border-radius:8px;margin:0 auto}.back-button:hover{background:#667eea1a;color:#5a67d8}.copyright{color:#9ca3af;font-size:12px;margin-top:16px}.notification{position:fixed;top:20px;right:20px;background:#fff;border-radius:12px;box-shadow:0 10px 30px #00000026;padding:16px;min-width:300px;z-index:1000;transform:translate(100%);transition:transform .3s ease}.notification.show{transform:translate(0)}.notification.success{border-left:4px solid #10b981}.notification.error{border-left:4px solid #ef4444}.notification-content{display:flex;align-items:center;gap:12px}.notification-icon{flex-shrink:0}.notification.success .notification-icon{color:#10b981}.notification.error .notification-icon{color:#ef4444}.notification-message{flex:1;font-size:14px;color:#374151;font-weight:500}.notification-close{background:none;border:none;cursor:pointer;padding:4px;border-radius:6px;color:#6b7280;flex-shrink:0}.notification-close:hover{background:#f3f4f6;color:#374151}.notif-bell-wrapper{position:relative;display:inline-flex;align-items:center}.notif-bell-btn{position:relative;background:none;border:none;cursor:pointer;padding:8px;border-radius:50%;color:#64748b;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s,transform .15s}.notif-bell-btn:hover{background:#6366f114;color:#4f46e5;transform:scale(1.1)}.notif-bell-btn.has-notif{color:#f59e0b;animation:bellShake 2.5s ease-in-out infinite}@keyframes bellShake{0%,85%,to{transform:rotate(0)}88%{transform:rotate(12deg)}92%{transform:rotate(-10deg)}96%{transform:rotate(6deg)}}.notif-badge{position:absolute;top:2px;right:2px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;min-width:17px;height:17px;border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0 3px;border:2px solid white;line-height:1}.notif-pulse{position:absolute;top:4px;right:4px;width:10px;height:10px;border-radius:50%;background:#ef444480;animation:notifPulse 2s ease-out infinite;pointer-events:none}@keyframes notifPulse{0%{transform:scale(1);opacity:.8}70%{transform:scale(2.4);opacity:0}to{transform:scale(2.4);opacity:0}}.notif-dropdown{position:absolute;top:calc(100% + 10px);right:0;width:340px;background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #00000012,0 20px 40px -5px #00000026,0 0 0 1px #0000000d;z-index:9999;overflow:hidden;animation:dropdownFadeIn .2s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.notif-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px 12px;border-bottom:1px solid #f1f5f9;background:linear-gradient(135deg,#fafbff,#f0f4ff)}.notif-title{font-weight:700;font-size:.95rem;color:#1e293b}.notif-count-label{font-size:.75rem;color:#94a3b8;background:#f1f5f9;padding:2px 8px;border-radius:20px}.notif-list{max-height:320px;overflow-y:auto;padding:8px 0}.notif-list::-webkit-scrollbar{width:4px}.notif-list::-webkit-scrollbar-track{background:#f8fafc}.notif-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.notif-item{display:flex;align-items:flex-start;gap:12px;padding:11px 18px;border-left:3px solid transparent;transition:background .15s;cursor:default}.notif-item:hover{background:#f8fafc}.notif-item.notif-warning{border-left-color:#f59e0b}.notif-item.notif-danger{border-left-color:#ef4444}.notif-item.notif-info{border-left-color:#6366f1}.notif-item.notif-high{background:linear-gradient(90deg,rgba(239,68,68,.04) 0%,transparent 100%)}.notif-icon{font-size:1.25rem;line-height:1;flex-shrink:0;margin-top:1px}.notif-body{flex:1;min-width:0}.notif-item-title{margin:0 0 2px;font-size:.82rem;font-weight:600;color:#334155}.notif-item-msg{margin:0;font-size:.78rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-priority-dot{width:8px;height:8px;border-radius:50%;background:#ef4444;flex-shrink:0;margin-top:5px;box-shadow:0 0 0 3px #ef444433}.notif-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:28px 18px;color:#94a3b8;font-size:.85rem;text-align:center}.notif-empty p{margin:0}.notif-footer{padding:10px 18px;border-top:1px solid #f1f5f9;display:flex;justify-content:center}.notif-refresh-btn{background:none;border:1px solid #e2e8f0;color:#64748b;font-size:.8rem;padding:5px 16px;border-radius:8px;cursor:pointer;transition:all .2s}.notif-refresh-btn:hover{background:#f1f5f9;color:#334155;border-color:#cbd5e1}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;padding:14px 18px;background:#ffffffdb;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 12px 28px #0f172a14;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:16px;z-index:5}.dashboard-header h1{font-size:1.7rem;font-weight:700;color:#0f172a;letter-spacing:-.5px;font-family:Space Grotesk,DM Sans,sans-serif}.dashboard-header .user-info{display:flex;align-items:center;gap:14px}.dashboard-header .date{font-size:.85rem;color:#0f172a;background:#0f766e1a;padding:6px 10px;border-radius:999px;border:1px solid rgba(15,118,110,.2)}.dashboard-header .admin-profile{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:999px;background:#f0fdfa;border:1px solid rgba(16,185,129,.25)}.dashboard-header .admin-profile span{font-weight:600;color:#0f172a}.dashboard-header .profile-image{width:36px;height:36px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#10b981,#0f766e);display:flex;align-items:center;justify-content:center;color:#ecfdf5}@media (max-width: 768px){.dashboard-header{flex-direction:column;align-items:flex-start;gap:12px}}.main-content{flex:1;padding:24px 30px 36px;background:radial-gradient(circle at 8% 8%,rgba(16,185,129,.08),transparent 35%),radial-gradient(circle at 92% 0%,rgba(34,197,94,.08),transparent 42%),linear-gradient(180deg,#f6f4ef,#f5f7fa 55%,#eef2f6)}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;padding:14px 18px;background:#ffffffdb;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 12px 28px #0f172a14;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:16px;z-index:5}.header h1{font-size:1.7rem;font-weight:700;color:#0f172a;letter-spacing:-.5px;font-family:Space Grotesk,DM Sans,sans-serif}.user-info{display:flex;align-items:center;gap:14px}.date{font-size:.85rem;color:#0f172a;background:#0f766e1a;padding:6px 10px;border-radius:999px;border:1px solid rgba(15,118,110,.2)}.admin-profile{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:999px;background:#f0fdfa;border:1px solid rgba(16,185,129,.25)}.admin-profile span{font-weight:600;color:#0f172a}.profile-image{width:36px;height:36px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#10b981,#0f766e);display:flex;align-items:center;justify-content:center;color:#ecfdf5}.stats-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;margin-bottom:30px}.stat-card{background-color:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000000d;display:flex;justify-content:space-between;align-items:center}.stat-info{display:flex;flex-direction:column}.stat-label{font-size:.9rem;color:#666;margin-bottom:8px}.stat-value{font-size:1.8rem;font-weight:600;color:#333;margin:0}.stat-change{font-size:.8rem;color:#4caf50;margin-top:5px}.stat-icon{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff}.medicine-icon{background-color:#4caf50}.transaction-icon{background-color:#2196f3}.supplier-icon{background-color:#ff9800}.user-icon{background-color:#9c27b0}.charts-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:20px;margin-bottom:30px}.chart-section{background-color:#fff;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px #0000000d}.chart-section.full-width{grid-column:1 / -1;width:100%}.chart-section h2{font-size:1.2rem;margin-bottom:20px;color:#333}.chart-container{width:100%;height:300px;margin-top:10px;overflow:hidden}.recharts-wrapper{margin:0 auto}.recharts-tooltip-wrapper{background-color:#fffc!important;border:1px solid #ddd!important;border-radius:4px!important;padding:8px!important}.recharts-default-tooltip{background-color:#fff!important;border:none!important;border-radius:4px!important;padding:8px!important;box-shadow:0 2px 8px #0000001a!important}.custom-tooltip{background-color:#fff;padding:10px;border:1px solid #ddd;border-radius:4px}.custom-tooltip .label{margin:0;font-weight:500}.tables-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px}.table-section{background-color:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000000d}.table-section.full-width{grid-column:1 / -1;width:100%}.table-section h2{font-size:1.2rem;margin-bottom:20px;color:#333}.data-table th,.data-table td{padding:12px 15px;text-align:left}.data-table tr{border-bottom:1px solid #eee}.data-table tr:last-child{border-bottom:none}.status-badge.completed{background-color:#e8f5e9;color:#4caf50}.status-badge.pending{background-color:#fff8e1;color:#ff9800}.status-badge.cancelled{background-color:#ffebee;color:#f44336}.orders-message{margin-bottom:12px;color:#1565c0;font-size:.9rem}.cashier-actions{display:flex;gap:8px;align-items:center}.action-btn{border:0;border-radius:6px;padding:6px 10px;color:#fff;font-size:.8rem;cursor:pointer}.action-btn:disabled{opacity:.6;cursor:not-allowed}.action-btn.approve{background-color:#2e7d32}.action-btn.process{background-color:#ef6c00}.action-btn.complete{background-color:#1565c0}.action-muted{font-size:.8rem;color:#777}.payment-proof-thumb{width:56px;height:56px;object-fit:cover;border-radius:6px;border:1px solid #ddd}@media (max-width: 1100px){.charts-row{grid-template-columns:1fr}}@media (max-width: 768px){.header{flex-direction:column;align-items:flex-start;gap:12px;position:static}.stats-container{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.tables-container{grid-template-columns:1fr}}.sidebar{width:280px;background:radial-gradient(circle at 18% 12%,rgba(45,212,191,.18),transparent 45%),radial-gradient(circle at 85% 20%,rgba(34,197,94,.18),transparent 42%),linear-gradient(180deg,#0f2b2f,#0b1d1f);border-right:none;min-height:100vh;height:auto;overflow-y:auto;position:sticky;top:0;align-self:stretch;transition:width .3s ease;box-shadow:18px 0 40px #065f461f;font-family:DM Sans,Space Grotesk,sans-serif}.sidebar-header{padding:22px 20px 16px;border-bottom:1px solid rgba(148,163,184,.2)}.sidebar-header h2{font-size:1.1rem;font-weight:700;color:#e2f2ee;margin:0;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-nav ul{list-style:none;padding:0;margin:0}.customer-profile-card{margin:16px;padding:14px;border-radius:14px;background:#0f766e2e;border:1px solid rgba(45,212,191,.25);color:#e6f6f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.customer-profile-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.customer-profile-meta{min-width:0;flex:1}.customer-name{margin:0;font-size:.9rem;font-weight:600;color:#e6f6f2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.customer-email{margin:0;font-size:.75rem;color:#e2f2eebf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-nav li{margin-bottom:6px}.sidebar-nav li a{display:flex;align-items:center;gap:12px;padding:11px 16px;color:#e2f2eeb8;text-decoration:none;transition:all .2s ease;border-radius:12px;margin:0 10px;position:relative}.sidebar-nav li a:hover{background-color:#ffffff14;color:#f0fdfa}.sidebar-nav li.active a{background:linear-gradient(90deg,#10b98147,#0f766e14);color:#f0fdfa;font-weight:600;box-shadow:inset 0 0 0 1px #10b9812e}.sidebar-nav li.active a:before{content:"";position:absolute;left:-6px;width:10px;height:10px;border-radius:50%;background:#10b981;box-shadow:0 0 0 4px #10b9812e}.sidebar-nav li svg{min-width:24px;color:inherit}.sidebar-nav li a span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-nav li.logout{margin-top:26px;padding-top:16px;border-top:1px solid rgba(148,163,184,.2)}.sidebar-nav li.logout a,.sidebar-nav li.logout .logout-link{color:#fca5a5;display:flex;align-items:center;gap:12px;padding:11px 16px;margin:0 10px;text-decoration:none;transition:all .2s;cursor:pointer;border-radius:12px}.sidebar-nav li.logout a:hover,.sidebar-nav li.logout .logout-link:hover{background-color:#f871712e;color:#fecaca}@media (max-width: 768px){.sidebar{width:74px}.customer-profile-card,.sidebar-header h2,.sidebar-nav li a span{display:none}.sidebar-nav li a{justify-content:center;padding:15px 0}.sidebar:hover{width:280px}.sidebar:hover .sidebar-header h2,.sidebar:hover .customer-profile-card{display:block}.sidebar:hover .sidebar-nav li a{justify-content:flex-start;padding:12px 20px}.sidebar:hover .sidebar-nav li a span{display:block}}.dashboard-layout{display:flex;min-height:100vh;align-items:stretch;width:100%;background:linear-gradient(135deg,#f3f1ec,#f5f7fa 55%,#eef2f6)}.dashboard-layout-sidebar{flex:0 0 auto;min-height:100vh;display:flex;align-items:stretch;background:transparent}.dashboard-layout-sidebar .sidebar{min-height:100vh;height:auto}.dashboard-layout-main{flex:1;min-width:0;display:flex;flex-direction:column}.medications-table{width:100%;border-collapse:collapse}.medications-table th,.medications-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #eee}.medications-table th{background-color:#f8f9fa;font-weight:500;color:#333}.medications-table tr:last-child td{border-bottom:none}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease-out}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 50px #0003;width:90%;max-width:420px;animation:slideIn .3s ease-out;overflow:hidden}.modal-header{padding:22px 24px 12px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.modal-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;animation:scaleIn .4s ease-out .1s both}.modal-icon.danger{background-color:#fee2e2;color:#dc2626}.modal-icon.warning{background-color:#fef3c7;color:#d97706}.modal-title{font-size:1.25rem;font-weight:600;color:#111827;margin:0}.modal-body{padding:0 24px 20px;text-align:center}.modal-message{color:#6b7280;font-size:.95rem;line-height:1.5;margin:0 auto;max-width:320px}.modal-footer{padding:16px 24px 24px;display:flex;gap:12px;justify-content:center}.btn-cancel,.btn-confirm{flex:1;padding:12px 16px;border:none;border-radius:8px;font-size:.9rem;font-weight:600;min-height:44px;cursor:pointer;transition:all .2s ease}.btn-cancel{background-color:#f3f4f6;color:#374151;border:1px solid #e5e7eb}.btn-confirm.danger{background-color:#dc2626;color:#fff}.btn-confirm.danger:hover{background-color:#b91c1c}.btn-confirm.warning{background-color:#d97706;color:#fff}.btn-confirm.warning:hover{background-color:#b45309}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@media (max-width: 480px){.modal-content{margin:16px;width:calc(100% - 32px)}.modal-footer{flex-direction:column}.btn-cancel,.btn-confirm{flex:none}}.dashboard-container{display:flex;min-height:100vh;background-color:#f8f9fa}.table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;overflow:hidden}.transactions-table{width:100%;border-collapse:collapse}.transactions-table th,.transactions-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #eee}.transactions-table th{background-color:#f8f9fa;font-weight:500;color:#333}.transactions-table tr:last-child td{border-bottom:none}.supplier-page.dashboard-container{display:flex;min-height:100vh;background-color:#f8f9fa}.supplier-page .main-content{flex:1;padding:20px 30px;background-color:#f8f9fa;min-height:100vh}.supplier-page .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.supplier-page .header h1{font-size:1.8rem;font-weight:600;color:#333}.supplier-page .user-info{display:flex;align-items:center;gap:20px}.supplier-page .date{font-size:.9rem;color:#666}.supplier-page .admin-profile{display:flex;align-items:center;gap:10px}.supplier-page .admin-profile span{font-weight:500}.supplier-page .profile-image{width:36px;height:36px;border-radius:50%;background-color:#eee;display:flex;align-items:center;justify-content:center;color:#666}.table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;overflow:auto;width:100%}.suppliers-table{width:100%;border-collapse:collapse}.suppliers-table th,.suppliers-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #eee;white-space:nowrap}.suppliers-table th{background-color:#f8f9fa;font-weight:500;color:#333;position:sticky;top:0}.suppliers-table tr:last-child td{border-bottom:none}@media (max-width: 1200px){.table-container{overflow-x:auto}}@media (max-width: 768px){.supplier-page .main-content{margin-left:0}.supplier-page .header{flex-direction:column;align-items:flex-start;gap:15px}.supplier-page .user-info{width:100%;justify-content:flex-end}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:#fff;border-radius:8px;width:100%;max-width:500px;box-shadow:0 4px 20px #00000026;overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #eee}.modal-header h2{font-size:1.2rem;margin:0;color:#333}.close-button{background:none;border:none;cursor:pointer;color:#666;display:flex;align-items:center;justify-content:center;padding:4px}.form-row{display:flex;gap:16px}input,select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:.95rem}input:disabled{background-color:#f5f5f5;cursor:not-allowed}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.cancel-button,.save-button{padding:10px 16px;border-radius:4px;font-size:.95rem;font-weight:500;cursor:pointer;transition:background-color .2s}.cancel-button{background-color:#f0f0f0;border:1px solid #ddd;color:#333}.cancel-button:hover{background-color:#e0e0e0}.save-button{background-color:#333;border:none;color:#fff}.content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.content-header h2{font-size:1.5rem;font-weight:600;color:#333;margin:0}.add-button{display:flex;align-items:center;gap:8px;background-color:#333;color:#fff;border:none;border-radius:6px;padding:10px 16px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .2s}.add-button:hover{background-color:#222}.filters-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.search-container{position:relative;flex:1;min-width:250px;max-width:400px}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#666}.search-container input{width:100%;padding:10px 10px 10px 40px;border:1px solid #ddd;border-radius:6px;font-size:.9rem}.search-container input:focus{outline:none;border-color:#333}.dropdown-filters{display:flex;gap:10px}.dropdown-filters select{padding:10px;border:1px solid #ddd;border-radius:6px;background-color:#fff;min-width:150px}.dropdown-filters select:focus{outline:none;border-color:#333}.table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;overflow:hidden;margin-bottom:20px}.users-table{width:100%;border-collapse:collapse}.users-table th,.users-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #eee}.users-table th{background-color:#f8f9fa;font-weight:500;color:#333}.users-table tr:last-child td{border-bottom:none}.status-badge.aktif{background-color:#e8f5e9;color:#2e7d32}.status-badge.nonaktif{background-color:#ffebee;color:#c62828}.actions{display:flex;gap:8px}.edit-button,.delete-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease}.edit-button{background-color:#f0f0f0;color:#333}.edit-button:hover{background-color:#e0e0e0}.delete-button{background-color:#fee;color:#f44336}.delete-button:hover{background-color:#fdd}.edit-button svg,.delete-button svg{stroke-width:2px;width:18px;height:18px}.edit-button svg{stroke:#333}.delete-button svg{stroke:#f44336}.pagination-info{display:flex;justify-content:space-between;align-items:center;margin-top:20px;font-size:.9rem;color:#666}.pagination-controls{display:flex;gap:5px}.pagination-button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid #ddd;background-color:#fff;border-radius:4px;cursor:pointer;transition:all .2s}.pagination-button:hover{background-color:#f5f5f5}.pagination-button.active{background-color:#333;color:#fff;border-color:#333}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.no-data{text-align:center;padding:40px 0;color:#666}@media (max-width: 1024px){.filters-container{flex-direction:column;align-items:flex-start;gap:15px}.search-container,.dropdown-filters{width:100%}.dropdown-filters select{flex:1}}@media (max-width: 768px){.header{flex-direction:column;align-items:flex-start;gap:15px}.user-info{width:100%;justify-content:flex-end}.content-header{flex-direction:column;align-items:flex-start;gap:15px}.pagination-info{flex-direction:column;gap:15px;align-items:flex-start}.search-container{width:100%;max-width:none}.dropdown-filters{width:100%}.dropdown-filters select{flex:1}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;width:90%;max-width:600px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.modal-header h2{font-size:1.4rem;margin:0;color:#333}.close-button{background:none;border:none;cursor:pointer;color:#666;padding:5px}.close-button:hover{color:#333}form{padding:20px}.form-group{margin-bottom:20px}.form-row{display:flex;gap:20px;margin-bottom:20px}.form-row .form-group{flex:1;margin-bottom:0}label{display:block;margin-bottom:6px;font-weight:500;color:#444;font-size:.9rem}input,select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:.9rem}input.error{border-color:#f44336}.error-message{display:block;color:#f44336;font-size:.8rem;margin-top:5px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:30px}button{padding:10px 20px;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .2s}.cancel-button{background-color:#f5f5f5;color:#333;border:1px solid #ddd}.cancel-button:hover{background-color:#eee}.save-button{background-color:#333;color:#fff;border:none}.save-button:hover{background-color:#222}@media (max-width: 768px){.form-row{flex-direction:column;gap:20px}.form-actions{flex-direction:column}.save-button,.cancel-button{width:100%}}@media (max-width: 480px){.modal-content{width:95%}}.dashboard-container{display:flex;min-height:100vh}.main-content{flex:1;padding:20px 30px;background-color:#f8f9fa}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.header h1{font-size:1.8rem;font-weight:600;color:#333}.date{font-size:.9rem;color:#666}.admin-profile{display:flex;align-items:center;gap:10px}.admin-profile span{font-weight:500}.profile-image{width:36px;height:36px;border-radius:50%;background-color:#eee;display:flex;align-items:center;justify-content:center;color:#666}.analytics-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.title-section h2{font-size:1.5rem;font-weight:600;color:#333;margin:0 0 5px}.date-range{font-size:.9rem;color:#666;margin:0}.action-buttons{display:flex;gap:10px}.action-button{background:none;border:1px solid #ddd;border-radius:4px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:#333;cursor:pointer;transition:all .2s;padding:0}.action-button:hover{background-color:#f0f0f0;border-color:#ccc}.action-button svg{stroke-width:1.5px;width:18px;height:18px}.print-button svg{stroke:#333}.print-button:hover{background-color:#f0f0f0;color:#000}.pdf-button svg{stroke:#e53935}.pdf-button:hover{background-color:#ffebee;border-color:#e53935}.excel-button svg{stroke:#2e7d32}.excel-button:hover{background-color:#e8f5e9;border-color:#2e7d32}.filter-section{display:flex;align-items:center;gap:15px;margin-bottom:30px}.date-filters{display:flex;gap:10px}.date-input{padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:.9rem;width:150px}.category-filter select{padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:.9rem;width:180px}.category-filter select:focus{outline:none;border-color:#333}.apply-button{background-color:#333;color:#fff;border:none;border-radius:6px;padding:10px 20px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .2s}.apply-button:hover{background-color:#222}.summary-cards{display:grid;grid-template-columns:repeat(7,1fr);gap:20px;margin-bottom:30px}.summary-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;padding:20px;text-align:center}.summary-card h3{font-size:.9rem;font-weight:500;color:#666;margin:0 0 15px}.summary-card .card-value{font-size:1.4rem;font-weight:600;color:#333;margin:0}.low-stock-section{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;padding:20px;margin-bottom:30px}.low-stock-section h3{font-size:1.1rem;font-weight:600;color:#333;margin:0 0 15px}.table-container{overflow-x:auto}.data-table th{font-weight:500;color:#333}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:.8rem;font-weight:500}.status-badge.kritis{background-color:#ffebee;color:#c62828}.status-badge.menipis{background-color:#fff8e1;color:#ff8f00}@media (max-width: 1024px){.summary-cards{grid-template-columns:repeat(4,1fr)}}@media (max-width: 768px){.header,.analytics-header{flex-direction:column;align-items:flex-start;gap:15px}.action-buttons{margin-top:10px}.summary-cards{grid-template-columns:repeat(2,1fr)}.filter-section{flex-direction:column;align-items:flex-start}.date-filters,.category-filter,.date-input,.category-filter select,.apply-button{width:100%}}.export-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease-out}.export-modal-content{background:#fff;border-radius:12px;box-shadow:0 25px 50px #00000040;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;animation:slideInScale .4s ease-out}.export-modal-header{padding:24px 24px 16px;text-align:center;position:relative;border-bottom:1px solid #f0f0f0}.export-icon{width:64px;height:64px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;color:#fff;animation:bounceIn .6s ease-out .2s both}.export-title{font-size:1.4rem;font-weight:600;color:#1f2937;margin:0}.close-button{position:absolute;top:16px;right:16px;background:none;border:none;padding:8px;cursor:pointer;border-radius:50%;color:#6b7280;transition:all .2s ease}.close-button:hover{background-color:#f3f4f6;color:#374151}.export-modal-body{padding:24px}.export-info{background-color:#f8fafc;border-radius:8px;padding:16px;margin-bottom:20px}.export-info h4{font-size:1rem;font-weight:600;color:#374151;margin:0 0 12px}.export-info ul{list-style:none;padding:0;margin:0}.export-info li{padding:4px 0;color:#6b7280;font-size:.9rem}.export-info strong{color:#374151}.export-description{margin-bottom:20px}.export-description p{color:#6b7280;line-height:1.6;margin:0;font-size:.95rem}.export-preview h4{font-size:1rem;font-weight:600;color:#374151;margin:0 0 12px}.preview-items{display:grid;grid-template-columns:1fr 1fr;gap:8px}.preview-item{display:flex;align-items:center;gap:8px;padding:8px 0;color:#6b7280;font-size:.9rem}.preview-item svg{color:#10b981;flex-shrink:0}.export-modal-footer{padding:16px 24px 24px;display:flex;gap:12px;justify-content:flex-end;border-top:1px solid #f0f0f0}.btn-cancel,.btn-export{padding:12px 20px;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.btn-cancel{background-color:#f3f4f6;color:#374151}.btn-cancel:hover{background-color:#e5e7eb}.btn-export{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;min-width:140px;justify-content:center}.btn-export:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInScale{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (max-width: 480px){.export-modal-content{margin:16px;width:calc(100% - 32px)}.preview-items{grid-template-columns:1fr}.export-modal-footer{flex-direction:column}.btn-cancel,.btn-export{width:100%;justify-content:center}}.pengadaan-page{padding:20px}.pengadaan-header h1{margin:0;font-size:1.8rem}.pengadaan-header p{margin-top:8px;color:#5f6368}.pengadaan-alert{margin-top:12px;padding:10px 14px;border-radius:8px;background:#eef3ff;color:#1d2a4d}.pengadaan-alert-error{background:#fdecec;color:#a11a1a}.pengadaan-alert-success{background:#e9f8ee;color:#176a2d}.pengadaan-grid{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pengadaan-card{background:#fff;border-radius:12px;border:1px solid #e4e6ea;padding:16px}.pengadaan-card h2{margin:0 0 14px;font-size:1.1rem}.pengadaan-form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.pengadaan-form-row label{font-weight:600;font-size:.9rem}.pengadaan-form-row input,.pengadaan-form-row select{border:1px solid #cfd4db;border-radius:8px;padding:10px}.pengadaan-inline-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pengadaan-actions{display:flex;justify-content:flex-end;margin-top:8px}.pengadaan-actions button{border:none;background:#1f4aa0;color:#fff;border-radius:8px;padding:10px 16px;cursor:pointer}.pengadaan-actions button:disabled{background:#98a3bb;cursor:not-allowed}.pengadaan-table{width:100%;border-collapse:collapse}.pengadaan-table th,.pengadaan-table td{text-align:left;padding:10px;border-bottom:1px solid #eceff4}.pengadaan-delete{border:none;border-radius:6px;padding:6px 10px;background:#ffe5e5;color:#b02020;cursor:pointer}.pengadaan-total{margin-top:12px;text-align:right}.pengadaan-history-card{margin-top:16px}@media (max-width: 900px){.pengadaan-grid{grid-template-columns:1fr}}.transaksi-container{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.transaksi-form,.cart-section{background-color:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000000d}h2{font-size:1.2rem;margin-bottom:20px;color:#333}.form-row{display:flex;gap:16px;margin-bottom:16px}.form-row .form-group{flex:1}.form-group{margin-bottom:16px}label{display:block;font-size:.9rem;margin-bottom:6px;color:#555}.select-wrapper{position:relative}.select-wrapper:after{content:"";position:absolute;right:12px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #666;pointer-events:none}select,input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:.95rem;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fff}select{padding-right:30px}input:focus,select:focus{outline:none;border-color:#333}input[readonly]{background-color:#f5f5f5;cursor:not-allowed}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.button{display:flex;align-items:center;gap:6px;padding:10px 16px;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.button svg{width:18px;height:18px}.button-primary{background-color:#222;color:#fff}.button-primary:hover{background-color:#111}.button-secondary{background-color:#f0f0f0;color:#333}.button-secondary:hover{background-color:#e0e0e0}.cart-items{max-height:300px;overflow-y:auto;margin-bottom:16px}.cart-items table{width:100%;border-collapse:collapse}.cart-items th,.cart-items td{padding:10px;text-align:left;border-bottom:1px solid #eee}.cart-items th{font-weight:500;color:#666}.cart-items tr:last-child td{border-bottom:none}.cart-total{margin:16px 0;padding:10px 0;border-top:1px solid #eee}.cart-total p{text-align:right;font-size:1.1rem}.cart-checkout{margin-top:20px}.checkout-button{width:100%;justify-content:center;margin-top:10px}.empty-cart{padding:40px 0;text-align:center;color:#666}.struk-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.struk-container{background-color:#fff;width:350px;border-radius:8px;box-shadow:0 4px 20px #00000026;overflow:hidden}.struk-header{padding:20px;display:flex;flex-direction:column;align-items:center;border-bottom:1px dashed #ddd}.struk-header svg{width:40px;height:40px;margin-bottom:10px;color:#333}.struk-header h3{margin:0;font-size:1.1rem}.struk-content{padding:20px}.struk-item{display:flex;justify-content:space-between;margin-bottom:10px}.struk-item p{margin:5px 0;font-size:.9rem}.struk-total{display:flex;justify-content:space-between;border-top:1px dashed #ddd;margin-top:15px;padding-top:15px;font-weight:600}.struk-info{margin-top:20px;font-size:.8rem;color:#666;text-align:center}.struk-info p{margin:5px 0}.struk-actions{display:flex;border-top:1px solid #eee}.struk-actions button{flex:1;padding:12px;display:flex;justify-content:center;align-items:center;gap:8px;border:none;background:none;cursor:pointer;transition:background-color .2s}.struk-actions button:first-child{border-right:1px solid #eee}.struk-actions .button-primary{background:none;color:#333}.struk-actions .button-primary:hover{background-color:#f5f5f5}.struk-actions .button-secondary{background:none;color:#333}.struk-actions .button-secondary:hover{background-color:#f5f5f5}@media (max-width: 768px){.transaksi-container{grid-template-columns:1fr}}@media print{body *{visibility:hidden}.struk-container,.struk-container *{visibility:visible}.struk-container{position:absolute;left:0;top:0;width:100%;box-shadow:none}.struk-actions{display:none}}.laporan-container{background-color:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000000d;margin-top:20px}.laporan-container h2{font-size:1.2rem;margin-bottom:20px;color:#333}.filter-container{display:flex;align-items:center;gap:16px;margin-bottom:20px}.date-input{padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:.95rem;background-color:#fff;width:180px}.date-input:focus{outline:none;border-color:#333}.display-button{padding:10px 16px;background-color:#222;color:#fff;border:none;border-radius:6px;font-size:.95rem;font-weight:500;cursor:pointer;transition:background-color .2s}.display-button:hover{background-color:#111}.display-button:disabled{background-color:#999;cursor:not-allowed}.table-container{margin-bottom:20px;border-radius:4px;overflow:hidden;border:1px solid #eee}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #eee}.data-table th{background-color:#f8f9fa;font-weight:500;color:#333}.data-table tr:last-child td{border-bottom:none}.export-container{display:flex;gap:10px}.export-button{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .2s;border:none;background-color:#f0f0f0;color:#333}.export-button svg{width:18px;height:18px}.export-button:hover{background-color:#e0e0e0}.export-pdf svg{color:#f44336}.export-excel svg{color:#4caf50}@media (max-width: 768px){.filter-container{flex-direction:column;align-items:flex-start}.date-input,.display-button{width:100%}.export-container{flex-direction:column}.export-button{width:100%;justify-content:center}}.payment-instructions{background:linear-gradient(135deg,#f0fdfa,#ecfdf5 40%,#f0f9ff);border:1.5px solid #99f6e4;border-radius:16px;padding:24px;position:relative;overflow:hidden}.payment-instructions:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#0f766e,#0e7490,#0d9488)}.payment-header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.payment-header-icon{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#0f766e,#0e7490);display:grid;place-items:center;color:#fff;font-size:20px;flex-shrink:0;box-shadow:0 4px 12px #0f766e40}.payment-header-text{font-size:16px;font-weight:700;color:#0f172a;letter-spacing:-.3px}.payment-header-sub{font-size:12.5px;color:#64748b;margin-top:1px}.payment-tabs{display:flex;gap:4px;background:#e2e8f0;border-radius:12px;padding:4px;margin-bottom:16px}.payment-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;border-radius:10px;border:none;cursor:pointer;font-size:13.5px;font-weight:600;color:#64748b;background:transparent;transition:all .25s cubic-bezier(.4,0,.2,1);font-family:inherit}.payment-tab:hover{color:#334155;background:#ffffff80}.payment-tab.active{background:#fff;color:#0f766e;box-shadow:0 2px 8px #0f172a14}.payment-tab-icon{font-size:16px}.payment-bank-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px;box-shadow:0 2px 8px #0f172a0a}.payment-bank-name{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px dashed #e2e8f0}.payment-bank-logo{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#1e40af,#2563eb);display:grid;place-items:center;color:#fff;font-size:12px;font-weight:800;letter-spacing:.5px}.payment-bank-label{font-size:15px;font-weight:700;color:#0f172a}.payment-bank-sublabel{font-size:12px;color:#94a3b8}.payment-copy-row{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:10px;transition:border-color .2s ease}.payment-copy-row:hover{border-color:#0f766e}.payment-copy-label{font-size:11.5px;color:#94a3b8;font-weight:500;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}.payment-copy-value{font-size:17px;font-weight:700;color:#0f172a;letter-spacing:.8px;font-family:JetBrains Mono,Fira Code,Courier New,monospace}.payment-copy-value.amount{color:#0f766e;font-size:16px}.payment-copy-btn{display:flex;align-items:center;gap:4px;padding:6px 12px;border-radius:8px;border:1.5px solid #0f766e;background:transparent;color:#0f766e;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit;white-space:nowrap}.payment-copy-btn:hover{background:#0f766e;color:#fff}.payment-copy-btn.copied{background:#0f766e;color:#fff;border-color:#0f766e}.payment-copy-btn-icon{font-size:14px}.payment-account-holder{display:flex;align-items:center;gap:6px;padding:10px 14px;background:#f1f5f9;border-radius:10px;margin-top:4px}.payment-account-holder-label{font-size:12px;color:#64748b}.payment-account-holder-name{font-size:14px;font-weight:700;color:#334155}.payment-qris-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:24px;text-align:center;box-shadow:0 2px 8px #0f172a0a}.payment-qris-image-wrapper{display:inline-block;padding:12px;background:#fff;border:2px solid #e2e8f0;border-radius:16px;margin-bottom:12px;box-shadow:0 4px 16px #0f172a0f}.payment-qris-image{width:200px;height:200px;border-radius:8px;object-fit:contain}.payment-qris-merchant{font-size:15px;font-weight:700;color:#0f172a;margin-bottom:4px}.payment-qris-hint{font-size:13px;color:#64748b;margin-bottom:16px;line-height:1.5}.payment-qris-total{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#f0fdfa,#ecfdf5);border:1.5px solid #99f6e4;border-radius:12px}.payment-qris-total-label{font-size:13px;color:#64748b;font-weight:500}.payment-qris-total-value{font-size:17px;font-weight:800;color:#0f766e}.payment-warning{display:flex;align-items:flex-start;gap:10px;margin-top:16px;padding:14px 16px;background:#fffbeb;border:1px solid #fde68a;border-radius:12px}.payment-warning-icon{font-size:18px;flex-shrink:0;margin-top:1px}.payment-warning-text{font-size:13px;color:#92400e;line-height:1.5}.payment-warning-text strong{font-weight:700}.payment-upload-hint{display:flex;align-items:center;gap:8px;margin-top:10px;padding:10px 14px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;font-size:12.5px;color:#0369a1;font-weight:500}.payment-upload-hint-icon{font-size:15px;flex-shrink:0}@keyframes paymentSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.payment-instructions{animation:paymentSlideIn .4s cubic-bezier(.4,0,.2,1)}.payment-tab-content{animation:paymentSlideIn .3s cubic-bezier(.4,0,.2,1)}@media (max-width: 600px){.payment-instructions{padding:16px}.payment-copy-row{flex-direction:column;align-items:flex-start;gap:8px}.payment-copy-btn{align-self:stretch;justify-content:center}.payment-qris-image{width:160px;height:160px}.payment-bank-card,.payment-qris-card{padding:16px}}.dashboard-container{display:flex;min-height:100vh;background-color:#f0f4f8}.main-content{flex:1;padding:28px 32px 48px;position:relative;font-family:Inter,sans-serif;background:radial-gradient(ellipse at 5% 5%,rgba(16,185,129,.07),transparent 40%),radial-gradient(ellipse at 95% 0%,rgba(59,130,246,.06),transparent 45%),radial-gradient(ellipse at 50% 100%,rgba(139,92,246,.04),transparent 50%),linear-gradient(180deg,#f8fafb,#f0f4f8)}.customer-hero-banner{position:relative;padding:32px 36px;border-radius:20px;margin-bottom:28px;overflow:hidden;background:linear-gradient(135deg,#0f766e,#0e7490 45%,#1d4ed8);color:#fff;box-shadow:0 12px 40px #0f766e40,inset 0 1px #ffffff1f}.customer-hero-banner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 80% 20%,rgba(255,255,255,.12),transparent 50%),radial-gradient(circle at 20% 80%,rgba(255,255,255,.06),transparent 40%);pointer-events:none}.hero-content{position:relative;z-index:1}.hero-greeting{font-size:28px;font-weight:800;letter-spacing:-.5px;margin:0 0 6px;text-shadow:0 2px 12px rgba(0,0,0,.15)}.hero-subtitle{font-size:15px;font-weight:400;opacity:.85;margin:0 0 20px;max-width:520px;line-height:1.5}.hero-stats{display:flex;gap:16px;flex-wrap:wrap}.hero-stat-card{display:flex;align-items:center;gap:10px;background:#ffffff24;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:12px 20px;min-width:140px;transition:transform .2s,background .2s}.hero-stat-card:hover{transform:translateY(-2px);background:#fff3}.hero-stat-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#ffffff2e;font-size:20px}.hero-stat-value{font-size:22px;font-weight:800;line-height:1}.hero-stat-label{font-size:12px;opacity:.75;font-weight:500}.customer-nav-tabs{display:flex;align-items:center;gap:10px;padding:8px;margin-bottom:24px;background:#fff;border-radius:16px;box-shadow:0 2px 12px #0f172a0f;border:1px solid rgba(15,23,42,.06);flex-wrap:wrap}.customer-nav-tabs .nav-tab-btn{padding:10px 22px;border-radius:12px;font-weight:600;font-size:14px;letter-spacing:.1px;transition:all .25s cubic-bezier(.4,0,.2,1);border:none;cursor:pointer;position:relative}.customer-nav-tabs .nav-tab-btn.active{background:linear-gradient(135deg,#0f766e,#0e7490);color:#fff;box-shadow:0 4px 14px #0f766e4d}.customer-nav-tabs .nav-tab-btn:not(.active){background:#f1f5f9;color:#475569}.customer-nav-tabs .nav-tab-btn:not(.active):hover{background:#e2e8f0;color:#1e293b}.nav-tab-spacer{flex:1}.cart-fab{position:fixed;bottom:28px;right:28px;z-index:100;width:60px;height:60px;border-radius:18px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f766e,#0e7490);color:#fff;box-shadow:0 8px 28px #0f766e59,0 2px 8px #0000001a;transition:all .3s cubic-bezier(.4,0,.2,1);animation:fabPulse 2s infinite}.cart-fab:hover{transform:translateY(-4px) scale(1.05);box-shadow:0 12px 36px #0f766e66,0 4px 12px #0000001f}.cart-fab-badge{position:absolute;top:-6px;right:-6px;min-width:22px;height:22px;border-radius:11px;background:#ef4444;color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid #fff;box-shadow:0 2px 6px #ef444466}@keyframes fabPulse{0%,to{box-shadow:0 8px 28px #0f766e59,0 2px 8px #0000001a}50%{box-shadow:0 8px 28px #0f766e33,0 2px 8px #0000000f}}.catalog-filters-bar{display:flex;gap:12px;margin-bottom:22px;flex-wrap:wrap;align-items:center}.catalog-search-wrapper{position:relative;flex:1;min-width:220px}.catalog-search-wrapper .MuiOutlinedInput-root{border-radius:14px;background:#fff}.product-card-modern{position:relative;border-radius:18px!important;overflow:hidden;border:1px solid rgba(15,23,42,.06)!important;background:#fff!important;transition:all .35s cubic-bezier(.4,0,.2,1)!important;box-shadow:0 2px 10px #0f172a0a!important}.product-card-modern:hover{transform:translateY(-6px);box-shadow:0 16px 40px #0f172a1a,0 4px 12px #0f766e14!important;border-color:#0f766e26!important}.product-card-accent{height:5px;background:linear-gradient(90deg,#0f766e,#0ea5e9);border-radius:0}.product-card-accent.custom{background:linear-gradient(90deg,#7c3aed,#a78bfa)}.product-card-body{padding:18px 20px 8px}.product-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:10px}.product-card-name{font-size:16px;font-weight:700;color:#1e293b;line-height:1.3;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-card-category{font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;white-space:nowrap;flex-shrink:0}.product-card-category.regular{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.product-card-category.custom{background:#f5f3ff;color:#6d28d9;border:1px solid #ddd6fe}.product-card-desc{font-size:13px;color:#64748b;line-height:1.45;margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-card-price{font-size:22px;font-weight:800;color:#0f766e;margin-bottom:4px;letter-spacing:-.3px}.product-card-stock{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;margin-bottom:4px}.stock-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.stock-dot.available{background:#22c55e;box-shadow:0 0 6px #22c55e66}.stock-dot.low{background:#f59e0b;box-shadow:0 0 6px #f59e0b66}.stock-dot.empty{background:#ef4444;box-shadow:0 0 6px #ef444466}.product-card-actions{padding:12px 20px 18px!important}.product-card-actions .add-cart-btn{border-radius:12px!important;font-weight:600!important;text-transform:none!important;padding:10px 0!important;font-size:14px!important;letter-spacing:.2px!important;transition:all .25s!important}.product-card-actions .add-cart-btn.primary{background:linear-gradient(135deg,#0f766e,#0e7490)!important;color:#fff!important;box-shadow:0 4px 14px #0f766e40!important}.product-card-actions .add-cart-btn.primary:hover{box-shadow:0 6px 20px #0f766e59!important;transform:translateY(-1px)}.product-card-actions .add-cart-btn.secondary{border:1.5px solid #0f766e!important;color:#0f766e!important;background:transparent!important}.product-card-actions .add-cart-btn.secondary:hover{background:#0f766e0f!important}.product-card-actions .add-cart-btn.buy-now{background:linear-gradient(135deg,#7c3aed,#a855f7)!important;color:#fff!important;box-shadow:0 4px 14px #7c3aed40!important}.product-card-actions .add-cart-btn.buy-now:hover{box-shadow:0 6px 20px #7c3aed59!important}.product-card-actions .add-cart-btn:disabled{background:#e2e8f0!important;color:#94a3b8!important;box-shadow:none!important;border-color:#e2e8f0!important;cursor:not-allowed}.section-card{background:#fff;border-radius:20px;padding:28px;margin-bottom:24px;box-shadow:0 2px 12px #0f172a0d;border:1px solid rgba(15,23,42,.05)}.section-title{font-size:22px;font-weight:800;color:#0f172a;letter-spacing:-.3px;margin-bottom:20px;display:flex;align-items:center;gap:10px}.section-title-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-size:18px}.section-title-icon.catalog{background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:#047857}.section-title-icon.custom{background:linear-gradient(135deg,#f5f3ff,#ede9fe);color:#7c3aed}.order-history-card{border:1px solid #e2e8f0;border-radius:16px;padding:20px 24px;margin-bottom:14px;background:#fff;transition:all .25s ease}.order-history-card:hover{border-color:#cbd5e1;box-shadow:0 4px 16px #0f172a0f}.order-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;flex-wrap:wrap}.order-card-id{font-size:15px;font-weight:700;color:#1e293b}.order-card-date{font-size:13px;color:#64748b;font-weight:500}.order-card-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.order-card-price{font-size:18px;font-weight:800;color:#0f766e}.order-card-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.status-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 14px;border-radius:20px;font-size:12px;font-weight:600;white-space:nowrap}.status-chip.pending{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.status-chip.verified{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.status-chip.completed{background:#dcfce7;color:#166534;border:1px solid #86efac}.status-chip.cancelled{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.status-dot{width:7px;height:7px;border-radius:50%}.status-dot.pending{background:#f59e0b}.status-dot.verified{background:#3b82f6}.status-dot.completed{background:#22c55e}.status-dot.cancelled{background:#ef4444}.cart-drawer-header{padding:24px 24px 0}.cart-drawer-title{font-size:20px;font-weight:800;color:#0f172a;letter-spacing:-.3px}.cart-drawer-subtitle{font-size:13px;color:#64748b;margin-top:2px}.cart-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.cart-empty-icon{width:80px;height:80px;border-radius:50%;background:#f1f5f9;display:grid;place-items:center;margin-bottom:16px;font-size:36px;color:#94a3b8}.cart-empty-text{font-size:15px;color:#64748b;font-weight:500}.cart-item-card{padding:14px 0;border-bottom:1px solid #f1f5f9}.cart-item-name{font-size:15px;font-weight:600;color:#1e293b}.cart-item-price{font-size:13px;color:#64748b}.cart-item-subtotal{font-size:15px;font-weight:700;color:#0f766e}.cart-qty-control{display:flex;align-items:center;gap:2px;background:#f1f5f9;border-radius:10px;padding:2px}.cart-qty-value{font-weight:700;font-size:15px;min-width:32px;text-align:center;color:#1e293b}.cart-summary-section{padding:20px 24px 24px;background:linear-gradient(180deg,#f8fafb,#fff);border-top:1px solid #e2e8f0}.cart-summary-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.cart-summary-label{font-size:14px;color:#64748b;font-weight:500}.cart-summary-value{font-size:14px;font-weight:600;color:#334155}.cart-summary-total{font-size:18px;font-weight:800;color:#0f172a}.cart-checkout-btn{width:100%;padding:14px!important;border-radius:14px!important;font-weight:700!important;font-size:16px!important;text-transform:none!important;background:linear-gradient(135deg,#0f766e,#0e7490)!important;color:#fff!important;box-shadow:0 6px 20px #0f766e4d!important;transition:all .3s!important;margin-top:12px!important;letter-spacing:.3px!important}.cart-checkout-btn:hover{box-shadow:0 8px 28px #0f766e66!important;transform:translateY(-2px)}.cart-checkout-btn:disabled{background:#cbd5e1!important;box-shadow:none!important;color:#94a3b8!important}.prescription-upload-area{border:2px dashed #cbd5e1;border-radius:14px;padding:16px;text-align:center;background:#f8fafc;transition:all .25s;cursor:pointer;margin-bottom:12px}.prescription-upload-area:hover{border-color:#0f766e;background:#ecfdf5}.prescription-upload-icon{font-size:28px;margin-bottom:4px}.prescription-upload-text{font-size:13px;font-weight:500;color:#64748b}.prescription-file-info{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#ecfdf5;border-radius:10px;margin-bottom:12px}.prescription-file-name{font-size:13px;font-weight:500;color:#047857;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-order-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:#0f172a59;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1200;animation:overlayFadeIn .25s ease}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.customer-order-dialog{width:min(820px,100%);border-radius:22px!important;box-shadow:0 24px 60px #0f172a40!important;animation:dialogSlideIn .3s ease;max-height:85vh;overflow-y:auto}@keyframes dialogSlideIn{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.profile-modern-card{border:1px solid #e2e8f0;box-shadow:0 8px 30px #0f172a0f;border-radius:20px!important;overflow:hidden}.profile-modern-hero{position:relative;padding:28px 32px;background:radial-gradient(circle at 12% 12%,rgba(15,118,110,.18),transparent 38%),radial-gradient(circle at 88% 10%,rgba(14,116,144,.18),transparent 36%),linear-gradient(140deg,#ecfeff,#f0f9ff 52%,#f8fafc);border-bottom:1px solid #e2e8f0}@media (max-width: 900px){.main-content{padding:20px 16px 36px}.customer-hero-banner{padding:24px 20px}.hero-greeting{font-size:22px}.hero-stats{gap:10px}.hero-stat-card{padding:10px 14px;min-width:120px}}@media (max-width: 600px){.main-content{padding:16px 12px 32px}.customer-hero-banner{padding:20px 16px;border-radius:16px}.hero-greeting{font-size:20px}.hero-stats{gap:8px}.hero-stat-card{flex:1;min-width:0;padding:10px 12px}.customer-nav-tabs{padding:6px;border-radius:12px}.customer-nav-tabs .nav-tab-btn{padding:8px 14px;font-size:13px}.section-card{padding:18px 16px;border-radius:16px}.product-card-modern{border-radius:14px!important}.order-history-card{padding:16px 18px;border-radius:14px}.cart-fab{bottom:20px;right:16px;width:54px;height:54px;border-radius:16px}.customer-order-overlay{padding:12px}.customer-order-dialog{border-radius:18px!important}}.notification{position:fixed;bottom:20px;right:20px;background:#0f766e;color:#fff;padding:15px 20px;border-radius:12px;font-size:14px;font-weight:500;animation:slideIn .3s ease;z-index:1000;box-shadow:0 8px 24px #0f766e4d}.catalog-msg-alert{border-radius:12px!important;font-weight:500}.empty-catalog-state{display:flex;flex-direction:column;align-items:center;padding:48px 20px;text-align:center}.empty-catalog-icon{font-size:48px;margin-bottom:12px;opacity:.4}.empty-catalog-text{font-size:15px;color:#94a3b8;font-weight:500}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content.custom-medicine-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:25px;border-bottom:1px solid #eee;position:sticky;top:0;background:#fff;z-index:1}.modal-header h2{margin:0;font-size:22px;color:#333}.close-button{background:none;border:none;cursor:pointer;color:#999;font-size:24px;padding:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;transition:background .2s ease,color .2s ease}.close-button:hover{background:#f5f5f5;color:#333}.custom-medicine-form{padding:25px}.form-section{margin-bottom:30px;padding-bottom:25px;border-bottom:1px solid #f0f0f0}.form-section:last-of-type{border-bottom:none;margin-bottom:0}.form-section h3{margin:0 0 15px;font-size:16px;font-weight:600;color:#333;display:flex;align-items:center;gap:8px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.section-header h3{margin:0}.add-komposisi-btn{padding:8px 16px;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s ease}.add-komposisi-btn:hover{background:#764ba2}.form-group{display:flex;flex-direction:column;margin-bottom:15px}.form-group.full{margin-bottom:15px}.form-group label{font-size:13px;font-weight:600;color:#333;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:13px;font-family:inherit;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input.input-error,.form-group select.input-error,.form-group textarea.input-error{border-color:#e74c3c;background-color:#fff5f5}.error-message{font-size:11px;color:#e74c3c;margin-top:4px;font-weight:500}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-bottom:0}.form-row .form-group{margin-bottom:0}.komposisi-list{display:flex;flex-direction:column;gap:20px}.komposisi-item{background:#f9f9f9;padding:15px;border-radius:8px;border-left:4px solid #667eea}.item-number{font-size:12px;font-weight:600;color:#667eea;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.komposisi-item .form-row{margin-bottom:15px}.komposisi-item .form-row:last-child{margin-bottom:0}.remove-komposisi-btn{background:#e74c3c;color:#fff;border:none;width:36px;height:36px;border-radius:6px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background .2s ease;align-self:flex-end;margin-top:20px}.remove-komposisi-btn:hover{background:#c0392b}.form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:20px;border-top:1px solid #f0f0f0}.cancel-button{padding:10px 20px;background:#f0f0f0;color:#333;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease}.cancel-button:hover{background:#e0e0e0}.submit-button{padding:10px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease}.submit-button:hover{transform:translateY(-2px)}@media (max-width: 600px){.modal-content.custom-medicine-modal{max-width:100%}.modal-header{padding:15px}.modal-header h2{font-size:18px}.custom-medicine-form{padding:15px}.form-section{padding-bottom:15px;margin-bottom:15px}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions button{width:100%}}.dashboard-container{display:flex;min-height:100vh;background-color:#f5f7fa}.main-content{flex:1;padding:20px}.header{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:25px;border-radius:10px;margin-bottom:25px;box-shadow:0 2px 8px #0000001a}.header h1{margin:0;color:#333;font-size:28px}.user-info{display:flex;align-items:center;gap:20px}.date{color:#999;font-size:14px}.content-section{display:flex;flex-direction:column;gap:20px}.tools-bar{display:flex;gap:15px;background:#fff;padding:15px 20px;border-radius:10px;box-shadow:0 2px 8px #0000001a;align-items:center;flex-wrap:wrap}.search-box{flex:1;min-width:250px;display:flex;align-items:center;background:#f5f5f5;border-radius:6px;padding:0 12px;border:1px solid #ddd;transition:border-color .2s ease}.search-box:focus-within{border-color:#667eea}.search-box input{flex:1;padding:10px 0;border:none;background:transparent;font-size:14px;outline:none}.search-box svg{color:#999}.btn-add{display:flex;align-items:center;gap:8px;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;white-space:nowrap}.btn-add:hover{transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.table-container{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.empty-state{padding:60px 20px;text-align:center}.empty-state p{font-size:16px;color:#999;margin:0 0 20px}.btn-secondary{padding:10px 20px;background:#667eea;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:background .2s ease}.btn-secondary:hover{background:#764ba2}.medicines-table{width:100%;border-collapse:collapse}.medicines-table thead{background:#f9f9f9;border-bottom:2px solid #eee}.medicines-table th{padding:15px 20px;text-align:left;font-weight:600;color:#333;font-size:14px}.medicines-table td{padding:15px 20px;border-bottom:1px solid #eee;font-size:14px}.medicines-table tbody tr:hover{background:#f9f9f9}.id-cell{font-weight:600;color:#667eea;width:60px}.medicine-name{font-weight:500;color:#333}.price-cell{font-weight:600;color:#27ae60}.stock-cell{width:120px}.stock-badge{display:inline-block;padding:4px 12px;background:#d4edda;color:#155724;border-radius:20px;font-size:12px;font-weight:500}.stock-badge.low{background:#f8d7da;color:#721c24}.komposisi-cell{width:120px}.btn-view-komposisi{padding:5px 12px;background:#e8eef7;color:#667eea;border:1px solid #667eea;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-view-komposisi:hover{background:#667eea;color:#fff}.action-cell{display:flex;gap:8px;width:100px}.btn-edit,.btn-delete{flex:1;display:flex;align-items:center;justify-content:center;padding:6px;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background .2s ease}.btn-edit{background:#667eea;color:#fff}.btn-edit:hover{background:#764ba2}.btn-delete{background:#e74c3c;color:#fff}.btn-delete:hover{background:#c0392b}.info-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.info-card{background:#fff;padding:20px;border-radius:10px;box-shadow:0 2px 8px #0000001a;text-align:center}.info-card h3{margin:0 0 10px;font-size:14px;color:#666;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.info-value{margin:0;font-size:28px;font-weight:700;color:#667eea}.notification{position:fixed;bottom:20px;right:20px;padding:15px 20px;border-radius:6px;font-size:14px;font-weight:500;animation:slideIn .3s ease;z-index:1000;max-width:350px}.notification.success{background-color:#27ae60;color:#fff}.notification.error{background-color:#e74c3c;color:#fff}.notification.info{background-color:#3498db;color:#fff}@keyframes slideIn{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}@media (max-width: 768px){.header{flex-direction:column;align-items:flex-start}.tools-bar{flex-direction:column;align-items:stretch}.search-box{order:2;min-width:100%}.btn-add{order:1}.medicines-table{font-size:12px}.medicines-table th,.medicines-table td{padding:10px}.action-cell{width:70px;gap:4px}.info-section{grid-template-columns:1fr}}.komposisi-modal{background:#fff;border-radius:12px;padding:0;width:90%;max-width:500px;box-shadow:0 20px 60px #00000026;overflow:hidden;animation:modalFadeIn .2s ease}@keyframes modalFadeIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.komposisi-modal-header{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.komposisi-modal-header h3{margin:0;font-size:16px;font-weight:600}.komposisi-modal-header .close-button{background:#fff3;border:none;color:#fff;width:30px;height:30px;border-radius:50%;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.komposisi-modal-header .close-button:hover{background:#ffffff59}.komposisi-modal-body{padding:20px 24px 24px}.empty-komposisi{text-align:center;color:#999;padding:20px 0}.komposisi-detail-table{width:100%;border-collapse:collapse}.komposisi-detail-table th{padding:10px 12px;text-align:left;font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #eee}.komposisi-detail-table td{padding:12px;font-size:14px;border-bottom:1px solid #f0f0f0;color:#333}.komposisi-detail-table tbody tr:hover{background:#f8f9ff}.komposisi-detail-table tbody tr:last-child td{border-bottom:none}
