@import url('./design-system/tokens.css');
/* Shared application theme. Reference: docs/DESIGN_SYSTEM.md. */
body.md-app,body.md-auth{--primary:var(--g3-blue);--primary-dark:var(--g3-blue-hover);--secondary:#2b5f7b;--accent:var(--g3-mint);--bg:var(--g3-bg);--bg-light:#fff;--card:#fff;--text:var(--g3-ink);--text-light:#596e7b;--text-dim:#596e7b;--border:var(--g3-border);--success:#237a60;font:14px/1.5 'Segoe UI',Tahoma,sans-serif;color:#0f172a;background:#f5f7fa;margin:0!important;padding:0!important}
.md-app *,.md-auth *{box-sizing:border-box}.md-app [hidden],.md-auth [hidden]{display:none!important}.md-app :focus-visible,.md-auth :focus-visible{outline:3px solid #27856f;outline-offset:2px}.md-app button,.md-app input,.md-app select,.md-app textarea{font-family:inherit}.md-app button,.md-app summary{cursor:pointer}
body.md-app{height:100dvh;overflow:hidden;display:grid;grid-template-columns:205px minmax(0,1fr);grid-template-rows:52px minmax(0,1fr)}
.md-topbar{grid-column:1/-1;grid-row:1;display:flex;align-items:center;gap:16px;padding:8px 20px;background:#183b4d;color:#fff;z-index:30}.md-topbar .md-brand{font-size:19px;font-weight:700;color:#fff;text-decoration:none}.md-brand span{color:#62d4ba}.md-account{margin-left:auto;font-size:13px}.md-menu,.md-logout{background:transparent;color:white;border:1px solid #63808e;border-radius:7px;padding:7px 11px;min-height:36px}.md-menu{display:none}
.md-navigation{grid-column:1;grid-row:2;overflow:auto;background:#fff;border-right:1px solid #dce5e9;padding:14px 12px}.md-navigation p{font-size:12px;color:#596e7b;margin:12px 10px 4px}.md-navigation a{display:block;text-decoration:none;color:#425e6f;padding:8px 12px;border-radius:6px;margin:2px 0}.md-navigation a:hover{background:#eff6f8}.md-navigation a[aria-current]{background:#e5f6f0;border-left:3px solid #3dbea0;color:#215d4e;font-weight:600}
.md-workspace{grid-row:2;grid-column:2;min-width:0;min-height:0;display:flex;flex-direction:column;padding:14px 22px 0;overflow:hidden}.md-fixed{flex:none;position:relative;background:#f5f7fa;z-index:12}.md-content{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding-bottom:18px;scrollbar-gutter:stable}.md-app .mobile-topbar,.md-app .sidebar,.md-app .sidebar-overlay{display:none!important}
.md-app .main-content,.md-app .container,.md-app .page{margin:0!important;padding:0!important;width:100%!important;max-width:none!important;min-width:0}.md-app .md-titlebar{position:static!important;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;height:auto;min-height:44px;padding:0 0 8px!important;margin:0!important;background:transparent!important;box-shadow:none!important;border:0!important;color:#0f172a!important;border-radius:0}
.md-app h1,.md-app .page-title,.md-app .topbar-title{font-family:'Segoe UI',sans-serif!important;font-size:24px!important;font-weight:650!important;line-height:1.25!important;letter-spacing:-.4px;margin:0;color:#0f172a!important;background:none!important;-webkit-text-fill-color:currentColor!important}.md-app h2{font-size:19px}.md-app h3{font-size:16px}.md-app .header-actions,.md-app .topbar-actions,.md-app .topbar-right{display:flex;flex-wrap:wrap;gap:8px}
.md-app .btn,.md-app .action-btn,.md-button{border-radius:8px!important;min-height:40px;padding:8px 13px!important;font-size:13px!important;text-transform:none!important;letter-spacing:normal!important;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;box-shadow:none!important;border:1px solid #cad7de;background:white;color:#2b5f7b}.md-app .btn-primary,.md-app .btn-success{background:#2b5f7b!important;color:white!important;border-color:#2b5f7b!important}.md-app .btn-secondary{background:white!important;color:#2b5f7b!important;border:1px solid #cad7de!important}.md-app .btn-danger{color:#a32323!important;background:#fff2f2!important;border-color:#e4b5b5!important}.md-app button:hover{transform:none}.md-app .btn:disabled{opacity:.5;cursor:default}
.md-app input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.md-app select,.md-app textarea{min-height:42px;border:1px solid #c4d3da!important;border-radius:7px!important;background:#fff!important;color:#0f172a!important;padding:9px 11px!important;max-width:100%;font-size:14px;box-shadow:none!important}.md-app input[type=checkbox],.md-app input[type=radio]{accent-color:#237a60}.md-app label,.md-app .filter-label{color:#425e6f!important;text-transform:none!important;font-size:13px!important}
.md-app .form-card,.md-app .info-card,.md-app .card,.md-app .form-section,.md-app .report-section,.md-app .chart-card,.md-app .chart-box,.md-app .kpi-card,.md-app .stat-card,.md-app .result-card,.md-app .panel{background:white!important;color:#0f172a!important;border:1px solid #dce5e9!important;border-radius:10px!important;box-shadow:none!important;padding:16px!important;margin-bottom:14px}.md-app .stats-grid,.md-app .kpi-grid{gap:10px!important;margin-bottom:12px!important;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.md-app .stat-value,.md-app .kpi-value{font-size:25px!important;line-height:1.3;color:#2b5f7b}.md-app .stat-label,.md-app .kpi-label{font-size:12px!important;color:#596e7b!important}.md-app .form-row,.md-app .form-grid,.md-app .info-grid{gap:14px!important}.md-app .form-group{margin-bottom:10px}.md-app .section-title{font-size:16px!important;color:#2b5f7b!important;margin-bottom:12px!important}.md-app .table-card,.md-app .users-table-container{padding:0!important;box-shadow:none!important;background:white;border-radius:8px!important;max-width:100%;margin:0 0 12px!important}
.md-app .tabs,.md-app .tabs-bar,.md-app .tabs-nav{gap:8px!important;margin-bottom:8px!important;display:flex;flex-wrap:wrap;background:transparent!important;box-shadow:none!important;padding:0!important}.md-app .tab-btn,.md-app .tab-button{border-radius:0!important;background:transparent!important;color:#596e7b!important;border:0!important;border-bottom:3px solid transparent!important;min-height:40px;padding:7px 10px!important;font-size:13px!important}.md-app .tab-btn.active,.md-app .tab-button.active{border-bottom-color:#3dbea0!important;color:#215d4e!important}
.md-search{display:flex;align-items:center;gap:10px;background:white;border:1px solid #c4d3da;border-radius:8px;padding:0 12px;margin:6px 0}.md-app .md-search input{border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;font-size:16px!important;width:100%;min-width:0;padding:9px 0!important;height:44px}.md-search-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.md-filter-details{position:relative;margin-bottom:6px}.md-filter-details>summary{display:inline-flex;border:1px solid #cad7de;min-height:38px;align-items:center;padding:6px 12px;border-radius:7px;background:white;color:#2b5f7b;font-size:13px;list-style:none}.md-filter-panel{position:absolute;top:44px;left:0;width:min(750px,calc(100vw - 260px));max-height:60dvh;overflow:auto;padding:16px;background:white;border:1px solid #dce5e9;border-radius:10px;box-shadow:0 12px 35px #183b4d24;z-index:20}.md-app .md-filter-panel .filters-card,.md-app .md-filter-panel .filters-container,.md-app .md-filter-panel .filters-bar,.md-app .md-filter-panel .filters{margin:0!important;padding:0!important;box-shadow:none!important;background:white!important}.md-filter-panel .filters-row,.md-filter-panel .filters-grid{display:flex;flex-wrap:wrap;gap:12px}.md-filter-panel .filter-group{min-width:140px!important;flex:1}.md-filter-panel .md-filter-done{margin-top:12px}
.md-list-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;position:sticky;top:0;background:#f5f7fa;z-index:4;padding:4px 0}.md-list-tools .md-search{flex:1;min-width:180px;margin:0}.md-table-status{font-size:12px;color:#596e7b;white-space:nowrap}.md-save-status{font-size:12px;color:#596e7b;margin:0;min-height:16px}
.md-table-wrap{overflow:auto;max-width:100%;border:1px solid #dce5e9;border-radius:8px;background:#fff;max-height:65dvh;scrollbar-gutter:stable}.md-table{display:table!important;table-layout:fixed!important;border-collapse:separate!important;border-spacing:0!important;min-width:100%;margin:0!important;color:#0f172a!important}.md-table thead{display:table-header-group!important}.md-table tbody{display:table-row-group!important}.md-table tr{height:52px!important;display:table-row!important}.md-table th{background:#edf2f5!important;color:#425e6f!important;position:sticky!important;top:0;z-index:3;text-align:left;font-size:13px!important;text-transform:none!important;padding:6px 12px!important;height:44px!important;border-bottom:1px solid #dce5e9!important;overflow:visible;white-space:nowrap}.md-table td{display:table-cell!important;height:52px!important;padding:0 10px!important;vertical-align:middle!important;border-bottom:1px solid #e6ecef!important;overflow:hidden!important;white-space:nowrap!important;font-size:13px!important;color:inherit}.md-table td[rowspan]{height:auto!important}.md-table .md-cell{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:24px;max-height:46px}.md-table .md-cell>div,.md-table .md-cell>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.md-table td:has(input),.md-table td:has(select){overflow:visible!important}.md-table .action-btn,.md-table .btn{min-height:36px!important;padding:5px 7px!important;margin:0 2px!important;font-size:12px!important}.md-table .md-row-hidden{display:none!important}.md-head-sort{font:inherit;font-weight:600;max-width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;background:transparent;border:0;color:inherit;padding:4px 12px 4px 0;min-height:30px}.md-column-resize{position:absolute;right:0;top:0;bottom:0;width:10px;background:transparent;border:0;border-right:2px solid #becfd8;cursor:col-resize!important;touch-action:none;padding:0}.md-column-resize:hover,.md-column-resize:focus{background:#b5e8d9}.md-list-end{font-size:12px;color:#596e7b;text-align:center;padding:10px;position:sticky;left:0}.md-tip{position:fixed;max-width:min(460px,calc(100vw - 24px));max-height:60dvh;overflow:auto;z-index:99999;background:white;color:#0f172a;border:1px solid #dce5e9;box-shadow:0 8px 28px #183b4d33;border-radius:8px;padding:10px 14px;font-size:14px;white-space:normal;overflow-wrap:anywhere}
.md-app .modal-content{background:#fff!important;color:#0f172a!important;border:1px solid #dce5e9!important;border-radius:12px!important;max-width:calc(100vw - 24px);max-height:90dvh;overflow:auto}.md-app .modal-header,.md-app .modal-footer{padding:16px!important;background:#f7f9fa!important;color:#0f172a!important}.md-app .modal-body{padding:16px!important}.md-app .modal{z-index:1000!important}.md-app .hero-section{padding:20px!important;margin-bottom:14px!important;background:white!important;border:1px solid #dce5e9;border-radius:12px}.md-app .hero-section .logo{font-size:32px}.md-app .company-name{font-size:25px!important}.md-app .logo-container{margin-bottom:8px!important}.md-app .module-card{background:white!important;border:1px solid #dce5e9!important;border-radius:10px!important;padding:18px!important;color:#2b5f7b!important}.md-app .mc-label{color:#2b5f7b!important}.md-app .stats-section{background:#fff!important;color:#0f172a!important;padding:16px!important;margin:14px 0!important}.md-app .stats-section-title,.md-app .chart-box-title{color:#2b5f7b!important}
/* Existing dark dashboards: keep semantic warning colors, normalize neutral surfaces. */
.md-app [style*="background:#1e293b"],.md-app [style*="background: #1e293b"],.md-app [style*="background:#0f172a"],.md-app [style*="background: #0f172a"]{background:#fff!important;color:#0f172a!important;border-color:#dce5e9!important}.md-app [style*="color:#f1f5f9"],.md-app [style*="color: #f1f5f9"],.md-app [style*="color:#e2e8f0"]{color:#0f172a!important}.md-app .chart-container,.md-app .chart-box{min-width:0}.md-app .cal-grid,.md-app .calendar-grid{background:#fff}.md-app .cal-day{border-color:#dce5e9!important}.md-editable-wrap{max-width:100%;overflow:auto}.md-editable-wrap table{min-width:650px}.md-app .pagination-bar{display:none!important}
body.md-auth{min-height:100dvh;display:flex;align-items:center;justify-content:center;background:#edf3f5!important;padding:20px!important}.md-auth .login-container,.md-auth main{background:white!important;border:1px solid #dce5e9;border-radius:12px!important;padding:28px!important;width:100%;max-width:430px;box-shadow:0 12px 35px #183b4d14!important;margin:0}.md-auth h1{color:#2b5f7b!important;font-size:24px!important}.md-auth .btn,.md-auth button[type=submit]{background:#2b5f7b!important;color:#fff!important;border-radius:8px!important}.md-auth input{min-height:44px;border:1px solid #c4d3da!important;border-radius:7px!important;font-size:16px!important}.md-auth .password-field input{padding-right:52px!important}
@media(max-width:760px){body.md-app{grid-template-columns:1fr;grid-template-rows:52px minmax(0,1fr)}.md-menu{display:inline-flex;min-height:40px}.md-topbar{padding:6px 12px;gap:8px}.md-account{display:none}.md-logout{margin-left:auto;font-size:12px}.md-navigation{display:none}.md-navigation.is-open{display:block;position:fixed;top:52px;bottom:0;left:0;width:235px;z-index:25;box-shadow:10px 0 30px #183b4d22}.md-workspace{grid-column:1;padding:10px 12px 0}.md-app h1,.md-app .page-title,.md-app .topbar-title{font-size:21px!important}.md-app .md-titlebar{gap:6px}.md-app .header-actions{gap:4px}.md-app input:not([type=checkbox]):not([type=radio]),.md-app select,.md-app textarea{font-size:16px!important}.md-app .form-row,.md-app .form-grid,.md-app .main-layout,.md-app .info-grid,.md-app .charts-grid,.md-app .charts-row{grid-template-columns:1fr!important}.md-app .stats-grid,.md-app .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.md-app .stat-card,.md-app .kpi-card{padding:12px!important;min-width:0}.md-app .stat-value,.md-app .kpi-value{font-size:21px!important}.md-filter-panel{width:calc(100vw - 24px);max-height:55dvh}.md-table-wrap{max-height:60dvh}.md-app .btn{min-height:44px}.md-table .btn,.md-table .action-btn{min-height:40px!important}.md-app .section-title{font-size:15px!important}.md-app .form-card,.md-app .info-card{padding:14px!important}.md-app .cal-grid,.md-app .calendar-grid{min-width:650px}.md-app .calendar,.md-app .calendar-container,.md-app .calendar-card{overflow:auto}.md-app [style*="grid-template-columns:1fr 1fr 1fr"]{grid-template-columns:1fr!important}}
@media(prefers-reduced-motion:reduce){.md-app *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{body.md-app{display:block!important;height:auto!important;overflow:visible!important}.md-topbar,.md-navigation,.md-list-tools,.md-filter-details,.md-column-resize,.md-tip{display:none!important}.md-workspace,.md-content,.md-table-wrap{display:block!important;overflow:visible!important;height:auto!important;max-height:none!important;padding:0!important}.md-table .md-row-hidden{display:table-row!important}.md-table .md-cell{white-space:normal!important;max-height:none!important;overflow:visible!important}}

.md-app .md-table[style*="display: none"],.md-app .md-table[style*="display:none"]{display:none!important}

.md-table td>div[style*="flex-wrap"]{flex-wrap:nowrap!important;overflow-x:auto;max-height:52px;align-items:center}
.md-app .md-fixed .tabs-bar .tab-btn{box-shadow:none!important;flex:initial!important;min-width:0!important;padding:6px 9px!important;font-size:12px!important}
.md-app .md-fixed .tabs-bar .tab-badge{display:inline!important}
.md-app .md-fixed .md-search input{border:0!important}
.md-app .chart-title,.md-app .table-title,.md-app .card-title{color:#2b5f7b!important}
@media(max-width:760px){.md-app .calendar .cal-header{min-width:650px}.md-app .md-fixed .tabs-bar{gap:4px!important}}

/* Active business filters stay available while their panel is closed. */
.md-filter-chips{display:flex;flex-wrap:wrap;gap:6px;max-height:112px;overflow:auto;margin:0 0 6px}.md-filter-chips[hidden]{display:none}.md-filter-chip{border:1px solid #b4dbce;border-radius:20px;background:#e5f6f0;color:#215d4e;padding:6px 12px;min-height:44px;font:inherit;font-size:13px;max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:left}.md-filters-reset{min-height:44px}.md-filter-details>summary{min-height:44px}.md-filter-chip:focus-visible{outline:3px solid #27856f;outline-offset:2px}
@media(pointer:coarse){.md-column-resize{width:24px}.md-head-sort{padding-right:26px}}
@media print{.md-filter-chips{display:none}}

/* Retire the home page's legacy mobile controls; the shared menu owns navigation. */
.md-app[data-module='index'] #menu-toggle,.md-app[data-module='index'] #sidebar-overlay{display:none!important}


.orders-phone-label,.md-mobile-logout,.md-filter-icon,.md-filter-icon-count{display:none}
@media(max-width:760px){
.md-topbar>.md-logout{display:none}.md-mobile-logout{display:block;margin:16px 8px;padding:10px 14px;min-height:44px;background:white;color:#2b5f7b;border:1px solid #cad7de;border-radius:8px}
.md-app[data-module="orders"] .orders-desktop-label,.md-app[data-module="orders"] .orders-back{display:none!important}.orders-phone-label{display:inline}
.md-app[data-module="orders"] .md-titlebar{flex-wrap:nowrap;min-height:44px;padding-bottom:2px!important;gap:6px}.md-app[data-module="orders"] .md-titlebar h1{font-size:21px!important}
.md-app[data-module="orders"] .orders-create{width:44px;min-width:44px;padding:0!important;font-size:27px!important}.md-app[data-module="orders"] .md-titlebar>div{gap:0!important}
.md-app[data-module="orders"] .md-fixed .tabs-bar{flex-wrap:nowrap!important;overflow-x:auto;margin-bottom:2px!important;gap:0!important}.md-app[data-module="orders"] .md-fixed .tabs-bar .tab-btn{flex:0 0 auto!important;white-space:nowrap;min-height:40px;padding:6px!important;font-size:11px!important}
.orders-search-row{display:flex;align-items:center;gap:6px;position:relative;margin:2px 0 4px;min-width:0}.orders-search-row>.md-search{flex:1;min-width:0;margin:0;height:44px;padding:0 8px}.orders-search-row .md-search input{font-size:14px!important;height:42px;min-height:42px}.orders-search-row>.md-filter-details{margin:0;position:static;flex:none}.orders-search-row summary{width:44px;height:44px;padding:0;justify-content:center;position:relative}.orders-search-row .md-filter-text{display:none}.orders-search-row .md-filter-icon{display:block}.orders-search-row .md-filter-icon-count{display:block;position:absolute;right:-2px;top:-4px;border-radius:9px;background:#215d4e;color:white;padding:0 4px;font-size:10px}.orders-search-row .md-filter-panel{left:auto;right:0;top:48px;width:calc(100vw - 24px)}
.md-app[data-module="orders"] .md-save-status:empty,.md-app[data-module="orders"] .md-filter-chips:empty{display:none}.md-app[data-module="orders"] .md-workspace{padding-top:4px}.md-app[data-module="orders"] .md-filter-chips{margin:2px 0}
}

/* Orders: compact desktop columns, down to four characters plus cell padding. */
@media(min-width:761px){
 .md-app .md-orders-compact{min-width:0!important}
 .md-orders-compact th,.md-orders-compact td{padding-left:6px!important;padding-right:6px!important;min-width:0!important}
 .md-orders-compact .md-head-sort{padding-right:6px}
 .md-orders-compact .task-status{min-width:0;max-width:100%;box-sizing:border-box;padding:3px 4px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}
 .md-orders-compact .badge{max-width:100%;box-sizing:border-box;padding-left:4px;padding-right:4px;overflow:hidden;text-overflow:ellipsis}
 .md-orders-compact .phone-btn{max-width:100%}
 .md-orders-compact .btn{margin:0!important;padding:4px!important;min-width:0!important;max-width:100%;box-sizing:border-box}
 .md-orders-compact td:has(.btn){white-space:normal!important}
 .md-orders-compact .phone-actions{display:block}
 .md-app .md-orders-compact td>div[style*="flex-wrap"],.md-app .md-orders-compact .phone-actions>div{flex-wrap:wrap!important;overflow:visible!important;max-height:none!important}
 .md-orders-compact td .btn{flex-shrink:0}
}
