body{background-color:#f5f5f5}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{min-height:100vh}.fa,.fab,.far,.fas{-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;display:inline-block!important;font-family:Font Awesome\ 6 Free,Font Awesome\ 6 Brands!important;font-style:normal!important;font-weight:900!important;text-rendering:auto!important}i.fa,i.fab,i.far,i.fas{font-size:inherit!important;opacity:1!important;visibility:visible!important}.fa,.fab,.far,.fas{color:inherit}.dark-layout{--bg-primary:#020617;--bg-secondary:#0f172a;--bg-tertiary:#1e293b;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-tertiary:#64748b;--border-color:#1e293b;--border-light:#334155;--shadow-sm:0 4px 6px -2px #0000004d;--shadow-md:0 10px 15px -3px #0006;--shadow-lg:0 20px 25px -5px #00000080;--gradient-primary:linear-gradient(135deg,#3b82f6,#2563eb);--gradient-sidebar:linear-gradient(135deg,#0f172a,#1e293b);--sidebar-hover:#3b82f61a}.light-layout{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#64748b;--border-color:#e2e8f0;--border-light:#cbd5e1;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--gradient-primary:linear-gradient(135deg,#3b82f6,#2563eb);--gradient-sidebar:linear-gradient(135deg,#fff,#f8fafc);--sidebar-hover:#3b82f60d}*{box-sizing:border-box}*,body{margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;transition:background .3s ease}body.dark-mode-active{background:#020617}body.light-mode-active{background:#f8fafc}.layout-wrapper{background:var(--bg-primary);display:flex;min-height:100vh;position:relative;transition:background .3s ease}.mobile-header{align-items:center;background:var(--gradient-primary);box-shadow:var(--shadow-md);display:none;height:70px;justify-content:space-between;left:0;overflow:hidden;padding:0 20px;position:fixed;right:0;top:0;z-index:1000}.mobile-logo-img{height:45px;width:auto}.hamburger-button{background:#fff3;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:20px;height:44px;width:44px}.desktop-header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);display:flex;height:70px;justify-content:space-between;left:280px;padding:0 2rem;position:fixed;right:0;top:0;z-index:99}.desktop-header-left h2{color:var(--text-primary);font-size:1.25rem;font-weight:600}.top-actions{align-items:center;display:flex;gap:15px}.theme-toggle-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:12px;color:var(--text-primary);cursor:pointer;font-size:1rem;padding:8px 12px}.avatar{align-items:center;background:var(--gradient-primary);border-radius:50%;color:#fff;display:flex;font-size:1.125rem;font-weight:700;height:40px;justify-content:center;text-transform:uppercase;width:40px}.sidebar{background:var(--gradient-sidebar);border-right:1px solid var(--border-color);box-shadow:var(--shadow-md);display:flex;flex-direction:column;overflow-y:auto}.sidebar-desktop{z-index:100}.sidebar-desktop,.sidebar-mobile{bottom:0;left:0;position:fixed;top:0;width:280px}.sidebar-mobile{transform:translateX(-100%);transition:transform .3s ease;z-index:1000}.sidebar-mobile.sidebar-open{transform:translateX(0)}.sidebar-close{background:#fff3;border:none;border-radius:8px;color:#fff;cursor:pointer;height:32px;position:absolute;right:12px;top:12px;width:32px}.sidebar-logo-section{border-bottom:1px solid var(--border-color);padding:20px 20px 16px;text-align:center}.sidebar-logo{height:55px;width:auto}.logo-glow{filter:drop-shadow(0 0 8px rgba(59,130,246,.5))}.sidebar-profile-simple{align-items:center;background:var(--gradient-primary);display:flex;gap:14px;margin:0 0 12px;overflow:hidden;padding:20px 16px;position:relative}.profile-simple-icon{align-items:center;background:#fff3;border-radius:14px;color:#fff;display:flex;font-size:22px;height:48px;justify-content:center;width:48px}.profile-simple-name{color:#fff;font-size:16px;font-weight:700;margin-bottom:5px}.profile-simple-details,.profile-simple-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-simple-details{color:#ffffffd9;font-size:11px}.sidebar-menu{flex:1 1;padding:8px 0}.menu-item{align-items:center;background:none;border:none;border-radius:10px;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;margin:4px 0;padding:10px 16px;text-align:left;transition:all .25s ease;width:100%}.menu-item:hover{background:var(--sidebar-hover);color:#3b82f6;transform:translateX(6px)}.menu-item-active{background:linear-gradient(135deg,#3b82f626,#2563eb1a);border-left:3px solid #3b82f6;color:#3b82f6;font-weight:600}.menu-icon{color:#3b82f6;font-size:16px;margin-right:12px;text-align:center;width:24px}.menu-divider{background:var(--border-color);height:1px;margin:8px 16px}.menu-item-logout{background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:10px;color:#fff;margin:8px 12px;padding:10px 16px;width:calc(100% - 24px)}.sidebar-footer{border-top:1px solid var(--border-color);color:var(--text-tertiary);font-size:11px;padding:12px 16px;text-align:center}.main-content{background:var(--bg-primary);min-height:100vh;transition:all .3s ease}.main-content-desktop{margin-left:280px;padding-top:70px}.main-content-mobile{margin-left:0;padding-top:70px}.main-content-inner{background:var(--bg-primary);min-height:calc(100vh - 70px);padding:0}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;inset:0;position:fixed;z-index:999}@media (max-width:768px){.desktop-header{display:none}.mobile-header{display:flex}.main-content-desktop{margin-left:0}.sidebar-mobile{width:280px}}@media (min-width:769px){.mobile-header{display:none}.desktop-header{display:flex}.sidebar-mobile{display:none}.sidebar-desktop{display:flex}}::-webkit-scrollbar-thumb:hover{background:#3b82f6}.login-container{align-items:center;background-color:#f5f7fa;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative}@media (prefers-color-scheme:dark){.login-container{background-color:#1a1a2e}.login-form-card{background-color:#1e1e2ef2;box-shadow:0 10px 40px #0000004d}.form-input{border-color:#4a4a5e}.form-input,.form-input:focus{background-color:#fff;color:#000!important}.form-input:focus{border-color:#1e88e5}.form-input:active{color:#000!important}.form-input:disabled{background-color:#e0e0e0;color:#666!important;cursor:not-allowed}.form-input::placeholder{color:#888}input.form-input,input.form-input:-webkit-autofill,input.form-input:-webkit-autofill:focus,input.form-input:active,input.form-input:focus,input.form-input:not(:placeholder-shown){-webkit-text-fill-color:#000!important;background-color:#fff!important;color:#000!important}input[type=email],input[type=number],input[type=password],input[type=text]{color:#000!important}.form-label,.login-form label,label{color:#e0e0e0}.login-form-card,.login-form-card *{color:#333}.error-message{background-color:#e5393533;border-left-color:#ff6b6b;color:#ff6b6b}.forgot-password a{color:#64b5f6}.forgot-password a:hover{color:#90caf9}.circle-blue{background-color:#1e88e540}.circle-red{background-color:#e5393540}::-webkit-input-placeholder{color:#888!important}:-moz-placeholder,::-moz-placeholder{color:#888!important}:-ms-input-placeholder{color:#888!important}}.floating-circle{animation:float 6s ease-in-out infinite;border-radius:50%;position:absolute;z-index:1}.circle-large{height:300px;width:300px}.circle-small{height:120px;width:120px}.circle-blue{background-color:#133c8fbf}.circle-red{background-color:#ad0101c2}.login-content{align-items:center;display:flex;flex-direction:column;max-width:450px;position:relative;width:100%;z-index:2}.logo-container{margin-bottom:32px;text-align:center}.logo{height:150px;object-fit:contain;width:150px}.login-form-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fffffff2;border-radius:16px;box-shadow:0 10px 40px #0000001a;padding:32px;width:100%}.login-form{width:100%}.form-group{margin-bottom:16px}.form-input{border:1px solid #e0e0e0;border-radius:10px;color:#000!important;padding:16px;transition:all .3s ease}.form-input:focus{background-color:#fff;border-color:#1e88e5;box-shadow:0 0 0 3px #1e88e51a}.form-input:active,.form-input:focus{color:#000!important}.form-input:disabled{background-color:#f5f5f5;color:#666!important}.form-input::placeholder{color:#888;font-weight:400}input.form-input,input.form-input:-webkit-autofill,input.form-input:active,input.form-input:focus,input.form-input:not(:placeholder-shown){-webkit-text-fill-color:#000!important;color:#000!important}input[type=email],input[type=number],input[type=password],input[type=text]{color:#000!important}.login-btn{align-items:center;background-color:#1e88e5;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;justify-content:center;margin-top:8px;padding:16px;transition:all .3s ease;width:100%}.login-btn:hover:not(:disabled){background-color:#1565c0;box-shadow:0 4px 12px #1e88e54d;transform:translateY(-2px)}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{background-color:#bdbdbd;cursor:not-allowed}.spinner{border:3px solid #ffffff4d;border-top-color:#fff;height:20px;width:20px}.error-message{background-color:#ffcdd2;border-left:4px solid #e53935;border-radius:8px;color:#e53935;font-size:14px;margin-bottom:16px;padding:12px 16px}.forgot-password{margin-top:16px;text-align:center}.forgot-password a{color:#1e88e5;font-size:14px;font-weight:600;text-decoration:none;transition:color .3s ease}.forgot-password a:hover{color:#1565c0;text-decoration:underline}.form-label,.login-form label,label{color:#333;display:block;font-weight:500;margin-bottom:8px}.login-form-card,.login-form-card *{color:#333}.text-white,[class*=text-white]{color:#333!important}::-webkit-input-placeholder{color:#888!important;opacity:1}:-moz-placeholder,::-moz-placeholder{color:#888!important;opacity:1}:-ms-input-placeholder{color:#888!important;opacity:1}@media (max-width:768px){.login-form-card{padding:24px}.logo{height:120px;width:120px}.circle-large{height:200px;width:200px}.circle-small{height:80px;width:80px}}@media (max-width:480px){.login-container{padding:16px}.login-form-card{padding:20px}.logo{height:100px;width:100px}.form-input,.login-btn{font-size:15px;padding:14px}}.dark-theme{--bg-main:#020617;--border:#1e293b}.light-theme{--bg-main:#f1f5f9;--border:#e2e8f0}.dashboard-main{background:var(--bg-main);color:var(--text-primary);min-height:100vh;transition:.25s}.kpi-section{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:30px}.kpi-card{align-items:center;background:var(--card-bg);border:1px solid var(--border);border-radius:16px;display:flex;gap:20px;overflow:hidden;padding:24px;position:relative;transition:all .3s ease}.kpi-card:before{background:linear-gradient(90deg,#6366f1,#8b5cf6);content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.kpi-card:hover:before{opacity:1}.kpi-card:hover{box-shadow:0 20px 40px #00000026;transform:translateY(-6px)}.kpi-icon-wrapper{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:64px;justify-content:center;position:relative;width:64px}.kpi-icon-wrapper:after{background:inherit;border-radius:50%;content:"";inset:-4px;opacity:.2;position:absolute;z-index:-1}.kpi-icon-wrapper.budget{background:linear-gradient(135deg,#ef4444,#dc2626)}.kpi-icon-wrapper.customers{background:linear-gradient(135deg,#10b981,#059669)}.kpi-icon-wrapper.progress{background:linear-gradient(135deg,#f59e0b,#d97706)}.kpi-icon-wrapper.profit{background:linear-gradient(135deg,#6366f1,#4f46e5)}.kpi-icon-wrapper i{color:#fff;font-size:28px}.kpi-content{display:flex;flex:1 1;flex-direction:column;gap:4px}.kpi-card span{color:var(--text-secondary);font-size:14px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.kpi-card h2{color:var(--text-primary);font-size:32px;font-weight:700;margin:0}.kpi-trend{align-items:center;display:flex;font-size:13px;gap:6px;margin-top:4px}.kpi-trend.up{color:#10b981}.kpi-trend.down{color:#ef4444}.kpi-trend i{font-size:12px}.analytics{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1.2fr .8fr 1fr;margin-bottom:30px}.chart-card{background:var(--card-bg);border:1px solid var(--border);border-radius:20px;box-shadow:0 4px 20px #00000014;padding:28px;position:relative;transition:all .3s ease}.chart-card:before{background:linear-gradient(90deg,#6366f1,#8b5cf6,#ec4899);border-radius:20px 20px 0 0;content:"";height:4px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.chart-card:hover:before{opacity:1}.chart-card:hover{box-shadow:0 12px 40px #00000026;transform:translateY(-6px)}.chart-card h3{color:var(--text-primary);font-size:18px;font-weight:600;justify-content:space-between;margin-bottom:20px}.chart-card h3,.chart-sync-btn{align-items:center;display:flex}.chart-sync-btn{background:none;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:14px;gap:6px;padding:6px 12px;transition:all .2s ease}.chart-sync-btn:hover{background:#6366f11a;color:#6366f1}.chart-sync-btn i{font-size:14px}.traffic-source-chart{align-items:center;display:flex;flex-direction:column;gap:20px}.traffic-legend{display:flex;flex-direction:column;gap:12px;margin-top:10px;width:100%}.bar-chart-legend{border-top:1px solid var(--border);display:flex;flex-direction:row;gap:16px;justify-content:space-around;margin-top:16px;padding-top:16px;width:100%}.traffic-legend-item{align-items:center;display:flex;gap:12px;justify-content:space-between;padding:8px 0}.traffic-legend-label{align-items:center;display:flex;gap:10px}.traffic-legend-icon{align-items:center;border-radius:10px;color:#fff;display:flex;font-size:18px;height:40px;justify-content:center;width:40px}.traffic-legend-icon.desktop{background:linear-gradient(135deg,#6366f1,#4f46e5)}.traffic-legend-icon.tablet{background:linear-gradient(135deg,#10b981,#059669)}.traffic-legend-icon.phone{background:linear-gradient(135deg,#f59e0b,#d97706)}.traffic-legend-text{color:var(--text-primary);font-size:14px;font-weight:500}.traffic-legend-value{color:var(--text-primary);font-size:16px;font-weight:600}.bottom-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr)}.panel{background:var(--card-bg);border:1px solid var(--border);border-radius:20px;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;gap:16px;padding:24px;transition:all .3s ease}.panel:hover{box-shadow:0 12px 40px #0000001f;transform:translateY(-4px)}.panel-header{align-items:center;border-bottom:2px solid var(--border);display:flex;justify-content:space-between;padding-bottom:12px}.panel-header h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0}.panel-header button{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s ease}.panel-header button:hover{box-shadow:0 6px 20px #6366f166;transform:translateY(-2px)}.project-row{align-items:center;border-bottom:1px solid var(--border);border-radius:10px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:4px;padding:14px 12px;transition:all .2s ease}.project-row:hover{background:linear-gradient(90deg,#6366f114,#8b5cf60d);border-bottom-color:#0000;transform:translateX(4px)}.project-info{display:flex;flex-direction:column;gap:6px}.project-name{font-size:15px;font-weight:600}.project-location{font-size:13px;gap:6px}.status-pill{background:#3b82f6;border-radius:20px;box-shadow:0 2px 8px #3b82f64d;color:#fff;font-size:12px;font-weight:600;padding:6px 14px;transition:all .2s ease}.status-pill:hover{transform:scale(1.05)}.status-pill.completed{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 2px 8px #22c55e4d}.status-pill.work_started{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 2px 8px #3b82f64d}.status-pill.quotation_generated{background:linear-gradient(135deg,#8b5cf6,#7c3aed);box-shadow:0 2px 8px #8b5cf64d}.status-pill.created{background:linear-gradient(135deg,#94a3b8,#64748b);box-shadow:0 2px 8px #94a3b84d}.status-pill.pm_assigned{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 2px 8px #3b82f64d}.status-pill.visit_done{background:linear-gradient(135deg,#06b6d4,#0891b2);box-shadow:0 2px 8px #06b6d44d}.status-pill.report_submitted{background:linear-gradient(135deg,#8b5cf6,#7c3aed);box-shadow:0 2px 8px #8b5cf64d}.status-pill.customer_approved{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 8px #10b9814d}.status-pill.advance_pending{background:linear-gradient(135deg,#f97316,#ea580c);box-shadow:0 2px 8px #f973164d}.status-pill.advance_paid{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 2px 8px #22c55e4d}.status-pill.closed{background:linear-gradient(135deg,#64748b,#475569);box-shadow:0 2px 8px #64748b4d}.activity-list{display:flex;flex-direction:column;gap:12px}.activity-row{align-items:center;background:#6366f108;border:1px solid #0000;border-radius:12px;color:var(--text-secondary);display:flex;font-size:14px;gap:14px;padding:14px;transition:all .2s ease}.activity-row:hover{background:linear-gradient(90deg,#6366f114,#8b5cf60d);border-color:#6366f133;transform:translateX(4px)}.activity-icon-wrapper{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:10px;box-shadow:0 4px 12px #6366f14d;color:#fff;display:flex;flex-shrink:0;font-size:16px;height:40px;justify-content:center;width:40px}.activity-icon-wrapper.create{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b9814d}.activity-icon-wrapper.update{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 12px #3b82f64d}.activity-icon-wrapper.delete{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #ef44444d}.activity-icon-wrapper.approve{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 12px #22c55e4d}.activity-icon-wrapper.reject{background:linear-gradient(135deg,#f97316,#ea580c);box-shadow:0 4px 12px #f973164d}.activity-content{display:flex;flex:1 1;flex-direction:column;gap:4px}.activity-text{color:var(--text-primary);font-size:14px;font-weight:500}.activity-text strong{color:var(--text-primary);font-weight:600}.activity-time{align-items:center;color:var(--text-secondary);display:flex;font-size:12px;gap:4px}.activity-time i{font-size:11px}.activity-status-badge{background:#3b82f6;color:#fff;font-size:11px}.activity-action-badge,.activity-status-badge{border-radius:12px;flex-shrink:0;font-weight:600;padding:4px 10px;white-space:nowrap}.activity-action-badge{background:linear-gradient(135deg,#6366f126,#8b5cf626);border:1px solid #6366f133;color:var(--text-primary);font-size:10px;text-transform:capitalize}.activity-status-badge.completed{background:linear-gradient(135deg,#22c55e,#16a34a)}.activity-status-badge.work_started{background:linear-gradient(135deg,#3b82f6,#2563eb)}.activity-status-badge.quotation_generated{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.activity-status-badge.created{background:linear-gradient(135deg,#94a3b8,#64748b)}.activity-status-badge.pm_assigned{background:linear-gradient(135deg,#3b82f6,#2563eb)}.activity-status-badge.visit_done{background:linear-gradient(135deg,#06b6d4,#0891b2)}.activity-status-badge.report_submitted{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.activity-status-badge.customer_approved{background:linear-gradient(135deg,#10b981,#059669)}.activity-status-badge.advance_pending{background:linear-gradient(135deg,#f97316,#ea580c)}.activity-status-badge.advance_paid{background:linear-gradient(135deg,#22c55e,#16a34a)}.activity-status-badge.closed{background:linear-gradient(135deg,#64748b,#475569)}.activity-dot{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;box-shadow:0 0 10px #6366f180;flex-shrink:0;height:10px;width:10px}.insight-box{display:flex;flex-direction:column;gap:16px}.insight-card{align-items:center;background:linear-gradient(135deg,#6366f114,#8b5cf60d);border:1px solid #6366f11a;border-radius:12px;display:flex;gap:14px;padding:16px;transition:all .2s ease}.insight-card:hover{background:linear-gradient(135deg,#6366f11f,#8b5cf614);box-shadow:0 4px 16px #6366f126;transform:translateX(4px)}.insight-icon{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:12px;box-shadow:0 4px 16px #6366f14d;color:#fff;display:flex;font-size:20px;height:48px;justify-content:center;width:48px}.insight-icon.success{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 16px #22c55e4d}.insight-card strong{color:var(--text-primary);display:block;font-size:20px;font-weight:700}.insight-card span{color:var(--text-secondary);display:block;font-size:13px;font-weight:500}.dashboard-section{margin-top:30px}.section-title{font-size:22px;margin-bottom:24px;padding-left:16px;position:relative}.section-title:before{background:linear-gradient(180deg,#6366f1,#8b5cf6);border-radius:2px;content:"";height:24px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:4px}.cards-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.dashboard-card{align-items:center;background:var(--card-bg);border:1px solid var(--border);border-radius:20px;cursor:pointer;display:flex;flex-direction:column;gap:16px;overflow:hidden;padding:32px 24px;position:relative;text-align:center;transition:all .3s ease}.dashboard-card:before{background:linear-gradient(90deg,#6366f1,#8b5cf6);content:"";height:4px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.dashboard-card:after{background:radial-gradient(circle,#6366f11a 0,#0000 70%);content:"";height:200px;position:absolute;right:-50%;top:-50%;transition:all .5s ease;width:200px}.dashboard-card:hover:before{opacity:1}.dashboard-card:hover:after{transform:scale(1.5)}.dashboard-card:hover{border-color:#6366f14d;box-shadow:0 20px 50px #00000026;transform:translateY(-8px)}.card-icon-large{align-items:center;border-radius:16px;box-shadow:0 8px 20px #00000026;color:#fff;display:flex;font-size:32px;height:70px;justify-content:center;position:relative;transition:all .3s ease;width:70px;z-index:1}.dashboard-card:hover .card-icon-large{transform:scale(1.1) rotate(5deg)}.card-icon-large.projects{background:linear-gradient(135deg,#6366f1,#8b5cf6)}.card-icon-large.active{background:linear-gradient(135deg,#f59e0b,#d97706)}.card-icon-large.completed{background:linear-gradient(135deg,#10b981,#059669)}.card-icon-large.audit{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.card-icon-large.admin{background:linear-gradient(135deg,#3b82f6,#2563eb)}.card-icon-large.super-admin{background:linear-gradient(135deg,#ef4444,#dc2626)}.card-icon-large.payments{background:linear-gradient(135deg,#ec4899,#db2777)}.card-icon-large.quotations{background:linear-gradient(135deg,#06b6d4,#0891b2)}.card-icon{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;background-clip:text;display:block;font-size:36px;margin-bottom:14px}.card-content{gap:8px;position:relative;z-index:1}.card-count{color:var(--text-primary);font-size:36px;font-weight:700;line-height:1}.card-title{font-size:15px;font-weight:600;letter-spacing:.3px}.card-subtitle,.card-title{color:var(--text-secondary)}.card-subtitle{font-size:12px;margin-top:4px;opacity:.7}.users-card-large{background:linear-gradient(135deg,#1e3a8a,#1e40af)!important;box-shadow:0 10px 25px -5px #1e3a8a80!important;cursor:pointer;min-width:280px!important;overflow:hidden;padding:20px!important;position:relative;transform:scale(1.02);transition:all .3s ease}.users-card-large:hover{box-shadow:0 20px 30px -10px #1e3a8a99!important;transform:translateY(-4px) scale(1.03)}.users-card-large:after{background:#ffffff1a;border-radius:50%;content:"";height:250px;position:absolute;right:-50%;top:-50%;transition:all .5s ease;width:250px}.users-card-large:hover:after{transform:scale(1.3)}.users-card-content{display:flex;flex-direction:column;gap:15px;position:relative;z-index:1}.users-card-header{align-items:center;border-bottom:1px solid #fff3;display:flex;gap:10px;padding-bottom:10px}.users-card-icon{align-items:center;background:#fff3;border-radius:10px;color:#fff;display:flex;font-size:24px;height:40px;justify-content:center;width:40px}.users-card-title{color:#fff!important;font-size:18px;font-weight:600;letter-spacing:.5px}.users-stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr 1fr;margin:5px 0}.users-stat-item{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff1a;border-radius:10px;display:flex;flex-direction:column;padding:10px 5px}.users-stat-label{color:#ffffffe6!important;font-size:12px;font-weight:500;margin-bottom:4px}.users-stat-value{font-size:24px;font-weight:700}.users-stat-value.total{color:#fff!important}.users-stat-value.active{color:#86efac!important}.users-stat-value.inactive{color:#fca5a5!important}.users-card-footer{align-items:center;border-top:1px solid #fff3;display:flex;justify-content:space-between;margin-top:5px;padding-top:10px}.users-click-hint{color:#ffffffe6!important;font-size:13px;font-weight:500}.users-arrow{color:#fff!important;font-size:16px;transition:transform .3s ease}.users-card-large:hover .users-arrow{transform:translateX(5px)}@media (max-width:1200px){.analytics{grid-template-columns:1fr}.kpi-section{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.dashboard-main{padding:16px}.kpi-section{gap:16px;grid-template-columns:repeat(2,1fr)}.analytics{gap:20px}.bottom-grid{gap:20px;grid-template-columns:1fr}.cards-grid{gap:16px;grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.dashboard-main{padding:12px}.analytics,.bottom-grid,.cards-grid,.kpi-section{gap:16px;grid-template-columns:1fr}.kpi-card{gap:14px;padding:18px}.kpi-icon-wrapper{height:56px;width:56px}.kpi-icon-wrapper i{font-size:24px}.kpi-card h2{font-size:28px}.kpi-card span{font-size:13px}.kpi-trend{font-size:12px}.users-card-large{min-width:100%!important;padding:18px!important;transform:scale(1)}.users-card-large:hover{transform:translateY(-4px) scale(1.02)}.users-stats-grid{gap:8px}.users-stat-value{font-size:20px}.users-card-icon{font-size:20px;height:36px;width:36px}.users-card-title{font-size:16px}.chart-card{padding:20px}.chart-card h3{align-items:flex-start;flex-direction:column;font-size:16px;gap:8px;margin-bottom:16px}.chart-sync-btn{font-size:13px;padding:4px 10px}.bar-chart-legend{flex-direction:column;gap:10px;margin-top:12px;padding-top:12px}.traffic-legend{gap:10px}.traffic-legend-item{padding:6px 0}.traffic-legend-icon{font-size:16px;height:36px;width:36px}.traffic-legend-text{font-size:13px}.traffic-legend-value{font-size:15px}.panel{padding:18px}.panel-header h3{font-size:16px}.panel-header button{font-size:12px;padding:6px 12px}.project-row{align-items:flex-start;flex-direction:column;gap:10px;padding:12px 10px}.project-name{font-size:14px}.project-location{font-size:12px}.status-pill{align-self:flex-start;font-size:11px;padding:5px 12px}.activity-row{gap:10px;padding:12px}.activity-icon-wrapper{font-size:14px;height:36px;width:36px}.activity-text{font-size:13px}.activity-time{font-size:11px}.activity-action-badge{font-size:9px;padding:3px 8px}.insight-card{gap:12px;padding:14px}.insight-icon{height:42px;width:42px}.insight-card strong,.insight-icon{font-size:18px}.insight-card span{font-size:12px}.section-title{font-size:18px;margin-bottom:16px;padding-left:14px}.section-title:before{height:20px;width:3px}.dashboard-card{gap:12px;padding:24px 20px}.card-icon-large{font-size:28px;height:60px;width:60px}.card-count{font-size:30px}.card-title{font-size:14px}.card-subtitle{font-size:11px}}@media (max-width:480px){.dashboard-main{padding:10px}.kpi-section{gap:12px}.kpi-card{flex-direction:column;gap:12px;padding:16px;text-align:center}.kpi-icon-wrapper{height:50px;width:50px}.kpi-icon-wrapper i{font-size:22px}.kpi-content{align-items:center}.kpi-card h2{font-size:24px}.kpi-card span{font-size:12px}.kpi-trend{font-size:11px}.users-card-large{padding:16px!important}.users-stats-grid{gap:6px;grid-template-columns:1fr 1fr 1fr}.users-stat-item{padding:8px 4px}.users-stat-label{font-size:11px}.users-stat-value{font-size:18px}.chart-card{padding:16px}.chart-card h3{font-size:15px;margin-bottom:12px}.panel{padding:16px}.panel-header{align-items:flex-start;flex-direction:column;gap:10px}.panel-header button{align-self:flex-end}.project-row{padding:10px}.activity-row{gap:8px;padding:10px}.activity-icon-wrapper{font-size:13px;height:32px;width:32px}.activity-text{font-size:12px}.activity-time{font-size:10px}.activity-action-badge{display:none}.insight-card{padding:12px}.insight-icon{height:38px;width:38px}.insight-card strong,.insight-icon{font-size:16px}.section-title{font-size:16px;margin-bottom:14px}.dashboard-card{padding:20px 16px}.card-icon-large{font-size:24px;height:54px;width:54px}.card-count{font-size:26px}.card-title{font-size:13px}.card-subtitle{font-size:10px}}.projects-page{background:var(--bg-primary);min-height:100vh;padding:2rem;transition:all .3s ease}.projects-container{margin:0 auto;max-width:1400px}.btn-primary{border-radius:14px;box-shadow:0 4px 12px #6366f14d;font-size:.95rem;gap:.625rem;overflow:hidden;padding:.875rem 1.75rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-primary:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.btn-primary:hover:before{left:100%}.btn-primary:hover{box-shadow:0 8px 20px #6366f166;transform:translateY(-3px)}.btn-primary:active{transform:translateY(-1px)}.projects-grid{animation:fadeInUp .6s ease;grid-template-columns:repeat(auto-fill,minmax(360px,1fr))}.project-card{animation:fadeInUp .5s ease;animation-delay:calc(var(--card-index)*.05s);animation-fill-mode:both;border-radius:20px;padding:1.5rem}.project-card-header{gap:1rem;justify-content:space-between;margin-bottom:1rem}.project-name{flex:1 1;margin:0}.btn-delete{align-items:center;background:#ef44441a;border:none;border-radius:10px;color:#ef4444;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:all .3s ease;width:36px}.btn-delete:hover{background:#ef4444;color:#fff;transform:scale(1.1) rotate(5deg)}.btn-delete:active{transform:scale(.95)}.project-location{color:var(--text-secondary);font-size:.875rem;gap:.5rem;line-height:1.5;margin:0 0 1rem}.project-location i{color:#6366f1;font-size:.875rem}.project-status{border-radius:24px;box-shadow:0 2px 8px #00000026;color:#fff;display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.5px;margin-bottom:1rem;padding:.5rem 1rem;text-transform:uppercase;transition:all .3s ease}.project-card:hover .project-status{transform:scale(1.05)}.project-footer{border-top:1px solid var(--border-color);justify-content:space-between;margin-top:.5rem;padding-top:1rem}.project-date,.project-footer{align-items:center;display:flex}.project-date{color:var(--text-tertiary);font-size:.8rem;font-weight:500;gap:.5rem}.project-date i{color:#6366f1}.project-id{background:var(--bg-tertiary);border-radius:6px;color:var(--text-tertiary);font-family:Courier New,monospace;font-size:.75rem;font-weight:600;padding:.25rem .625rem}.spinner-small{height:18px;width:18px}.modal-overlay{animation:fadeIn .3s ease;background:#000000bf;padding:1rem}.modal-content{animation:slideUp .4s cubic-bezier(.4,0,.2,1);border:1px solid var(--border-color);box-shadow:0 25px 50px -12px #00000080;width:100%}.modal-header{border-radius:24px 24px 0 0}.modal-header h2:before{background:var(--gradient-primary);border-radius:2px;content:"";height:24px;width:4px}.modal-close{background:#ef44441a;color:#ef4444;height:40px;transition:all .3s ease;width:40px}.modal-close:hover{transform:rotate(90deg) scale(1.1)}.modal-loading{align-items:center;display:flex;flex-direction:column;gap:1.5rem;justify-content:center;padding:4rem 2rem}.modal-loading p{color:var(--text-secondary);font-size:1rem}.form-group{margin-bottom:1.5rem}.form-group label{font-size:.9375rem;margin-bottom:.625rem}.form-group input,.form-group select,.form-group textarea{border-radius:14px;font-size:1rem;padding:.875rem 1.125rem}.form-group textarea{min-height:100px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{box-shadow:0 0 0 4px #6366f11a;transform:translateY(-2px)}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{cursor:not-allowed;opacity:.6}.input-error{background:#ef44440d}.input-error:focus{box-shadow:0 0 0 4px #ef44441a!important}.error-text{align-items:center;display:flex;font-size:.8125rem;gap:.375rem}.error-text:before{content:"⚠";font-size:1rem}.helper-text{font-size:.8125rem}.modal-actions{padding-top:1.5rem}.btn-secondary{border:2px solid var(--border-color);border-radius:14px;flex:1 1;font-size:.9375rem;padding:.875rem 1.5rem}.btn-secondary:hover{border-color:var(--border-light)}.btn-secondary:disabled{cursor:not-allowed;opacity:.5;transform:none}.btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:1200px){.projects-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}}@media (max-width:1024px){.projects-page{padding:1.5rem}.page-title{font-size:2rem}.projects-grid{gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}@media (max-width:768px){.projects-page{padding:1rem}.page-header{align-items:flex-start;flex-direction:column;gap:1.25rem;margin-bottom:2rem}.page-header:after{width:60px}.page-title{font-size:1.75rem}.page-subtitle{font-size:.9375rem}.btn-primary{justify-content:center;padding:1rem 1.5rem;width:100%}.search-input{font-size:.9375rem;padding:.875rem 1rem .875rem 3rem}.projects-grid{gap:1.25rem;grid-template-columns:1fr}.project-card{padding:1.25rem}.project-name{font-size:1rem}.modal-content{border-radius:20px;margin:0;max-height:95vh;max-width:100%;width:100%}.modal-header{padding:1.25rem 1.5rem}.modal-header h2{font-size:1.25rem}.modal-form{padding:1.5rem}.modal-actions{flex-direction:column;gap:.75rem}.modal-actions button{width:100%}}@media (max-width:480px){.projects-page{padding:.75rem}.page-header{margin-bottom:1.5rem}.page-title{font-size:1.5rem}.page-subtitle{font-size:.875rem}.search-container{margin-bottom:1.5rem}.search-input{border-radius:12px;font-size:.875rem;padding:.75rem .875rem .75rem 2.75rem}.search-icon{font-size:1rem;left:1rem}.projects-grid{gap:1rem}.project-card{border-radius:16px;padding:1rem}.project-card-header{margin-bottom:.75rem}.project-name{font-size:.9375rem}.btn-delete{height:32px;width:32px}.project-location{font-size:.8125rem;margin-bottom:.75rem}.project-status{font-size:.6875rem;padding:.375rem .75rem}.project-footer{padding-top:.75rem}.project-date{font-size:.75rem}.empty-state{padding:3rem 1.5rem}.empty-icon-wrapper{height:80px;width:80px}.empty-icon-wrapper i{font-size:2.5rem}.empty-state h3{font-size:1.25rem}.empty-state p{font-size:.9375rem}.modal-overlay{padding:.5rem}.modal-content{border-radius:16px}.modal-header{border-radius:16px 16px 0 0;padding:1rem 1.25rem}.modal-header h2{font-size:1.125rem}.modal-close{height:36px;width:36px}.modal-form{padding:1.25rem}.form-group{margin-bottom:1.25rem}.form-group label{font-size:.875rem;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{border-radius:12px;font-size:.9375rem;padding:.75rem 1rem}.modal-actions{margin-top:1.5rem;padding-top:1.25rem}}.status-filter-btn.completed-status.active{background:#6366f1;border-color:#6366f1;color:#fff}.page-container{background:var(--bg-primary);margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem;transition:all .3s ease}.error-container i{font-size:4rem;margin-bottom:1rem}.project-hero{align-items:center;animation:fadeInDown .6s ease;background:var(--gradient-primary);border-radius:28px;box-shadow:0 20px 40px #6366f14d;display:flex;justify-content:space-between;margin-bottom:2.5rem;overflow:hidden;padding:2.5rem;position:relative}.project-hero:before{animation:float 6s ease-in-out infinite;background:radial-gradient(circle,#ffffff26 0,#0000 70%);height:350px;right:-20%;top:-50%;width:350px}.project-hero:after,.project-hero:before{border-radius:50%;content:"";position:absolute}.project-hero:after{animation:float 8s ease-in-out infinite reverse;background:radial-gradient(circle,#ffffff14 0,#0000 70%);bottom:-30%;height:280px;left:-10%;width:280px}.project-hero-left{gap:1.5rem;z-index:1}.btn-back-modern,.project-hero-left{align-items:center;display:flex;position:relative}.btn-back-modern{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff40;border:none;border-radius:50%;box-shadow:0 4px 12px #00000026;color:#fff;cursor:pointer;height:52px;justify-content:center;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);width:52px}.btn-back-modern:before{background:#ffffff1a;border-radius:50%;content:"";inset:0;position:absolute;transform:scale(0);transition:transform .4s ease}.btn-back-modern:hover:before{transform:scale(1)}.btn-back-modern:hover{background:#ffffff59;box-shadow:0 6px 20px #0003;transform:translateX(-6px) scale(1.05)}.btn-back-modern:active{transform:translateX(-4px) scale(.98)}.project-title{font-size:2.25rem;letter-spacing:-.5px;margin:0 0 .625rem;text-shadow:0 2px 10px #0000001a}.project-location{color:#fffffff2;font-size:1rem;font-weight:500;gap:.625rem;margin:0}.project-location i{font-size:1.125rem}.project-status-badge{animation:fadeInRight .6s ease .2s both;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:50px;box-shadow:0 6px 16px #00000040;font-size:.9375rem;padding:.625rem 1.25rem;position:relative;z-index:1}@keyframes fadeInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}.status-stepper{animation:fadeInUp .6s ease .3s both;background:var(--card-bg);border:1px solid var(--border-color);border-radius:24px;box-shadow:var(--shadow-sm);flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin-bottom:2.5rem;padding:2rem 1.5rem}.status-stepper,.step{align-items:center;display:flex}.step{color:var(--text-tertiary);flex:1 1;flex-direction:column;font-size:.8125rem;font-weight:600;gap:.625rem;min-width:100px;position:relative}.step,.step:after{transition:all .3s ease}.step:after{background:var(--border-color);content:"";height:2px;left:calc(50% + 20px);position:absolute;top:6px;width:calc(100% - 40px)}.step:last-child:after{display:none}.step.active:after{background:linear-gradient(90deg,#10b981,var(--border-color))}.step-dot{background:var(--border-color);border-radius:50%;height:14px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);width:14px;z-index:1}.step.active .step-dot{background:#10b981;box-shadow:0 0 0 6px #10b98126;transform:scale(1.2)}.step.current .step-dot{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;background:#6366f1;box-shadow:0 0 0 6px #6366f126;transform:scale(1.3)}.step.active span,.step.current span{color:var(--text-primary);font-weight:700}.action-buttons-grid{grid-gap:1.25rem;animation:fadeInUp .6s ease .4s both;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:2.5rem}.action-card{background:var(--card-bg);border:2px solid var(--border-color);border-radius:18px;color:var(--text-primary);font-size:.9375rem;font-weight:700;gap:.875rem;justify-content:center;padding:1.125rem 1.25rem;transition:all .4s cubic-bezier(.4,0,.2,1)}.action-card:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.action-card:hover:before{left:100%}.action-card:hover{box-shadow:0 12px 30px #00000026;transform:translateY(-4px) scale(1.02)}.action-card:active{transform:translateY(-2px) scale(.98)}.action-card.primary{background:var(--gradient-primary);border:none;box-shadow:0 4px 16px #6366f14d;color:#fff}.action-card.primary:hover{box-shadow:0 12px 30px #6366f166}.action-card.success{background:var(--gradient-success);border:none;box-shadow:0 4px 16px #10b9814d;color:#fff}.action-card.success:hover{box-shadow:0 12px 30px #10b98166}.action-card.warning{background:var(--gradient-warning);border:none;box-shadow:0 4px 16px #f59e0b4d;color:#fff}.action-card.warning:hover{box-shadow:0 12px 30px #f59e0b66}.action-card.danger{background:var(--gradient-danger);border:none;box-shadow:0 4px 16px #ef44444d;color:#fff}.action-card.danger:hover{box-shadow:0 12px 30px #ef444466}.action-card.info{background:var(--gradient-info);border:none;box-shadow:0 4px 16px #3b82f64d;color:#fff}.action-card.info:hover{box-shadow:0 12px 30px #3b82f666}.action-card i{font-size:1.125rem}.details-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:2rem}.details-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:24px;box-shadow:var(--shadow-sm);overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1)}.details-card:hover{border-color:#6366f133;box-shadow:0 16px 40px #0000001f;transform:translateY(-6px)}.card-title{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:1rem;font-weight:700;margin:0;padding:1rem 1.25rem}.card-title i{font-size:1.125rem}.detail-row{border-bottom:1px solid var(--border-color);padding:.875rem 1.25rem}.detail-row:last-child{border-bottom:none}.detail-label{color:var(--text-tertiary);font-size:.75rem}.detail-value{color:var(--text-primary);font-size:.875rem}.status-badge{border-radius:20px}.team-member-row{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:1rem;padding:1rem 1.25rem}.team-member-row:last-child{border-bottom:none}.member-avatar{align-items:center;border-radius:12px;color:#fff;display:flex;font-size:1.25rem;font-weight:700;height:48px;justify-content:center;width:48px}.member-avatar.customer{background:linear-gradient(135deg,#3b82f6,#2563eb)}.member-avatar.pm{background:linear-gradient(135deg,#8b5cf6,#6d28d9)}.member-avatar.site{background:linear-gradient(135deg,#f59e0b,#d97706)}.member-avatar.finance{background:linear-gradient(135deg,#10b981,#059669)}.member-info{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.member-role{color:var(--text-tertiary);font-size:.7rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.member-name{color:var(--text-primary);font-size:.875rem;font-weight:700}.member-contact{color:var(--text-tertiary);font-size:.7rem}.payment-card{background:var(--card-bg)}.payment-stats{grid-gap:1rem;border-bottom:1px solid var(--border-color);display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);padding:1.25rem}.payment-stat{text-align:center}.payment-stat-label{color:var(--text-tertiary);display:block;font-size:.7rem;margin-bottom:.5rem}.payment-stat-value{color:var(--text-primary);display:block;font-size:1rem;font-weight:700}.payment-stat-value.success{color:#10b981}.payment-stat-value.danger{color:#ef4444}.payment-status{border-bottom:1px solid var(--border-color);padding:1.25rem}.status-chip{align-items:center;border-radius:50px;display:inline-flex;font-size:.75rem;gap:.5rem;padding:.5rem 1rem}.status-chip.success{background:#10b9811a;color:#10b981}.status-chip.warning{background:#f59e0b1a;color:#f59e0b}.status-chip.info{background:#3b82f61a;color:#3b82f6}.extra-charges{padding:1.25rem}.extra-charges h4{color:var(--text-primary);font-size:.875rem;font-weight:700;margin:0 0 1rem}.extra-charge-item{background:var(--bg-tertiary);border-radius:12px;margin-bottom:1rem;padding:.75rem}.extra-charge-info{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.extra-charge-desc{color:var(--text-primary);font-size:.875rem;font-weight:500}.extra-charge-amount{color:#f59e0b;font-size:.875rem}.extra-charge-status{align-items:center;display:flex;justify-content:space-between}.status-badge{border-radius:8px;padding:.25rem .5rem}.status-badge.success{background:#10b98133;color:#10b981}.status-badge.warning{background:#f59e0b33;color:#f59e0b}.status-badge.danger{background:#ef444433;color:#ef4444}.btn-small{border:none;border-radius:8px;cursor:pointer;font-size:.7rem;font-weight:600;padding:.25rem .75rem;transition:all .2s ease}.btn-warning{color:#fff}.btn-warning:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.worklogs-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:24px;margin-bottom:2rem;overflow:hidden}.worklogs-header{align-items:center;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.section-title{font-size:1.125rem;margin:0}.section-title i{color:#6366f1}.btn-add-worklog{align-items:center;background:var(--gradient-primary);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:.75rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.btn-add-worklog:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.worklogs-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));padding:1.5rem}.worklog-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;overflow:hidden;transition:all .3s ease}.worklog-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.worklog-header{align-items:center;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1rem}.worklog-header-left{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.worklog-floor-badge{background:#8b5cf6;border-radius:8px;color:#fff;font-size:.7rem;font-weight:600;padding:.25rem .75rem}.worklog-date{color:var(--text-tertiary);font-size:.7rem}.image-count{align-items:center;background:#6366f11a;border-radius:8px;color:#6366f1;display:flex;font-size:.7rem;gap:.25rem;padding:.25rem .5rem}.worklog-description{color:var(--text-primary);font-size:.875rem;line-height:1.5;margin:0}.worklog-description,.worklog-images{border-bottom:1px solid var(--border-color);padding:1rem}.worklog-images{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.worklog-image-container{aspect-ratio:1;border-radius:8px;overflow:hidden;position:relative}.worklog-image{cursor:pointer;height:100%;object-fit:cover;transition:transform .2s ease;width:100%}.worklog-image:hover{transform:scale(1.05)}.remove-worklog-image{align-items:center;background:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:24px;justify-content:center;position:absolute;right:4px;top:4px;transition:all .2s ease;width:24px}.remove-worklog-image:hover{background:#ef4444;transform:scale(1.1)}.worklog-footer{align-items:center;background:var(--bg-tertiary);color:var(--text-tertiary);display:flex;font-size:.7rem;justify-content:space-between;padding:.75rem 1rem}.worklog-author i,.worklog-time i{margin-right:.25rem}.btn-add-images{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;color:#6366f1;cursor:pointer;display:flex;font-size:.75rem;font-weight:600;gap:.5rem;justify-content:center;margin:0 1rem 1rem;padding:.5rem;transition:all .2s ease;width:calc(100% - 2rem)}.btn-add-images:hover{background:var(--hover-bg);transform:translateY(-2px)}.visits-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:24px;overflow:hidden;padding:1.5rem}.visits-section,.visits-subsection{margin-bottom:2rem}.visits-subsection:last-child{margin-bottom:0}.subsection-title{align-items:center;color:var(--text-primary);display:flex;font-size:.875rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.text-danger{color:#ef4444}.visits-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.visit-card{background:var(--bg-tertiary);border-left:4px solid;border-radius:16px;padding:1rem;transition:all .2s ease}.visit-card:hover{transform:translateX(4px)}.visit-card.scheduled{border-left-color:#f59e0b}.visit-card.rejected{border-left-color:#ef4444}.visit-card.completed{border-left-color:#10b981}.visit-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:.75rem;padding-bottom:.5rem}.visit-type{color:var(--text-primary);font-size:.75rem;font-weight:600}.visit-date{color:var(--text-tertiary);font-size:.7rem}.visit-details p{color:var(--text-secondary);font-size:.75rem;margin:.25rem 0}.visit-details strong{color:var(--text-primary)}.feedback-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:24px;overflow:hidden;padding:1.5rem}.feedback-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem}.feedback-header h3{color:var(--text-primary);font-size:1.125rem;font-weight:700;margin:0}.feedback-card{padding:1.5rem;text-align:center}.feedback-stars{align-items:center;display:flex;flex-wrap:wrap;gap:.25rem;justify-content:center;margin-bottom:1rem}.feedback-label{color:#f59e0b;font-size:.875rem;font-weight:600;margin-left:.75rem}.feedback-text{background:var(--bg-tertiary);border-radius:16px;color:var(--text-primary);font-size:1rem;font-style:italic;line-height:1.6;margin:1rem 0;padding:1rem}.feedback-meta{color:var(--text-tertiary);font-size:.75rem;margin:0}.modal-header.primary{background:var(--gradient-primary)}.modal-header.success{background:var(--gradient-success)}.modal-header.warning{background:var(--gradient-warning)}.modal-header h2{color:#fff}.modal-close{background:#fff3;color:#fff}.modal-close:hover{background:#ffffff4d}.modal-helper{color:var(--text-tertiary);font-size:.875rem;margin-bottom:1rem}.form-group input.error,.form-group textarea.error{border-color:#ef4444}.error-text{font-size:.7rem;margin-top:.5rem}.user-list{display:flex;flex-direction:column;gap:1rem}.user-item{align-items:center;background:var(--bg-tertiary);border-radius:12px;display:flex;gap:1rem;padding:1rem;transition:all .2s ease}.user-item:hover{background:var(--hover-bg);transform:translateX(4px)}.user-avatar{border-radius:12px;font-size:1.125rem;height:48px;width:48px}.user-avatar.success{background:var(--gradient-success)}.user-avatar.warning{background:var(--gradient-warning)}.user-info{flex:1 1}.user-name{font-size:.875rem;margin-bottom:.25rem}.user-email,.user-projects{color:var(--text-tertiary);font-size:.7rem}.user-projects{align-items:center;display:flex;gap:.25rem;margin-top:.25rem}.btn-assign{background:var(--gradient-primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.75rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.btn-assign.success{background:var(--gradient-success)}.btn-assign.warning{background:var(--gradient-warning)}.btn-assign:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.btn-assign:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-submit{margin-bottom:1rem;padding:.875rem}.btn-submit.primary{background:var(--gradient-primary)}.btn-submit.success{background:var(--gradient-success)}.btn-submit.warning{background:var(--gradient-warning)}.btn-cancel{padding:.875rem;width:100%}.info-section{align-items:center;background:var(--bg-tertiary);border-radius:12px;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem}.info-section i{color:#6366f1;font-size:1rem}.info-section span{color:var(--text-primary);font-size:.875rem}.image-upload-section{margin-bottom:1.5rem}.image-upload-label{cursor:pointer}.image-upload-box{border:2px dashed var(--border-color);border-radius:12px;padding:2rem;text-align:center;transition:all .2s ease}.image-upload-box:hover{background:var(--hover-bg);border-color:#6366f1}.image-upload-box i{color:#6366f1;display:block;font-size:2rem;margin-bottom:.5rem}.image-upload-box span{color:var(--text-primary);display:block;font-size:.875rem;margin-bottom:.25rem}.upload-hint{color:var(--text-tertiary);font-size:.7rem}.selected-images-preview{margin-bottom:1.5rem}.selected-images-preview h4{color:var(--text-primary);font-size:.875rem;font-weight:600;margin-bottom:.75rem}.image-preview-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.image-preview-item{aspect-ratio:1;border-radius:8px;overflow:hidden;position:relative}.image-preview-item img{height:100%;object-fit:cover;width:100%}.remove-preview{align-items:center;background:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:.7rem;height:20px;justify-content:center;position:absolute;right:4px;top:4px;transition:all .2s ease;width:20px}.remove-preview:hover{background:#ef4444}.image-viewer-counter{background:#0009;border-radius:20px;color:#fff;font-size:.9rem;font-weight:600;left:0;padding:6px 14px;position:absolute;top:-40px}.image-viewer-nav{bottom:-50px;display:flex;gap:1rem;left:50%;position:absolute;transform:translateX(-50%)}.image-viewer-nav-btn{align-items:center;background:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;height:44px;justify-content:center;transition:all .2s ease;width:44px}.image-viewer-nav-btn:hover:not(.disabled){background:#6366f1;background:var(--primary-color,#6366f1)}.image-viewer-nav-btn.disabled{cursor:not-allowed;opacity:.3}.empty-state{padding:3rem}.empty-state i{color:var(--text-tertiary);display:inline-block;font-size:3rem;margin-bottom:1rem}@media (max-width:1024px){.page-container{padding:1.5rem}.details-grid,.worklogs-grid{grid-template-columns:1fr}}@media (max-width:768px){.page-container{padding:1rem}.project-hero{gap:1rem}.project-hero,.project-hero-left,.status-stepper{align-items:flex-start;flex-direction:column}.step{flex-direction:row;width:100%}.action-buttons-grid,.payment-stats{grid-template-columns:1fr}.worklogs-header{align-items:flex-start;flex-direction:column;gap:1rem}.visits-grid{grid-template-columns:1fr}.user-item{flex-direction:column;text-align:center}.modal-content{margin:1rem;width:95%}}@media (max-width:480px){.worklog-header{align-items:flex-start;flex-direction:column;gap:.5rem}.worklog-header-left{flex-wrap:wrap}.image-preview-grid{grid-template-columns:repeat(2,1fr)}}.quotation-feedback-card{border-left:4px solid #6366f1;margin-bottom:1.5rem;padding:1.5rem}.quotation-feedback-card .card-title{background:none;border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:1rem;font-weight:700;margin-bottom:.75rem;padding:0 0 .75rem}.feedback-date{align-items:center;color:var(--text-tertiary);display:flex;font-size:.75rem;gap:.375rem;margin:0 0 .75rem}.quotation-feedback-text{background:var(--bg-tertiary);border-left:3px solid #6366f1;border-radius:12px;color:var(--text-primary);font-size:.9375rem;font-style:italic;line-height:1.7;margin:0;padding:1rem 1.25rem;position:relative}.quotation-feedback-text:before{color:#6366f1;content:"\201C";font-size:3rem;font-style:normal;left:.5rem;line-height:1;opacity:.2;position:absolute;top:-.5rem}.dark-theme{--text-secondary:#cbd5e1;--text-tertiary:#94a3b8;--text-muted:#64748b;--border-color:#334155;--border-light:#475569}.light-theme{--text-secondary:#334155;--text-tertiary:#475569;--text-muted:#64748b}.users-page{background:var(--bg-primary);min-height:100vh;padding:2rem;transition:all .3s ease}.users-container{margin:0 auto;max-width:1400px}.page-header{align-items:flex-start}.page-title{letter-spacing:-.02em;margin-bottom:.5rem}.page-subtitle{margin-top:.25rem}.btn-primary,.btn-secondary,.btn-warning{align-items:center;border:none;border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.btn-primary{box-shadow:var(--shadow-sm)}.btn-warning{background:var(--gradient-warning)}.btn-warning:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.stat-card{border-radius:20px;gap:1rem;overflow:hidden;padding:1.5rem;position:relative;transition:all .3s ease}.stat-card:before{background:var(--gradient-primary);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.stat-card:hover:before{transform:scaleX(1)}.stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.stat-icon{border-radius:16px;font-size:1.5rem;height:56px;width:56px}.stat-card.active .stat-icon{color:#10b981}.stat-card.inactive .stat-icon{color:#ef4444}.stat-card.admins .stat-icon{color:#8b5cf6}.stat-info h3{color:var(--text-primary);font-size:2rem;font-weight:800;margin-bottom:.25rem}.stat-info span{color:var(--text-tertiary);font-size:.875rem}.role-filter-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.role-filter-btn{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.75rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.role-filter-btn:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.role-filter-btn.active,.role-filter-btn:hover{border-color:#6366f1;border-color:var(--role-color,#6366f1)}.role-filter-btn.active{background:#6366f1;background:var(--role-color,#6366f1);color:#fff}.status-filter-btn.inactive-status.active{background:#ef4444;border-color:#ef4444;color:#fff}.active-filters>span:first-child{color:var(--text-tertiary);font-size:.75rem;font-weight:600}.active-filter-tag{border-radius:20px;padding:.25rem .75rem}.active-filter-tag button{align-items:center;border-radius:50%;display:inline-flex;font-size:.75rem;height:16px;justify-content:center;transition:all .2s ease;width:16px}.active-filter-tag button:hover{background:#ef4444;color:#fff}.results-count{align-items:center;background:var(--bg-tertiary);border-radius:12px;color:var(--text-secondary);display:inline-flex;font-size:.875rem;gap:.5rem;margin-bottom:1.5rem;padding:.75rem 1rem}.results-count i{color:#6366f1}.users-grid{grid-gap:1.5rem;animation:fadeInUp .5s ease;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.user-card{animation:fadeInUp .4s ease backwards;animation-delay:0s;animation-delay:calc(var(--card-index, 0)*.05s);background:var(--card-bg);border:1px solid var(--border-color);border-radius:24px;cursor:pointer;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.user-card:before{background:var(--gradient-primary);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.user-card:hover:before{transform:scaleX(1)}.user-card:hover{border-color:#0000;box-shadow:var(--shadow-xl);transform:translateY(-8px)}.user-card.inactive-user{opacity:.7}.user-card-header{align-items:flex-start;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1.5rem}.user-avatar{align-items:center;background:var(--gradient-primary);border-radius:20px;color:#fff;display:flex;font-size:1.75rem;font-weight:700;height:64px;justify-content:center;width:64px}.user-badges{align-items:flex-end;display:flex;flex-direction:column;gap:.5rem}.role-badge{align-items:center;border-radius:12px;color:#fff;display:inline-flex;font-weight:600;gap:.5rem}.role-badge,.status-badge{font-size:.75rem;padding:.375rem .875rem}.status-badge{background:#ef444433;color:#ef4444}.user-card-body{padding:1.5rem}.user-name{color:var(--text-primary);font-size:1.25rem;font-weight:700}.user-contact,.user-name{margin-bottom:.75rem}.user-email,.user-phone{align-items:center;color:var(--text-primary);display:flex;font-size:.875rem;gap:.5rem;margin-bottom:.5rem}.user-email i,.user-phone i{color:#6366f1;width:20px}.user-location{color:var(--text-primary);font-size:.875rem;gap:.5rem;margin-top:.5rem;padding-top:.5rem}.user-card-footer,.user-location{align-items:center;border-top:1px solid var(--border-color);display:flex}.user-card-footer{background:var(--bg-tertiary);justify-content:space-between;padding:1rem 1.5rem}.user-joined{color:var(--text-tertiary)}.user-joined,.user-status{align-items:center;display:flex;font-size:.75rem;gap:.5rem}.user-status{font-weight:600}.user-status.active{color:#10b981}.user-status.inactive{color:#ef4444}.active-dot,.inactive-dot{font-size:.5rem}.active-dot{color:#10b981}.inactive-dot{color:#ef4444}.user-actions{border-top:1px solid var(--border-color);display:flex;gap:.75rem;padding:1rem 1.5rem}.action-btn{flex:1 1;font-size:.75rem;justify-content:center;padding:.5rem;transition:all .2s ease}.action-btn.deactivate{background:#ef44441a;color:#ef4444}.action-btn.deactivate:hover{background:#ef4444;color:#fff}.action-btn.activate{background:#10b9811a;color:#10b981}.action-btn.activate:hover{background:#10b981;color:#fff}.action-btn:disabled{opacity:.5}.modal-content{background:var(--bg-secondary);max-width:600px}.modal-details{max-width:800px}.modal-header{background:var(--bg-secondary);padding:1.5rem 2rem}.modal-header h2{font-size:1.5rem}.modal-close{background:var(--bg-tertiary);border-radius:12px;color:var(--text-secondary);height:36px;width:36px}.modal-close:hover{background:#ef4444;color:#fff}.modal-form{padding:2rem}.form-row{margin-bottom:1rem}.form-group label{color:var(--text-primary);font-size:.875rem}.form-group input,.form-group select,.form-group textarea{border-radius:12px;font-family:inherit;font-size:.95rem;padding:.75rem 1rem}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.calendar-trigger{background:var(--input-bg);border:2px solid var(--input-border);border-radius:12px;color:var(--text-primary);padding:.75rem 1rem;transition:all .3s ease}.calendar-trigger:hover{border-color:#6366f1}.calendar-trigger .placeholder{color:var(--text-muted)}.calendar-trigger .has-value{color:var(--text-primary)}.calendar-dropdown{animation:slideDown .2s ease;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-lg);padding:1rem;width:280px}.calendar-header{margin-bottom:.75rem}.calendar-nav{background:var(--bg-tertiary);border:none;border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:1.25rem;height:32px;transition:all .2s ease;width:32px}.calendar-nav:hover{background:var(--hover-bg)}.calendar-month-year{color:var(--text-primary)}.calendar-year-jump{display:flex;gap:.5rem;justify-content:center;margin-bottom:.75rem}.year-jump-btn{background:var(--bg-tertiary);border:none;border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:.75rem;padding:.25rem .75rem}.current-year{color:var(--text-primary);font-size:.875rem;line-height:24px}.calendar-weekdays{margin-bottom:.5rem}.weekday{color:var(--text-tertiary);font-size:.75rem;padding:.25rem}.calendar-day{border-radius:8px;color:var(--text-primary);font-size:.75rem;padding:.5rem 0}.calendar-day.selected{background:#6366f1}.calendar-day:not(.empty):not(.selected):hover{background:var(--bg-tertiary)}.calendar-clear{border-top:1px solid var(--border-color);margin-top:.75rem;padding-top:.75rem;text-align:center}.clear-btn{background:none;border:none;color:#ef4444;cursor:pointer;font-size:.75rem}.profile-header-details{align-items:center;background:var(--bg-tertiary);border-radius:20px;display:flex;gap:1.5rem;margin-bottom:2rem;padding:2rem}.profile-avatar-details{align-items:center;background:var(--gradient-primary);border-radius:30px;color:#fff;display:flex;font-size:3rem;font-weight:700;height:100px;justify-content:center;width:100px}.profile-info-details h3{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin-bottom:.75rem}.profile-role-details{border-radius:12px;color:#fff;margin-bottom:.75rem;padding:.5rem 1rem}.profile-role-details,.profile-status-details{align-items:center;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem}.profile-status-details.active{color:#10b981}.profile-status-details.inactive{color:#ef4444}.details-section{background:var(--bg-tertiary);border-radius:16px;margin-bottom:2rem;padding:1.5rem}.details-section h4{align-items:center;border-bottom:2px solid var(--border-color);color:var(--text-primary);display:flex;font-size:1rem;font-weight:700;gap:.5rem;margin-bottom:1.25rem;padding-bottom:.75rem}.details-section h4 i{color:#6366f1}.details-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.detail-item-details{align-items:flex-start;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;display:flex;gap:1rem;padding:1rem;transition:all .2s ease}.detail-item-details.full-width{grid-column:1/-1}.detail-item-details:hover{border-color:#6366f1;transform:translateX(4px)}.detail-icon-details{align-items:center;border-radius:12px;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.detail-content-details{flex:1 1}.detail-content-details label{color:var(--text-tertiary);display:block;font-size:.7rem;letter-spacing:.5px;margin-bottom:.25rem;text-transform:uppercase}.detail-content-details p{color:var(--text-primary);font-size:.875rem;font-weight:500;margin:0;word-break:break-word}.session-active{color:#f59e0b;font-weight:600}.session-inactive{color:var(--text-tertiary)}.project-count{color:#10b981;font-size:1rem;font-weight:800}.modal-actions{border-top:1px solid var(--border-color);margin-top:2rem;padding-top:1rem}.error-text,.helper-text{font-size:.75rem;margin-top:.375rem}.input-error{border-color:#ef4444!important}@media (max-width:1024px){.users-page{padding:1.5rem}.users-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}}@media (max-width:768px){.users-page{padding:1rem}.page-title{font-size:1.75rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.form-row,.users-grid{grid-template-columns:1fr}.form-row{gap:0}.profile-header-details{flex-direction:column;gap:1rem;text-align:center}.details-grid{grid-template-columns:1fr}.detail-item-details{flex-direction:column;text-align:center}.detail-icon-details{margin:0 auto}.profile-role-details,.profile-status-details{justify-content:center}.modal-content{margin:1rem;width:95%}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.search-filter-section{flex-direction:column}.filter-toggle-btn{justify-content:center;width:100%}.filters-grid{grid-template-columns:1fr}.role-filter-buttons,.sort-buttons,.status-filter-buttons{flex-wrap:wrap}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}.user-card-header{flex-direction:column;gap:1rem;text-align:center}.user-badges,.user-card-header{align-items:center}.user-card-footer{gap:.5rem;text-align:center}.page-header,.user-card-footer{flex-direction:column}.header-right{width:100%}.header-right button{flex:1 1}.role-filter-btn,.sort-btn,.status-filter-btn{font-size:.7rem;padding:.375rem .75rem}.filters-header{gap:.75rem}.active-filters,.filters-header{align-items:flex-start;flex-direction:column}}.action-btn.delete{background:#ef444426;border:1px solid #ef44444d;color:#ef4444}.action-btn.delete:hover:not(:disabled){background:#ef4444;border-color:#ef4444;color:#fff}.btn-delete-user{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:12px;box-shadow:0 4px 12px #ef44444d;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.btn-delete-user:hover:not(:disabled){box-shadow:0 8px 20px #ef444466;transform:translateY(-2px)}.btn-delete-user:disabled{cursor:not-allowed;opacity:.6;transform:none}.user-avatar-photo{border:2px solid #ffffff4d;border-radius:20px;cursor:zoom-in;flex-shrink:0;height:64px;object-fit:cover;transition:transform .2s ease,box-shadow .2s ease;width:64px}.user-avatar-photo:hover{box-shadow:0 6px 20px #0003;transform:scale(1.06)}.profile-avatar-photo-details{border:3px solid #fff3;border-radius:30px;cursor:zoom-in;flex-shrink:0;height:100px;object-fit:cover;transition:transform .2s ease,box-shadow .2s ease;width:100px}.profile-avatar-photo-details:hover{box-shadow:0 8px 24px #00000040;transform:scale(1.05)}.header-stats{align-items:center;display:flex;gap:16px}.stat-badge{background:#114aa6;border-radius:12px;color:#fff;min-width:80px;padding:12px 20px;text-align:center}.stat-number{display:block;font-size:24px;font-weight:700;line-height:1}.stat-label{display:block;font-size:12px;margin-top:4px;opacity:.9}.payments-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));margin-top:24px}.payment-card{background:#fff;border-left:4px solid #f59e0b;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:24px;transition:all .2s ease}.payment-card:hover{box-shadow:0 8px 24px #00000026;transform:translateY(-2px)}.payment-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px}.payment-info{flex:1 1}.project-name{color:#1f2937;font-size:18px;margin:0 0 12px}.payment-description,.payment-type,.project-location{align-items:center;color:#6b7280;display:flex;font-size:14px;gap:8px;margin:6px 0}.payment-description i,.payment-type i,.project-location i{color:#ffba0d!important;text-align:center;width:16px}.amount-badge{background:#114aa6;border-radius:8px;color:#fff;min-width:120px;padding:12px 16px;text-align:center}.amount{font-size:18px;font-weight:700}.payment-details{background:#f9fafb;border-radius:8px;margin-bottom:20px;padding:16px}.detail-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.detail-row:last-child{margin-bottom:0}.detail-label{color:#6b7280;font-size:14px;font-weight:500}.detail-value{color:#1f2937;font-size:14px;font-weight:600}.verify-button{align-items:center;background:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:14px 20px;transition:all .2s ease;width:100%}.verify-button:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.verify-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.empty-state.success .empty-icon{color:#10b981}.empty-state h3{color:#1f2937;font-size:24px;margin:16px 0 8px}@media (max-width:768px){.payments-grid{gap:16px;grid-template-columns:1fr}.payment-header{flex-direction:column;gap:16px}.amount-badge{align-self:flex-start}.header-stats{margin-top:16px}}.quotations-page{background:var(--bg-primary);min-height:100vh;padding:2rem;transition:all .3s ease}.quotations-container{margin:0 auto;max-width:1400px}.section{margin-bottom:2.5rem}.section-title{align-items:center;color:var(--text-primary);display:flex;font-size:1.25rem;font-weight:700;gap:.75rem;margin-bottom:1.25rem}.section-title i{font-size:1.125rem}.text-warning{color:#f59e0b}.text-success{color:#10b981}.quotations-grid{grid-gap:1.5rem;animation:fadeInUp .5s ease;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.quotation-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;overflow:hidden;padding:1.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.quotation-card:before{background:var(--gradient-primary);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.quotation-card:hover:before{transform:scaleX(1)}.quotation-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.quotation-card.pending{border-left:4px solid #f59e0b}.card-badge{border-radius:12px;font-size:.7rem;font-weight:600;padding:.25rem .75rem;position:absolute;right:1rem;top:1rem}.pending-badge{background:#f59e0b33;color:#f59e0b}.quotation-icon{align-items:center;background:var(--bg-tertiary);border-radius:16px;color:#6366f1;display:flex;font-size:1.5rem;height:56px;justify-content:center;margin-bottom:1rem;width:56px}.pending-icon{background:#f59e0b1a;color:#f59e0b}.card-header{justify-content:flex-end;margin-bottom:1rem}.status-badge{border-radius:12px;display:inline-block;font-size:.7rem;padding:.25rem .75rem}.quotation-title{color:var(--text-primary);font-size:1.125rem;font-weight:700;line-height:1.4;margin-bottom:.75rem}.quotation-details{margin-bottom:1.25rem}.detail-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.75rem;gap:.5rem;margin-bottom:.5rem}.detail-item i{color:#6366f1;font-size:.7rem;width:16px}.btn-generate{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem;transition:all .3s ease;width:100%}.btn-generate:hover{box-shadow:0 4px 12px #f59e0b4d;transform:translateY(-2px)}.btn-view{align-items:center;border-radius:12px;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem;transition:all .3s ease;width:100%}.btn-view i:last-child{transition:transform .2s ease}.btn-view:hover i:last-child{transform:translateX(4px)}.modal-content{border-radius:24px;max-width:650px}.modal-large{max-width:700px}.modal-header{position:-webkit-sticky;position:sticky;top:0;z-index:10}.modal-header h2{gap:.75rem}.modal-close,.modal-header h2{align-items:center;display:flex}.modal-close{border-radius:8px;height:32px;justify-content:center;transition:all .2s ease;width:32px}.modal-close:hover{background:#ef44441a;transform:rotate(90deg)}.modal-body{padding:1.5rem}.modal-footer{background:var(--bg-tertiary);border-top:1px solid var(--border-color);display:flex;gap:1rem;padding:1rem 1.5rem}.project-info-card{background:var(--bg-tertiary);border-radius:16px;margin-bottom:1.5rem;padding:1rem}.project-info-header{gap:.75rem;margin-bottom:.5rem}.project-info-header i{color:#6366f1;font-size:1.25rem}.project-info-header h3{color:var(--text-primary);font-size:1rem}.project-info-details{align-items:center;color:var(--text-tertiary);display:flex;font-size:.75rem;gap:.5rem}.form-section{margin-bottom:1.5rem}.form-section-title{color:var(--text-primary);font-size:.875rem}.input-with-icon{position:relative}.input-icon{color:var(--text-tertiary);font-size:.875rem;font-weight:600;left:1rem;position:absolute;top:50%;transform:translateY(-50%)}.input-with-icon input{background:var(--input-bg);border:2px solid var(--input-border);border-radius:10px;color:var(--text-primary);font-size:.875rem;padding:.75rem 1rem .75rem 2rem;transition:all .3s ease;width:100%}.input-with-icon input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.input-with-icon input.error{border-color:#ef4444}.total-input input{background:var(--bg-tertiary);color:#10b981;font-weight:600}.helper-text.auto-calc{color:#6366f1}.error-message{gap:.5rem;margin-top:.5rem}.error-message,.error-message i{font-size:.7rem}.cost-breakdown-card{background:var(--bg-tertiary);border-radius:16px;margin-top:1rem;padding:1rem}.cost-breakdown-card h4{color:var(--text-primary);font-size:.875rem;font-weight:700;margin-bottom:1rem}.breakdown-list{display:flex;flex-direction:column;gap:.5rem}.breakdown-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.75rem;justify-content:space-between}.breakdown-item span:first-child{font-weight:500}.breakdown-item span:last-child{font-weight:600}.breakdown-divider{background:var(--border-color);height:1px;margin:.5rem 0}.breakdown-item.total{color:var(--text-primary);font-size:.875rem;font-weight:700}.total-value{color:#10b981;font-size:1rem}.breakdown-item.advance{color:#f59e0b}.btn-cancel,.btn-submit{font-size:.875rem;padding:.75rem}.btn-cancel{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:12px;color:var(--text-primary);display:inline-flex;gap:.5rem;justify-content:center;transition:all .3s ease}.btn-cancel:hover:not(:disabled){background:var(--hover-bg);transform:translateY(-2px)}@media (max-width:1024px){.quotations-page{padding:1.5rem}.quotations-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}}@media (max-width:768px){.quotations-page{padding:1rem}.page-header{align-items:flex-start;flex-direction:column}.header-right{width:100%}.stats-badge{justify-content:center;width:100%}.quotations-grid{grid-template-columns:1fr}.modal-content{margin:1rem;width:95%}.modal-footer{flex-direction:column}.modal-footer button{width:100%}.breakdown-item{align-items:flex-start;flex-direction:column;gap:.25rem}}@media (max-width:480px){.quotation-card{padding:1rem}.quotation-icon{font-size:1.25rem;height:48px;width:48px}.quotation-title,.section-title{font-size:1rem}}.search-filter-section{align-items:center;display:flex;gap:1rem;margin-bottom:1.5rem}.search-container{flex:1 1}.search-icon{font-size:1rem;pointer-events:none}.search-input{padding:1rem 1rem 1rem 3rem}.search-input::placeholder{color:var(--text-muted)}.filter-toggle-btn{background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:12px;gap:.75rem;padding:.875rem 1.25rem;position:relative;transition:all .3s ease}.filter-toggle-btn:hover{border-color:#6366f1;transform:translateY(-2px)}.filter-toggle-btn.active{background:linear-gradient(135deg,#6366f120,#8b5cf620);border-color:#6366f1}.filter-badge{border-radius:10px;font-size:.625rem;padding:.125rem .375rem;position:absolute;right:-8px;top:-8px}.filters-panel{animation:slideDown .3s ease;margin-bottom:1.5rem}.filters-header{border-bottom:1px solid var(--border-color);margin-bottom:1.5rem;padding-bottom:1rem}.filters-header h3{font-size:1rem;gap:.5rem}.clear-filters-btn{background:none;border-radius:8px;color:var(--text-tertiary);display:flex;font-size:.875rem;padding:.5rem 1rem}.clear-filters-btn:hover{background:#ef44441a;color:#ef4444}.filters-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.filter-group label{color:var(--text-primary);font-size:.875rem;font-weight:600}.status-filter-buttons{gap:.5rem}.status-filter-btn{align-items:center;border-radius:10px;display:inline-flex;flex:1 1;font-size:.75rem;gap:.5rem;justify-content:center;padding:.5rem 1rem}.status-filter-btn:hover{transform:translateY(-2px)}.status-filter-btn.active{background:#10b981;border-color:#10b981}.status-filter-btn.quoted-status.active{background:#f59e0b;border-color:#f59e0b;color:#fff}.status-filter-btn.approved-status.active{background:#10b981;border-color:#10b981;color:#fff}.status-filter-btn.pending-status.active{background:#f97316;border-color:#f97316;color:#fff}.sort-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.sort-btn{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.75rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.sort-btn:hover{border-color:#6366f1;transform:translateY(-2px)}.sort-btn.active{background:#6366f1;border-color:#6366f1;color:#fff}.active-filters{gap:.5rem}.active-filters span:first-child{color:var(--text-primary);font-size:.875rem;font-weight:600}.active-filter-tag{border-radius:8px;font-size:.75rem;padding:.25rem .5rem}.active-filter-tag button{color:var(--text-tertiary);margin-left:.25rem}.active-filter-tag button:hover{color:#ef4444}.results-count{margin-bottom:1rem}.results-count span{align-items:center;color:var(--text-secondary);display:flex;font-size:.875rem;gap:.5rem}:root{--primary:#3b82f6;--primary-dark:#1e3a8a;--success:#10b981;--success-dark:#059669;--warning:#f59e0b;--warning-dark:#d97706;--danger:#ef4444;--danger-dark:#dc2626;--purple:#8b5cf6;--purple-dark:#7c3aed;--surface:#fff;--background:#f8fafc;--text:#1e293b;--text-secondary:#334155;--text-tertiary:#475569;--text-muted:#64748b;--text-light:#94a3b8;--border:#e2e8f0;--border-light:#f1f5f9;--shadow-sm:0 1px 3px #0000001a;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px}.quotation-details-page{margin:0 auto;max-width:1200px;min-height:100vh;padding:24px}.btn-back{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:var(--radius-full);box-shadow:0 1px 3px #0000001a;color:#1e293b;color:var(--text);font-size:14px;gap:8px;margin-bottom:20px;padding:10px 16px;transition:all .2s}.btn-back:hover{background:#f8fafc;background:var(--background);border-color:#3b82f6;border-color:var(--primary);color:#3b82f6;color:var(--primary)}.quotation-hero{border-radius:24px;border-radius:var(--radius-xl);box-shadow:0 20px 25px -5px #0000001a;box-shadow:var(--shadow-xl);isolation:isolate;margin-bottom:24px;overflow:hidden;padding:32px;position:relative}.hero-top{gap:15px;margin-bottom:20px}.hero-badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:9999px;border-radius:var(--radius-full);color:#fff;display:flex;font-size:13px;font-weight:600;gap:8px;padding:8px 16px}.hero-badge i{font-size:14px}.status-badge{border:1px solid #fff3;border-radius:9999px;border-radius:var(--radius-full);box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg);display:flex;font-size:13px;font-weight:700;gap:8px;letter-spacing:.5px;padding:8px 20px}.status-badge.approved{background:#10b981;background:var(--success)}.status-badge.pending{background:#f59e0b;background:var(--warning)}.status-badge i{font-size:14px}.project-title{color:#fff;font-size:28px;font-weight:800;line-height:1.2;margin:0 0 12px;text-shadow:0 2px 10px #0003;word-break:break-word}.project-location{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff1a;border-radius:9999px;border-radius:var(--radius-full);display:flex;font-size:15px;gap:8px;margin-bottom:15px;padding:8px 16px;width:-webkit-fit-content;width:fit-content}.project-location i{font-size:14px}.project-meta{flex-wrap:wrap;gap:20px}.meta-item{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff1a;border-radius:9999px;border-radius:var(--radius-full);gap:8px;padding:6px 14px}.meta-item,.meta-item i{font-size:14px}.hero-decoration-1{animation:float 8s ease-in-out infinite;background:radial-gradient(circle,#ffffff26 0,#fff0 70%);height:200px;right:-30px;top:-30px;width:200px}.hero-decoration-1,.hero-decoration-2{border-radius:50%;position:absolute;z-index:1}.hero-decoration-2{animation:float 12s ease-in-out infinite reverse;background:radial-gradient(circle,#ffffff1a 0,#fff0 70%);bottom:-50px;height:250px;left:-50px;width:250px}@keyframes float{0%,to{transform:translate(0) scale(1)}50%{transform:translate(20px,-20px) scale(1.05)}}.action-buttons-grid{margin-bottom:24px}.action-card{align-items:center;border:none;border-radius:16px;border-radius:var(--radius-lg);color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:12px;overflow:hidden;padding:16px 20px;position:relative;transition:all .3s ease;width:100%}.action-card.report{background:linear-gradient(135deg,#8b5cf6,#7c3aed);background:linear-gradient(135deg,var(--purple),var(--purple-dark))}.action-card.download{background:linear-gradient(135deg,#3b82f6,#1e3a8a);background:linear-gradient(135deg,var(--primary),var(--primary-dark))}.action-card:hover:not(:disabled){box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.action-card:disabled{cursor:not-allowed;opacity:.6}.action-card i:first-child{font-size:20px}.action-card span{flex:1 1;text-align:left}.action-card .arrow{font-size:14px;opacity:.7;transition:transform .3s ease}.action-card:hover .arrow{opacity:1;transform:translateX(4px)}.content-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:24px}.info-card{background:#fff;border:1px solid #f1f5f9;border:1px solid var(--border-light);border-radius:24px;border-radius:var(--radius-xl);box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);padding:24px}.info-card:hover{box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg)}.card-header{border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--border);margin-bottom:20px;padding-bottom:12px}.card-title{gap:10px}.card-title i{font-size:22px}.card-title h3{color:#1e293b;color:var(--text);font-size:18px}.card-content{display:flex;flex-direction:column;gap:12px}.info-row{align-items:center;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);padding:12px 0}.info-label{color:#475569;font-size:14px}.info-value{color:#1e293b;color:var(--text);font-size:14px}.info-subtext{font-size:12px}.date-value,.info-subtext{color:#64748b;color:var(--text-muted)}.date-value{font-size:13px;font-weight:500}.status-chip{border-radius:9999px;border-radius:var(--radius-full);font-size:12px;font-weight:600;padding:4px 12px}.status-chip.approved{background:#10b9811a;color:#10b981;color:var(--success)}.status-chip.pending{background:#f59e0b1a;color:#f59e0b;color:var(--warning)}.approved-indicator{align-items:center;display:flex}.remarks-container{margin-top:8px}.remarks-label{color:#475569;font-size:14px;margin-bottom:8px}.remarks-box{background:#f8fafc;background:var(--background);border-left:4px solid #f59e0b;border-left:4px solid var(--warning);border-radius:var(--radius-md);padding:16px}.remarks-text{color:#1e293b;color:var(--text);font-size:14px;line-height:1.6}.images-preview{margin-top:12px}.images-label{align-items:center;background:#8b5cf6;background:var(--purple);border-radius:9999px;border-radius:var(--radius-full);box-shadow:0 1px 3px #0000001a;box-shadow:var(--shadow-sm);color:#fff;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:8px 16px}.images-label i{font-size:14px}.breakdown-row{align-items:center;border-bottom:1px dashed #e2e8f0;border-bottom:1px dashed var(--border);display:flex;justify-content:space-between;padding:12px 0}.breakdown-label{color:#475569;color:var(--text-tertiary);font-size:14px;font-weight:500}.breakdown-value{color:#1e293b;color:var(--text);font-size:15px;font-weight:600}.divider{background:linear-gradient(90deg,#3b82f6,#8b5cf6);background:linear-gradient(90deg,var(--primary),var(--purple));border-radius:9999px;border-radius:var(--radius-full);height:2px;margin:16px 0}.total-row{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.total-label{color:#1e293b;color:var(--text);font-size:18px;font-weight:700}.total-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1e3a8a);background:linear-gradient(135deg,var(--primary),var(--primary-dark));-webkit-background-clip:text;background-clip:text;color:#3b82f6;color:var(--primary);font-size:22px;font-weight:800}.advance-row{border-radius:var(--radius-md);margin-top:12px;padding:12px}.advance-label{font-size:14px}.advance-value{color:var(--warning);font-size:16px}.approve-section{margin:24px 0}.btn-approve{align-items:center;background:linear-gradient(135deg,#10b981,#059669);background:linear-gradient(135deg,var(--success),var(--success-dark));border:none;border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg);color:#fff;cursor:pointer;display:flex;font-size:18px;font-weight:700;gap:10px;justify-content:center;padding:18px 24px;transition:all .3s ease;width:100%}.btn-approve:hover:not(:disabled){box-shadow:0 12px 30px #10b98166;transform:translateY(-2px)}.btn-approve:disabled{cursor:not-allowed;opacity:.6}.btn-approve i{font-size:20px}.approved-badge-container{display:flex;justify-content:center;margin:24px 0}.approved-badge{align-items:center;background:linear-gradient(135deg,#10b981,#059669);background:linear-gradient(135deg,var(--success),var(--success-dark));border:1px solid #fff3;border-radius:9999px;border-radius:var(--radius-full);box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg);color:#fff;display:flex;font-size:16px;font-weight:700;gap:10px;padding:14px 30px}.approved-badge i{font-size:20px}.loading-container{background:#fff;border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);gap:16px;padding:40px}.spinner{border:4px solid #e2e8f0;border-top-color:#3b82f6;border:4px solid var(--border);border-top-color:var(--primary)}.spinner-small{animation:spin .8s linear infinite;border:3px solid #ffffff4d;height:20px;margin-right:8px;width:20px}.error-container{align-items:center;background:#fff;border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:400px;padding:40px}.error-container i{color:var(--danger);font-size:64px}.error-container p{color:#475569;color:var(--text-tertiary);margin:0}.btn-primary{background:#3b82f6;background:var(--primary);border-radius:var(--radius-md);font-size:15px;min-width:200px;padding:12px 30px}.btn-primary:hover{background:#1e3a8a;background:var(--primary-dark);box-shadow:0 8px 20px #3b82f64d}.btn-secondary{background:#fff;border:2px solid #3b82f6;border:2px solid var(--primary);border-radius:12px;border-radius:var(--radius-md);color:#3b82f6;color:var(--primary);font-size:15px;gap:8px;padding:12px 30px}.btn-secondary:hover{background:#f8fafc;background:var(--background);border-color:#1e3a8a;border-color:var(--primary-dark);color:#1e3a8a;color:var(--primary-dark)}@media (max-width:768px){.quotation-details-page{padding:16px}.quotation-hero{padding:24px 20px}.project-title{font-size:22px}.hero-top{align-items:flex-start;flex-direction:column}.project-meta{flex-direction:column;gap:8px}.action-buttons-grid,.content-grid{grid-template-columns:1fr}.total-value{font-size:18px}.btn-approve{font-size:16px;padding:16px}}@media (max-width:480px){.quotation-hero{padding:20px 16px}.project-title{font-size:20px}.hero-badge,.status-badge{font-size:12px;padding:6px 12px}.info-card{padding:20px}.info-row{align-items:flex-start;flex-direction:column;gap:4px}.info-value{background:#f8fafc;background:var(--background);border-radius:8px;border-radius:var(--radius-sm);padding:6px 10px;text-align:left;width:100%}.breakdown-row{align-items:flex-start;flex-direction:column;gap:4px}.breakdown-value{text-align:left;width:100%}.total-row{gap:8px}.advance-row,.total-row{align-items:flex-start;flex-direction:column}.advance-row{gap:6px}.approved-badge{font-size:14px;padding:12px 20px}}@media print{.action-buttons-grid,.approve-section,.approved-badge-container,.btn-back{display:none}.quotation-hero{-webkit-print-color-adjust:exact;print-color-adjust:exact}.info-card{border:1px solid #e2e8f0;border:1px solid var(--border);box-shadow:none;break-inside:avoid;page-break-inside:avoid}}@media (prefers-color-scheme:dark){:root{--surface:#1e293b;--background:#0f172a;--text:#f1f5f9;--text-secondary:#cbd5e1;--text-tertiary:#94a3b8;--border:#334155;--border-light:#1e293b}.btn-back,.error-container,.info-card,.loading-container{background:#fff;background:var(--surface)}.btn-back{border-color:#e2e8f0;border-color:var(--border);color:#1e293b;color:var(--text)}.btn-back:hover,.remarks-box{background:#f8fafc;background:var(--background)}.advance-row{background:#f59e0b1a}}.status-badge-group{display:flex;gap:10px}.status-badge.advance-paid{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.action-buttons-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:24px 0}.action-card.advance{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.action-card.advance:hover{box-shadow:0 8px 20px #f59e0b4d;transform:translateY(-2px)}.extra-charges-card{border-left:4px solid #f59e0b}.extra-charge-item{border-bottom:1px solid #e2e8f0;padding:16px 0}.extra-charge-item:last-child{border-bottom:none;padding-bottom:0}.extra-charge-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.extra-charge-description{color:#fff;flex:1 1;font-size:15px;font-weight:600}.extra-charge-status{border-radius:12px;font-size:12px;font-weight:600;padding:4px 10px}.extra-charge-status.pending{background:#fef3c7;color:#f59e0b}.extra-charge-status.completed{background:#d1fae5;color:#10b981}.extra-charge-details{align-items:center;display:flex;justify-content:space-between}.extra-charge-amount{color:#1e293b;font-size:16px;font-weight:700}.extra-charge-amount.pending{color:#f59e0b}.extra-charge-amount.completed{color:#10b981;opacity:.7;text-decoration:line-through}.pay-extra-button{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:8px 16px;transition:all .3s ease}.pay-extra-button:hover{box-shadow:0 4px 12px #f59e0b4d;transform:translateY(-2px)}.paid-badge{align-items:center;background:#d1fae5;border-radius:20px;color:#10b981;display:flex;font-size:13px;font-weight:600;gap:6px;padding:4px 12px}.paid-badge i{font-size:14px}.extra-charge-total{align-items:center;border-top:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-top:16px;padding-top:16px}.extra-charge-total-label{color:#64748b;font-size:15px;font-weight:600}.extra-charge-total-value{color:#f59e0b;font-size:18px;font-weight:800}.advance-row{align-items:center;background:#fffbeb;border:1px solid #fef3c7;border-radius:12px;display:flex;justify-content:space-between;margin-top:16px;padding:16px}.advance-row.paid{background:#f0fdf4;border-color:#d1fae5}.advance-label{color:#92400e;font-size:15px;font-weight:600}.advance-row.paid .advance-label{color:#065f46}.advance-value{color:#f59e0b;font-size:18px;font-weight:700}.advance-row.paid .advance-value{color:#10b981}.advance-payment-info{background:#f8fafc;border-radius:8px;font-size:13px;margin-top:8px;padding:12px}.advance-payment-date{color:#64748b;display:block;margin-bottom:4px}.advance-payment-method{color:#3b82f6;display:block;font-weight:500}.payment-card{border-left:4px solid #10b981}.payment-row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:12px 0}.payment-row:last-child{border-bottom:none}.payment-label{color:#64748b;font-size:15px;font-weight:500}.payment-value{font-size:16px;font-weight:700}.payment-value.success{color:#10b981}.payment-value.danger{color:#ef4444}.pending-payment-badge{align-items:center;background:#fef3c7;border-radius:12px;display:flex;gap:8px;margin-top:12px;padding:12px}.pending-payment-badge span{color:#f59e0b;font-size:13px;font-weight:600}@media (max-width:768px){.action-buttons-grid{grid-template-columns:1fr}.status-badge-group{flex-direction:column;gap:8px}.extra-charge-details{align-items:flex-start;flex-direction:column;gap:10px}.paid-badge,.pay-extra-button{justify-content:center;width:100%}}.btn-edit-quotation{align-items:center;background:#3b82f6;background:var(--primary);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:6px 14px;transition:all .2s ease}.btn-edit-quotation:hover{background:#1e3a8a;background:var(--primary-dark);box-shadow:0 1px 3px #0000001a;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn-edit-quotation i{font-size:13px}.modal-actions{border-top:1px solid #e2e8f0;border-top:1px solid var(--border);gap:12px;justify-content:flex-end;margin-top:24px;padding-top:16px}.modal-actions .btn-primary,.modal-actions .btn-secondary{align-items:center;border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 24px;transition:all .2s ease}.modal-actions .btn-primary:disabled,.modal-actions .btn-secondary:disabled{cursor:not-allowed;opacity:.6}.form-section{margin-top:16px}.form-section-title{border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--border);color:#1e293b;color:var(--text);font-size:16px;margin-bottom:20px;padding-bottom:8px}.project-info-card{background:#f8fafc;background:var(--background);border-radius:12px;border-radius:var(--radius-md);margin-bottom:20px;padding:16px}.project-info-header{align-items:center;display:flex;gap:10px}.project-info-header i{color:#3b82f6;color:var(--primary);font-size:20px}.project-info-header h3{color:#1e293b;color:var(--text);font-size:16px;font-weight:700;margin:0}.total-field{background:#f8fafc!important;background:var(--background)!important;color:#3b82f6!important;color:var(--primary)!important;cursor:default;font-weight:700}.reports-page{background:var(--bg-primary);min-height:100vh;padding:2rem;transition:all .3s ease}.reports-container{margin:0 auto;max-width:1400px}.page-header{gap:1.5rem}.stats-group{align-items:stretch;display:flex;flex-wrap:wrap;gap:.75rem}.filter-toggle-btn{border-radius:.5rem;display:flex;font-weight:500;padding:.75rem 1.5rem}.filter-toggle-btn i{font-size:.875rem}.stat-card{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;display:flex;gap:.75rem;padding:.5rem 1rem;transition:all .2s ease}.stat-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.stat-icon{align-items:center;background:var(--bg-tertiary);border-radius:10px;color:#6366f1;display:flex;height:32px;justify-content:center;width:32px}.stat-card.total .stat-icon{color:#3b82f6}.stat-card.pending .stat-icon{color:#f59e0b}.stat-card.approved .stat-icon{color:#10b981}.stat-info{display:flex;flex-direction:column}.stat-value{color:var(--text-primary);font-size:1rem;font-weight:700}.stat-value.warning{color:#f59e0b}.stat-value.success{color:#10b981}.stat-label{color:#fcfcfc;font-size:.7rem;letter-spacing:.5px;text-transform:uppercase}.search-input{padding:.875rem 2.5rem}.search-clear{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:.875rem;position:absolute;right:1rem;top:50%;transform:translateY(-50%);transition:color .2s ease}.search-clear:hover{color:#ef4444}.filters-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sort-buttons,.status-filter-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.sort-btn,.status-filter-btn{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:999px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:600;gap:.5rem;padding:.7rem 1rem;transition:all .2s ease}.sort-btn:hover,.status-filter-btn:hover{border-color:#6366f1;transform:translateY(-1px)}.sort-btn.active,.status-filter-btn.active{background:var(--gradient-primary);border-color:#0000;box-shadow:var(--shadow-sm);color:#fff}.reports-grid{grid-gap:1.5rem;animation:fadeInUp .5s ease;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.report-card{animation:fadeInUp .4s ease backwards;animation-delay:0s;animation-delay:calc(var(--card-index, 0)*.05s);background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.report-card:before{background:var(--gradient-primary);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.report-card:hover:before{transform:scaleX(1)}.report-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.report-card-header{align-items:flex-start;border-bottom:1px solid var(--border-color);display:flex;gap:1rem;padding:1.25rem}.report-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;font-size:1.5rem;font-weight:700;height:48px;justify-content:center;width:48px}.report-project-info{flex:1 1}.report-project-name{color:var(--text-primary);font-size:1rem;font-weight:700;line-height:1.3;margin-bottom:.25rem}.report-location{align-items:center;color:var(--text-tertiary);display:flex;font-size:.7rem;gap:.5rem;margin:0}.report-location i{color:#6366f1;font-size:.7rem}.report-status-badge{border-radius:12px;color:#fff;flex-shrink:0;font-size:.7rem;font-weight:700;padding:.25rem .75rem;white-space:nowrap}.report-metrics{align-items:center;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1rem 1.25rem}.metric{flex:1 1;text-align:center}.metric-label{color:var(--text-tertiary);display:block;font-size:.7rem;margin-bottom:.25rem}.metric-value{color:var(--text-primary);font-size:.875rem;font-weight:700}.metric-divider{background:var(--border-color);height:30px;width:1px}.report-remarks{align-items:flex-start;border-bottom:1px solid var(--border-color);display:flex;gap:.75rem;padding:1rem 1.25rem}.report-remarks i{color:#f59e0b;font-size:.875rem;margin-top:.125rem}.report-remarks p{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;flex:1 1;font-size:.75rem;line-height:1.5;margin:0;overflow:hidden}.report-images-badge{align-items:center;background:var(--bg-tertiary);border-radius:8px;color:#8b5cf6;display:inline-flex;font-size:.7rem;gap:.5rem;margin:0 1.25rem 1rem;padding:.5rem 1rem;width:-webkit-fit-content;width:fit-content}.report-images-badge i{font-size:.7rem}.report-actions{border-bottom:1px solid var(--border-color);border-top:1px solid var(--border-color);display:flex;gap:.75rem;padding:1rem 1.25rem}.btn-download,.btn-view{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;flex:1 1;font-size:.75rem;font-weight:600;gap:.5rem;justify-content:center;padding:.625rem;transition:all .2s ease}.btn-view{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary)}.btn-view:hover{background:var(--hover-bg);transform:translateY(-2px)}.btn-download{background:var(--gradient-primary)}.btn-download:hover:not(:disabled){box-shadow:var(--shadow-sm)}.report-footer{align-items:center;background:var(--bg-tertiary);color:var(--text-tertiary);display:flex;font-size:.7rem;justify-content:space-between;padding:.75rem 1.25rem}.report-id i,.report-time i{font-size:.65rem;margin-right:.25rem}.empty-state p{margin-bottom:1.5rem}.btn-primary{border-radius:12px;font-size:.9rem;padding:.75rem 1.5rem}@media (max-width:1024px){.reports-page{padding:1.5rem}.reports-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}}@media (max-width:768px){.reports-page{padding:1rem}.page-header{align-items:flex-start;flex-direction:column}.header-right{align-items:stretch;flex-direction:column;width:100%}.stats-group{justify-content:space-between;width:100%}.filters-grid{grid-template-columns:1fr}.stat-card{flex:1 1;justify-content:center}.reports-grid{grid-template-columns:1fr}.report-card-header{align-items:center;flex-direction:column;text-align:center}.report-project-info{text-align:center}.report-location{justify-content:center}.report-metrics{flex-direction:column;gap:.75rem}.metric-divider{height:1px;width:100%}.report-actions{flex-direction:column}.btn-download,.btn-view{width:100%}}@media (max-width:480px){.stats-group{flex-direction:column;gap:.5rem}.sort-buttons,.status-filter-buttons{gap:.5rem}.stat-card{width:100%}.report-footer,.report-remarks{align-items:flex-start;flex-direction:column}.report-footer{gap:.5rem;text-align:center}}.report-details-page{background:var(--bg-primary);min-height:100vh;padding:2rem;transition:all .3s ease}.report-hero{border-radius:24px;box-shadow:var(--shadow-lg);margin-bottom:2rem;overflow:hidden;padding:3rem 2rem;position:relative}.hero-content{margin:0 auto;max-width:800px;position:relative;text-align:center;z-index:2}.hero-top{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.report-badge{background:#fff3}.report-badge,.status-badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50px;color:#fff;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1rem}.status-badge{box-shadow:var(--shadow-sm)}.report-title{color:#fff;font-size:2rem;font-weight:800;margin-bottom:1rem;text-shadow:0 2px 10px #0003}.report-meta{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;margin-top:1rem}.meta-item{color:#ffffffe6;font-size:.875rem}.hero-decoration-1,.hero-decoration-2{background:radial-gradient(circle,#ffffff1a 0,#0000 70%);border-radius:50%;height:300px;pointer-events:none;position:absolute;width:300px}.hero-decoration-1{right:-100px;top:-100px}.hero-decoration-2{bottom:-100px;left:-100px}.report-content{margin:0 auto;max-width:1200px}.info-card{background:var(--card-bg);border-radius:20px;margin-bottom:2rem}.card-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);justify-content:space-between;padding:1rem 1.5rem}.card-header,.card-title{align-items:center;display:flex}.card-title{gap:.75rem}.card-title i{color:#6366f1;font-size:1.25rem}.card-title h3{color:var(--text-primary);font-size:1rem;font-weight:700;margin:0}.card-content{padding:1.5rem}.info-value{max-width:60%}.info-subtext{color:var(--text-secondary);font-size:.75rem;font-weight:400}.remarks-container{border-top:1px solid var(--border-color);margin-top:1rem;padding-top:1rem}.remarks-label{color:var(--text-tertiary);display:block;font-size:.75rem;font-weight:600;margin-bottom:.5rem}.remarks-box{background:var(--bg-tertiary);border-left:3px solid;border-radius:12px;padding:1rem}.remarks-text{color:var(--text-primary);font-size:.875rem;line-height:1.5;margin:0}.images-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));padding:1.5rem}.image-card{background:var(--bg-tertiary);border-radius:12px;overflow:hidden;position:relative;transition:all .3s ease}.image-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.image-container{aspect-ratio:16/12;cursor:pointer;overflow:hidden;position:relative}.image-preview,.image-video{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.image-card:hover .image-preview{transform:scale(1.05)}.image-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.image-overlay i{color:#fff;font-size:2rem}.image-card:hover .image-overlay{opacity:1}.image-badge{border-radius:6px;bottom:.75rem;font-size:.7rem;font-weight:600;padding:.25rem .5rem}.image-badge,.image-download-btn{background:#000000b3;color:#fff;position:absolute;right:.75rem}.image-download-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;height:32px;justify-content:center;opacity:0;top:.75rem;transform:translateY(-10px);transition:all .2s ease;width:32px}.image-card:hover .image-download-btn{opacity:1;transform:translateY(0)}.image-download-btn:hover{background:#6366f1;transform:scale(1.05)}.btn-download-all{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.75rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.btn-download-all:hover{background:var(--hover-bg);transform:translateY(-2px)}.btn-download-all:disabled{cursor:not-allowed;opacity:.6;transform:none}.actions-container{margin-bottom:2rem}.action-buttons-group{display:flex;gap:1rem;justify-content:center}.btn-download{align-items:center;border:none;border-radius:12px;cursor:pointer;display:inline-flex;flex:1 1;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;max-width:150px;padding:.875rem;transition:all .3s ease}.btn-download.pdf{background:linear-gradient(135deg,#dc2626,#b91c1c)}.btn-download.csv{background:linear-gradient(135deg,#16a34a,#15803d)}.btn-download.excel{background:linear-gradient(135deg,#059669,#047857)}.btn-download:hover:not(:disabled){box-shadow:var(--shadow-md)}.btn-download:disabled{cursor:not-allowed;opacity:.6;transform:none}.report-footer{border-top:1px solid var(--border-color);margin-top:2rem;padding:2rem 1rem;text-align:center}.report-footer p{align-items:center;color:var(--text-tertiary);display:inline-flex;font-size:.75rem;gap:.5rem;margin:0 1rem}.report-footer i{font-size:.75rem}.error-container{background:var(--card-bg);border:1px solid var(--border-color);border-radius:24px;margin:2rem auto;max-width:500px;padding:4rem 2rem}.error-icon-wrapper{align-items:center;background:#ef44441a;border-radius:50%;display:flex;height:80px;justify-content:center;margin:0 auto 1.5rem;width:80px}.error-icon-wrapper i{color:#ef4444;font-size:2.5rem}.error-container h3{color:var(--text-primary);font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.error-container p{color:var(--text-secondary);margin-bottom:1.5rem}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000e6}.image-viewer-content{max-height:90vh;max-width:90vw;position:relative}.image-viewer-close{align-items:center;background:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:36px;justify-content:center;position:absolute;right:0;top:-40px;transition:all .2s ease;width:36px;z-index:10}.image-viewer-close:hover{background:#ef4444;transform:rotate(90deg)}.image-viewer-image{border-radius:8px;box-shadow:var(--shadow-xl);max-height:90vh;max-width:90vw;object-fit:contain}@media (max-width:1024px){.report-details-page{padding:1.5rem}.images-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media (max-width:768px){.report-details-page{padding:1rem}.report-hero{padding:2rem 1rem}.report-title{font-size:1.5rem}.hero-top{align-items:flex-start;flex-direction:column}.report-meta{align-items:center;flex-direction:column;gap:.5rem}.card-header{gap:.75rem}.card-header,.info-row{align-items:flex-start;flex-direction:column}.info-row{gap:.5rem}.info-value{max-width:100%;text-align:left}.images-grid{gap:1rem;grid-template-columns:1fr;padding:1rem}.action-buttons-group{align-items:center;flex-direction:column}.btn-download{max-width:200px;width:100%}.report-footer p{display:block;margin:.5rem 0}}@media (max-width:480px){.image-card{margin-bottom:0}.image-download-btn{background:#000c;opacity:1;transform:translateY(0)}.image-overlay{background:#0000004d;opacity:1}}.btn-download.whatsapp{background:linear-gradient(135deg,#25d366,#128c7e)}.btn-download.email{background:linear-gradient(135deg,#3b82f6,#2563eb)}.form-container{margin:0 auto;max-width:600px;padding:20px}.required{color:#ef4444}.form-textarea{min-height:100px}.form-textarea.error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.error-text,.helper-text{margin-top:4px}.helper-text{color:#6b7280;display:block;font-size:12px;font-style:italic}.btn-submit{background-color:#ffba0d}.btn-submit:hover:not(:disabled){background-color:#e6a50c;box-shadow:0 4px 12px #ffba0d4d}@media (max-width:768px){.form-container{padding:16px}.form-card{padding:20px}.form-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}}.create-admin-wrapper{box-sizing:border-box;margin:0 auto;max-width:600px;padding:20px;width:100%}.create-admin-header{margin-bottom:24px;width:100%}.back-button{background:none;border:none;color:#114aa6;font-size:14px;gap:8px;margin-bottom:16px;padding:0;transition:color .2s ease}.back-button:hover{color:#0d3a7f}.back-button i{font-size:12px}.page-title{color:#111827;font-size:28px;font-weight:700;line-height:1.2;margin:0 0 8px}.page-subtitle{color:#6b7280;font-size:16px;line-height:1.5}.form-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 12px #0000001a;box-sizing:border-box;padding:30px;width:100%}.form-section{margin-bottom:28px}.form-section-label{border-bottom:1px solid #e5e7eb;color:#6b7280;font-size:13px;font-weight:700;letter-spacing:.5px;margin:0 0 14px;padding-bottom:8px;text-transform:uppercase}.form-group{margin-bottom:24px;width:100%}.form-group:last-of-type{margin-bottom:0}.form-label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.required-star{color:#ef4444;margin-left:2px}.form-input{background-color:#fff;border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#374151;font-family:inherit;font-size:16px;line-height:1.5;padding:12px 16px;transition:all .2s ease;width:100%}.form-input:focus{border-color:#114aa6;box-shadow:0 0 0 3px #114aa61a;outline:none}.form-input.error{border-color:#ef4444}.form-input.error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.form-input:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.7}.form-textarea{background-color:#fff;border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#374151;font-family:inherit;font-size:16px;line-height:1.5;padding:12px 16px;transition:all .2s ease;width:100%}.form-textarea:focus{border-color:#114aa6;box-shadow:0 0 0 3px #114aa61a;outline:none}.form-textarea.error{border-color:#ef4444}.form-textarea:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.7}.error-text{color:#ef4444;display:block;font-size:12px;font-weight:500;line-height:1.4;margin-top:6px}.general-error{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;display:flex;font-size:14px;gap:8px;margin-bottom:16px;padding:10px 14px}.general-error i{font-size:14px}.calendar-picker-wrapper{position:relative;width:100%}.calendar-trigger{align-items:center;background-color:#fff;border:2px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#374151;cursor:pointer;display:flex;font-family:inherit;font-size:16px;justify-content:space-between;padding:12px 16px;transition:all .2s ease;width:100%}.calendar-trigger:hover{border-color:#114aa6}.calendar-trigger span{color:#374151}.calendar-trigger.placeholder span{color:#9ca3af}.calendar-trigger i{color:#6b7280;font-size:16px}.calendar-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #00000026;box-sizing:border-box;left:0;padding:12px;position:absolute;top:110%;width:260px;z-index:9999}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.calendar-nav-btn{background:none;border:none;border-radius:4px;color:#374151;cursor:pointer;font-size:16px;padding:4px 8px;transition:all .2s ease}.calendar-nav-btn:hover{background-color:#f3f4f6}.calendar-month-year{color:#374151;font-size:14px;font-weight:600}.calendar-year-controls{display:flex;gap:6px;justify-content:center;margin-bottom:8px}.calendar-year-controls span{color:#555;font-size:12px;line-height:22px}.year-control-btn{background:#f3f4f6;border:none;border-radius:4px;color:#374151;cursor:pointer;font-size:12px;padding:2px 8px;transition:all .2s ease}.year-control-btn:hover{background:#e5e7eb}.calendar-weekdays{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.weekday{color:#9ca3af;font-size:11px;font-weight:600;padding:4px 0;text-align:center}.calendar-days{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.calendar-day{border-radius:6px;color:#374151;cursor:pointer;font-size:13px;padding:6px 2px;text-align:center;transition:all .2s ease}.calendar-day.empty{color:#0000;cursor:default}.calendar-day.selected{background-color:#2563eb;color:#fff;font-weight:600}.calendar-day:not(.empty):not(.selected):hover{background-color:#f0f4ff}.clear-date-btn{background:none;border:none;border-radius:4px;color:#e53935;cursor:pointer;font-size:12px;margin-top:8px;padding:6px 12px;transition:all .2s ease;width:100%}.clear-date-btn:hover{background-color:#ffebee;color:#c62828}.form-actions{display:flex;gap:12px;margin-top:32px;width:100%}.btn-submit{background-color:#114aa6;border-radius:8px;display:flex;flex:1 1;font-family:inherit;font-size:16px;font-weight:600;gap:8px;padding:14px 24px;transition:all .2s ease}.btn-submit:hover:not(:disabled){background-color:#0d3a7f;box-shadow:0 4px 12px #114aa64d;transform:translateY(-1px)}.btn-submit:disabled{transform:none}.btn-submit.loading{pointer-events:none}.btn-cancel{background-color:#fff;border:2px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;flex:1 1;font-family:inherit;font-size:16px;font-weight:600;padding:14px 24px;transition:all .2s ease}.btn-cancel:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af;transform:translateY(-1px)}.btn-cancel:disabled{cursor:not-allowed;opacity:.6;transform:none}.spinner-small{animation:spin 1s linear infinite;border:2px solid #0000;border-top-color:currentcolor}.error-container{box-sizing:border-box;margin:0 auto;max-width:600px;width:100%}.error-icon{color:#ef4444;font-size:48px;margin-bottom:16px}.error-message{color:#374151;font-size:18px;line-height:1.5;margin-bottom:24px}.btn-dashboard{background-color:#114aa6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .2s ease}.btn-dashboard:hover{background-color:#0d3a7f;box-shadow:0 4px 12px #114aa64d;transform:translateY(-1px)}@media (max-width:768px){.create-admin-wrapper{padding:16px}.form-card{padding:20px}.form-actions{flex-direction:column;gap:10px}.btn-cancel,.btn-submit{width:100%}.page-title{font-size:24px}.page-subtitle{font-size:14px}.calendar-dropdown{left:auto;right:0;width:240px}.form-group{margin-bottom:20px}}@media (max-width:480px){.create-admin-wrapper{padding:12px}.form-card{padding:16px}.calendar-trigger,.form-input,.form-textarea{font-size:14px;padding:10px 14px}.form-label{font-size:13px}.btn-cancel,.btn-submit{font-size:14px;padding:12px 20px}.calendar-dropdown{width:220px}.calendar-day{font-size:12px;padding:4px 1px}.page-title{font-size:20px}.form-section-label{font-size:12px}}@media (prefers-color-scheme:dark){.form-card{background:#1f2937;border-color:#374151}.page-title{color:#f3f4f6}.page-subtitle{color:#9ca3af}.form-label{color:#e5e7eb}.calendar-trigger,.form-input,.form-textarea{background-color:#000!important;border-color:#4b5563!important;color:#fff!important}.form-input::placeholder,.form-textarea::placeholder{color:#9ca3af!important}.calendar-trigger:focus,.calendar-trigger:hover,.form-input:focus,.form-textarea:focus{background-color:#000!important;border-color:#3b82f6!important}.calendar-trigger span{color:#fff!important}.calendar-trigger i,.calendar-trigger.placeholder span{color:#9ca3af!important}.form-input:disabled,.form-textarea:disabled{background-color:#1a1a1a!important;color:#6b7280!important}.calendar-dropdown{background:#1f2937!important;border-color:#374151}.calendar-month-year{color:#fff}.calendar-nav-btn,.year-control-btn{background-color:#374151;color:#fff}.calendar-nav-btn:hover,.year-control-btn:hover{background-color:#4b5563}.weekday{color:#9ca3af}.calendar-day{color:#fff}.calendar-day:not(.empty):not(.selected):hover{background-color:#374151}.calendar-year-controls span{color:#fff!important}.btn-cancel{background-color:#374151;border-color:#4b5563;color:#f3f4f6}.btn-cancel:hover:not(:disabled){background-color:#4b5563;border-color:#6b7280}.form-section-label{border-bottom-color:#374151;color:#9ca3af}.general-error{background:#451a1a;border-color:#991b1b;color:#fecaca}}[data-theme=dark] .calendar-trigger,body.dark-mode .calendar-trigger,body.dark-theme .calendar-trigger{background-color:#000!important;border-color:#4b5563!important;color:#fff!important}[data-theme=dark] .calendar-trigger span,body.dark-mode .calendar-trigger span,body.dark-theme .calendar-trigger span{color:#fff!important}[data-theme=dark] .calendar-trigger i,[data-theme=dark] .calendar-trigger.placeholder span,body.dark-mode .calendar-trigger i,body.dark-mode .calendar-trigger.placeholder span,body.dark-theme .calendar-trigger i,body.dark-theme .calendar-trigger.placeholder span{color:#9ca3af!important}[data-theme=dark] .form-input,body.dark-mode .form-input,body.dark-theme .form-input{background-color:#000!important;border-color:#4b5563!important;color:#fff!important}.filter-container{margin:0 auto 20px;max-width:1200px;padding:0 20px}.filter-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;gap:16px;padding:20px}.filter-label{color:#374151;font-size:14px;font-weight:600;white-space:nowrap}.filter-select{background-color:#fff;border:2px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .2s ease}body.dark-mode-active .filter-select{border-color:#2563eb!important}body.dark-mode-active .filter-select,body.dark-mode-active .filter-select option{background-color:#000!important;color:#fff!important}body.dark-mode-active .filter-select:focus{border-color:#3b82f6!important;box-shadow:0 0 0 3px #3b82f633!important}body.dark-mode-active .empty-state,body.dark-mode-active .error-container,body.dark-mode-active .filter-label,body.dark-mode-active .loading-container,body.dark-mode-active .log-date,body.dark-mode-active .log-description,body.dark-mode-active .log-time,body.dark-mode-active .user-role{color:#000!important}.filter-select:focus{border-color:#114aa6;outline:none}.logs-container{margin:0 auto;max-width:1200px;padding:0 20px}.logs-grid{grid-gap:16px;display:grid;gap:16px}.log-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.log-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-2px)}.log-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.action-badge{border-radius:6px;color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.log-time{color:#6b7280;font-size:12px;font-weight:500}.log-description{color:#374151;font-size:16px;line-height:1.5;margin-bottom:16px}.log-user{justify-content:space-between}.log-user,.user-info{align-items:center;display:flex}.user-info{gap:6px}.user-name{color:#114aa6;font-size:14px;font-weight:600}.user-role{text-transform:capitalize}.log-date,.user-role{color:#6b7280;font-size:12px}.empty-state{color:#6b7280;padding:60px 20px}.empty-state i{color:#d1d5db;font-size:48px;margin-bottom:16px}.empty-state p{font-size:18px;margin-bottom:24px}.btn-secondary{background-color:#fff;border:2px solid #114aa6;border-radius:8px;color:#114aa6;font-size:14px;padding:12px 24px;transition:all .2s ease}.btn-secondary:hover{background-color:#114aa6;color:#fff}.loading-container{color:#6b7280;padding:60px 20px;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-top-color:#114aa6;height:40px;margin:0 auto 16px;width:40px}.loading-container p{font-size:16px}.error-container{color:#6b7280;padding:60px 20px;text-align:center}.error-container i{color:#ef4444;font-size:48px;margin-bottom:16px}.error-container p{font-size:18px;margin-bottom:24px}.btn-primary{background-color:#114aa6;border-radius:8px;font-size:14px;padding:12px 24px;transition:all .2s ease}.btn-primary:hover{background-color:#0d3a7f;box-shadow:0 4px 12px #114aa64d;transform:translateY(-1px)}.btn-danger{align-items:center;background-color:#dc2626;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:700;gap:8px;padding:12px 20px;transition:all .2s ease}.btn-danger:hover:not(:disabled){background-color:#b91c1c;box-shadow:0 4px 12px #dc26264d;transform:translateY(-1px)}.btn-danger:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.filter-card{align-items:stretch;flex-direction:column;gap:12px}.filter-select{width:100%}.log-header,.log-user{align-items:flex-start;flex-direction:column;gap:8px}}.orders-page{background:var(--bg-primary);min-height:100vh;padding:2rem;transition:all .3s ease}.orders-container{margin:0 auto;max-width:1400px}.page-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.header-left h1{background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:2rem;font-weight:700;margin-bottom:.5rem}.header-left p{align-items:center;color:var(--text-secondary);display:flex;font-size:.95rem;gap:.5rem}.header-left p i{color:#6366f1}.stats-badge{align-items:center;background:var(--gradient-primary);border-radius:12px;box-shadow:var(--shadow-sm);color:#fff;display:inline-flex;gap:.5rem;padding:.5rem 1rem}.stats-badge i{font-size:1rem}.stats-badge .stat-number{font-size:1.125rem;font-weight:700}.stats-badge .stat-label{font-size:.75rem;font-weight:500;opacity:.9}.btn-primary{align-items:center;background:var(--gradient-primary);border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.625rem 1.25rem;transition:all .3s ease}.btn-primary:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-secondary{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.625rem 1.25rem;transition:all .3s ease}.btn-secondary:hover{background:var(--hover-bg);transform:translateY(-2px)}.search-icon{font-size:.875rem;left:1rem}.search-input{border-radius:12px;font-size:.95rem;padding:.875rem 1rem .875rem 2.5rem}.search-input:focus{box-shadow:0 0 0 3px #6366f11a}.download-wrapper{position:relative;z-index:200}.download-menu{animation:slideDown .2s ease;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-lg);min-width:150px;overflow:hidden;position:fixed;z-index:99999}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.download-option{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.75rem;padding:.75rem 1rem;transition:all .2s ease;width:100%}.download-option:hover{background:var(--hover-bg)}.download-option.pdf{color:#dc2626}.download-option.csv{color:#16a34a}.download-option.excel{color:#0369a1}.orders-grid{grid-gap:1.5rem;animation:fadeInUp .5s ease;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.order-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;cursor:pointer;overflow:hidden;padding:1.25rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.order-card:before{background:var(--gradient-primary);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.order-card:hover:before{transform:scaleX(1)}.order-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.order-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.order-number-wrapper{align-items:center;display:flex;gap:.5rem}.order-number-wrapper i{color:#6366f1;font-size:.875rem}.order-number{color:var(--text-primary);font-family:monospace;font-size:.875rem;font-weight:700;margin:0}.order-status-badge{border-radius:12px;font-size:.7rem;font-weight:700;letter-spacing:.5px;padding:.25rem .75rem;text-transform:uppercase}.order-product-info{align-items:center;display:flex;gap:.75rem;margin-bottom:.75rem}.product-icon{font-size:1.5rem}.product-details{flex:1 1}.order-product{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0}.order-quantity{color:var(--text-tertiary);font-size:.75rem;margin:.25rem 0 0}.order-customer{align-items:center;border-bottom:1px solid var(--border-color);border-top:1px solid var(--border-color);color:var(--text-secondary);display:flex;font-size:.75rem;gap:.5rem;margin-bottom:.75rem;padding:.5rem 0}.order-customer i{color:#6366f1;font-size:.75rem}.order-amount{align-items:baseline;display:flex;justify-content:space-between;margin:.75rem 0;padding:.5rem 0}.amount-label{font-size:.7rem;letter-spacing:.5px;text-transform:uppercase}.amount-value{background:var(--gradient-success);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:1.25rem;font-weight:800}.order-amount-pending{align-items:center;color:#f59e0b;display:flex;font-size:.875rem;gap:.5rem;margin:.75rem 0;padding:.5rem 0}.order-amount-pending i{font-size:.875rem}.order-footer{border-top:1px solid var(--border-color);justify-content:space-between;margin-top:.75rem;padding-top:.75rem}.order-date,.order-footer{align-items:center;display:flex}.order-date{color:var(--text-tertiary);gap:.5rem}.order-date,.order-date i,.order-view{font-size:.7rem}.order-view{align-items:center;color:#6366f1;display:flex;font-weight:600;gap:.5rem;transition:all .2s ease}.order-card:hover .order-view i{transform:translateX(4px)}.loading-container{gap:1rem}.empty-state{padding:4rem 2rem}.empty-state h3{margin-bottom:.5rem}.order-detail-page{background:var(--bg-primary);min-height:100vh;padding:2rem;transition:all .3s ease}.order-detail-container{background:var(--card-bg);border-radius:24px;box-shadow:var(--shadow-lg);margin:0 auto;max-width:1200px;overflow:hidden}.detail-header{background:var(--gradient-primary);color:#fff;padding:2rem}.back-button{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;margin-bottom:1.5rem;padding:.5rem 1rem;transition:all .3s ease}.back-button:hover{background:#ffffff4d;transform:translateX(-4px)}.order-title-section{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.order-title{color:#fff;font-size:2rem;font-weight:800;margin:0}.order-status-large{align-items:center;background:#fff3;border-radius:30px;color:#fff;display:inline-flex;font-size:.75rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;text-transform:uppercase}.order-actions{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.order-date-large{align-items:center;color:#fffc;display:flex;font-size:.875rem;gap:.5rem}.order-progress-bar{background:var(--bg-tertiary);border-radius:10px;height:8px;margin:1.5rem 2rem;overflow:hidden}.progress-fill{background:var(--gradient-success);border-radius:10px;height:100%;overflow:hidden;position:relative;transition:width .8s cubic-bezier(.68,-.55,.265,1.55)}.progress-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#fff0,#ffffff4d 50%,#fff0);bottom:0;content:"";left:0;position:absolute;right:0;top:0;transform:translateX(-100%)}@keyframes shimmer{to{transform:translateX(100%)}}.order-timeline{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:2rem;position:relative}.timeline-step{flex:1 1;position:relative;text-align:center}.timeline-dot{align-items:center;background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:50%;color:var(--text-tertiary);display:flex;height:48px;justify-content:center;margin:0 auto .75rem;position:relative;transition:all .3s ease;width:48px;z-index:2}.timeline-dot.completed{background:var(--gradient-success);border-color:#10b981;color:#fff}.timeline-dot.current{animation:pulse 2s infinite;background:var(--gradient-primary);border-color:#6366f1;color:#fff}@keyframes pulse{0%{box-shadow:0 0 0 0 #6366f166}70%{box-shadow:0 0 0 10px #6366f100}to{box-shadow:0 0 0 0 #6366f100}}.timeline-dot i{font-size:1.25rem}.step-number{font-size:1rem;font-weight:700}.timeline-line{background:var(--border-color);height:2px;left:50%;position:absolute;right:-50%;top:24px;z-index:1}.timeline-step:last-child .timeline-line{display:none}.timeline-line.completed{background:var(--gradient-success)}.timeline-label{color:var(--text-tertiary);font-size:.75rem}.timeline-step.completed .timeline-label,.timeline-step.current .timeline-label{color:var(--text-primary);font-weight:600}.status-name{display:block;font-size:.75rem;font-weight:700;margin-bottom:.25rem}.status-date{color:var(--text-tertiary);display:block;font-size:.65rem;margin-top:.25rem}.info-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));padding:2rem}.info-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;overflow:hidden;transition:all .3s ease}.info-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.info-card .card-header{align-items:center;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);display:flex;gap:.75rem;padding:1rem 1.25rem}.info-card .card-header i{color:#6366f1;font-size:1.25rem}.info-card .card-header h3{color:var(--text-primary);font-size:1rem;font-weight:700;margin:0}.info-card .card-content{padding:1.25rem}.info-row{align-items:flex-start;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:.75rem 0}.info-row:last-child{border-bottom:none}.info-row-left{align-items:center;display:flex;gap:.75rem}.info-row-icon{color:var(--text-tertiary);font-size:.875rem;width:20px}.info-label{color:var(--text-tertiary);font-size:.75rem;font-weight:500}.info-value{color:var(--text-primary);font-size:.875rem;font-weight:600;text-align:right;word-break:break-word}.info-value.link{color:#6366f1;cursor:pointer;text-decoration:underline}.info-value.success{color:#10b981}.info-value.danger{color:#ef4444}.info-value.warning{color:#f59e0b}.phone-link{color:#6366f1;transition:all .2s}.phone-link.clickable{cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:#6366f1;text-decoration-color:#6366f1}.phone-link.clickable:hover{color:#8b5cf6}.amount-info{margin-bottom:1rem}.amount-row{align-items:center;display:flex;justify-content:space-between;padding:.5rem 0}.amount-label{color:var(--text-tertiary);font-size:.75rem;font-weight:500}.amount-value{color:var(--text-primary);font-size:.875rem;font-weight:600}.amount-value.total{background:var(--gradient-success);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:1rem;font-weight:800}.amount-row.balance{border-top:1px dashed var(--border-color);margin-top:.5rem;padding-top:.5rem}.balance-value{color:#f59e0b;font-size:.875rem;font-weight:700}.divider{background:var(--border-color);height:1px;margin:1rem 0}.payment-status-item{background:var(--bg-tertiary);border-left:3px solid;border-radius:12px;margin-bottom:1rem;padding:1rem}.payment-status-item:first-child{border-left-color:#3b82f6}.payment-status-item:last-child{border-left-color:#10b981}.payment-status-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.payment-status-label{color:var(--text-primary);font-size:.875rem;font-weight:700}.payment-status-badge{border-radius:12px;font-size:.7rem;font-weight:700;padding:.25rem .75rem}.payment-status-badge.paid{background:#10b98133;color:#10b981}.payment-status-badge.unpaid{background:#ef444433;color:#ef4444}.payment-status-details{border-top:1px solid var(--border-color);margin-top:.75rem;padding-top:.75rem}.payment-detail-row{align-items:center;display:flex;font-size:.75rem;gap:.75rem;padding:.5rem 0}.payment-detail-row i{color:var(--text-tertiary);width:20px}.payment-detail-label{color:var(--text-tertiary);font-weight:500;min-width:85px}.payment-detail-value{color:var(--text-primary);font-weight:600}.payment-verify-badge{border-radius:10px;font-size:.7rem;font-weight:600;padding:.125rem .5rem}.payment-verify-badge.verified{background:#10b98133;color:#10b981}.payment-verify-badge.pending{background:#f59e0b33;color:#f59e0b}.verify-payment-btn{align-items:center;background:var(--gradient-success);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:.75rem;font-weight:600;gap:.5rem;justify-content:center;margin-top:1rem;padding:.75rem;transition:all .3s ease;width:100%}.verify-payment-btn:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-2px)}.verify-payment-btn:disabled{cursor:not-allowed;opacity:.6}.action-buttons{background:var(--bg-secondary);border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:1rem;padding:2rem}.action-btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.approve-btn{background:var(--gradient-success);color:#fff}.update-btn{background:var(--gradient-info);color:#fff}.cancel-btn{background:var(--gradient-danger);color:#fff}.action-btn:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-2px)}.action-btn:disabled{cursor:not-allowed;opacity:.6}.modal-overlay{animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{animation:slideUp .3s ease;background:var(--card-bg);border-radius:20px;box-shadow:var(--shadow-xl);max-height:90vh;max-width:550px;overflow-y:auto;width:90%}.modal-header{align-items:center;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.modal-header h2{color:var(--text-primary);font-size:1.25rem;font-weight:700;margin:0}.modal-close{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:1.25rem;padding:.25rem;transition:color .2s}.modal-close:hover{color:#ef4444}.modal-form{padding:1.5rem}.form-group{margin-bottom:1.25rem}.form-group input,.form-group select,.form-group textarea{background:var(--input-bg);border:2px solid var(--input-border);border-radius:10px;color:var(--text-primary);font-size:.875rem;padding:.75rem;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.form-group textarea{min-height:70px;resize:vertical}.status-buttons{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.status-option{background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:.75rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.status-option.active{background:var(--gradient-primary);border-color:#6366f1;color:#fff}.toggle-switch{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:30px;cursor:pointer;height:24px;position:relative;transition:all .3s ease;width:50px}.toggle-switch.active{background:var(--gradient-primary);border-color:#6366f1}.toggle-slider{background:#fff;border-radius:50%;height:18px;left:2px;position:absolute;top:2px;transition:transform .3s ease;width:18px}.toggle-switch.active .toggle-slider{transform:translateX(26px)}.modal-actions{display:flex;gap:1rem;margin-top:1.5rem}.create-order-page{background:var(--bg-primary);min-height:100vh;padding:2rem;transition:all .3s ease}.create-order-container{margin:0 auto;max-width:800px}.order-detail-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:1rem;margin-bottom:2rem;padding-bottom:1rem}.back-btn{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.back-btn:hover{background:var(--hover-bg);transform:translateX(-4px)}.order-detail-title{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin:0}.info-box{align-items:flex-start;background:#3b82f61a;border:1px solid #3b82f633;border-radius:12px;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem}.info-box i{color:#3b82f6;font-size:1rem;margin-top:.125rem}.info-text{color:var(--text-secondary);flex:1 1;font-size:.875rem;line-height:1.5}.form-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;margin-bottom:1.25rem;padding:1.25rem}.form-section-title{background:var(--gradient-success);-webkit-background-clip:text;background-clip:text;border-bottom:2px solid var(--border-color);color:#0000;font-size:1rem;font-weight:700;margin-bottom:1rem;padding-bottom:.5rem}.pricing-section{background:#10b9810d;border-color:#10b98133}.form-group{margin-bottom:1rem}.form-group label{color:var(--text-secondary);display:block;font-size:.75rem;font-weight:600;margin-bottom:.5rem}.driver-details-section{border-top:1px solid #e5e7eb;margin-top:16px;padding-top:16px}.driver-details-title{color:#374151;font-size:14px;font-weight:600;margin-bottom:12px}.form-input,.form-select,.form-textarea{background:var(--input-bg);border:2px solid var(--input-border);border-radius:10px;color:var(--text-primary);font-size:.875rem;padding:.75rem;transition:all .3s ease;width:100%}.create-order-container .form-input,.create-order-container .form-textarea{background:#fff!important;border-color:#d1d5db!important;color:#000!important}.create-order-container .form-input::placeholder,.create-order-container .form-textarea::placeholder{color:#6b7280!important}body.dark-mode-active .create-order-container .form-select{background-color:#000!important;border-color:#2563eb!important;color:#fff!important}body.dark-mode-active .create-order-container .form-select option{background-color:#000!important;color:#fff!important}body.dark-mode-active .create-order-container .form-select:focus{border-color:#3b82f6!important;box-shadow:0 0 0 3px #3b82f633!important}body.dark-mode-active .create-order-container .driver-details-title,body.dark-mode-active .create-order-container .form-group label{color:#fff!important}body.dark-mode-active .create-order-container .driver-details-section{border-top-color:#334155!important}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.form-textarea{min-height:80px;resize:vertical}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.toggle-group{display:flex;gap:.75rem}.toggle-btn{background:var(--input-bg);border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;flex:1 1;font-size:.875rem;font-weight:500;padding:.75rem;transition:all .2s ease}.toggle-btn.active{background:var(--gradient-primary);border-color:#6366f1;color:#fff}.unit-group{display:flex;flex-wrap:wrap;gap:.5rem}.unit-btn{background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:.75rem;padding:.5rem 1rem;transition:all .2s ease}.unit-btn.active{background:var(--gradient-primary);border-color:#6366f1;color:#fff}.driver-section{border-top:1px solid var(--border-color);margin-top:1rem;padding-top:1rem}.section-subtitle{align-items:center;color:var(--text-primary);display:flex;font-size:.875rem;font-weight:700;gap:.5rem;margin-bottom:1rem}.section-subtitle i{color:#6366f1}.helper-text{color:var(--text-tertiary);display:flex;font-size:.7rem;margin-top:.5rem}.btn-submit,.helper-text{align-items:center;gap:.5rem}.btn-submit{background:var(--gradient-primary);border:none;border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:700;justify-content:center;overflow:hidden;padding:1rem;position:relative;transition:all .3s ease;width:100%}.btn-submit:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.btn-submit:hover:before{height:300px;width:300px}.btn-submit:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-submit:disabled{cursor:not-allowed;opacity:.6}.payment-amount-card{background:var(--gradient-primary);border-radius:16px;margin-bottom:1.5rem;padding:1.5rem;text-align:center}.payment-amount-label{color:#fffc;font-size:.75rem;margin-bottom:.5rem}.payment-amount-value{color:#fff;font-size:2rem;font-weight:800}.payment-method-group{display:flex;gap:1rem;margin-bottom:1.5rem}.payment-method-btn{align-items:center;background:var(--input-bg);border:2px solid var(--border-color);border-radius:12px;cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:.5rem;padding:1rem;transition:all .2s ease}.payment-method-btn.active{background:#6366f11a;border-color:#6366f1}.payment-method-btn i{color:var(--text-primary);font-size:1.5rem}.payment-method-btn span{color:var(--text-primary);font-size:.75rem;font-weight:600}@media (max-width:1024px){.create-order-page,.order-detail-page,.orders-page{padding:1.5rem}.orders-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}}@media (max-width:768px){.create-order-page,.order-detail-page,.orders-page{padding:1rem}.page-header{align-items:flex-start;flex-direction:column}.header-right{width:100%}.orders-grid{grid-template-columns:1fr}.order-timeline{flex-direction:column;gap:1rem}.timeline-step{align-items:center;display:flex;gap:1rem;text-align:left}.timeline-dot{margin:0}.timeline-line{display:none}.info-grid{gap:1rem;grid-template-columns:1fr;padding:1rem}.action-buttons{flex-direction:column}.action-btn{justify-content:center;width:100%}.order-title{font-size:1.5rem}.order-title-section{align-items:flex-start;flex-direction:column}.order-actions{margin-top:1rem}.detail-header{padding:1.5rem}.info-row{align-items:flex-start;flex-direction:column;gap:.5rem}.info-value{text-align:left}.modal-content{margin:1rem;width:95%}.status-buttons{flex-direction:column}.status-option{text-align:center;width:100%}.modal-actions{flex-direction:column}.modal-actions button{width:100%}.form-row{gap:0;grid-template-columns:1fr}.payment-method-group,.toggle-group{flex-direction:column}}@media (max-width:480px){.order-card{padding:1rem}.order-footer,.order-product-info{flex-direction:column;text-align:center}.order-footer{gap:.5rem}.order-view{justify-content:center}.timeline-dot{height:40px;width:40px}.timeline-dot i{font-size:1rem}.step-number{font-size:.875rem}.order-detail-header{align-items:flex-start;flex-direction:column}}.app-container{display:flex;min-height:100vh}.main-content{background-color:#f5f5f5;flex:1 1}.fab,.far,.fas{-webkit-font-smoothing:antialiased!important;display:inline-block!important;font-family:Font Awesome\ 6 Free,Font Awesome\ 6 Brands!important;font-style:normal!important;font-weight:900!important;text-rendering:auto!important}i.fab,i.far,i.fas{opacity:1!important;visibility:visible!important}@media (max-width:768px){.main-content{margin-left:0}}a[href^="mailto:"],a[href^="tel:"]{color:#2563eb;cursor:pointer;text-decoration:none;transition:color .15s,-webkit-text-decoration .15s;transition:color .15s,text-decoration .15s;transition:color .15s,text-decoration .15s,-webkit-text-decoration .15s}a[href^="mailto:"]:hover,a[href^="tel:"]:hover{color:#1d4ed8;text-decoration:underline}a[href^="tel:"]:before{content:"\f095"}a[href^="mailto:"]:before,a[href^="tel:"]:before{font-family:Font Awesome\ 6 Free;font-size:.85em;font-weight:900;margin-right:5px}a[href^="mailto:"]:before{content:"\f0e0"}body.dark-mode-active input,body.dark-mode-active select,body.dark-mode-active textarea{color:#f1f5f9!important}body.dark-mode-active .form-card input,body.dark-mode-active .form-card select,body.dark-mode-active .form-card textarea,body.dark-mode-active .modal-content input,body.dark-mode-active .modal-content select,body.dark-mode-active .modal-content textarea,body.dark-mode-active .modal-form input,body.dark-mode-active .modal-form select,body.dark-mode-active .modal-form textarea{background-color:#1e293b!important;border-color:#334155!important;color:#f1f5f9!important}body.dark-mode-active .form-card input::placeholder,body.dark-mode-active .form-card textarea::placeholder,body.dark-mode-active .modal-content input::placeholder,body.dark-mode-active .modal-content textarea::placeholder,body.dark-mode-active .modal-form input::placeholder,body.dark-mode-active .modal-form textarea::placeholder,body.dark-mode-active input::placeholder,body.dark-mode-active select::placeholder,body.dark-mode-active textarea::placeholder{color:#64748b!important}body.dark-mode-active .modal-content,body.dark-mode-active .modal-form{background-color:#0f172a!important;color:#f1f5f9!important}body.dark-mode-active .form-card label,body.dark-mode-active .form-label,body.dark-mode-active .modal-form label,body.dark-mode-active .modal-header h2{color:#f1f5f9!important}body.dark-mode-active .modal-content option,body.dark-mode-active .modal-form option{background-color:#1e293b;color:#f1f5f9}.site-plans-page{background:var(--bg-primary);min-height:100vh;transition:all .3s ease}.page-header{margin-bottom:2rem}.btn-back{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:9999px;box-shadow:var(--shadow-sm);color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;margin-bottom:1.25rem;padding:.625rem 1rem;transition:all .2s ease}.btn-back:hover{background:var(--bg-tertiary);border-color:#6366f1;color:#6366f1;transform:translateX(-4px)}.header-content{padding:.5rem 0}.page-title{font-size:2rem;margin:0 0 .5rem}.page-subtitle{font-size:.95rem;gap:.5rem}.upload-section{margin-bottom:2rem}.btn-upload{align-items:center;background:var(--gradient-primary);border:none;border-radius:12px;box-shadow:var(--shadow-lg);color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.625rem;justify-content:center;margin-bottom:1rem;max-width:300px;padding:1rem 1.5rem;transition:all .3s ease;width:100%}.btn-upload:hover:not(:disabled){box-shadow:0 12px 30px #6366f166;transform:translateY(-2px)}.btn-upload:disabled{cursor:not-allowed;opacity:.7}.progress-container{background:var(--bg-tertiary);border-radius:9999px;height:6px;max-width:300px;overflow:hidden;width:100%}.progress-bar{background:var(--gradient-success);border-radius:9999px;height:100%;transition:width .3s ease}.plans-container{min-height:400px}.plans-grid{grid-gap:1.25rem;animation:fadeInUp .5s ease-out;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.plan-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-md);overflow:hidden;padding:1.25rem;position:relative;transition:all .3s ease}.plan-card:before{background:var(--gradient-primary);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.plan-card:hover:before{transform:scaleX(1)}.plan-card:hover{border-color:#6366f1;box-shadow:var(--shadow-xl);transform:translateY(-4px)}.plan-icon{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:12px;display:flex;height:48px;justify-content:center;margin-bottom:1rem;width:48px}.plan-icon i{color:#fff;font-size:1.5rem}.plan-name{color:var(--text-primary);font-size:.95rem;font-weight:600;line-height:1.4;margin:0 0 .75rem;word-break:break-word}.plan-meta{display:flex;flex-direction:column;gap:.5rem}.plan-meta span{align-items:center;color:var(--text-tertiary);display:flex;font-size:.7rem;gap:.5rem}.plan-meta i{color:#6366f1;font-size:.7rem;width:14px}.plan-actions{grid-gap:.75rem;border-top:1px solid var(--border-color);display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));margin-top:1rem;padding-top:1rem}.btn-delete,.btn-download,.btn-view{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.75rem;font-weight:600;gap:.5rem;justify-content:center;padding:.625rem;transition:all .2s ease}.btn-view{background:#3b82f6;color:#fff}.btn-view:hover:not(:disabled){background:#2563eb;box-shadow:0 4px 12px #3b82f64d;transform:translateY(-2px)}.btn-download{background:#10b981;color:#fff}.btn-download:hover:not(:disabled){background:#059669;box-shadow:0 4px 12px #10b9814d;transform:translateY(-2px)}.btn-delete{background:#ef4444;color:#fff}.btn-delete:hover:not(:disabled){background:#dc2626;box-shadow:0 4px 12px #ef44444d;transform:translateY(-2px)}.btn-delete:disabled,.btn-download:disabled,.btn-view:disabled{cursor:not-allowed;opacity:.6}.loading-container{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-sm);padding:4rem 1.25rem}.spinner{margin-bottom:1rem}.spinner-small{margin-right:.5rem}.empty-state{border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-sm);padding:4rem 1.25rem}.empty-icon-wrapper{height:80px;width:80px}.empty-icon-wrapper i{color:#ef4444;font-size:2.5rem}.empty-state h3{font-size:1.25rem;margin:0 0 .5rem}.empty-state p{font-size:.875rem;margin:0}.btn-refresh{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;margin-top:1.5rem;padding:.5rem 1rem;transition:all .2s ease}.btn-refresh:hover{background:var(--hover-bg);transform:translateY(-2px)}.error-message{align-items:center;animation:fadeIn .3s ease-out;background:#ef44441a;border:1px solid #ef444433;border-radius:12px;color:#ef4444;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem}.error-message i{font-size:1.25rem}.error-message span{flex:1 1;font-size:.875rem;font-weight:500}.retry-button{align-items:center;background:var(--card-bg);border:1px solid #ef4444;border-radius:8px;color:#ef4444;cursor:pointer;display:flex;font-size:.75rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.retry-button:hover{background:#ef4444;color:#fff}.pdf-viewer-modal{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;padding:1.25rem;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.pdf-viewer-content{animation:slideUp .4s ease-out;background:var(--card-bg);border-radius:16px;box-shadow:0 25px 50px -12px #00000080;display:flex;flex-direction:column;max-height:90vh;max-width:1200px;overflow:hidden;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.pdf-viewer-header{align-items:center;background:var(--gradient-primary);color:#fff;display:flex;flex-shrink:0;gap:1rem;justify-content:space-between;padding:1rem 1.25rem}.pdf-viewer-header-left{align-items:center;display:flex;flex:1 1;gap:1rem;min-width:0}.pdf-viewer-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:all .2s;width:36px}.pdf-viewer-close:hover{background:#ffffff4d;transform:rotate(90deg)}.pdf-viewer-title-container{flex:1 1;min-width:0}.pdf-viewer-title{color:#fff;font-size:1rem;font-weight:700;margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pdf-viewer-subtitle{align-items:center;color:#ffffffe6;display:flex;font-size:.7rem;gap:.5rem;opacity:.9}.pdf-viewer-download{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:.75rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.pdf-viewer-download:hover:not(:disabled){background:#ffffff4d;transform:translateY(-2px)}.pdf-viewer-body{background:var(--bg-tertiary);display:flex;flex:1 1;flex-direction:column;overflow:hidden}.pdf-iframe-container{background:var(--bg-primary);flex:1 1;overflow:hidden;position:relative}.pdf-iframe{background:var(--bg-primary);border:none;height:100%;width:100%}.pdf-loading-container{align-items:center;background:var(--card-bg);display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:4rem 1.25rem}.pdf-error-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:1rem}.fallback-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.75rem;font-weight:600;gap:.5rem;padding:.625rem 1.25rem;transition:all .2s}.fallback-button.primary{background:#3b82f6;color:#fff}.fallback-button.primary:hover{background:#2563eb;transform:translateY(-2px)}.fallback-button.secondary{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary)}.fallback-button.secondary:hover{background:var(--hover-bg);transform:translateY(-2px)}.pdf-fallback-message{background:#3b82f61a;border-top:1px solid var(--border-color);flex-shrink:0;padding:.75rem 1rem}.fallback-content{align-items:flex-start;display:flex;gap:.75rem}.fallback-content i{color:#3b82f6;flex-shrink:0;font-size:1rem;margin-top:.125rem}.fallback-text{flex:1 1}.fallback-text p{color:var(--text-primary);font-size:.75rem;margin:0 0 .5rem}.fallback-text ul{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}.fallback-link{align-items:center;background:none;border:none;border-radius:6px;color:#3b82f6;cursor:pointer;display:inline-flex;font-size:.7rem;font-weight:600;gap:.375rem;padding:.25rem .5rem;transition:all .2s}.fallback-link:hover{background:#3b82f61a}@media (max-width:1024px){.plans-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}}@media (max-width:768px){.page-title{font-size:1.75rem}.btn-upload,.progress-container{max-width:100%}.plans-grid{grid-template-columns:1fr}.plan-card{padding:1rem}.plan-actions{grid-template-columns:1fr}.pdf-viewer-modal{padding:.625rem}.pdf-viewer-content{max-height:95vh}.pdf-viewer-header{align-items:stretch;flex-direction:column;gap:.75rem;padding:.75rem 1rem}.pdf-viewer-header-left{gap:.75rem}.pdf-viewer-title{font-size:.875rem}.pdf-viewer-download{justify-content:center;width:100%}.fallback-text ul{flex-direction:column;gap:.5rem}.pdf-error-actions{flex-direction:column;width:100%}.fallback-button{justify-content:center;width:100%}.error-message{flex-direction:column;text-align:center}.retry-button{justify-content:center;width:100%}}@media (max-width:480px){.page-title{font-size:1.5rem}.page-subtitle,.plan-name{font-size:.875rem}}.dark-theme{--input-bg:#1e293b;--input-border:#334155;--hover-bg:#334155}.light-theme{--input-bg:#fff;--input-border:#e2e8f0;--hover-bg:#f1f5f9}.site-plans-list-page{background:var(--bg-primary);margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem;transition:all .3s ease}.page-header{animation:fadeInDown .6s ease;margin-bottom:2.5rem;position:relative}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.page-header:after{background:var(--gradient-primary);border-radius:2px;bottom:-1rem;content:"";height:4px;left:0;position:absolute;width:80px}.header-left{flex:1 1}.header-right{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:flex-end}.page-title{background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:2.5rem;font-weight:800;letter-spacing:-.5px;margin:0 0 .75rem}.page-subtitle{align-items:center;color:var(--text-secondary);display:flex;font-size:1rem;font-weight:500;gap:.625rem;margin:0}.page-subtitle i{color:#6366f1;font-size:1.125rem}.filter-toggle-btn{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:.75rem;box-shadow:var(--shadow-sm);color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.75rem 1.25rem;transition:all .2s ease}.filter-toggle-btn:hover{background:var(--hover-bg);border-color:var(--border-light)}.filter-badge{align-items:center;background:#ef4444;border-radius:999px;color:#fff;display:inline-flex;font-size:.7rem;font-weight:700;height:18px;justify-content:center;width:18px}.search-container{animation:fadeInUp .6s ease .2s both;margin-bottom:2rem;position:relative}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.search-icon{color:var(--text-tertiary);font-size:1.1rem;left:1.25rem;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.search-input{background:var(--card-bg);border:2px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-sm);color:var(--text-primary);font-size:1rem;padding:1rem 1.25rem 1rem 3.25rem;transition:all .3s ease;width:100%}.dark-theme .search-input{color:#f1f5f9!important}.search-input::placeholder{color:var(--text-tertiary)}.dark-theme .search-input::placeholder{color:#64748b!important}.search-input:focus{border-color:#6366f1;box-shadow:0 0 0 4px #6366f11a,var(--shadow-md);outline:none;transform:translateY(-2px)}.filters-panel{animation:fadeInUp .25s ease;background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;box-shadow:var(--shadow-md);margin-bottom:2rem;padding:1.5rem}.filters-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.25rem}.filters-header h3{align-items:center;color:var(--text-primary);display:flex;font-size:1.05rem;font-weight:700;gap:.625rem;margin:0}.filters-header h3 i{color:#6366f1}.clear-filters-btn{align-items:center;background:#ef44441a;border:none;border-radius:10px;color:#ef4444;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:600;gap:.5rem;padding:.625rem 1rem;transition:all .2s ease}.clear-filters-btn:hover{background:#ef444429}.filters-grid{grid-gap:1rem;align-items:start;display:grid;gap:1rem;grid-template-columns:1fr}.filter-group{display:flex;flex-direction:column;gap:.75rem}.filter-group label{color:var(--text-secondary);font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.status-filter-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.status-filter-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:999px;color:var(--text-primary);cursor:pointer;font-size:.85rem;font-weight:600;padding:.7rem 1rem;transition:all .2s ease}.status-filter-btn:hover{border-color:#6366f1;transform:translateY(-1px)}.status-filter-btn.active{background:var(--gradient-primary);border-color:#0000;box-shadow:var(--shadow-sm);color:#fff}.active-filters{align-items:center;border-top:1px solid var(--border-color);color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:.875rem;font-weight:600;gap:.75rem;margin-top:1rem;padding-top:1rem}.active-filter-tag{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:999px;color:var(--text-primary);display:inline-flex;gap:.5rem;padding:.45rem .75rem}.active-filter-tag button{background:none;border:none;color:inherit;cursor:pointer;font-size:1rem;line-height:1;padding:0}.loading-container{align-items:center;display:flex;flex-direction:column;gap:1.5rem;justify-content:center;min-height:400px}.spinner{border:4px solid var(--border-color);border-top:4px solid #6366f1;height:56px;width:56px}.loading-container p{color:var(--text-secondary);font-size:1rem;font-weight:500}.empty-state{animation:fadeInUp .5s ease;background:var(--card-bg);border:2px dashed var(--border-color);border-radius:24px;padding:5rem 2rem;text-align:center}.empty-icon-wrapper{align-items:center;background:var(--bg-tertiary);border-radius:50%;display:flex;height:100px;justify-content:center;margin:0 auto 1.5rem;position:relative;width:100px}.empty-icon-wrapper:after{background:var(--gradient-primary);border-radius:50%;content:"";inset:-8px;opacity:.1;position:absolute;z-index:-1}.empty-icon-wrapper i{color:var(--text-tertiary);font-size:3rem}.empty-state h3{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin-bottom:.75rem}.empty-state p{color:var(--text-secondary);font-size:1rem}.projects-grid{grid-gap:1.75rem;animation:fadeInUp .6s ease .3s both;display:grid;gap:1.75rem;grid-template-columns:repeat(auto-fill,minmax(420px,1fr))}.project-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:24px;box-shadow:var(--shadow-sm);cursor:pointer;overflow:hidden;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.project-card:before{background:var(--gradient-primary);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.4,0,.2,1)}.project-card:after{background:radial-gradient(circle,#6366f114 0,#0000 70%);content:"";height:200px;opacity:0;position:absolute;right:-50%;top:-50%;transition:opacity .4s ease;width:200px}.project-card:hover:before{transform:scaleX(1)}.project-card:hover:after{opacity:1}.project-card:hover{border-color:#6366f14d;box-shadow:0 20px 40px #00000026;transform:translateY(-8px)}.project-card-header{align-items:flex-start;border-bottom:1px solid var(--border-color);display:flex;gap:1.25rem;padding:1.5rem;position:relative;z-index:1}.project-icon{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:16px;box-shadow:0 8px 20px #6366f14d;display:flex;flex-shrink:0;height:56px;justify-content:center;transition:all .3s ease;width:56px}.project-card:hover .project-icon{transform:scale(1.1) rotate(5deg)}.project-icon i{color:#fff;font-size:1.75rem}.project-info{flex:1 1;min-width:0}.project-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-primary);display:-webkit-box;font-size:1.125rem;font-weight:700;line-height:1.4;margin:0 0 .75rem;overflow:hidden}.project-meta{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.meta-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.8125rem;font-weight:500;gap:.5rem}.meta-item i{color:#6366f1;font-size:.875rem;width:16px}.project-status-badge{border-radius:24px;box-shadow:0 2px 8px #00000026;color:#fff;flex-shrink:0;font-size:.75rem;font-weight:700;letter-spacing:.5px;padding:.5rem 1rem;text-transform:uppercase;transition:all .3s ease;white-space:nowrap}.project-card:hover .project-status-badge{transform:scale(1.05)}.project-card-footer{align-items:center;background:var(--bg-tertiary);border-top:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1.125rem 1.5rem;position:relative;z-index:1}.view-plans-text{align-items:center;color:#6366f1;display:flex;font-size:.875rem;font-weight:700;gap:.625rem;transition:all .3s ease}.view-plans-text i{font-size:.875rem;transition:transform .3s ease}.project-card:hover .view-plans-text{gap:.875rem}.project-card:hover .view-plans-text i{transform:scale(1.2)}.arrow-icon{color:var(--text-tertiary);font-size:.875rem;transition:all .3s ease}.project-card:hover .arrow-icon{color:#6366f1;transform:translateX(6px)}@media (max-width:1200px){.projects-grid{grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}}@media (max-width:1024px){.site-plans-list-page{padding:1.5rem}.projects-grid{gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}}@media (max-width:768px){.site-plans-list-page{padding:1rem}.page-header{align-items:flex-start;flex-direction:column}.header-right{justify-content:flex-start;width:100%}.filter-toggle-btn{justify-content:center;width:100%}.filters-header{align-items:flex-start}.page-title{font-size:2rem}.page-subtitle{font-size:.9375rem}.projects-grid{gap:1.25rem;grid-template-columns:1fr}.project-card-header{flex-wrap:wrap}.project-icon{height:52px;width:52px}.project-icon i{font-size:1.5rem}.project-status-badge{margin-top:.75rem;text-align:center;width:100%}.project-meta{gap:.625rem}}@media (max-width:480px){.site-plans-list-page{padding:.75rem}.page-header{margin-bottom:2rem}.page-title{font-size:1.75rem}.page-subtitle{font-size:.875rem}.search-container{margin-bottom:1.5rem}.search-input{border-radius:14px;font-size:.9375rem;padding:.875rem 1rem .875rem 3rem}.search-icon{font-size:1rem;left:1rem}.status-filter-buttons{gap:.5rem}.project-card{border-radius:20px}.project-card-header{padding:1.25rem}.project-icon{height:48px;width:48px}.project-icon i{font-size:1.375rem}.project-name{font-size:1rem}.meta-item{font-size:.75rem}.project-status-badge{font-size:.6875rem;padding:.375rem .875rem}.project-card-footer{flex-direction:column;gap:.75rem;padding:1rem 1.25rem;text-align:center}.view-plans-text{font-size:.8125rem;justify-content:center}.arrow-icon{display:none}.empty-state{padding:3rem 1.5rem}.empty-icon-wrapper{height:80px;width:80px}.empty-icon-wrapper i{font-size:2.5rem}.empty-state h3{font-size:1.25rem}.empty-state p{font-size:.9375rem}}::-webkit-scrollbar-thumb{background:var(--border-color);-webkit-transition:background .3s ease;transition:background .3s ease}.dark-theme{--bg-primary:#020617;--bg-secondary:#0f172a;--bg-tertiary:#1e293b;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-tertiary:#64748b;--border-color:#1e293b;--border-light:#334155;--card-bg:#0f172a;--card-hover:#1e293b;--shadow-sm:0 4px 6px -2px #0000004d;--shadow-md:0 10px 15px -3px #0006;--shadow-lg:0 20px 25px -5px #00000080;--shadow-xl:0 25px 50px -12px #0009;--gradient-primary:linear-gradient(135deg,#6366f1,#8b5cf6);--gradient-success:linear-gradient(135deg,#10b981,#059669);--gradient-warning:linear-gradient(135deg,#f59e0b,#d97706);--gradient-danger:linear-gradient(135deg,#ef4444,#dc2626);--gradient-info:linear-gradient(135deg,#3b82f6,#2563eb)}.light-theme{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#64748b;--border-color:#e2e8f0;--border-light:#cbd5e1;--card-bg:#fff;--card-hover:#f8fafc;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a;--gradient-primary:linear-gradient(135deg,#6366f1,#8b5cf6);--gradient-success:linear-gradient(135deg,#10b981,#059669);--gradient-warning:linear-gradient(135deg,#f59e0b,#d97706);--gradient-danger:linear-gradient(135deg,#ef4444,#dc2626);--gradient-info:linear-gradient(135deg,#3b82f6,#2563eb)}.profile-wrapper{background:var(--bg-primary);min-height:100vh;padding:2rem;transition:all .3s ease}.profile-container{margin:0 auto;max-width:1000px}.profile-banner{border-radius:24px;box-shadow:var(--shadow-lg);margin-bottom:-3rem;overflow:hidden;padding:3rem 2rem 5rem;position:relative}.banner-content{margin:0 auto;max-width:800px;position:relative;text-align:center}.avatar-area{display:inline-block;margin-bottom:1.5rem;position:relative}.avatar-circle{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:4px solid #ffffff4d;border-radius:50%;display:flex;height:120px;justify-content:center;margin:0 auto;width:120px}.avatar-circle i{color:#fff;font-size:5rem}.avatar-initials{color:#fff;font-size:3rem;font-weight:700;text-transform:uppercase}.role-tag{align-items:center;animation:slideIn .5s ease;border-radius:50px;bottom:-10px;box-shadow:var(--shadow-md);color:#fff;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;position:absolute;right:-20px}@keyframes slideIn{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.role-text{letter-spacing:.5px}.profile-fullname{color:#fff;font-size:2rem;font-weight:800;margin-bottom:.5rem;text-shadow:0 2px 10px #0003}.profile-email{color:#ffffffe6;font-size:1rem;margin-bottom:1.5rem}.profile-stats{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:50px;display:flex;gap:2rem;justify-content:center;margin-bottom:1.5rem;margin-left:auto;margin-right:auto;max-width:400px;padding:1rem}.stat-block{align-items:center;display:flex;flex-direction:column}.stat-number{color:#fff;font-size:1.5rem;font-weight:800}.stat-caption{color:#fffc;font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.stat-divider{background:#ffffff4d;height:30px;width:1px}.member-info{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:50px;color:#fff;display:inline-flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem}.banner-decoration-1,.banner-decoration-2{background:radial-gradient(circle,#ffffff1a 0,#0000 70%);border-radius:50%;height:300px;pointer-events:none;position:absolute;width:300px}.banner-decoration-1{right:-100px;top:-100px}.banner-decoration-2{bottom:-100px;left:-100px}.profile-content-area{padding:2rem;position:relative;z-index:1}.info-panel{background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;margin-bottom:1.5rem;overflow:hidden;transition:all .3s ease}.info-panel:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.panel-head{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);justify-content:space-between;padding:1rem 1.5rem}.panel-head,.panel-title{align-items:center;display:flex}.panel-title{gap:.75rem}.panel-title i{color:#6366f1;font-size:1.25rem}.panel-title h2{color:var(--text-primary);font-size:1rem;font-weight:700;margin:0}.panel-badge{align-items:center;background:var(--gradient-primary);border-radius:20px;color:#fff;display:inline-flex;font-size:.75rem;font-weight:600;gap:.5rem;padding:.375rem .875rem}.panel-body{padding:1.5rem}.info-list{display:flex;flex-direction:column;gap:1rem}.info-item{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:.75rem 0}.info-item:last-child{border-bottom:none}.info-left{gap:1rem}.info-icon-box,.info-left{align-items:center;display:flex}.info-icon-box{border-radius:10px;height:36px;justify-content:center;width:36px}.info-icon-box i{font-size:1rem}.info-label-text{color:var(--text-secondary);font-size:.875rem;font-weight:500}.info-value-text{color:var(--text-primary);font-size:.875rem;font-weight:600;max-width:60%;text-align:right;word-break:break-word}.activity-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);margin-bottom:1.5rem;text-align:center}.activity-card{flex-direction:column;gap:.5rem}.activity-card,.circle-metric{align-items:center;display:flex}.circle-metric{border:3px solid;border-radius:50%;height:80px;justify-content:center;transition:all .3s ease;width:80px}.circle-metric:hover{box-shadow:var(--shadow-md);transform:scale(1.05)}.metric-number{color:var(--text-primary);font-size:1.5rem;font-weight:800}.metric-caption{color:var(--text-tertiary);font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.last-activity-block{align-items:center;background:var(--bg-tertiary);border-radius:16px;display:flex;gap:1rem;margin-top:1rem;padding:1rem}.last-activity-block i{color:#6366f1;font-size:1.5rem}.last-activity-block div{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.activity-title{color:var(--text-tertiary);font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.activity-timestamp{color:var(--text-primary);font-size:.875rem;font-weight:600}.settings-list{display:flex;flex-direction:column;gap:1rem}.setting-item{align-items:center;background:var(--bg-tertiary);border-radius:16px;display:flex;justify-content:space-between;padding:1rem;transition:all .2s ease}.setting-item:hover{background:var(--hover-bg);transform:translateX(4px)}.setting-info-block{align-items:center;display:flex;gap:1rem}.setting-info-block i{color:#6366f1;font-size:1.25rem;width:32px}.setting-info-block h4{color:var(--text-primary);font-size:.875rem;font-weight:700;margin-bottom:.25rem}.setting-info-block p{color:var(--text-secondary);font-size:.75rem;margin:0}.setting-status{background:var(--gradient-success);border-radius:20px;color:#fff;font-size:.75rem;font-weight:600;padding:.375rem .875rem}.logout-area{margin:2rem 0;text-align:center}.logout-btn{align-items:center;background:var(--gradient-danger);border:none;border-radius:50px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:700;gap:.75rem;overflow:hidden;padding:.875rem 2rem;position:relative;transition:all .3s ease}.logout-btn:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.logout-btn:hover:before{height:300px;width:300px}.logout-btn:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.logout-btn:active{transform:translateY(0)}.logout-btn:disabled{cursor:not-allowed;opacity:.6}.version-footer{border-top:1px solid var(--border-color);padding:2rem 0 1rem;text-align:center}.copyright-info,.version-text{color:var(--text-tertiary);font-size:.75rem;margin-bottom:.5rem}.support-link{align-items:center;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.75rem;gap:.5rem;transition:color .2s ease}.support-link:hover{color:#6366f1}.loading-state{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:400px}.spinner{animation:spin .8s linear infinite;border:3px solid var(--border-color);border-radius:50%;border-top:3px solid #6366f1;height:48px;width:48px}.spinner-small{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:16px;width:16px}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:768px){.profile-wrapper{padding:1rem}.profile-banner{padding:2rem 1rem 4rem}.profile-fullname{font-size:1.5rem}.profile-stats{gap:1rem;max-width:100%;padding:.75rem}.stat-number{font-size:1.25rem}.profile-content-area{padding:1rem}.info-item{align-items:flex-start;flex-direction:column;gap:.5rem}.info-value-text{max-width:100%;text-align:left}.activity-grid{gap:1rem;grid-template-columns:1fr}.circle-metric{height:60px;width:60px}.metric-number{font-size:1.25rem}.setting-item{align-items:flex-start;flex-direction:column;gap:1rem}.setting-status{align-self:flex-start}.panel-head{align-items:flex-start;flex-direction:column;gap:.75rem}}@media (max-width:480px){.profile-stats{border-radius:20px;flex-direction:column;gap:.75rem}.stat-divider{height:1px;width:100%}.avatar-circle{height:100px;width:100px}.avatar-initials{font-size:2.5rem}.role-tag{padding:.375rem .75rem;right:-10px}.member-info,.role-tag{font-size:.75rem}}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:10px}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#6366f1}.avatar-photo{border-radius:50%;height:100%;object-fit:cover;width:100%}.btn-edit-profile{align-items:center;background:var(--gradient-primary);border:none;border-radius:50px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;display:inline-flex;font-size:.9375rem;font-weight:600;gap:.5rem;padding:.75rem 1.75rem;transition:all .3s ease}.btn-edit-profile:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.modal-overlay{align-items:center;animation:fadeInModal .2s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeInModal{0%{opacity:0}to{opacity:1}}.edit-profile-modal{animation:slideUpModal .3s ease;background:var(--card-bg);border-radius:24px;box-shadow:var(--shadow-xl);max-height:90vh;max-width:560px;overflow-y:auto;width:90%}@keyframes slideUpModal{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.edit-modal-header{align-items:center;background:var(--gradient-primary);border-bottom:1px solid var(--border-color);border-radius:24px 24px 0 0;display:flex;justify-content:space-between;padding:1.25rem 1.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.edit-modal-header h2{font-size:1.125rem;font-weight:700;gap:.5rem;margin:0}.edit-modal-close,.edit-modal-header h2{align-items:center;color:#fff;display:flex}.edit-modal-close{background:#fff3;border:none;border-radius:8px;cursor:pointer;height:32px;justify-content:center;transition:all .2s ease;width:32px}.edit-modal-close:hover{background:#ffffff59;transform:rotate(90deg)}.edit-modal-body{padding:1.5rem}.photo-upload-area{align-items:center;background:var(--bg-tertiary);border:2px dashed var(--border-color);border-radius:16px;display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;padding:1.25rem}.photo-preview-circle{align-items:center;background:var(--gradient-primary);border:3px solid var(--border-light);border-radius:50%;display:flex;height:90px;justify-content:center;overflow:hidden;width:90px}.photo-preview-img{height:100%;object-fit:cover;width:100%}.photo-preview-initials{color:#fff;font-size:2.25rem;font-weight:700}.btn-upload-photo{align-items:center;background:var(--gradient-primary);border:none;border-radius:50px;color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1.25rem;transition:all .2s ease}.btn-upload-photo:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.photo-filename{color:var(--text-tertiary);font-size:.75rem;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edit-form-group{margin-bottom:1rem}.edit-form-group label{color:var(--text-secondary);display:block;font-size:.8125rem;font-weight:600;margin-bottom:.375rem}.edit-form-group input[type=date],.edit-form-group input[type=text],.edit-form-group textarea{background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:10px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:.875rem;padding:.75rem 1rem;transition:all .3s ease;width:100%}.edit-form-group input:focus,.edit-form-group textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.edit-form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.edit-form-checkbox,.edit-form-checkbox label{align-items:center;display:flex}.edit-form-checkbox label{cursor:pointer;gap:.5rem;margin-bottom:0}.edit-form-checkbox input[type=checkbox]{accent-color:#6366f1;cursor:pointer;height:18px;width:18px}.edit-modal-actions{border-top:1px solid var(--border-color);display:flex;gap:1rem;margin-top:1.5rem;padding-top:1rem}.btn-cancel-edit{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;flex:1 1;font-size:.875rem;font-weight:600;padding:.75rem;transition:all .2s ease}.btn-cancel-edit:hover:not(:disabled){background:var(--hover-bg)}.btn-cancel-edit:disabled{cursor:not-allowed;opacity:.6}.btn-save-profile{align-items:center;background:var(--gradient-primary);border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;flex:2 1;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem;transition:all .3s ease}.btn-save-profile:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-save-profile:disabled{cursor:not-allowed;opacity:.6}@media (max-width:480px){.edit-form-row{grid-template-columns:1fr}}.banner-edit-btn{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff3;border:1.5px solid #ffffff59;border-radius:10%;color:#fff;cursor:pointer;display:flex;font-size:.875rem;height:40px;justify-content:center;position:absolute;right:1.25rem;top:1.25rem;transition:all .25s ease;width:80px;z-index:3}.banner-edit-btn:hover{background:#ffffff59;box-shadow:0 4px 14px #0003;transform:scale(1.1)}.banner-edit-btn:active{transform:scale(.96)}.photo-zoom-overlay{align-items:center;animation:fadeInZoom .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000eb;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}@keyframes fadeInZoom{0%{opacity:0}to{opacity:1}}.photo-zoom-img{animation:scaleInZoom .25s cubic-bezier(.4,0,.2,1);border-radius:16px;box-shadow:0 25px 60px #00000080;max-height:90vh;max-width:90vw;object-fit:contain}@keyframes scaleInZoom{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.photo-zoom-close{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff26;border:1px solid #ffffff40;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.125rem;height:44px;justify-content:center;position:absolute;right:1.5rem;top:1.5rem;transition:all .2s ease;width:44px}.photo-zoom-close:hover{background:#ef4444;border-color:#ef4444;transform:rotate(90deg) scale(1.1)}
/*# sourceMappingURL=main.48d981f9.css.map*/