@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.text-type{display:inline-block;white-space:pre-wrap}.text-type__cursor{margin-left:.25rem;display:inline-block;opacity:1}.text-type__cursor--hidden{display:none}:root{--bg: #f7f8fb;--bg-gradient: radial-gradient(1200px 600px at 20% 0%, rgba(37,99,235,.1), transparent 60%), radial-gradient(1000px 500px at 80% 10%, rgba(34,197,94,.07), transparent 55%), #f7f8fb;--white: #ffffff;--foreground: #1e293b;--muted: #64748b;--muted-light: #94a3b8;--border: #e2e8f0;--input-border: #cbd5e1;--primary: #1e3a5f;--primary-hover: #162d4a;--primary-fg: #f1f5f9;--accent: #3b82f6;--accent-hover: #2563eb;--accent-fg: #ffffff;--secondary: #f1f5f9;--secondary-hover: #e2e8f0;--secondary-fg: #1e293b;--success: #16a34a;--success-bg: #dcfce7;--warning: #f59e0b;--warning-bg: #fef3c7;--error-color: #dc2626;--error-bg: #fef2f2;--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.07), 0 2px 4px -2px rgba(0,0,0,.05);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.08), 0 4px 6px -4px rgba(0,0,0,.04);--radius-sm: .375rem;--radius: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.25rem;--radius-3xl: 1.5rem;--radius-full: 9999px;--sidebar-width: 260px;--bottom-nav-height: 60px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:var(--foreground);background:var(--bg-gradient);line-height:1.6;min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%}h1,h2,h3,h4{line-height:1.3;font-weight:600;color:var(--foreground)}h1{font-size:1.75rem}h2{font-size:1.35rem}h3{font-size:1.15rem}.text-muted{color:var(--muted);font-size:.875rem}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.app-layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);background:var(--white);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:1.5rem 1rem;position:fixed;top:0;left:0;bottom:0;z-index:30;overflow-y:auto}.sidebar-logo{padding:0 .5rem 1.5rem;border-bottom:1px solid var(--border);margin-bottom:1rem}.sidebar-logo img{height:28px;width:auto}.sidebar-logo-text{font-size:1.25rem;font-weight:700;color:var(--primary);text-decoration:none}.sidebar-logo-text:hover{text-decoration:none}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:.25rem}.sidebar-link{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;border-radius:var(--radius-lg);font-size:.875rem;font-weight:500;color:var(--muted);text-decoration:none;transition:all .15s ease}.sidebar-link:hover{background:var(--secondary);color:var(--foreground);text-decoration:none}.sidebar-link.active{background:var(--primary);color:var(--primary-fg)}.sidebar-link svg,.sidebar-link .sidebar-icon{width:18px;height:18px;flex-shrink:0;opacity:.7}.sidebar-link.active svg,.sidebar-link.active .sidebar-icon{opacity:1}.sidebar-section{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted-light);padding:1.25rem .75rem .5rem}.sidebar-footer{border-top:1px solid var(--border);padding-top:1rem;margin-top:auto}.topbar{position:sticky;top:0;z-index:15;background:#fffffff2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--border);padding:.5rem 2rem;font-size:.875rem;color:var(--muted)}.topbar strong{color:var(--foreground)}.main-content{flex:1;margin-left:var(--sidebar-width);display:flex;flex-direction:column;min-height:100vh}.page-content{flex:1;padding:1.5rem 2rem 6rem;max-width:1200px;width:100%}.mobile-bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:30;background:var(--white);border-top:1px solid var(--border);height:var(--bottom-nav-height);padding:.25rem 0}.mobile-bottom-nav-inner{display:flex;align-items:center;justify-content:space-around;height:100%}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:.2rem;font-size:.65rem;color:var(--muted);text-decoration:none;padding:.25rem .5rem;border-radius:var(--radius);transition:color .15s}.mobile-nav-item:hover,.mobile-nav-item.active{color:var(--primary);text-decoration:none}.mobile-nav-item svg{width:20px;height:20px}.mobile-menu-btn{display:none;background:none;border:none;cursor:pointer;padding:.5rem;color:var(--foreground)}@media (max-width: 1023px){.sidebar{display:none}.main-content{margin-left:0}.mobile-bottom-nav{display:block}.mobile-menu-btn{display:flex}.topbar{padding:.5rem 1rem;font-size:.8rem}.page-content{padding:1rem 1rem 5rem}}.page-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1.5rem}.page-header h1{margin:0}.card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-2xl);padding:1.5rem;box-shadow:var(--shadow-sm)}.card-lg{border-radius:var(--radius-3xl);padding:2rem}.card+.card{margin-top:1rem}.kpi-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.kpi-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-2xl);padding:1.25rem;box-shadow:var(--shadow-sm)}.kpi-days-input{width:2.5rem;padding:.15rem .25rem;font-size:.7rem;border:1px solid var(--input-border);border-radius:var(--radius);text-align:center}.kpi-card .kpi-label{font-size:.75rem;font-weight:500;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.kpi-card .kpi-value{font-size:1.5rem;font-weight:700;color:var(--foreground);margin-top:.25rem}.dashboard-grid{display:grid;gap:1.5rem;grid-template-columns:minmax(0,2fr) minmax(0,1fr)}@media (max-width: 900px){.dashboard-grid{grid-template-columns:1fr}}.kpi-card .kpi-sub{font-size:.75rem;color:var(--muted);margin-top:.25rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:2.5rem;padding:0 1.25rem;border:none;border-radius:var(--radius-full);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s ease;text-decoration:none;white-space:nowrap;background:var(--primary);color:var(--primary-fg)}.btn:hover{background:var(--primary-hover);text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-accent{background:var(--accent);color:var(--accent-fg)}.btn-accent:hover{background:var(--accent-hover)}.btn-secondary{background:var(--secondary);color:var(--secondary-fg)}.btn-secondary:hover{background:var(--secondary-hover);text-decoration:none}.btn-outline{background:transparent;border:1px solid var(--border);color:var(--foreground)}.btn-outline:hover{background:var(--secondary)}.btn-ghost{background:transparent;color:var(--muted)}.btn-ghost:hover{background:var(--secondary);color:var(--foreground)}.btn-danger{background:var(--error-color);color:#fff}.btn-danger:hover{background:#b91c1c}.btn-small{height:2rem;padding:0 .875rem;font-size:.8rem}.btn-lg{height:2.75rem;padding:0 1.75rem;font-size:.95rem}.btn-group{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.8rem;font-weight:500;color:var(--foreground);margin-bottom:.375rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password],.form-group input[type=tel],.form-group input[type=number],.form-group input[type=url],.form-group select,.form-group textarea{width:100%;height:2.5rem;padding:0 .75rem;border:1px solid var(--input-border);border-radius:var(--radius);font-size:.875rem;font-family:inherit;color:var(--foreground);background:var(--white);transition:border-color .15s,box-shadow .15s}.form-group textarea{height:auto;padding:.625rem .75rem;resize:vertical}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #3b82f626}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--muted-light)}.form-group label input[type=checkbox]{margin-right:.5rem;accent-color:var(--primary)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 640px){.form-row{grid-template-columns:1fr}}.table-wrapper{overflow:hidden;border-radius:var(--radius-2xl);border:1px solid var(--border);background:var(--white)}table{width:100%;border-collapse:collapse;text-align:left;font-size:.875rem}thead{background:#f8fafc}thead th{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:.75rem 1rem;border-bottom:1px solid var(--border)}tbody tr{border-top:1px solid var(--border);transition:background-color .1s}tbody tr:first-child{border-top:none}tbody tr:hover{background:#f1f5f999}tbody td{padding:.75rem 1rem;vertical-align:middle}.list-unstyled{list-style:none;padding:0;margin:0}.list-item{padding:.875rem 0;border-bottom:1px solid var(--border)}.list-item:last-child{border-bottom:none}.list-item-content{display:flex;align-items:center;justify-content:space-between;gap:1rem}.list-item-meta{font-size:.8rem;color:var(--muted);margin-left:.5rem}.error{color:var(--error-color);font-size:.875rem;font-weight:500}.success{color:var(--success);font-size:.875rem;font-weight:500}.alert{padding:.75rem 1rem;border-radius:var(--radius-lg);font-size:.875rem;font-weight:500}.alert-error{background:var(--error-bg);color:var(--error-color);border:1px solid #fecaca}.alert-success{background:var(--success-bg);color:var(--success);border:1px solid #bbf7d0}.alert-warning{background:var(--warning-bg);color:#92400e;border:1px solid #fde68a}.badge{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:var(--radius-full);font-size:.7rem;font-weight:600;background:var(--secondary);color:var(--secondary-fg)}.badge-primary{background:#3b82f61f;color:#1d4ed8}.badge-success{background:var(--success-bg);color:var(--success)}.badge-warning{background:var(--warning-bg);color:#92400e}.badge-error{background:var(--error-bg);color:var(--error-color)}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:var(--bg-gradient)}.auth-card{width:100%;max-width:420px;border-radius:var(--radius-3xl);padding:2.5rem 2rem}.auth-card h2{text-align:center;margin-bottom:1.5rem}.auth-card .btn{width:100%;margin-top:.5rem}.auth-switch{text-align:center;margin-top:1.5rem;font-size:.85rem;color:var(--muted)}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.gap-1{gap:.5rem}.gap-2{gap:1rem}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.w-full{width:100%}.hidden{display:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:fadeInUp .2s ease-out}.dashboard-empty .dashboard-empty-icon{animation:dashboardEmptyIcon 2s ease-in-out infinite}@keyframes dashboardEmptyIcon{0%,to{transform:scale(1);box-shadow:0 8px 24px #3b82f640}50%{transform:scale(1.03);box-shadow:0 12px 28px #3b82f659}}.page-content>*{animation:fadeInUp .25s ease-out}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--muted-light)}.container{max-width:1000px;width:100%;padding:0}.address-autocomplete{position:relative}.address-suggestions{position:absolute;top:100%;left:0;right:0;z-index:50;background:var(--white);border:1px solid var(--border);border-top:none;border-radius:0 0 var(--radius) var(--radius);box-shadow:var(--shadow-lg);list-style:none;padding:.25rem 0;margin:0;max-height:260px;overflow-y:auto}.address-suggestions li{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.85rem;color:var(--foreground);cursor:pointer;transition:background .1s}.address-suggestions li:hover,.address-suggestions li.active{background:var(--secondary)}.address-suggestions .suggestion-icon{flex-shrink:0;color:var(--muted-light);display:flex;align-items:center}.nav{display:none}
