:root{--ut-sidebar: #0f1b2e;--ut-sidebar-hover: rgb(255 255 255 / 7%);--ut-sidebar-active: rgb(255 255 255 / 11%);--ut-sidebar-text: rgb(255 255 255 / 70%);--ut-sidebar-muted: rgb(255 255 255 / 42%);--ut-background: #f4f6f9;--ut-surface: #ffffff;--ut-surface-soft: #f8fafc;--ut-surface-muted: #f1f4f8;--ut-text: #0f172a;--ut-text-strong: #1e293b;--ut-text-secondary: #5b6475;--ut-text-muted: #8a93a3;--ut-border: #e2e7ee;--ut-border-strong: #cfd6e0;--ut-accent: #f97316;--ut-accent-soft: #fff4ec;--ut-primary: #cf4a0c;--ut-primary-hover: #b23f0a;--ut-primary-soft: #fff4ec;--ut-primary-text: #c2410c;--ut-info: #2563eb;--ut-info-soft: #eff6ff;--ut-success: #10b981;--ut-success-text: #047857;--ut-success-soft: #ecfdf5;--ut-warning: #f59e0b;--ut-warning-text: #92400e;--ut-warning-soft: #fffbeb;--ut-error: #ef4444;--ut-error-text: #b91c1c;--ut-error-soft: #fef2f2;--ut-radius-sm: 8px;--ut-radius-md: 12px;--ut-radius-lg: 16px;--ut-shadow-sm: 0 1px 2px rgb(15 23 42 / 5%);--ut-shadow-md: 0 8px 24px rgb(15 23 42 / 7%);--ut-shadow-lg: 0 18px 48px rgb(15 23 42 / 14%);--ut-focus: 0 0 0 3px rgb(207 74 12 / 20%);--ut-ease: cubic-bezier(.2, .7, .2, 1);--ut-sidebar-width: 264px;--ut-topbar-height: 64px}:root{font-family:DM Sans,Inter,ui-sans-serif,system-ui,sans-serif;color:#172033;background:#f4f7fa;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}a{color:inherit}.app-shell{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.sidebar{background:#101c2c;color:#fff;padding:28px 20px}.brand{display:flex;align-items:center;gap:12px;margin-bottom:42px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#36c3a4;color:#0c2924;font-weight:800}.brand strong,.brand small{display:block}.brand small{margin-top:2px;color:#9fadc0}.sidebar nav a{display:block;padding:12px 14px;border-radius:9px;color:#aeb9c8;text-decoration:none}.sidebar nav a.active{background:#1c2d42;color:#fff}.main-content{padding:48px}.page-header{margin-bottom:32px}.eyebrow{color:#15866f;font-weight:700;letter-spacing:.08em;text-transform:uppercase}h1{margin:6px 0 8px;font-family:Manrope,DM Sans,sans-serif;font-size:clamp(2rem,4vw,3rem)}.page-header p:last-child{color:#667085}.welcome-card{max-width:720px;padding:32px;border:1px solid #e1e7ef;border-radius:18px;background:#fff;box-shadow:0 14px 40px #1720330f}.welcome-card>span{color:#15866f;font-size:.85rem;font-weight:700;text-transform:uppercase}.welcome-card h2{margin:12px 0}code{padding:2px 6px;border-radius:5px;background:#eef2f6}@media(max-width:720px){.app-shell{grid-template-columns:1fr}.sidebar{padding:18px}.brand{margin-bottom:18px}.main-content{padding:28px 20px}}button,input{font:inherit}button{cursor:pointer}.brand{display:flex;align-items:center;gap:11px;margin:0}.brand-logo{display:block;width:46px;height:46px;flex:0 0 46px;padding:0;border:0;background:transparent;filter:drop-shadow(0 8px 14px rgb(255 107 23 / 18%));object-fit:contain}.brand-copy{min-width:0}.brand-name{display:block;color:#1d1d1b;font-family:Manrope,DM Sans,sans-serif;font-size:1.08rem;font-weight:800;letter-spacing:-.045em;line-height:1}.brand--inverse .brand-name{color:#fff}.brand small{display:block;margin-top:6px;color:#8290a5;font-size:.52rem;font-weight:800;letter-spacing:.105em;line-height:1;text-transform:uppercase;white-space:nowrap}.brand--inverse small{color:#ffffff7a}.brand-name-accent{color:var(--ut-accent)}.login-page{display:grid;min-height:100vh;grid-template-columns:1.08fr .92fr;background:#f5f7fb}.login-hero{position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:56px 7vw;background:var(--ut-sidebar)}.orb{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.1)}.orb-one{width:32rem;height:32rem;right:-10rem;top:-9rem}.orb-two{width:35rem;height:35rem;left:-10rem;bottom:-14rem;background:#1b3455;opacity:.55}.hero-copy{position:relative;z-index:1;max-width:620px;padding-bottom:38px}.pill{display:inline-block;padding:7px 13px;border:1px solid rgba(255,255,255,.1);border-radius:99px;color:#fff;background:#ffffff14;font-size:.82rem;font-weight:600}.hero-copy h1{margin:26px 0 20px;color:#fff;font-size:clamp(2.8rem,4.2vw,4.8rem);line-height:1.02;letter-spacing:-.055em}.hero-copy>p{max-width:540px;color:#b9c6d7;font-size:1.08rem;line-height:1.8}.security-note{display:flex;align-items:center;gap:15px;margin-top:40px;padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:#ffffff0f}.security-note>span{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:12px;color:#fff;background:#ff741f}.security-note strong,.security-note small{display:block;color:#fff}.security-note small{margin-top:5px;color:#aab8ca}.copyright{position:relative;color:#fff6}.login-form-panel{display:flex;align-items:center;justify-content:center;padding:40px 48px}.login-form-wrap{width:100%;max-width:440px}.mobile-brand{display:none;margin-bottom:48px}.overline{margin:0;color:var(--ut-primary)!important;font-size:.82rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.login-form-wrap h2{margin:12px 0 0;color:#14233b;font-size:2.4rem;letter-spacing:-.045em}.subtitle{margin:12px 0 32px;color:#6b7890;line-height:1.7}.login-form-wrap form>label,.password-label label{display:block;margin-bottom:9px;color:#263650;font-size:.9rem;font-weight:700}.login-form-wrap input{width:100%;height:49px;padding:0 15px;border:1px solid #dfe4ec;border-radius:12px;outline:none;color:#263650;background:#fff}.login-form-wrap input:focus{border-color:var(--ut-primary);box-shadow:0 0 0 3px #f56a1c1f}.password-label{display:flex;justify-content:space-between;margin-top:20px}.password-label button{border:0;color:var(--ut-primary);background:none;font-size:.84rem;font-weight:700}.password-input{position:relative}.password-input input{padding-right:48px}.password-input button{position:absolute;right:12px;top:50%;display:grid;padding:5px;border:0;color:#7c899d;background:none;transform:translateY(-50%)}.password-input svg{width:20px}.form-error{margin:12px 0 0;color:#b42318;font-size:.88rem}.primary-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:49px;margin-top:22px;border:0;border-radius:12px;color:#fff;background:linear-gradient(90deg,#ff8126,#f35f19);font-weight:800;box-shadow:0 12px 25px #f463183b}.primary-button:disabled{opacity:.65}.help{margin-top:28px;color:#8a96a8;text-align:center;font-size:.88rem}.help strong{color:#213a60}.dashboard{display:grid;min-height:100vh;grid-template-columns:255px 1fr;background:#f5f7fb}.dashboard-sidebar{display:flex;flex-direction:column;padding:22px 14px 14px;color:#fff;background:var(--ut-sidebar)}.dashboard-sidebar>.brand{padding:0 8px 22px;border-bottom:1px solid rgba(255,255,255,.1)}.nav-label{margin:27px 12px 10px;color:#ffffff61;font-size:.68rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase}.dashboard-sidebar nav button,.logout{display:flex;align-items:center;gap:12px;width:100%;height:44px;margin:3px 0;padding:0 13px;border:0;border-radius:11px;color:#ffffffa6;background:none;text-align:left}.dashboard-sidebar nav button:hover,.logout:hover{color:#fff;background:#ffffff14}.dashboard-sidebar nav button.active{color:#fff;background:var(--ut-primary)}.dashboard-sidebar svg{width:19px}.logout{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);border-radius:0}.dashboard-body{min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;height:74px;padding:0 28px;border-bottom:1px solid #e7eaf0;background:#fff}.menu-button{display:none;border:0;background:none}.search{position:relative}.search svg{position:absolute;left:12px;top:11px;width:17px;color:#8491a5}.search input{width:280px;height:40px;padding:0 12px 0 39px;border:0;border-radius:12px;outline:none;background:#f4f6f9}.profile{display:flex;align-items:center;gap:11px}.profile strong,.profile small{display:block}.profile strong{color:#23334d;font-size:.86rem}.profile small{margin-top:3px;color:#8793a5;font-size:.74rem}.notification{position:relative;padding:8px;border:0;color:#54637a;background:none}.notification i{position:absolute;right:7px;top:7px;width:7px;height:7px;border:2px solid white;border-radius:50%;background:var(--ut-primary)}.avatar{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:50%;color:#24446e;background:#dce8f6;font-size:.72rem;font-weight:800}.dashboard-content{width:100%;max-width:1600px;margin:auto;padding:24px 28px 32px}.heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.heading-row h1{margin:5px 0 8px;color:#172841;font-size:2rem}.heading-row>div>p:last-child{margin:0;color:#768399}.map-button{display:flex;align-items:center;gap:8px;height:41px;padding:0 16px;border:0;border-radius:12px;color:#fff;background:#172d4c;font-weight:700}.map-button svg{width:18px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}.metric-card,.activity-card{border:1px solid #e6eaf0;border-radius:17px;background:#fff;box-shadow:0 8px 30px #1f2d450b}.metric-card{display:flex;align-items:center;min-height:74px;gap:9px;padding:10px 12px}.metric-card p{margin:0 0 3px;color:#7a879a;font-size:.74rem}.metric-card strong{color:#1c2e48;font-size:1.45rem}.metric-card small{margin-left:9px;color:#8d98aa}.metric-icon{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:11px}.metric-icon svg{width:18px}.metric-icon.blue{color:#2d66a6;background:#e9f1fb}.metric-icon.orange{color:#e96518;background:#fff0e5}.metric-icon.violet{color:#7750aa;background:#f2ecfb}.dashboard-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:20px;margin-top:20px}.activity-card{padding:24px}.activity-card header{display:flex;justify-content:space-between}.activity-card h2,.route-card h2{margin:0;font-size:1.1rem}.activity-card header p{margin:5px 0;color:#8591a4;font-size:.84rem}.activity-card header button{border:0;color:var(--ut-primary);background:none;font-weight:800}.activity{display:grid;grid-template-columns:55px 1fr auto;gap:12px;align-items:center;padding:16px 0;border-bottom:1px solid #edf0f4}.activity:last-child{border:0}.activity time{color:#97a1b1;font-size:.84rem;font-weight:700}.activity strong,.activity small{display:block;color:#293a53;font-size:.84rem}.activity strong span{color:#718096;font-weight:400}.activity small{margin-top:5px;color:#929dad;font-size:.75rem}.activity em{padding:5px 9px;border-radius:99px;color:#268457;background:#eaf7f0;font-size:.72rem;font-style:normal}.activity em.done{color:#59677b;background:#eef2f6}.route-card{position:relative;overflow:hidden;padding:26px;border-radius:17px;color:#fff;background:#172d4c;box-shadow:0 14px 34px #172d4c29}.route-card>svg{color:#ff7a20}.route-card h2{margin-top:28px;font-size:1.25rem}.route-card>p{color:#fff9;font-size:.86rem;line-height:1.65}.avatar-row{display:flex;margin:26px 0}.avatar-row .avatar{margin-left:-6px;border:2px solid #172d4c}.avatar-row .avatar:first-child{margin-left:0}.route-card>button{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:41px;border:0;border-radius:12px;color:#18304f;background:#fff;font-weight:700}@media(max-width:900px){.login-page{grid-template-columns:1fr}.login-hero{display:none}.mobile-brand{display:block}.dashboard{grid-template-columns:1fr}.dashboard-sidebar{display:none}.menu-button{display:block}.metrics,.dashboard-grid{grid-template-columns:1fr}}@media(max-width:600px){.login-form-panel{padding:32px 24px}.topbar{padding:0 16px}.search{display:none}.profile>div{display:none}.dashboard-content{padding:24px 18px}.heading-row{align-items:flex-start;flex-direction:column}.activity{grid-template-columns:50px 1fr}.activity em{display:none}}.password-label a{color:var(--ut-primary);font-size:.84rem;font-weight:700;text-decoration:none}.form-notice,.success-message{margin:0 0 20px;padding:12px 14px;border-radius:10px;color:#285e49;background:#eaf7f0;font-size:.88rem}.simple-auth-page,.status-page{display:grid;min-height:100vh;place-items:center;padding:24px;background:#f5f7fb}.simple-auth-card{width:min(100%,480px);padding:36px;border:1px solid #e4e9f0;border-radius:20px;background:#fff;box-shadow:0 18px 48px #17203314}.simple-auth-card>.brand{margin-bottom:36px}.simple-auth-card h1{margin:10px 0;font-size:2rem}.simple-auth-card>p:not(.overline){color:#6b7890;line-height:1.65}.simple-form{display:grid;gap:10px;margin-top:24px}.simple-form label{margin-top:8px;color:#263650;font-size:.9rem;font-weight:700}.simple-form input{width:100%;height:49px;padding:0 15px;border:1px solid #dfe4ec;border-radius:12px;outline:none}.simple-form input:focus{border-color:var(--ut-primary);box-shadow:0 0 0 3px #f56a1c1f}.back-link{display:block;margin-top:24px;color:#213a60;font-weight:700;text-align:center;text-decoration:none}.status-page{align-content:center;text-align:center}.status-page h1{margin:8px 0}.status-page>p:not(.overline){color:#6b7890}.primary-link{display:inline-block;margin-top:16px;padding:12px 18px;border-radius:11px;color:#fff;background:#172d4c;font-weight:700;text-decoration:none}.spinner{width:36px;height:36px;border:3px solid #dfe4ec;border-top-color:var(--ut-primary);border-radius:50%;animation:spin .75s linear infinite}.permission-summary{display:inline-block;margin-top:10px!important;padding:5px 9px;border-radius:99px;color:#59677b!important;background:#eef2f6;font-size:.75rem}@keyframes spin{to{transform:rotate(360deg)}}.toast-viewport{position:fixed;z-index:150;right:20px;top:20px;display:grid;gap:10px;width:min(360px,calc(100vw - 40px))}.toast{padding:13px 15px;border-radius:11px;color:#285e49;background:#eaf7f0;box-shadow:0 10px 30px #14233729;font-weight:650}.toast.error{color:#b42318;background:#feeceb}.location-picker{overflow:hidden;border:1px solid #dfe4ec;border-radius:12px}.location-picker .leaflet-container{height:260px;width:100%}.location-marker-wrap{border:0;background:transparent}.location-marker{position:relative;display:block;width:28px;height:28px;transform:rotate(45deg);border:3px solid #fff;border-radius:50% 50% 50% 0;background:var(--ut-primary);box-shadow:0 4px 12px #172d4c4d}.location-marker:after{position:absolute;inset:7px;border-radius:50%;background:#fff;content:""}.location-actions,.coordinate-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;color:#667085;background:#f8fafc;font-size:.78rem}.location-actions button{padding:7px 10px;border:0;border-radius:8px;color:#fff;background:#172d4c;font-weight:700}.progress-control{display:grid;grid-template-columns:auto 80px auto auto;gap:8px;align-items:center;padding:14px;border:1px solid #dfe4ec;border-radius:11px}.progress-control legend{color:#34435a;font-size:.84rem;font-weight:700}.progress-control button{height:36px;border:0;border-radius:8px;color:var(--ut-primary);background:#fff0e5;font-weight:800}.progress-control input{height:36px}.progress-control progress{grid-column:1/-1;width:100%;accent-color:var(--ut-primary)}.dialog-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:20px;background:#0914258c}.confirm-dialog{width:min(100%,430px);padding:26px;border-radius:16px;background:#fff;box-shadow:0 20px 60px #0003}.confirm-dialog h2{margin:0}.confirm-dialog p{color:#69768a;line-height:1.5}.confirm-dialog footer{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.confirm-dialog footer>button:first-child{padding:0 15px;border:1px solid #dfe4ec;border-radius:10px;background:#fff}.export-columns-dialog{width:min(100%,520px)}.export-columns-actions{display:flex;gap:8px}.export-columns-actions button{padding:6px 12px;border:1px solid #dfe4ec;border-radius:8px;background:#fff;font-size:13px}.export-columns-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:16px 0 0;padding:0;border:0}.export-columns-list label{display:flex;align-items:center;gap:8px;font-size:14px}.export-columns-dialog footer .action-primary{display:inline-flex;align-items:center;gap:6px}.export-columns-dialog footer .action-primary svg{width:16px;height:16px}@media(max-width:520px){.export-columns-list{grid-template-columns:1fr}}@media(max-width:800px){.admin-grid,.admin-company-layout,.company-filters{grid-template-columns:1fr}.capacity-summary{grid-template-columns:auto 1fr}.capacity-summary b{grid-column:2}}.sub-tabs{display:flex;gap:8px;overflow:auto;margin:10px 0 16px}.sub-tabs button{padding:7px 10px;border:0;border-radius:8px;color:#59677b;background:#eef2f6;font-weight:700}.project-panel .activity-form{margin-top:10px}.real-metrics{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px}.dashboard-real-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.dashboard-real-grid .activity-card h2{margin-bottom:12px}.activity em.overdue{color:#b42318;background:#feeceb}.delivery-item{display:grid;grid-template-columns:1fr 110px 38px;gap:8px}.delivery-item select,.delivery-item input{height:42px;padding:0 10px;border:1px solid #dfe4ec;border-radius:9px;background:#fff}.delivery-item button{border:0;border-radius:9px;color:#b42318;background:#feeceb}.receipt-form{margin-top:20px;padding:18px;border-radius:12px;background:#f7f9fb}@media(max-width:1180px){.real-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.real-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-real-grid{grid-template-columns:1fr}}.app-shell-root>.app-workspace>.dashboard{display:block;min-height:auto;background:transparent}.app-shell-root>.app-workspace>.dashboard>.dashboard-sidebar,.app-shell-root>.app-workspace>.dashboard>.dashboard-body>.topbar{display:none}.app-shell-root>.app-workspace>.dashboard>.dashboard-body{min-width:0}.shared-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.shared-page-header h1{margin:5px 0 8px;color:#172841;font-size:2rem}.shared-page-header>div>p:last-child{margin:0;color:#768399}.data-state{display:grid;min-height:180px;place-items:center;align-content:center;padding:28px;color:#778399;text-align:center}.data-state .spinner{margin-bottom:12px}.data-state strong{color:#34435a}.data-state.error{color:#b42318;background:#fff7f6}.field-error>span,.field-error>small{color:#b42318}.field-error>small{font-weight:500}.field-error input,.field-error select{border-color:#e88b83}@media(max-width:900px){.app-shell-root>.app-workspace>.dashboard>.dashboard-body>.topbar{display:none}.dashboard-content{width:min(620px,calc(100vw - 24px))}}.shared-page-header.with-tabs{margin-bottom:16px}.page-tabs{display:flex;gap:4px;width:fit-content;max-width:100%;margin-bottom:24px;padding:4px;overflow-x:auto;border-radius:12px;background:var(--ut-surface-muted)}.page-tabs a{padding:8px 14px;border-radius:9px;color:var(--ut-text-secondary);font-size:.85rem;font-weight:700;text-decoration:none;white-space:nowrap}.page-tabs a:hover{color:var(--ut-text-strong)}.page-tabs a.active{color:#fff;background:var(--ut-sidebar);box-shadow:0 3px 8px #11213b29}.confirm-dialog-icon{display:grid;width:42px;height:42px;margin-bottom:14px;place-items:center;border-radius:12px;color:#b45309;background:var(--ut-warning-soft)}.confirm-dialog-icon svg{width:22px;height:22px}.warning-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border:0;border-radius:11px;color:#fff;background:#d97706;font-weight:750}.warning-button:hover:not(:disabled){background:#b45309}.warning-button:disabled{opacity:.65}.customers-content{padding:24px 18px}.catalog-grid,.operations-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:20px}.catalog-form{margin:0;padding:24px;border:1px solid #e5eaf0;border-radius:16px;background:#fff}.catalog-option{display:grid!important;grid-template-columns:auto 1fr;gap:10px!important;align-items:start;padding:12px;border:1px solid #e5eaf0;border-radius:11px;background:#f8fafc;cursor:pointer}.catalog-option input{width:17px!important;height:17px!important;margin-top:2px;accent-color:var(--ut-primary)}.catalog-option span,.catalog-option strong,.catalog-option small{display:block}.catalog-option strong{color:#344054;font-size:13px}.catalog-option small{margin-top:3px;color:#667085;font-size:12px;font-weight:400;line-height:1.4}.danger-text{color:#b42318}.route-map{padding:24px;border-radius:16px;color:#fff;background:#172d4c}.route-map svg{width:100%;margin-top:15px;border-radius:12px;background:#eef3f8}.operations-grid .customer-table-card{padding:20px}@media(max-width:850px){.catalog-grid,.operations-grid{grid-template-columns:1fr}}.operations-page{display:grid;gap:18px}.operations-map-card,.operations-note{padding:20px;border:1px solid #e4e9ef;border-radius:16px;background:#fff}.workday-overview{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(240px,.65fr);gap:14px;align-items:stretch}.workday-overview .operations-map-card{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:clamp(540px,70vh,760px);padding:16px}.workday-overview-aside{display:grid;align-content:start;gap:12px}.operations-map-card>header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}.operations-map-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.operations-map-tools select{min-height:34px;padding:0 10px;border:1px solid #dfe4ec;border-radius:9px;background:#fff;font:inherit;font-size:13px}.workday-day-toggle{display:inline-flex;align-items:center;gap:4px}.workday-day-toggle svg{width:15px;height:15px}.workday-segment-row td{padding-top:8px;padding-bottom:8px;color:#69768a;background:#f8fafc;font-size:.86em}.workday-segments{padding:16px;border:1px solid #e4e9ef;border-radius:16px;background:#fff}.workday-segments h2{margin:0 0 10px;font-size:1rem}.workday-segments ol{display:grid;gap:8px;margin:0;padding:0;list-style:none}.workday-segments li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid #edf0f4;border-radius:12px}.workday-segments li>div{display:grid;gap:2px}.workday-segments li span{font-size:.86rem}.workday-segments li small{color:#69768a}.workday-open-notice{margin:0 0 14px;padding:10px 14px;border:1px solid #f3d27a;border-radius:10px;color:#6b4d00;background:#fff8e6;font-size:.86rem}.operations-map-count{flex:0 0 auto;padding:4px 9px;border-radius:999px;color:#176b55;background:#e7f5ef;font-size:12px;font-weight:700}.operations-map-card h2,.operations-note h2,.customer-table-card>h2{margin:0 0 5px;color:#172d4c;font-size:18px}.operations-map-card p,.operations-note p{margin:0;color:#667085}.operations-map,.operations-map-empty{height:360px;overflow:hidden;border-radius:12px;background:#eef3f8}.operations-map .leaflet-container{height:100%;width:100%}.operations-map{position:relative}.workday-project-marker-wrap{border:0;background:transparent}.workday-project-marker{display:grid;width:28px;height:28px;place-items:center;border:3px solid white;border-radius:50%;color:#fff;background:#7c3aed;box-shadow:0 2px 8px #1e293b61;font-size:10px;font-weight:900}.workday-map-legend{position:absolute;z-index:500;right:10px;bottom:22px;display:flex;gap:12px;padding:7px 10px;border:1px solid #dfe5ec;border-radius:9px;color:#425269;background:#fffffff0;box-shadow:0 3px 12px #11213b1f;font-size:11px;font-weight:700}.workday-map-legend span{display:flex;align-items:center;gap:5px}.workday-map-legend i{width:9px;height:9px;border-radius:50%}.workday-map-legend .route-point{background:#2563eb}.workday-map-legend .project-point{background:#7c3aed}.operations-map-empty{display:grid;height:120px;place-items:center;color:#667085}.operations-filters label{display:grid;gap:5px;color:#475467;font-size:12px;font-weight:700}.operations-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.workday-overview .operations-summary{grid-template-columns:1fr;gap:8px}.operations-summary article{display:flex;align-items:center;gap:12px;padding:18px;border:1px solid #e4e9ef;border-radius:14px;background:#fff}.workday-overview .operations-summary article{gap:10px;min-height:68px;padding:12px 14px;border-radius:12px}.workday-overview .operations-summary article>span{width:34px;height:34px}.workday-overview .operations-summary strong{font-size:16px}.workday-overview .operations-note{padding:14px;border-radius:12px}.workday-overview .operations-note h2{font-size:15px}.workday-overview .operations-note p{font-size:13px;line-height:1.45}.workday-overview .operations-map{height:100%;min-height:440px}.operations-summary article>span{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;color:#176b55;background:#e7f5ef}.operations-summary small,.operations-summary strong{display:block}.operations-summary strong{margin-top:3px;color:#172d4c;font-size:18px}.table-link,.back-button{border:0;color:var(--ut-primary-text);background:none;font-weight:700;cursor:pointer}.back-button{display:flex;align-items:center;gap:7px;width:max-content;padding:0}.back-button svg{width:18px}.empty-inline{margin:16px 0 0;color:#667085}.workday-visit-target,.workday-visit-record,.workday-visit-result{display:grid;gap:3px}.workday-visit-target span{width:max-content;padding:2px 7px;border-radius:999px;color:#176b55;background:#e7f5ef;font-size:11px;font-weight:700}.workday-visit-target small,.workday-visit-record small{color:#667085}.workday-visit-result strong{color:#172d4c}.workday-visit-result span{color:#667085}@media(max-width:850px){.workday-overview{grid-template-columns:1fr}.workday-overview .operations-map-card{min-height:500px}.workday-overview .operations-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.operations-summary{grid-template-columns:1fr}.operations-map{height:300px}.operations-filters{align-items:stretch}.operations-filters label{width:100%}}@media(max-width:620px){.workday-overview .operations-map-card{min-height:430px}.workday-overview .operations-summary{grid-template-columns:1fr}.operations-map-card>header{gap:10px}.operations-map-count{display:none}}.project-panel{position:relative;width:min(100%,720px);height:100%;overflow:auto;padding:40px;background:#fff;box-shadow:-18px 0 45px #0f1c3029}.project-panel h2{color:#172841}.customer-form textarea{min-height:90px;padding:10px 13px;border:1px solid #dfe4ec;border-radius:10px;font:inherit;resize:vertical}.project-info{padding-top:8px}.dashboard .project-panel{width:min(100%,1100px)}.customer-form select{width:100%;height:44px;padding:0 13px;border:1px solid #dfe4ec;border-radius:10px;outline:none;background:#fff}.reminder-agenda article:not(.completed) .reminder-icon{color:#9a6700;background:#fff3cd}.reminder-agenda article.completed .reminder-icon{color:#24704e;background:#e8f7ef}.assignment-note{margin:0;padding:12px 14px;border-radius:10px;color:#285e49;background:#eaf7f0;font-size:.84rem}.project-panel-wide{width:min(100%,1100px)}.customer-activity{margin-top:28px;padding-top:6px;border-top:1px solid #e7ebf0;background:#fff}.activity-tabs{position:sticky;top:0;z-index:1;display:flex;gap:20px;padding:14px 0 10px;background:#fff}.activity-tabs button{padding:8px 0;border:0;border-bottom:2px solid transparent;color:#7c889a;background:none;font-weight:700}.activity-tabs button.active{border-color:var(--ut-primary);color:var(--ut-primary)}.activity-form{display:flex;gap:8px;margin:10px 0 14px}.activity-form input{min-width:0;height:39px;flex:1;padding:0 10px;border:1px solid #dfe4ec;border-radius:9px}.activity-form button,.complete-button{padding:0 12px;border:0;border-radius:9px;color:#fff;background:#172d4c;font-weight:700}.reminder-form{flex-wrap:wrap}.reminder-form input{flex-basis:145px}.activity-list article{position:relative;padding:13px 0;border-top:1px solid #edf0f4}.activity-list strong{color:#273950;font-size:.86rem}.activity-list time{float:right;color:#8b96a6;font-size:.72rem}.activity-list p{margin:6px 0 0;color:#69768a;font-size:.82rem;line-height:1.45}.activity-list article.completed{opacity:.58}.activity-empty{color:#8792a2;text-align:center}.complete-button{margin-top:8px;padding:6px 9px;font-size:.72rem}.button-link{border:0}.dashboard-sidebar nav a{display:flex;align-items:center;gap:12px;min-height:44px;margin:3px 0;padding:0 13px;border-radius:11px;color:#ffffffa6;text-decoration:none}.dashboard-sidebar nav a:hover{color:#fff;background:#ffffff14}.dashboard-sidebar nav a.active{color:#fff;background:var(--ut-primary)}.customers-content{max-width:1400px;margin:auto;padding:36px}.customers-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.customers-heading h1{margin:5px 0 8px;color:#172841;font-size:2rem}.customers-heading p:last-child{margin:0;color:#768399}.action-primary,.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border:0;border-radius:11px;color:#fff;background:var(--ut-primary);font-weight:750}.action-primary svg,.danger-button svg{width:17px}.danger-button{color:#b42318;background:#feeceb}.customer-feedback{padding:12px 14px;border-radius:11px;color:#256c4c;background:#eaf7f0}.customer-toolbar{display:flex;gap:12px;margin:26px 0 16px}.customer-toolbar label{position:relative;flex:1}.customer-toolbar svg{position:absolute;left:13px;top:11px;width:18px;color:#8491a5}.customer-toolbar input,.customer-toolbar select,.status-field select{height:43px;border:1px solid #dfe4ec;border-radius:11px;outline:none;background:#fff}.customer-toolbar input{width:100%;padding:0 14px 0 42px}.customer-toolbar select{min-width:200px;padding:0 12px}.customer-table-card{overflow:hidden;border:1px solid #e5eaf0;border-radius:16px;background:#fff;box-shadow:0 8px 28px #1f2d450a}.table-scroll{overflow-x:auto}.customer-table-card table{width:100%;border-collapse:collapse;text-align:left}.customer-table-card th{padding:14px 18px;color:#748197;background:#f8fafc;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase}.customer-table-card td{padding:16px 18px;border-top:1px solid #edf0f4;color:#34435a;font-size:.87rem}.customer-table-card td strong,.customer-table-card td small{display:block}.customer-table-card td small{margin-top:5px;color:#8a95a6}.search-results-scroll{width:100%;scrollbar-width:thin}.search-results-table{width:100%;min-width:680px;table-layout:fixed;border-collapse:collapse;text-align:left}.search-results-table th{padding:12px 14px;color:#667085;background:#f8fafc;font-size:.72rem;font-weight:800;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap}.search-results-table td{overflow:hidden;padding:14px;border-top:1px solid #edf0f4;color:#34435a;font-size:.86rem;text-overflow:ellipsis;vertical-align:middle}.search-results-table th+th,.search-results-table td+td{border-left:1px solid #f0f2f5}.search-results-table tbody tr:hover td{background:#fbfcfe}.search-results-table .result-col-primary{width:28%}.search-results-table .result-col-secondary{width:18%}.search-results-table .result-col-tertiary{width:15%}.search-results-table .result-col-status{width:112px}.search-results-table .result-col-select{width:52px;padding-right:8px;overflow:visible;text-overflow:clip}.search-results-table .result-col-select input{display:block;margin:0}.list-selection-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;padding:10px 14px;border:1px solid #c9d8f5;border-radius:10px;color:#23406e;background:#eef4ff;font-size:.84rem}.list-selection-bar strong{margin-right:auto}.list-selection-bar button:not(.action-primary){padding:0 12px;border:1px solid #dfe4ec;border-radius:10px;background:#fff}.search-results-table .result-col-actions{width:168px}.result-cell-stack{min-width:0}.result-cell-stack strong,.result-cell-stack small,.result-cell-ellipsis{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-cell-stack small{margin-top:4px;color:#7b8798}.result-cell-nowrap{white-space:nowrap}.role-badges{display:flex;overflow:hidden;flex-wrap:nowrap;gap:5px}.role-badges span{overflow:hidden;padding:4px 7px;border-radius:7px;color:#475467;background:#eef2f6;font-size:.72rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.role-badges .role-badge-more{flex:0 0 auto;color:#b54708;background:#fff0e5}.role-badges .role-badge-empty{color:#7b8798;background:transparent}.users-results-table{min-width:760px}.projects-results-table,.companies-results-table,.deliveries-results-table{min-width:880px}.catalog-results-table{min-width:600px}.search-results-table .invitation-actions{flex-wrap:nowrap}@media(max-width:1180px){.search-results-table .result-col-tertiary{display:none}.projects-results-table,.companies-results-table,.deliveries-results-table,.users-results-table{min-width:680px}}@media(max-width:760px){.search-results-table{min-width:540px}.search-results-table .result-col-secondary{display:none}.search-results-table .result-col-primary{width:auto}.search-results-table .result-col-actions{width:142px}.search-results-table th,.search-results-table td{padding:12px}}.table-message{padding:42px;color:#778399;text-align:center}.table-message.error{color:#b42318}.status-pill{display:inline-block;padding:5px 9px;border-radius:99px;color:#76501a;background:#fff3d8;font-size:.74rem;text-transform:capitalize}.status-pill.active{color:#24704e;background:#e8f7ef}.status-pill.inactive{color:#667085;background:#eef1f5}.row-action{padding:7px 10px;border:0;color:#e85f18;background:none;font-weight:700;white-space:nowrap}.pagination{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-top:1px solid #edf0f4;color:#758195;font-size:.84rem}.pagination div{display:flex;align-items:center;gap:10px}.pagination button{display:grid;place-items:center;width:32px;height:32px;border:1px solid #dfe4ec;border-radius:9px;background:#fff}.pagination button:disabled{opacity:.4}.pagination svg{width:16px}.customer-overlay{position:fixed;z-index:20;inset:0 0 0 255px;display:flex;justify-content:flex-end;background:#0d1a2d73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.customer-panel{position:relative;width:min(100%,510px);height:100%;overflow:auto;padding:40px;background:#fff;box-shadow:-18px 0 45px #0f1c3029}.customer-panel h2{margin:8px 0;color:#172841;font-size:1.8rem}.panel-close{position:absolute;top:20px;right:20px;display:grid;padding:8px;border:0;border-radius:9px;color:#68758a;background:#f2f5f8}.panel-close svg{width:19px}.customer-panel-wide{width:min(100%,920px)}.customer-detail-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-right:44px}.customer-detail-header>div>p:last-child{margin:0;color:#778399}.customer-detail-header .detail-actions{margin:0}.customer-detail-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(360px,1.2fr);gap:22px;margin-top:26px}.customer-summary-card,.customer-map-card{padding:20px;border:1px solid #e5eaf0;border-radius:15px;background:#fff}.customer-summary-card h3,.customer-map-card h3{margin:0 0 12px;color:#273950;font-size:1rem}.customer-summary-card .customer-detail{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin:0 0 18px}.location-viewer{overflow:hidden;border:1px solid #e1e6ed;border-radius:12px}.location-viewer .leaflet-container{width:100%;height:285px}.location-viewer footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 13px;color:#69768a;background:#f8fafc;font-size:.78rem}.location-viewer footer span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-viewer footer a{flex:0 0 auto;color:var(--ut-primary);font-weight:700;text-decoration:none}.location-empty{display:grid;min-height:285px;place-items:center;padding:24px;border:1px dashed #cfd6df;border-radius:12px;color:#7a8799;background:#f8fafc;text-align:center}.activity-title{display:flex;align-items:center;gap:10px;padding-right:140px}.reminder-status{display:inline-flex;padding:4px 8px;border-radius:99px;font-size:.69rem;font-weight:800}.reminder-status.pending{color:#855512;background:#fff3d8}.reminder-status.done{color:#24704e;background:#e8f7ef}.reminder-status.overdue{color:#b42318;background:#feeceb}.customer-form{display:grid;gap:16px;margin-top:26px}.customer-form label,.status-field{display:grid;gap:7px;color:#34435a;font-size:.84rem;font-weight:700}.customer-form input{width:100%;height:44px;padding:0 13px;border:1px solid #dfe4ec;border-radius:10px;outline:none}.customer-form input:focus,.customer-toolbar input:focus{border-color:var(--ut-primary);box-shadow:0 0 0 3px #f56a1c1a}.submit-customer{margin-top:8px}.customer-detail{display:grid;gap:0;margin:28px 0}.customer-detail div{padding:13px 0;border-bottom:1px solid #edf0f4}.customer-detail dt{color:#8490a2;font-size:.75rem}.customer-detail dd{margin:5px 0 0;color:#263750}.status-field select{margin-top:2px;padding:0 10px}.detail-actions{display:flex;gap:10px;margin-top:28px}@media(max-width:600px){.customers-content{padding:24px 16px}.customers-heading{align-items:flex-start;flex-direction:column}.customer-toolbar{flex-direction:column}.customer-toolbar select{width:100%}.customer-panel{padding:34px 22px}.customer-table-card table:not(.search-results-table) th:nth-child(2),.customer-table-card table:not(.search-results-table) td:nth-child(2),.customer-table-card table:not(.search-results-table) th:nth-child(3),.customer-table-card table:not(.search-results-table) td:nth-child(3){display:none}}@media(max-width:760px){.customer-detail-header{align-items:flex-start;flex-direction:column}.customer-detail-grid,.customer-summary-card .customer-detail{grid-template-columns:1fr}.location-viewer footer{align-items:flex-start;flex-direction:column}.activity-title{padding-right:0}.activity-list time{float:none;display:block;margin-top:5px}}.customer-overlay:has(.customer-panel-wide){background:#f5f7fb;-webkit-backdrop-filter:none;backdrop-filter:none}.customer-panel.customer-panel-wide{width:100%;padding:48px max(40px,calc((100vw - 1400px)/2));background:#f5f7fb;box-shadow:none}.customer-panel-wide>.panel-close{position:fixed;z-index:5;top:22px;right:28px}.customer-panel-wide .customer-detail-grid{grid-template-columns:minmax(340px,.75fr) minmax(520px,1.25fr)}.customer-panel-wide .location-viewer .leaflet-container{height:360px}.customer-panel-wide .customer-activity{padding:8px 22px 28px;border:1px solid #e5eaf0;border-radius:15px;background:#fff}@media(max-width:900px){.customer-overlay{left:0}.customer-panel.customer-panel-wide{padding:42px 22px}.customer-panel-wide .customer-detail-grid{grid-template-columns:1fr}.customer-panel-wide>.panel-close{top:12px;right:14px}}.dashboard>.customer-overlay:has(>.project-panel){background:#f5f7fb;-webkit-backdrop-filter:none;backdrop-filter:none}.dashboard>.customer-overlay>.project-panel{width:100%;padding:48px max(40px,calc((100vw - 1400px)/2));background:#f5f7fb;box-shadow:none}.dashboard>.customer-overlay>.project-panel>.panel-close{position:fixed;z-index:5;top:22px;right:28px}.dashboard>.customer-overlay>.project-panel>.activity-tabs{gap:8px;margin:24px 0;padding:6px;border:1px solid #e1e6ed;border-radius:13px;background:#fff}.dashboard>.customer-overlay>.project-panel>.activity-tabs button{flex:1;padding:11px 16px;border:0;border-radius:9px}.dashboard>.customer-overlay>.project-panel>.activity-tabs button:nth-child(4){order:1}.dashboard>.customer-overlay>.project-panel>.activity-tabs button:nth-child(3){order:2}.dashboard>.customer-overlay>.project-panel>.activity-tabs button:nth-child(2){order:3}.dashboard>.customer-overlay>.project-panel>.activity-tabs button:nth-child(1){order:4}.dashboard>.customer-overlay>.project-panel>.activity-tabs button:hover{color:var(--ut-primary);background:#fff4ec}.dashboard .project-info,.dashboard .attachments-section,.dashboard .project-panel>.activity-list,.dashboard .project-panel>.activity-tabs+div{padding:24px;border:1px solid #e5eaf0;border-radius:16px;background:#fff}.dashboard .attachment-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.dashboard .attachment-grid article.cover{order:-1;grid-column:1/-1;border:2px solid var(--ut-primary);box-shadow:0 12px 32px #192a431f}.dashboard .attachment-grid article.cover img{height:420px}.dashboard .attachment-grid article.cover>div:before{display:inline-flex;margin:0 8px 8px 0;padding:4px 8px;border-radius:99px;color:#a9430d;background:#fff0e5;font-size:.7rem;font-weight:800;content:"PORTADA DEL PROYECTO"}.dashboard .sub-tabs{margin-bottom:24px}.dashboard .sub-tabs+.activity-list{position:relative;padding-left:34px}.dashboard .sub-tabs+.activity-list:before{position:absolute;top:22px;bottom:22px;left:13px;width:2px;background:#dfe5ec;content:""}.dashboard .sub-tabs+.activity-list article{padding:16px 18px;margin-bottom:12px;border:1px solid #e5eaf0;border-radius:12px;background:#fff}.dashboard .sub-tabs+.activity-list article:before{position:absolute;top:20px;left:-28px;width:12px;height:12px;border:3px solid #fff;border-radius:50%;background:var(--ut-primary);box-shadow:0 0 0 2px #f5a36f;content:""}@media(max-width:900px){.dashboard>.customer-overlay>.project-panel{padding:42px 22px}.dashboard .attachment-grid{grid-template-columns:1fr}.dashboard .attachment-grid article.cover img{height:280px}.dashboard>.customer-overlay>.project-panel>.activity-tabs button{flex:0 0 auto}}.crm-timeline>header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:10px 0 20px}.crm-timeline>header p{margin:0 0 5px}.crm-timeline>header span{color:#7b8798;font-size:.8rem}.crm-timeline>header nav{display:flex;gap:5px;padding:4px;border-radius:10px;background:#eef2f6}.crm-timeline>header button{padding:7px 10px;border:0;border-radius:7px;color:#657287;background:transparent;font-weight:700}.crm-timeline>header button.active{color:#fff;background:#172d4c}.timeline-day{display:grid;grid-template-columns:90px minmax(0,1fr);gap:18px}.timeline-day>h3{position:sticky;top:58px;align-self:start;margin:16px 0;color:#526176;font-size:.82rem;text-transform:capitalize}.timeline-events{position:relative;padding-left:34px}.timeline-events:before{position:absolute;top:28px;bottom:20px;left:13px;width:2px;background:#e2e7ee;content:""}.timeline-event{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;min-height:66px;padding:12px 14px;margin-bottom:8px;border:1px solid #e8ecf1;border-radius:12px;background:#fff}.timeline-icon{position:absolute;top:17px;left:-39px;display:grid;place-items:center;width:28px;height:28px;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #dfe5ec}.timeline-icon svg{width:14px}.timeline-event>div{grid-column:2}.timeline-event strong{color:#25364e;font-size:.88rem}.timeline-event p{margin:4px 0;color:#657287;font-size:.82rem}.timeline-event small{color:#8994a4;font-size:.74rem}.timeline-event.warning .timeline-icon{color:#a95b14;background:#fff0df}.timeline-event.success .timeline-icon{color:#24704e;background:#e8f7ef}.timeline-event.update .timeline-icon{color:#285f9d;background:#eaf2fc}.timeline-event.note .timeline-icon{color:#6655a3;background:#f0edfb}.timeline-event.location .timeline-icon{color:#17736c;background:#e5f6f4}.timeline-detail{display:block;margin-top:7px;padding:0;border:0;color:var(--ut-primary);background:none;font-size:.75rem;font-weight:700}.timeline-expanded{padding:8px 10px!important;border-radius:8px;background:#f7f9fb}.crm-timeline .activity-empty{padding:30px}@media(max-width:700px){.crm-timeline>header{align-items:flex-start;flex-direction:column}.crm-timeline>header nav{max-width:100%;overflow:auto}.timeline-day{grid-template-columns:1fr}.timeline-day>h3{position:static;margin:18px 0 4px}.timeline-events{padding-left:30px}}.dashboard>.customer-overlay>.project-panel>.activity-tabs:has(+.project-info) button:nth-child(1),.dashboard>.customer-overlay>.project-panel>.activity-tabs:has(+.activity-list) button:nth-child(2),.dashboard>.customer-overlay>.project-panel>.activity-tabs:has(+.attachments-section) button:nth-child(3),.dashboard>.customer-overlay>.project-panel>.activity-tabs:has(+div>.sub-tabs) button:nth-child(4){color:#fff;background:var(--ut-primary);box-shadow:0 5px 14px #f56a1c38}.dashboard .sub-tabs button{position:relative;padding:9px 13px}.dashboard .sub-tabs button:focus{color:#fff;background:#172d4c;outline:none;box-shadow:0 4px 12px #172d4c2e}.dashboard .sub-tabs:has(+.activity-form:not(.reminder-form)) button:nth-child(2),.dashboard .sub-tabs:has(+.reminder-form) button:nth-child(3){color:#fff;background:#172d4c;box-shadow:0 4px 12px #172d4c2e}.reminder-filters{display:flex;gap:14px;margin:0 0 20px;padding:18px;border:1px solid #e5eaf0;border-radius:16px;background:#fff}.reminder-filters label{display:grid;gap:7px;min-width:180px;color:#34435a;font-size:.82rem;font-weight:700}.reminder-filters input,.reminder-filters select,.attachment-form input,.attachment-form select{height:42px;padding:0 11px;border:1px solid #dfe4ec;border-radius:10px;background:#fff}.reminder-agenda{overflow:hidden;border:1px solid #e5eaf0;border-radius:16px;background:#fff}.reminder-agenda article{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:18px;border-top:1px solid #edf0f4}.reminder-agenda article:first-child{border-top:0}.reminder-agenda article.completed{opacity:.62}.reminder-agenda strong,.reminder-agenda a{display:block}.reminder-agenda a{margin-top:5px;color:var(--ut-primary);font-size:.82rem;text-decoration:none}.reminder-agenda time{color:#778399;font-size:.8rem}.reminder-agenda button{padding:8px 11px;border:0;border-radius:9px;color:#fff;background:#172d4c;font-weight:700}.reminder-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;color:var(--ut-primary);background:#fff0e5}.reminder-icon svg{width:20px}.attachment-form{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:16px 0;padding:16px;border-radius:13px;background:#f7f9fb}.attachment-form label{display:grid;gap:6px;color:#34435a;font-size:.8rem;font-weight:700}.attachment-caption,.attachment-file,.attachment-cover,.attachment-error{grid-column:1/-1}.attachment-file input{height:auto;padding:9px}.attachment-file small{color:#788499;font-weight:500}.attachment-cover{display:flex!important;align-items:center;flex-direction:row}.attachment-cover input{width:17px;height:17px}.attachment-form>.action-primary{justify-self:start}.attachment-grid{display:grid;gap:12px}.attachment-grid article{overflow:hidden;border:1px solid #e5eaf0;border-radius:13px;background:#fff}.attachment-grid article.cover{border-color:#f5a36f}.attachment-grid img{display:block;width:100%;height:210px;object-fit:cover;background:#eef2f6}.attachment-grid article>div{padding:13px}.attachment-grid strong{margin-right:8px;color:#273950}.attachment-grid p,.attachment-grid small{color:#6f7c90}.attachment-grid footer{display:flex;gap:8px;padding:0 13px 13px}.attachment-grid footer button{padding:7px 9px;border:0;border-radius:8px;background:#eef2f6;font-weight:700}@media(max-width:700px){.reminder-filters{flex-direction:column}.reminder-filters label{min-width:0}.reminder-agenda article{grid-template-columns:42px 1fr}.reminder-agenda time,.reminder-agenda button{grid-column:2}.attachment-form{grid-template-columns:1fr}.attachment-form>*{grid-column:1!important}}.date-presets{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.date-presets button{padding:6px 12px;border:1px solid var(--ut-border);border-radius:99px;color:var(--ut-text-secondary);background:var(--ut-surface);font-size:.8rem;font-weight:700;cursor:pointer}.date-presets button:hover{border-color:var(--ut-border-strong);color:var(--ut-text-strong)}.date-presets button[aria-pressed=true]{border-color:var(--ut-sidebar);color:#fff;background:var(--ut-sidebar)}.delivery-compliance{display:inline-block;padding:3px 8px;border-radius:99px;font-size:.72rem;font-weight:700;white-space:nowrap}.delivery-compliance.on-time{color:#047857;background:#e8f7ef}.delivery-compliance.late{color:#b42318;background:#feeceb}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:16px;align-items:start;margin-top:4px}.admin-card{overflow:hidden;padding:0;border:1px solid #e5eaf0;border-radius:16px;background:#fff}.admin-section-card{width:min(100%,720px)}.capacity-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;margin:18px 20px 0;padding:13px 15px;border:1px solid #d8e9df;border-radius:11px;color:#276749;background:#f1faf5}.capacity-summary.capacity-full{border-color:#f3c9c5;color:#a83e35;background:#fff4f2}.capacity-summary svg{width:20px}.capacity-summary div{display:grid;gap:3px}.capacity-summary span{color:#667085;font-size:12px}.capacity-summary b{white-space:nowrap;font-size:13px}.admin-company-layout{display:grid;grid-template-columns:minmax(300px,.7fr) minmax(600px,1.7fr);gap:16px;align-items:start}.company-filters{display:grid;grid-template-columns:minmax(220px,1fr) 180px auto;gap:10px;align-items:end;padding:16px 20px}.company-filters label{display:grid;gap:6px;color:#475467;font-size:12px;font-weight:700}.company-filters input,.company-filters select{min-width:0;height:38px;border:1px solid #d9dfe7;border-radius:9px;background:#fff}.search-field{position:relative}.search-field svg{position:absolute;top:11px;left:11px;width:16px;height:16px;color:#98a2b3}.search-field input{width:100%;padding-left:34px}.company-management .table-scroll{padding:0 20px}.company-management td strong,.company-management td small{display:block}.company-management td small{margin-top:3px;color:#778399}.company-management .pagination{padding:16px 20px 20px}.limit-editor{display:flex;gap:6px;align-items:center}.limit-editor input{width:70px;height:34px;border:1px solid #d9dfe7;border-radius:8px}.limit-editor button{padding:7px 9px;border:0;border-radius:7px;color:#d9510c;background:#fff0e5;font-weight:700}.limit-editor button:disabled{opacity:.45}.admin-role-list{display:grid;gap:10px;margin-top:18px}.admin-role-list label{display:flex;gap:9px;align-items:center;padding:10px;border-radius:9px;background:#f5f7fa}.platform-metrics{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.admin-card h2{margin:0;font-size:18px}.admin-card-header{display:flex;gap:12px;align-items:flex-start;padding:18px 20px;border-bottom:1px solid #edf0f4;background:#fafbfc}.admin-card-header>span{display:grid;flex:0 0 38px;height:38px;place-items:center;border-radius:10px;color:var(--ut-primary);background:#fff0e5}.admin-card-header svg{width:19px}.admin-card-header p{margin:4px 0 0;color:#667085;font-size:13px}.admin-form{margin:0;padding:20px}.admin-form-actions{display:flex;justify-content:flex-end;padding-top:4px}.admin-form-actions .action-primary{width:auto}.admin-results{padding:0 20px 20px;border-top:1px solid #edf0f4}.admin-results h3{margin:18px 0 4px;color:#344054;font-size:13px;text-transform:uppercase;letter-spacing:.05em}.invitation-card{display:grid;grid-template-columns:1fr auto;gap:5px;margin-top:14px;padding:14px;border-radius:11px;background:#f5f7fa}.invitation-card small{color:#778399}.invitation-card button{grid-column:2;grid-row:1/3;border:0;color:var(--ut-primary);background:none;font-weight:700}.invitation-management{margin-top:18px}.invitation-management .table-scroll{padding:0 20px 20px}.invitation-management td strong,.invitation-management td small{display:block}.invitation-management td small{margin-top:3px;color:#778399}.invitation-actions{display:flex;flex-wrap:wrap;gap:8px}.invitation-actions button{padding:6px 8px;border:0;border-radius:7px;color:var(--ut-primary);background:#fff0e5;font-weight:700}.invitation-actions button:disabled{opacity:.55}.invitation-history-drawer h2{margin:4px 0 20px}.invitation-history-person{display:grid;gap:4px;padding:14px;border-radius:12px;background:#f5f7fa}.invitation-history-person span,.invitation-history-person small,.invitation-history-list time,.invitation-history-list small{color:#778399}.invitation-history-list{display:grid;gap:0;margin:20px 0 0;padding:0;list-style:none}.invitation-history-list li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:10px;min-height:62px}.invitation-history-list li>span{position:relative;width:10px;height:10px;margin-top:5px;border-radius:50%;background:var(--ut-primary)}.invitation-history-list li:not(:last-child)>span:after{position:absolute;top:12px;bottom:-47px;left:4px;width:2px;background:#e5eaf0;content:""}.invitation-history-list strong,.invitation-history-list time,.invitation-history-list small{display:block}.invitation-history-list time,.invitation-history-list small{margin-top:4px;font-size:.78rem}.operation-settings-actions{flex-wrap:wrap;gap:10px}.users-results-table tbody tr:has(.row-actions-menu[open]),.users-results-table td.result-col-actions:has(.row-actions-menu[open]){position:relative;z-index:10;overflow:visible}.user-self-badge{margin-left:8px;padding:2px 7px;border-radius:99px;color:var(--ut-primary-text);background:var(--ut-primary-soft);font-size:.68rem;font-weight:750;vertical-align:middle}.user-self-note{color:var(--ut-text-muted);font-size:.76rem}.role-dialog{width:min(100%,460px)}.role-dialog>p{margin:4px 0 0;color:var(--ut-text-secondary)}.role-dialog .admin-role-list label{gap:12px;padding:12px 14px;border:1px solid var(--ut-border);border-radius:11px;background:var(--ut-surface);cursor:pointer;transition:border-color .15s ease,background .15s ease}.role-dialog .admin-role-list label:hover{border-color:var(--ut-border-strong)}.role-dialog .admin-role-list label.selected{border-color:var(--ut-primary);background:var(--ut-primary-soft)}.role-dialog .admin-role-list input{width:17px;height:17px;accent-color:var(--ut-primary)}.role-dialog .admin-role-list span{display:grid;gap:2px}.role-dialog .admin-role-list strong{color:var(--ut-text-strong)}.role-dialog .admin-role-list small{color:var(--ut-text-muted)}.branch-management{display:grid;gap:18px}.branch-section-header{flex-wrap:wrap}.branch-section-header>div:first-of-type{flex:1;min-width:min(100%,220px)}.branch-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.branch-management .table-scroll{padding:0 20px 20px}.branch-form,.branch-staff-editor{padding:20px}.branch-form fieldset,.branch-candidates,.branch-permission-list{min-width:0;margin:0;padding:0;border:0}.branch-form fieldset{display:grid;gap:16px}.branch-staff-editor{border-top:1px solid var(--ut-border)}.branch-staff-editor h3{margin-top:0}.branch-member-email,.branch-candidates small{display:block;color:var(--ut-text-secondary);overflow-wrap:anywhere}.branch-candidate-search{display:flex;gap:10px;margin-bottom:16px}.branch-candidate-search .search-field{flex:1;min-width:0}.branch-candidate-search input,.branch-permission-search input{width:100%;min-width:0;height:38px;border:1px solid var(--ut-border);border-radius:9px}.branch-candidates,.branch-permission-list{display:grid;gap:10px;margin-bottom:16px}.branch-candidates legend,.branch-permission-list legend{padding-bottom:10px;font-weight:700}.branch-candidates label,.branch-permission-list label{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--ut-border);border-radius:9px;overflow-wrap:anywhere}.branch-candidates input,.branch-permission-list input{flex-shrink:0;width:17px;height:17px;accent-color:var(--ut-primary)}.branch-permission-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.branch-permission-search{display:grid;gap:6px;max-width:400px;margin-bottom:16px}@media(max-width:640px){.branch-candidate-search{flex-direction:column}.branch-section-header>.branch-actions{width:100%}}.profile-identity{display:grid;gap:2px}.status-actions{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:24px}.profile-roles{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}.profile-roles span{padding:2px 6px;border-radius:99px;color:#285f9d;background:#eaf2fc;font-size:.62rem;font-weight:800;line-height:1.4}.customer-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px}.customer-row-actions .quick{padding:6px 8px;border:1px solid #e1e6ed;border-radius:8px;color:#53647a;background:#f8fafc}.customer-row-actions .quick:hover{color:var(--ut-primary);border-color:#f5a36f;background:#fff5ee}.support-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:20px}.support-card{padding:24px;border:1px solid var(--ut-border);border-radius:var(--ut-radius-lg);background:var(--ut-surface);box-shadow:var(--ut-shadow-sm)}.support-form{display:grid;gap:18px}.support-form>label{display:grid;gap:7px;color:var(--ut-text-strong);font-size:.86rem;font-weight:600}.support-form input:not([type=radio]):not([type=checkbox]),.support-form textarea{width:100%;padding:11px 13px;border:1px solid var(--ut-border);border-radius:10px;color:var(--ut-text);background:var(--ut-surface);font-size:.92rem;font-weight:400}.support-form textarea{min-height:150px;resize:vertical;line-height:1.5}.support-form .field-error small{color:var(--ut-error-text);font-size:.78rem;font-weight:500}.support-categories{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;border:0}.support-categories legend{margin-bottom:8px;padding:0;color:var(--ut-text-strong);font-size:.86rem;font-weight:600}.support-categories label{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border:1px solid var(--ut-border);border-radius:999px;color:var(--ut-text-secondary);background:var(--ut-surface);font-size:.86rem;font-weight:600;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.support-categories label:hover{border-color:var(--ut-border-strong);color:var(--ut-text)}.support-categories label.selected{border-color:var(--ut-primary);color:var(--ut-primary-text);background:var(--ut-primary-soft)}.support-categories label:has(input:focus-visible){outline:2px solid var(--ut-primary);outline-offset:2px}.support-categories input{position:absolute;opacity:0;pointer-events:none}.support-field-footer{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.support-count{color:var(--ut-text-muted);font-size:.74rem;font-weight:500;font-variant-numeric:tabular-nums}.support-form>.support-check{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid var(--ut-border);border-radius:var(--ut-radius-md);background:var(--ut-surface-soft);cursor:pointer}.support-check input{width:18px;height:18px;flex:none;margin-top:2px;accent-color:var(--ut-primary)}.support-check span{display:grid;gap:2px}.support-check strong{color:var(--ut-text);font-size:.88rem}.support-check small{color:var(--ut-text-secondary);font-size:.8rem;line-height:1.45}.support-preview{margin-top:-8px}.support-preview summary{color:var(--ut-primary-text);font-size:.84rem;font-weight:600;cursor:pointer}.support-preview pre{max-height:240px;margin:10px 0 0;padding:14px;overflow:auto;border-radius:10px;color:var(--ut-text-strong);background:var(--ut-surface-muted);font:400 .8rem/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;word-break:break-word}.support-notice{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:var(--ut-radius-md);color:#1e40af;background:var(--ut-info-soft);font-size:.86rem;line-height:1.5}.support-notice.success{color:var(--ut-success-text);background:var(--ut-success-soft)}.support-notice p{margin:0}.support-notice svg{width:18px;height:18px;flex:none;margin-top:2px}.support-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;padding-top:18px;border-top:1px solid var(--ut-border)}.support-actions .action-primary{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 18px;border:0;border-radius:10px;font-weight:700}.support-actions svg{width:17px;height:17px}.support-side{display:grid;gap:16px}.support-side h2{margin:0 0 6px;color:var(--ut-text);font-size:1.02rem}.support-side p{margin:0;color:var(--ut-text-secondary);font-size:.88rem;line-height:1.5}.support-icon{display:grid;width:44px;height:44px;margin-bottom:14px;place-items:center;border-radius:12px;color:var(--ut-primary-text);background:var(--ut-primary-soft)}.support-icon svg{width:22px;height:22px}.support-address{display:flex;align-items:center;gap:6px;margin-top:14px;padding:6px 6px 6px 12px;border:1px solid var(--ut-border);border-radius:10px;background:var(--ut-surface-soft)}.support-address a{display:flex;align-items:center;flex:1;min-width:0;gap:8px;overflow:hidden;color:var(--ut-text);font-size:.88rem;font-weight:600;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.support-address a:hover{color:var(--ut-primary-text)}.support-address a svg{width:16px;flex:none;color:var(--ut-text-secondary)}.support-address button{display:grid;width:34px;height:34px;flex:none;place-items:center;border:0;border-radius:8px;color:var(--ut-text-secondary);background:transparent}.support-address button:hover{color:var(--ut-text);background:var(--ut-surface-muted)}.support-address button svg{width:16px}.support-tips ul{display:grid;gap:10px;margin:10px 0 0;padding-left:18px;color:var(--ut-text-secondary);font-size:.86rem;line-height:1.5}.support-tips li svg{width:14px;height:14px;margin-right:2px;vertical-align:-2px}.help a{color:var(--ut-primary-text);font-weight:700;text-decoration:none}.help a:hover{text-decoration:underline;text-underline-offset:3px}@media(max-width:980px){.support-layout{grid-template-columns:1fr}}@media(max-width:640px){.support-card{padding:18px}.support-actions{flex-direction:column-reverse}.support-actions>*{width:100%;justify-content:center}}.support-attachments{display:grid;gap:8px}.support-attachments-label{color:var(--ut-text-strong);font-size:.86rem;font-weight:600}.support-dropzone{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1.5px dashed var(--ut-border-strong);border-radius:var(--ut-radius-md);color:var(--ut-text-secondary);background:var(--ut-surface-soft);transition:border-color .15s ease,background .15s ease}.support-dropzone>svg{width:20px;height:20px;flex:none;color:var(--ut-text-muted)}.support-dropzone p{display:grid;gap:2px;margin:0;font-size:.86rem}.support-dropzone small{color:var(--ut-text-muted);font-size:.76rem}.support-dropzone button{padding:0;border:0;color:var(--ut-primary);background:none;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.support-dropzone.dragging{border-color:var(--ut-primary);background:var(--ut-primary-soft)}.support-dropzone.full{border-style:solid}.support-attachment-list,.support-attachment-problems{display:grid;gap:6px;margin:0;padding:0;list-style:none}.support-attachment-list li{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 8px 8px 12px;border:1px solid var(--ut-border);border-radius:10px;background:var(--ut-surface);font-size:.84rem}.support-attachment-list li>svg{width:16px;height:16px;color:var(--ut-text-secondary)}.support-attachment-list span{overflow:hidden;color:var(--ut-text-strong);text-overflow:ellipsis;white-space:nowrap}.support-attachment-list small{color:var(--ut-text-muted);font-size:.76rem}.support-attachment-list button{display:grid;width:28px;height:28px;place-items:center;border:0;border-radius:7px;color:var(--ut-text-muted);background:none}.support-attachment-list button:hover{color:var(--ut-error-text);background:var(--ut-error-soft)}.support-attachment-list button svg{width:15px;height:15px}.support-attachment-problems li{color:var(--ut-error-text);font-size:.78rem}.operational-grid{align-items:start}.dashboard-map-empty,.dashboard-map-state{display:grid;place-items:center;align-content:center;gap:8px;padding:20px;color:#7f8b9d;border-radius:12px;background:#f7f9fb;text-align:center}.dashboard-map-state>svg{width:28px;height:28px}.dashboard-map-state p{margin:0}.dashboard-map-state.error{color:#b42318;background:#fff7f6}.dashboard-empty,.dashboard-panel .dashboard-empty{grid-template-columns:30px minmax(0,1fr);min-height:68px;align-items:center;gap:10px;padding:10px 12px;text-align:left}.dashboard-empty span{width:30px;height:30px;margin:0;border-radius:9px}.dashboard-empty svg{width:16px}.dashboard-empty p{grid-column:2;margin:-6px 0 0}.dashboard-timeline{padding:6px 0 0 32px}.dashboard-timeline:before{top:25px;bottom:22px;left:12px}.dashboard-event-icon{top:10px;left:-32px}.dashboard-event-content p,.dashboard-list-row p,.dashboard-event small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-event small,.dashboard-event time{margin-top:2px}.dashboard-list-row{grid-template-columns:30px minmax(0,1fr) auto;gap:9px;padding:9px 0}.dashboard-list-row small,.dashboard-list-row time{margin-top:2px}.list-icon{width:30px;height:30px}.dashboard-columns-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);align-items:start;gap:16px;margin-top:16px}.dashboard-column{display:flex;min-width:0;flex-direction:column;gap:16px}.dashboard-columns-layout .dashboard-map-panel,.dashboard-columns-layout .dashboard-panel{align-self:stretch}.dashboard-columns-layout .dashboard-project-map,.dashboard-columns-layout .dashboard-map-empty,.dashboard-columns-layout .dashboard-map-state{height:clamp(450px,35vw,480px)}.dashboard-activity-panel .dashboard-timeline{max-height:330px;overflow-y:auto;padding-right:6px;scrollbar-width:thin}.dashboard-column-side .dashboard-empty{min-height:64px}@media(max-width:1100px){.dashboard-columns-layout{grid-template-columns:minmax(0,1fr)}.dashboard-columns-layout .dashboard-project-map,.dashboard-columns-layout .dashboard-map-empty,.dashboard-columns-layout .dashboard-map-state{height:clamp(410px,56vw,470px)}}@media(max-width:700px){.dashboard-columns-layout .dashboard-project-map{height:360px}.dashboard-columns-layout .dashboard-map-empty,.dashboard-columns-layout .dashboard-map-state{height:280px}}.dashboard-primary-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(290px,1fr);gap:20px;margin-top:20px}.dashboard-map-panel{min-width:0;overflow:hidden;padding:20px;border:1px solid #e6eaf0;border-radius:16px;background:#fff;box-shadow:0 2px 8px #1f2f460a}.dashboard-map-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:14px}.dashboard-map-header h2{margin:0;color:#22344d;font-size:1.05rem}.dashboard-map-header p{margin:5px 0 0;color:#7f8b9d;font-size:.78rem}.dashboard-map-filters{display:flex;gap:9px}.dashboard-map-filters label{display:grid;gap:4px;color:#66758a;font-size:.68rem;font-weight:800}.dashboard-map-filters select{min-width:125px;height:34px;padding:0 28px 0 9px;border:1px solid #dfe5ec;border-radius:8px;color:#33445c;background:#fff}.dashboard-project-map{height:560px;overflow:hidden;border-radius:12px}.dashboard-project-map .leaflet-container{width:100%;height:100%}.dashboard-map-empty{display:grid;min-height:420px;place-items:center;color:#7f8b9d;background:#f7f9fb;text-align:center}.dashboard-side-stack{display:grid;grid-template-rows:minmax(0,1.15fr) minmax(0,.85fr);gap:20px;min-width:0}.dashboard-side-stack>.dashboard-panel{overflow:auto}.dashboard-marker-wrap{border:0;background:none}.dashboard-marker{display:block;width:18px;height:18px;border:3px solid #fff;border-radius:50% 50% 50% 0;box-shadow:0 2px 7px #11213b59;transform:rotate(-45deg);background:#f2b84b}.dashboard-marker.active{background:#2f8b67}.dashboard-marker.hold{background:#ec7a24}.dashboard-marker.completed{background:#3f4d61}.dashboard-marker.lost{background:#758195}.dashboard-project-popup{min-width:220px}.dashboard-project-popup .leaflet-popup-content{margin:14px 16px}.dashboard-popup-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.dashboard-popup-title strong{color:#22344d;font-size:.92rem}.dashboard-popup-title span{padding:3px 7px;border-radius:99px;color:#526177;background:#eef2f6;font-size:.66rem;font-weight:800}.dashboard-project-popup p{margin:9px 0;color:#33445c}.dashboard-project-popup p small,.dashboard-project-popup p em{display:block;margin-bottom:2px;color:#8994a4;font-size:.68rem;font-style:normal}.dashboard-project-popup a{display:block;margin-top:12px;padding:8px 10px;border-radius:8px;color:#fff;background:var(--ut-primary);font-weight:800;text-align:center;text-decoration:none}.dashboard-secondary-layout{margin-top:20px}.dashboard-panel{min-width:0;padding:22px 24px}.dashboard-section-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:14px;border-bottom:1px solid #edf0f4}.dashboard-section-header h2{margin:0!important;color:#22344d}.dashboard-section-header a{flex:none;color:var(--ut-primary);font-size:.78rem;font-weight:800;text-decoration:none}.dashboard-empty{display:grid;min-height:104px;place-items:center;align-content:center;padding:16px 20px;color:#7f8b9d;text-align:center}.dashboard-panel .dashboard-empty{min-height:104px}.dashboard-empty span{display:grid;width:38px;height:38px;place-items:center;margin-bottom:9px;border-radius:12px;color:#66758a;background:#eef2f6}.dashboard-empty svg{width:19px}.dashboard-empty strong{color:#425269;font-size:.88rem}.dashboard-empty p{margin:5px 0 0;font-size:.78rem}.dashboard-timeline{position:relative;padding:8px 0 0 36px}.dashboard-timeline:before{position:absolute;top:29px;bottom:26px;left:13px;width:2px;background:#e4e8ee;content:""}.dashboard-event{position:relative;min-height:68px;padding:11px 0}.dashboard-event-icon{position:absolute;top:14px;left:-36px;display:grid;width:28px;height:28px;place-items:center;border:3px solid white;border-radius:50%;box-shadow:0 0 0 1px #dfe5ec}.dashboard-event-icon svg{width:13px}.dashboard-event-icon.orange{color:#a95b14;background:#fff0df}.dashboard-event-icon.green{color:#24704e;background:#e8f7ef}.dashboard-event-icon.blue{color:#285f9d;background:#eaf2fc}.dashboard-event strong,.dashboard-event small,.dashboard-event time{display:block}.dashboard-event-content{min-width:0}.dashboard-event-content p,.dashboard-list-row p{margin:4px 0 0;color:#59677b;font-size:.76rem;line-height:1.4}.dashboard-event strong{color:#293a53;font-size:.86rem}.dashboard-event small{margin-top:4px;color:#788599;font-size:.76rem}.dashboard-event small a{color:#4b5f79;font-weight:700;text-decoration:none}.dashboard-event time{margin-top:4px;color:#99a2b0;font-size:.71rem;white-space:nowrap}.dashboard-event time span,.dashboard-list-row time span{white-space:nowrap}.dashboard-list-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #edf0f4;color:inherit;text-decoration:none}.dashboard-list-row:last-child{border-bottom:0}.dashboard-list-row strong,.dashboard-list-row small,.dashboard-list-row time{display:block}.dashboard-list-row strong{color:#293a53;font-size:.84rem}.dashboard-list-row small,.dashboard-list-row time{margin-top:4px;color:#8a96a7;font-size:.74rem}.dashboard-list-row em{padding:5px 8px;border-radius:99px;color:#9a6700;background:#fff3cd;font-size:.7rem;font-style:normal}.dashboard-list-row em.overdue{color:#b42318;background:#feeceb}.dashboard-row-action{color:var(--ut-primary);font-size:.72rem;font-weight:800;white-space:nowrap}.list-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:10px}.list-icon svg{width:16px}.list-icon.warning{color:#9a6700;background:#fff3cd}.list-icon.danger{color:#b42318;background:#feeceb}.project-progress-list>a,.project-progress-row{display:block;padding:14px 0;border-bottom:1px solid #edf0f4;text-decoration:none}.project-progress-list>:last-child{border:0}.project-progress-list>a>div,.project-progress-row>div{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.project-progress-list strong{min-width:0;color:#293a53;font-size:.85rem;line-height:1.35;overflow-wrap:break-word}.project-progress-list span{flex:none;color:#59677b;font-size:.76rem;font-weight:800}.project-progress-list small{display:block;overflow:hidden;margin:5px 0 9px;color:#8a96a7;font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}.project-progress-list progress{display:block;width:100%;height:7px;border:0;border-radius:99px;overflow:hidden;accent-color:var(--ut-primary)}@media(max-width:1000px){.dashboard-primary-layout{grid-template-columns:1fr}.dashboard-side-stack{grid-template-rows:auto}.dashboard-project-map{height:430px}}@media(max-width:700px){.dashboard-panel{padding:19px}.dashboard-list-row{grid-template-columns:34px minmax(0,1fr)}.dashboard-list-row em{grid-column:2;justify-self:start}.dashboard-map-header{display:grid}.dashboard-map-filters{display:grid;grid-template-columns:1fr 1fr;width:100%}.dashboard-map-filters select{width:100%;min-width:0}.dashboard-project-map{height:360px}.dashboard-map-empty{min-height:280px}}.dashboard-content>.shared-page-header{margin-bottom:16px}.dashboard-primary-layout{align-items:start;gap:16px;margin-top:16px}.dashboard-map-panel{align-self:start;padding:16px}.dashboard-map-header{gap:16px;margin-bottom:10px}.dashboard-project-map,.dashboard-map-empty,.dashboard-map-state{height:clamp(380px,38vw,430px)}.dashboard-map-empty{min-height:0}.dashboard-side-stack{grid-template-rows:auto auto;align-content:start;gap:16px}.dashboard-side-stack>.dashboard-panel{overflow:visible}.dashboard-secondary-layout{margin-top:16px}.dashboard-panel{padding:16px 18px}.dashboard-section-header{gap:16px;padding-bottom:10px}.dashboard-empty,.dashboard-panel .dashboard-empty{min-height:68px;padding:10px 12px}.dashboard-event{min-height:54px;padding:7px 0}.dashboard-list-row{gap:9px;padding:9px 0}.project-progress-list>a,.project-progress-row{padding:8px 0}.project-progress-list small{margin:3px 0 6px}.project-progress-list progress{height:5px}@media(max-width:1000px){.dashboard-project-map,.dashboard-map-empty,.dashboard-map-state{height:clamp(380px,52vw,430px)}}@media(max-width:700px){.dashboard-project-map{height:360px}.dashboard-map-empty,.dashboard-map-state{height:280px}}.dashboard-project-map{position:relative}.dashboard-marker{position:relative;display:grid;width:30px;height:30px;place-items:center;border:3px solid #fff;border-radius:50% 50% 50% 0;box-shadow:0 3px 9px #11213b61;transform:rotate(-45deg)}.dashboard-marker b{color:#fff;font-size:9px;line-height:1;letter-spacing:-.02em;transform:rotate(45deg)}.seller-color-0{background:#758195}.seller-color-1{background:#2563eb}.seller-color-2{background:var(--ut-primary)}.seller-color-3{background:#7c3aed}.seller-color-4{background:#0f8a70}.seller-color-5{background:#c0266d}.seller-color-6{background:#b7791f}.seller-color-7{background:#0891b2}.seller-color-8{background:#4f6b3a}.seller-color-9{background:#dc2626}.seller-color-10{background:#0369a1}.seller-color-11{background:#9333ea}.seller-color-12{background:#15803d}.dashboard-map-legend{position:absolute;z-index:500;top:12px;right:12px;width:min(220px,calc(100% - 24px));max-height:calc(100% - 24px);overflow:auto;padding:10px;border:1px solid rgb(218 224 232 / 90%);border-radius:11px;background:#fffffff0;box-shadow:0 5px 18px #11213b24;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.dashboard-map-legend>strong{display:block;margin-bottom:7px;color:#344054;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}.dashboard-map-legend>div{display:grid;gap:6px}.dashboard-map-legend span{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:7px}.dashboard-map-legend i{display:block;width:9px;height:9px;border-radius:50%}.dashboard-map-legend b{overflow:hidden;color:#425269;font-size:.72rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.dashboard-map-legend small{min-width:20px;padding:2px 5px;border-radius:99px;color:#66758a;background:#eef2f6;font-size:.65rem;font-style:normal;text-align:center}.operations-dashboard-page{display:grid;gap:18px}.operations-dashboard-page>.shared-page-header{margin-bottom:0}.operations-seller-picker{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid var(--ut-border);border-radius:14px;background:#fff;box-shadow:var(--ut-shadow-sm)}.operations-seller-picker>div{display:flex;align-items:center;gap:11px}.operations-seller-picker>div>svg{width:21px;color:#285f9d}.operations-seller-picker>div span,.operations-seller-picker label{display:grid;gap:4px}.operations-seller-picker strong,.operations-seller-picker label>span{color:var(--ut-text);font-size:.8rem;font-weight:800}.operations-seller-picker small{color:var(--ut-text-secondary);font-size:.73rem}.operations-seller-picker label{width:min(100%,340px)}.operations-seller-picker select{min-height:40px;padding:0 36px 0 12px;border:1px solid #cbd5e1;border-radius:9px;color:var(--ut-text);background:#fff;font:inherit}.operations-dashboard-prompt{display:grid;min-height:250px;place-items:center;align-content:center;gap:8px;padding:32px;border:1px dashed #b8c4d4;border-radius:16px;color:var(--ut-text-secondary);background:#f8fafc;text-align:center}.operations-dashboard-prompt svg{width:34px;height:34px;color:#285f9d}.operations-dashboard-prompt strong{color:var(--ut-text)}.operations-live-indicator{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #bde6d6;border-radius:999px;color:#087052;background:#ecfdf5;font-size:.75rem;font-weight:800;white-space:nowrap}.operations-live-indicator svg{width:15px;animation:operations-live-pulse 1.8s ease-in-out infinite}@keyframes operations-live-pulse{50%{opacity:.35}}.operations-live-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.operations-live-metric{display:flex;align-items:center;gap:12px;min-height:92px;padding:16px;border:1px solid var(--ut-border);border-radius:14px;background:#fff;box-shadow:var(--ut-shadow-sm)}.operations-live-metric>span{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:12px}.operations-live-metric svg{width:21px}.operations-live-metric p{margin:0;color:var(--ut-text-secondary);font-size:.76rem;font-weight:700}.operations-live-metric strong{display:block;margin-top:3px;color:var(--ut-text);font-family:Manrope,DM Sans,sans-serif;font-size:1.55rem}.operations-live-metric.active>span{color:#087052;background:#e7f8f0}.operations-live-metric.finished>span{color:#285f9d;background:#eaf2fc}.operations-live-metric.visits>span{color:var(--ut-primary-hover);background:#fff3eb}.operations-live-metric.incident>span{color:#b42318;background:#feeceb}.operations-live-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(330px,.8fr);align-items:start;gap:16px}.operations-team-panel,.operations-live-map-card,.operations-incidents-card{min-width:0;overflow:hidden;border:1px solid var(--ut-border);border-radius:16px;background:#fff;box-shadow:var(--ut-shadow-sm)}.operations-team-panel>header,.operations-live-map-card>header,.operations-incidents-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:17px 18px;border-bottom:1px solid var(--ut-border)}.operations-team-panel h2,.operations-live-map-card h2,.operations-incidents-card h2{margin:0;color:var(--ut-text);font-size:1rem}.operations-team-panel header p,.operations-live-map-card header p,.operations-incidents-card header p{margin:4px 0 0;color:var(--ut-text-secondary);font-size:.75rem}.operations-team-panel nav{display:flex;gap:4px;padding:3px;border-radius:10px;background:#f1f3f6}.operations-team-panel nav button{min-height:30px;padding:0 9px;border:0;border-radius:7px;color:#667085;background:transparent;font-size:.7rem;font-weight:800}.operations-team-panel nav button.active{color:#fff;background:var(--ut-sidebar);box-shadow:0 3px 8px #11213b29}.operations-worker-list{display:grid}.operations-worker-row{display:grid;grid-template-columns:38px minmax(130px,1.35fr) auto repeat(3,minmax(64px,.55fr)) auto;align-items:center;gap:12px;min-height:72px;padding:11px 18px;border-bottom:1px solid #edf0f4}.operations-worker-row:last-child{border-bottom:0}.operations-worker-row.incident{background:snow}.operations-worker-avatar{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;color:#fff;background:var(--ut-sidebar);font-size:.72rem;font-weight:900}.operations-worker-name,.operations-worker-fact{min-width:0}.operations-worker-name strong,.operations-worker-name small,.operations-worker-fact strong,.operations-worker-fact small{display:block}.operations-worker-name strong{overflow:hidden;color:#263650;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.operations-worker-name small,.operations-worker-fact small{margin-top:3px;color:#8994a4;font-size:.67rem}.operations-worker-row.incident .operations-worker-name small{color:#b42318;font-weight:700}.tracking-health{display:inline-flex;align-items:center;gap:5px;margin-top:4px;padding:2px 8px;border-radius:999px;font-size:.64rem;font-weight:700;white-space:nowrap;cursor:help}.tracking-health:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.tracking-health.ok{color:var(--ut-success-text);background:var(--ut-success-soft)}.tracking-health.error{color:var(--ut-error-text);background:var(--ut-error-soft)}.tracking-health.unknown{color:var(--ut-text-muted);background:var(--ut-surface-muted);cursor:default}.operations-worker-fact strong{margin-top:3px;color:#425269;font-size:.78rem}.operations-worker-status{padding:4px 7px;border-radius:999px;font-size:.65rem;font-weight:800;white-space:nowrap}.operations-worker-status.working{color:#087052;background:#e7f8f0}.operations-worker-status.finished{color:#285f9d;background:#eaf2fc}.operations-worker-status.not-started{color:#667085;background:#f1f3f6}.operations-worker-detail{color:var(--ut-primary-hover);font-size:.72rem;font-weight:800;text-decoration:none;white-space:nowrap}.operations-worker-detail.disabled{color:#a0a8b5}.operations-workers-empty{padding:38px 20px;color:var(--ut-text-secondary);text-align:center}.operations-live-side{display:grid;gap:16px}.operations-live-map-card>header>span{flex:none;padding:4px 7px;white-space:nowrap;border-radius:7px;color:#667085;background:#f1f3f6;font-size:.68rem;font-weight:700}.operations-live-map{height:330px}.operations-live-map .leaflet-container{width:100%;height:100%}.operations-live-map-empty{display:grid;height:240px;place-items:center;align-content:center;gap:7px;color:#8994a4;background:#f7f9fb;text-align:center}.operations-live-map-empty svg{width:27px}.operations-live-map-empty strong{color:#526177;font-size:.84rem}.operations-live-map-empty span{font-size:.73rem}.operations-worker-marker-wrap{border:0;background:transparent}.operations-worker-marker{display:grid;width:34px;height:34px;place-items:center;border:3px solid #fff;border-radius:50%;color:#fff;background:#087052;box-shadow:0 3px 10px #11213b57;font-size:.66rem;font-weight:900}.operations-worker-marker.incident{background:#dc2626;animation:operations-marker-pulse 1.6s ease-in-out infinite}@keyframes operations-marker-pulse{50%{box-shadow:0 0 0 8px #dc262626,0 3px 10px #11213b57}}.operations-map-detail-link{display:block;margin-top:8px;color:var(--ut-primary-hover)!important;font-weight:800}.operations-incidents-card>header>svg{width:20px;color:#b42318}.operations-incident-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 16px;border-bottom:1px solid #edf0f4}.operations-incident-row:last-child{border-bottom:0}.operations-incident-row>span{display:grid;width:30px;height:30px;place-items:center;border-radius:9px;color:#b42318;background:#feeceb;font-size:.72rem;font-weight:900}.operations-incident-row strong,.operations-incident-row small{display:block}.operations-incident-row strong{color:#344054;font-size:.78rem}.operations-incident-row small{margin-top:3px;color:#b42318;font-size:.68rem}.operations-incident-row a{color:var(--ut-primary-hover);font-size:.7rem;font-weight:800;text-decoration:none}.operations-no-incidents{display:flex;align-items:center;justify-content:center;gap:8px;min-height:86px;color:#087052;font-size:.78rem;font-weight:800}.operations-no-incidents svg{width:18px}@media(max-width:1180px){.operations-live-layout{grid-template-columns:1fr}.operations-live-side{grid-template-columns:1.3fr .7fr}}@media(max-width:900px){.operations-live-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-team-panel>header{display:grid}.operations-team-panel nav{overflow-x:auto}.operations-worker-row{grid-template-columns:38px minmax(120px,1fr) auto auto}.operations-worker-fact{display:none}}@media(max-width:700px){.operations-seller-picker{align-items:stretch;flex-direction:column}.operations-seller-picker label{width:100%}.operations-live-indicator{display:none}.operations-live-side{grid-template-columns:1fr}.operations-worker-row{grid-template-columns:36px minmax(0,1fr) auto;gap:9px;padding-inline:13px}.operations-worker-status{grid-column:2;justify-self:start}.operations-worker-fact{display:none}.operations-worker-detail{grid-column:3;grid-row:1 / span 2}}@media(max-width:480px){.operations-live-metrics{grid-template-columns:1fr}.operations-live-metric{min-height:76px}}@media(prefers-reduced-motion:reduce){.operations-live-indicator svg,.operations-worker-marker.incident{animation:none}}@media(max-width:700px){.dashboard-map-legend{inset:auto 8px 22px;width:auto;max-height:96px}.dashboard-map-legend>div{grid-template-columns:repeat(2,minmax(0,1fr))}}.metric-card-link{color:inherit;text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.metric-card-link:hover{border-color:var(--ut-border-strong);box-shadow:var(--ut-shadow-md, 0 8px 22px rgb(15 23 42 / 8%));transform:translateY(-1px)}.metric-card-link:focus-visible{outline:3px solid var(--ut-primary-soft);outline-offset:2px}.metric-icon.danger{color:#b42318;background:#feeceb}.dashboard-map-legend>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#344054;font-size:.7rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;list-style:none}.dashboard-map-legend>summary::-webkit-details-marker{display:none}.dashboard-map-legend[open]>summary{margin-bottom:7px}.dashboard-map-legend:not([open]){width:auto}.dashboard-map-legend>summary svg{width:14px;height:14px;transition:transform .16s ease}.dashboard-map-legend[open]>summary svg{transform:rotate(180deg)}.dashboard>.customer-overlay>.project-panel>.activity-tabs button{color:#68768a;background:transparent;box-shadow:none}.dashboard>.customer-overlay>.project-panel>.activity-tabs:has(+.project-info) button:nth-child(1),.dashboard>.customer-overlay>.project-panel>.activity-tabs:has(+.activity-list) button:nth-child(2),.dashboard>.customer-overlay>.project-panel>.activity-tabs:has(+.attachments-section) button:nth-child(3),.dashboard>.customer-overlay>.project-panel>.activity-tabs:has(+div>.sub-tabs) button:nth-child(4){color:var(--ut-primary);background:#fff3ea;box-shadow:inset 0 -3px var(--ut-primary)}.project-info{display:grid;gap:20px}.project-info>p{order:3;margin:0;padding:20px;border:1px solid #e5eaf0;border-radius:14px;color:#59677b;background:#fff;line-height:1.6}.project-info>p:before{display:block;margin-bottom:8px;color:#273950;font-size:.85rem;font-weight:800;content:"Descripción"}.project-info .customer-detail{order:1;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:8px 20px;border:1px solid #e5eaf0;border-radius:14px;background:#fff}.project-info .customer-detail div{min-height:78px;padding:16px 4px}.project-info .customer-detail dd{font-size:1rem;font-weight:750}.project-info .customer-detail div:nth-child(3) dd:after{display:block;width:100%;height:8px;margin-top:10px;border-radius:99px;background:#f0f2f5;content:""}.project-info .status-field{order:2;width:max-content;min-width:220px;padding:14px 18px;border:1px solid #e5eaf0;border-radius:13px;background:#fff}.project-info .detail-actions{order:4;justify-content:flex-end;margin:0}.attachments-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.attachments-header h3{margin:0 0 4px;color:#273950}.attachments-header span{color:#8490a2;font-size:.78rem}.attachment-form{border:1px solid #e5eaf0}.attachment-grid article{transition:transform .18s ease,box-shadow .18s ease}.attachment-grid article:hover{transform:translateY(-2px);box-shadow:0 12px 28px #1828401a}.attachment-grid article>div>a{text-decoration:none}.attachment-grid article>div strong{display:inline-block;max-width:75%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:700px){.project-info .customer-detail{grid-template-columns:1fr}.attachments-header{align-items:flex-start;flex-direction:column}}html{background:var(--ut-background)}body{color:var(--ut-text);background:var(--ut-background)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:not(:disabled),a{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}:focus-visible{outline:2px solid var(--ut-primary);outline-offset:2px}.app-shell-root,.dashboard,.simple-auth-page,.status-page{background:var(--ut-background)}.dashboard-sidebar{background:var(--ut-sidebar)}.app-workspace{background:var(--ut-background)}.shared-page-header h1,.customers-heading h1,.heading-row h1,.customer-panel h2,.project-panel h2{color:var(--ut-text)}.shared-page-header p,.customers-heading p,.heading-row p{color:var(--ut-text-secondary)}.overline{color:var(--ut-primary-text)}.metric-card,.activity-card,.customer-table-card,.admin-card,.catalog-form,.reminder-agenda,.customer-summary-card,.customer-map-card{border-color:var(--ut-border);border-radius:var(--ut-radius-lg);background:var(--ut-surface);box-shadow:var(--ut-shadow-sm)}.metric-card:hover,.customer-table-card:hover{box-shadow:var(--ut-shadow-md)}.metric-card strong{color:var(--ut-text)}.metric-card p,.metric-card small{color:var(--ut-text-secondary)}.metric-icon.orange{color:var(--ut-accent);background:var(--ut-accent-soft)}.metric-icon.blue{color:var(--ut-primary);background:var(--ut-primary-soft)}.action-primary,.primary-button{color:#fff;background:var(--ut-primary);box-shadow:0 1px 2px #0f172a14,0 4px 12px #cf4a0c2e;transition:background-color .15s ease,box-shadow .15s ease,transform .15s ease}.action-primary:hover,.primary-button:hover{background:var(--ut-primary-hover)}.danger-button{color:#fff;background:var(--ut-error)}.row-action{color:var(--ut-primary)}.row-action:hover{color:var(--ut-primary-hover);background:var(--ut-primary-soft);border-radius:var(--ut-radius-sm)}input,select,textarea,.customer-toolbar input,.customer-toolbar select,.status-field select{color:var(--ut-text);border-color:var(--ut-border);background:var(--ut-surface)}input::placeholder,textarea::placeholder{color:var(--ut-text-muted)}input:focus,select:focus,textarea:focus,.customer-form input:focus,.customer-toolbar input:focus{border-color:var(--ut-primary);outline:none;box-shadow:var(--ut-focus)}.customer-form label,.status-field,.reminder-filters label{color:#334155}.customer-table-card th{color:var(--ut-text-secondary);background:var(--ut-surface-soft)}.customer-table-card td{color:#334155;border-color:var(--ut-border)}.customer-table-card tr:hover td{background:#fbfdff}.table-message,.activity-empty,.data-state{color:var(--ut-text-secondary)}.data-state.error,.form-error{color:#b91c1c}.activity-tabs{border-color:var(--ut-border);background:transparent}.activity-tabs button{color:var(--ut-text-secondary)}.activity-tabs button.active{color:var(--ut-primary);border-color:var(--ut-primary)}.dashboard>.customer-overlay>.project-panel>.activity-tabs:has(+.project-info) button:nth-child(1),.dashboard>.customer-overlay>.project-panel>.activity-tabs:has(+.activity-list) button:nth-child(2),.dashboard>.customer-overlay>.project-panel>.activity-tabs:has(+.attachments-section) button:nth-child(3),.dashboard>.customer-overlay>.project-panel>.activity-tabs:has(+div>.sub-tabs) button:nth-child(4){color:var(--ut-primary);background:var(--ut-primary-soft);box-shadow:inset 0 -3px var(--ut-primary)}.sub-tabs button{color:var(--ut-text-secondary);background:#f1f5f9}.sub-tabs button:focus{color:var(--ut-primary);background:var(--ut-primary-soft);box-shadow:inset 0 -2px var(--ut-primary)}.status-pill{color:#92400e;background:var(--ut-warning-soft)}.status-pill.active,.reminder-status.done{color:#047857;background:var(--ut-success-soft)}.status-pill.inactive{color:#475569;background:#f1f5f9}.status-pill.tone-success{color:#047857;background:#e3f6ec}.status-pill.tone-info{color:#1d5fa8;background:#e7f0fc}.status-pill.tone-progress{color:#6d3fc0;background:#f0eafc}.status-pill.tone-warning{color:#92400e;background:var(--ut-warning-soft)}.status-pill.tone-danger{color:#b42318;background:#fdecea}.status-pill.tone-neutral{color:#475569;background:#eef1f5}.reminder-status.overdue,.activity em.overdue{color:#b91c1c;background:var(--ut-error-soft)}.reminder-status.pending{color:#92400e;background:var(--ut-warning-soft)}.dashboard-empty{min-height:120px}.dashboard-empty span{color:var(--ut-text-secondary);background:#f1f5f9}.dashboard-section-header,.customer-detail-header{border-color:var(--ut-border)}.project-progress-list progress,.progress-control progress{accent-color:var(--ut-primary)}.profile-roles span{color:var(--ut-primary-hover);background:var(--ut-primary-soft)}.toast{color:#047857;background:var(--ut-success-soft)}.toast.error{color:#b91c1c;background:var(--ut-error-soft)}@media(max-width:700px){.shared-page-header{align-items:flex-start;flex-direction:column}.action-primary,.primary-button{min-height:42px}.customer-row-actions{align-items:stretch;flex-direction:column}.customer-row-actions button{width:100%;text-align:left}}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{color:var(--ut-text);background:#f9731638}.metric-card strong,.real-metrics strong,time{font-variant-numeric:tabular-nums}.customers-content,.dashboard-content{width:100%;max-width:1440px;margin-inline:auto;padding:28px 32px 48px}.shared-page-header{margin-bottom:24px}.shared-page-header h1{margin:6px 0;color:var(--ut-text);font-size:clamp(1.55rem,2.4vw,1.9rem);letter-spacing:-.025em;line-height:1.15}.shared-page-header>div>p:last-child{max-width:68ch;color:var(--ut-text-secondary);line-height:1.5}.overline{font-size:.72rem;font-weight:700;letter-spacing:.12em}button,a,input,select,textarea{transition-property:color,background-color,border-color,box-shadow,transform;transition-duration:.15s;transition-timing-function:ease}.action-primary:active:not(:disabled),.primary-button:active:not(:disabled),.secondary-button:active:not(:disabled){transform:translateY(1px)}input:hover:not(:focus):not(:disabled),select:hover:not(:focus):not(:disabled),textarea:hover:not(:focus):not(:disabled){border-color:var(--ut-border-strong)}:focus-visible{outline:2px solid var(--ut-primary);outline-offset:2px;border-radius:4px}.app-navigation :focus-visible{outline-color:var(--ut-accent)}.data-state.error{color:var(--ut-error-text);background:var(--ut-error-soft);border-radius:var(--ut-radius-md)}@media(max-width:900px){.customers-content,.dashboard-content{padding:22px clamp(14px,4vw,24px) 36px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.secondary-button,.import-action-card>button:not(.action-primary),.import-wizard-actions>button:not(.action-primary),.import-drop-zone>button:not([aria-label]),.import-failed-records>header>button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 16px;border:1px solid var(--ut-border-strong);border-radius:10px;color:var(--ut-text-strong);background:var(--ut-surface);font-weight:600;box-shadow:var(--ut-shadow-sm)}.secondary-button:hover:not(:disabled),.import-action-card>button:not(.action-primary):hover:not(:disabled),.import-wizard-actions>button:not(.action-primary):hover:not(:disabled),.import-drop-zone>button:not([aria-label]):hover,.import-failed-records>header>button:hover{border-color:var(--ut-text-muted);background:var(--ut-surface-soft)}.import-action-card>button{width:max-content}.back-button:hover,.table-link:hover{color:var(--ut-primary-hover);text-decoration:underline;text-underline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skeleton{display:grid;gap:14px;padding:20px}.skeleton-row{display:flex;align-items:center;gap:14px}.skeleton-bone{display:block;border-radius:8px;background:linear-gradient(90deg,var(--ut-surface-muted) 0%,#e8ecf2 40%,var(--ut-surface-muted) 80%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}.skeleton-avatar{width:34px;height:34px;flex:none;border-radius:50%}.skeleton-line{height:12px;flex:1;max-width:360px}.skeleton-line.short{flex:.6;max-width:200px}.skeleton-pill{width:72px;height:22px;flex:none;margin-left:auto;border-radius:999px}.skeleton-table .skeleton-row{padding-bottom:14px;border-bottom:1px solid var(--ut-border)}.skeleton-table .skeleton-row:last-child{border-bottom:0}.skeleton-cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.skeleton-cards .skeleton-row{flex-direction:column;align-items:stretch;gap:10px;padding:18px;border:1px solid var(--ut-border);border-radius:var(--ut-radius-md)}.skeleton-cards .skeleton-line{max-width:none;flex:none}.skeleton-block{padding:0}.skeleton-fill{width:100%;height:100%;min-height:180px;border-radius:var(--ut-radius-md)}.page-skeleton-header{display:grid;gap:10px;margin-bottom:24px}.skeleton-overline{width:120px;height:10px}.skeleton-title{width:min(320px,70%);height:28px}.page-skeleton .skeleton{border:1px solid var(--ut-border);border-radius:var(--ut-radius-lg);background:var(--ut-surface)}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.data-state{display:flex;min-height:0;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:36px 24px;text-align:center}.data-state>div{display:grid;gap:4px;max-width:46ch}.data-state strong{color:var(--ut-text);font-size:.98rem}.data-state p{margin:0;color:var(--ut-text-secondary);font-size:.9rem;line-height:1.5}.data-state-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:12px;color:var(--ut-text-secondary);background:var(--ut-surface-muted)}.data-state-icon svg{width:22px;height:22px}.data-state.error .data-state-icon{color:var(--ut-error-text);background:#fee2e2}.data-state.error strong{color:var(--ut-error-text)}.data-state.error p{color:#7f1d1d}.data-state .secondary-button svg,.data-state .action-primary svg{width:16px;height:16px}.dashboard-map-state.empty{display:flex;height:auto;min-height:0;justify-content:flex-start;gap:14px;padding:18px 20px;text-align:left}.dashboard-map-state.empty>div{display:grid;gap:2px}.dashboard-map-state.empty strong{color:var(--ut-text-strong)}.dashboard-map-state.empty p{margin:0;font-size:.85rem}.toast-viewport{z-index:1600;top:auto;bottom:20px}.toast{display:flex;align-items:center;gap:10px;padding:12px 12px 12px 14px;border:1px solid rgb(4 120 87 / 18%);font-size:.88rem;font-weight:600;animation:profile-menu-in .18s var(--ut-ease)}.toast.error{border-color:#b91c1c2e}.toast>svg{width:18px;height:18px;flex:none}.toast>span{flex:1;min-width:0;line-height:1.4}.toast-action{flex:none;padding:6px 10px;border:0;border-radius:8px;color:inherit;background:#ffffffb3;font-weight:700;text-decoration:underline;text-underline-offset:3px}.toast-action:hover{background:#fff}.toast-close{display:grid;width:28px;height:28px;flex:none;place-items:center;padding:0;border:0;border-radius:8px;color:inherit;background:transparent;opacity:.7}.toast-close:hover{opacity:1;background:#fff9}.toast-close svg{width:15px;height:15px}@media(max-width:900px){.toast-viewport{right:12px;bottom:calc(84px + env(safe-area-inset-bottom));left:12px;width:auto}}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#e88b83}input[aria-invalid=true]:focus,select[aria-invalid=true]:focus,textarea[aria-invalid=true]:focus{border-color:var(--ut-error);box-shadow:0 0 0 3px #ef444429}.customer-form .field-error>small{margin-top:2px;color:var(--ut-error-text);font-size:.78rem;font-weight:500}.shared-page-header>.action-primary,.shared-page-header>div>.action-primary{white-space:nowrap}.project-detail-page{width:min(100%,1400px);margin:auto}.project-detail-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}.project-detail-hero .overline{margin:0}.project-title-row{display:flex;align-items:center;gap:12px}.project-title-row h2{margin:6px 0}.project-detail-hero>div>p:last-child{margin:0;color:var(--ut-text-secondary)}.project-header-actions{display:flex;align-items:center;gap:9px;padding-right:46px}.secondary-action{height:40px;padding:0 14px;border:1px solid var(--ut-border);border-radius:10px;color:var(--ut-primary);background:#fff;font-weight:750}.inline-status{display:flex;align-items:center;gap:7px}.inline-status select{height:40px;border:1px solid var(--ut-border);border-radius:9px}.inline-status button{display:grid;place-items:center;border:0;background:none}.inline-status svg{width:17px}.project-detail-tabs{display:flex;gap:28px;margin:28px 0 22px;border-bottom:1px solid var(--ut-border)}.project-detail-tabs button{padding:11px 2px;border:0;border-bottom:3px solid transparent;color:var(--ut-text-secondary);background:none;font-weight:750}.project-detail-tabs button.active{color:var(--ut-primary);border-color:var(--ut-primary)}.project-summary{display:grid;grid-template-columns:1fr 1fr;gap:18px}.project-summary>section{padding:22px;border:1px solid var(--ut-border);border-radius:var(--ut-radius-lg);background:#fff}.project-summary h3{margin:0 0 18px;font-size:1rem}.project-facts{grid-column:1/-1}.project-facts dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0}.project-facts dl>div{padding:13px;border-top:1px solid var(--ut-border)}.project-facts dt{color:var(--ut-text-secondary);font-size:.74rem}.project-facts dd{margin:6px 0 0;color:var(--ut-text);font-weight:750}.project-progress-card header{display:flex;justify-content:space-between}.project-progress-card progress{width:100%;height:10px;accent-color:var(--ut-primary)}.project-description p{margin:0;color:var(--ut-text-secondary);line-height:1.65}.project-location{grid-column:1/-1}.project-activity>header,.project-attachments>header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.project-activity nav,.project-attachments nav{display:flex;gap:5px;padding:4px;border-radius:10px;background:#f1f5f9}.project-activity nav button,.project-attachments nav button{padding:7px 10px;border:0;border-radius:7px;color:var(--ut-text-secondary);background:none;font-weight:700}.project-activity nav button.active,.project-attachments nav button.active{color:#fff;background:var(--ut-primary)}.project-activity>header>div{display:flex;gap:8px}.project-activity>header>div button{padding:8px 11px;border:1px solid var(--ut-border);border-radius:9px;color:var(--ut-primary);background:#fff;font-weight:700}.project-quick-form{display:flex;gap:8px;margin-bottom:18px;padding:14px;border:1px solid var(--ut-border);border-radius:12px;background:#fff}.project-quick-form input{min-width:0;flex:1;height:40px}.project-timeline{position:relative;padding-left:42px}.project-timeline:before{position:absolute;top:25px;bottom:20px;left:14px;width:2px;background:var(--ut-border);content:""}.project-timeline article{position:relative;min-height:68px;padding:13px 16px;margin-bottom:9px;border:1px solid var(--ut-border);border-radius:12px;background:#fff}.event-icon{position:absolute;top:16px;left:-42px;display:grid;width:30px;height:30px;place-items:center;border:3px solid var(--ut-background);border-radius:50%}.event-icon svg{width:14px}.event-icon.orange{color:#a95b14;background:var(--ut-warning-soft)}.event-icon.green{color:#047857;background:var(--ut-success-soft)}.event-icon.blue{color:#1d4ed8;background:var(--ut-primary-soft)}.project-timeline p{margin:5px 0;color:var(--ut-text-secondary)}.project-timeline small{color:#94a3b8}.project-timeline time{white-space:nowrap}.project-products{display:grid;gap:10px}.project-products article{display:flex;gap:13px;padding:17px;border:1px solid var(--ut-border);border-radius:12px;background:#fff}.project-products svg{color:var(--ut-primary)}.project-products p{margin:5px 0 0;color:var(--ut-text-secondary)}.project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.project-gallery article{overflow:hidden;border:1px solid var(--ut-border);border-radius:14px;background:#fff}.project-gallery article.cover{border-color:var(--ut-accent)}.project-gallery img,.document-preview{display:grid;width:100%;height:220px;place-items:center;object-fit:cover;background:#f1f5f9}.document-preview svg{width:44px;color:var(--ut-text-secondary)}.project-gallery article>div{padding:13px}.project-gallery article>div strong{margin-right:8px}.project-gallery article>div span{color:#a9430d;font-size:.72rem}.project-gallery p,.project-gallery small{color:var(--ut-text-secondary)}.project-gallery footer{display:flex;gap:8px;padding:0 13px 13px}.project-gallery footer button{padding:7px 9px;border:0;border-radius:8px}.upload-drawer-backdrop{position:fixed;z-index:80;inset:0;display:flex;justify-content:flex-end;background:#0f172a73}.upload-drawer{position:relative;width:min(100%,480px);height:100%;padding:38px;overflow:auto;background:#fff;box-shadow:-15px 0 40px #0f172a26}.upload-drawer form{display:grid;gap:15px}.upload-drawer label{display:grid;gap:7px;color:#334155;font-size:.82rem;font-weight:700}.upload-drawer input,.upload-drawer select{width:100%;min-height:42px}.cover-check{display:flex!important;align-items:center;grid-template-columns:auto 1fr}.cover-check input{width:17px!important}.project-panel{width:100%!important;padding:48px max(40px,calc((100vw - 1400px)/2))!important;background:var(--ut-background)!important;box-shadow:none!important}@media(max-width:900px){.project-detail-hero{align-items:flex-start;flex-direction:column}.project-header-actions{padding:0;flex-wrap:wrap}.project-summary{grid-template-columns:1fr}.project-facts dl,.project-gallery{grid-template-columns:1fr 1fr}}@media(max-width:600px){.project-panel{padding:42px 18px!important}.project-facts dl,.project-gallery{grid-template-columns:1fr}.project-activity>header,.project-attachments>header{align-items:flex-start;flex-direction:column}.project-activity nav,.project-detail-tabs{max-width:100%;overflow:auto}.project-quick-form{flex-direction:column}}.project-panel{width:100%!important;min-width:0;padding:32px clamp(20px,4vw,56px)!important}.project-detail-page,.project-detail-page *{min-width:0}.project-detail-page{width:min(100%,1400px);margin-inline:auto}.project-detail-hero{align-items:center;min-height:76px;padding:2px 50px 14px 0;border-bottom:1px solid var(--ut-border)}.project-detail-hero .project-title-row h2{margin:3px 0 4px;font-size:clamp(1.55rem,2.6vw,2.15rem);letter-spacing:-.035em}.project-detail-hero .overline{font-size:.7rem}.project-header-actions{padding-right:0}.project-header-actions button{min-height:38px}.project-header-actions svg{width:16px}.project-detail-tabs{gap:24px;margin:14px 0 18px}.project-detail-tabs button{padding:9px 2px;font-size:.83rem}.project-tab-count{display:inline-grid;min-width:20px;min-height:20px;margin-left:6px;padding:0 5px;place-items:center;border-radius:999px;color:var(--ut-text-secondary);background:#e8edf3;font-size:.68rem}.project-attachment-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.project-attachment-actions button{display:inline-flex;align-items:center;gap:6px}.project-attachment-actions svg{width:16px}.project-detail-tabs button.active .project-tab-count{color:#fff;background:var(--ut-primary)}.project-summary-compact{display:grid;grid-template-columns:1fr;gap:16px}.project-overview-grid,.project-summary-secondary{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);gap:16px}.project-overview-card,.project-location-card,.project-progress-compact,.project-recent-activity{min-width:0;padding:18px;border:1px solid var(--ut-border);border-radius:15px;background:#fff}.project-summary-compact .overline{margin:0 0 3px;font-size:.66rem}.project-summary-compact h3{margin:0;font-size:.96rem}.project-overview-card>header,.project-location-card>header,.project-progress-compact>header,.project-recent-activity>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px}.project-location-card>header>svg{width:20px;color:var(--ut-primary)}.project-overview-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0}.project-overview-card dl>div{min-width:0;padding:10px 12px;border-top:1px solid var(--ut-border)}.project-overview-card dt{color:var(--ut-text-secondary);font-size:.68rem}.project-overview-card dd{overflow:hidden;margin:4px 0 0;color:var(--ut-text);font-size:.82rem;font-weight:750;text-overflow:ellipsis}.project-overview-card .project-address-fact{grid-column:1 / -1}.project-location-card{grid-column:auto}.project-overview-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.project-overview-grid>.project-overview-card{grid-column:auto}.project-overview-grid .project-overview-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}.project-location-card .location-viewer .leaflet-container{height:206px}.project-location-card .location-empty{min-height:206px}.project-location-card .location-viewer footer{padding:8px 10px}.project-progress-compact header strong{color:var(--ut-primary);font-size:1.4rem}.project-progress-compact progress{display:block;width:100%;height:9px;margin:5px 0 13px;accent-color:var(--ut-primary)}.project-progress-compact>p{margin:0;color:var(--ut-text-secondary);font-size:.84rem;line-height:1.55}.project-progress-compact>p.muted{color:#94a3b8}.project-recent-activity>header button{padding:5px 7px;border:0;color:var(--ut-primary);background:transparent;font-size:.78rem;font-weight:750}.project-recent-list{display:grid}.project-recent-list article{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:9px 0;border-top:1px solid var(--ut-border)}.recent-event-icon{display:grid;width:28px;height:28px;place-items:center;border-radius:9px}.recent-event-icon svg{width:14px}.recent-event-icon.orange{color:#a95b14;background:var(--ut-warning-soft)}.recent-event-icon.green{color:#047857;background:var(--ut-success-soft)}.recent-event-icon.blue{color:#1d4ed8;background:var(--ut-primary-soft)}.project-recent-list strong,.project-recent-list small{display:block}.project-recent-list strong{color:var(--ut-text);font-size:.81rem}.project-recent-list p{overflow:hidden;margin:3px 0;color:var(--ut-text-secondary);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.project-recent-list small{margin-top:3px;color:#94a3b8;font-size:.69rem}@media(max-width:1200px){.project-overview-grid,.project-summary-secondary{grid-template-columns:1fr}.project-location-card .location-viewer .leaflet-container{height:260px}}@media(max-width:680px){.project-detail-hero{align-items:flex-start;padding-right:42px}.project-header-actions{width:100%}.project-header-actions button{flex:1}.project-overview-card dl{grid-template-columns:1fr 1fr}}@media(max-width:460px){.project-overview-card dl{grid-template-columns:1fr}.project-header-actions{flex-direction:column}.project-header-actions button,.inline-status{width:100%}}.project-timeline article.project-note{display:flex;gap:12px;align-items:flex-start}.project-note>div:first-of-type{flex:1}.project-note p{white-space:pre-wrap}.project-note-actions{display:flex;gap:4px}.project-note-actions button{display:grid;width:32px;height:32px;place-items:center;border:0;border-radius:8px;color:var(--ut-text-secondary);background:none}.project-note-actions button:hover{color:var(--ut-primary);background:var(--ut-surface-muted)}.project-note-actions svg{width:16px}.project-note-edit{display:grid;gap:8px;margin:4px 0 8px}.project-note-edit textarea{width:100%;padding:9px 11px;border:1px solid var(--ut-border-strong);border-radius:9px;font:inherit;resize:vertical}.project-note-edit>div{display:flex;gap:8px}.project-note-edit button:not(.action-primary){padding:8px 12px;border:1px solid var(--ut-border);border-radius:9px;background:var(--ut-surface)}.project-delivery-receipts{display:grid;gap:12px;margin-top:22px}.project-delivery-receipts>header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px}.project-delivery-receipts>header h3{margin:4px 0 0;font-size:1rem}.project-delivery-receipts>header .secondary-action{display:inline-flex;align-items:center;gap:7px}.project-delivery-receipts>header svg{width:16px}.project-delivery-receipts ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.project-delivery-receipts li{border:1px solid var(--ut-border);border-radius:12px;background:var(--ut-surface)}.project-delivery-summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 14px}.project-delivery-summary>div{display:grid;gap:3px}.project-delivery-summary a{color:var(--ut-text-strong);font-weight:750;text-decoration:none}.project-delivery-summary a:hover{color:var(--ut-primary)}.project-delivery-summary small{overflow:hidden;color:var(--ut-text-muted);text-overflow:ellipsis;white-space:nowrap}.project-delivery-toggle{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 10px;border:1px solid var(--ut-border);border-radius:9px;color:var(--ut-text-strong);background:var(--ut-surface);font-size:.78rem;font-weight:700}.project-delivery-toggle:hover{border-color:var(--ut-primary);color:var(--ut-primary)}.project-delivery-toggle svg{width:15px;height:15px}.project-delivery-receipts li.open .project-delivery-toggle svg:last-child{transform:rotate(180deg)}.project-delivery-none{color:var(--ut-text-muted);font-size:.76rem}.project-delivery-files{display:grid;gap:6px;padding:0 14px 14px}.project-delivery-files button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--ut-border);border-radius:10px;color:var(--ut-text-secondary);background:var(--ut-surface-soft);text-align:left}.project-delivery-files button:hover{border-color:var(--ut-primary);color:var(--ut-primary)}.project-delivery-files svg{width:16px}.project-delivery-files span{display:grid;gap:2px;min-width:0}.project-delivery-files strong{overflow:hidden;color:var(--ut-text-strong);text-overflow:ellipsis;white-space:nowrap}.project-delivery-files small{color:var(--ut-text-muted)}@media(max-width:600px){.project-delivery-summary{grid-template-columns:minmax(0,1fr) auto}.project-delivery-summary>:last-child{grid-column:1 / -1;justify-self:start}}.reminders-page{display:grid;gap:16px}.reminders-page>.shared-page-header{margin-bottom:0}.reminder-calendar-toolbar{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:16px 18px;border:1px solid var(--ut-border);border-radius:15px;background:#fff;box-shadow:var(--ut-shadow-sm)}.reminder-month-navigation,.reminder-month-navigation>div,.reminder-calendar-filters{display:flex;align-items:center}.reminder-month-navigation{gap:7px}.reminder-month-navigation>div{min-width:215px;justify-content:center;gap:9px;color:var(--ut-sidebar)}.reminder-month-navigation svg{width:18px}.reminder-month-navigation>button{display:grid;width:38px;height:38px;place-items:center;border:1px solid #d6deea;border-radius:9px;color:#40526a;background:#f8fafc}.reminder-month-navigation>button:hover{color:#1d4ed8;border-color:#a9bde0;background:#eff6ff}.reminder-month-navigation .reminder-today-button{width:auto;padding:0 12px;font-weight:750}.reminder-calendar-filters{gap:12px}.reminder-calendar-filters label{display:grid;min-width:190px;gap:5px;color:#475569;font-size:.73rem;font-weight:750}.reminder-calendar-filters select{min-height:39px;padding:0 34px 0 11px;border:1px solid #cbd5e1;border-radius:9px;color:#172033;background:#fff;font:inherit;font-size:.82rem}.reminder-calendar-summary{display:flex;align-items:center;flex-wrap:wrap;gap:9px;padding:0 3px}.reminder-calendar-summary span{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:99px;color:#31577f;background:#eaf2fc;font-size:.75rem}.reminder-calendar-summary span.overdue{color:#b42318;background:#feeceb}.reminder-calendar-summary svg{width:14px}.reminder-calendar-summary small{margin-left:auto;color:#64748b}.reminder-calendar-scroll{overflow-x:auto;border:1px solid #d8e0ea;border-radius:16px;background:#fff;box-shadow:0 12px 30px #11213b14}.reminder-calendar{display:grid;min-width:980px;grid-template-columns:repeat(7,minmax(0,1fr))}.reminder-weekday{padding:11px 12px;border-bottom:1px solid #d8e0ea;color:#65758a;background:#f7f9fc;font-size:.69rem;font-weight:800;letter-spacing:.06em;text-align:center;text-transform:uppercase}.reminder-calendar-day{min-height:148px;padding:9px;border-right:1px solid #e5eaf0;border-bottom:1px solid #e5eaf0;background:#fff}.reminder-calendar-day:nth-child(7n){border-right:0}.reminder-calendar-day.outside{background:#fafbfc}.reminder-calendar-day.outside .reminder-day-events{opacity:.55}.reminder-calendar-day>header{display:flex;align-items:center;justify-content:space-between;min-height:27px;margin-bottom:5px}.reminder-calendar-day>header time{display:grid;width:26px;height:26px;place-items:center;border-radius:50%;color:#43546a;font-size:.75rem;font-weight:800}.reminder-calendar-day.today>header time{color:#fff;background:#1d4ed8;box-shadow:0 4px 10px #1d4ed847}.reminder-calendar-day.outside>header time{color:#a7b0bd}.reminder-calendar-day>header span{padding:2px 6px;border-radius:99px;color:#64748b;background:#eef2f6;font-size:.65rem;font-weight:800}.reminder-day-events{display:grid;gap:5px}.reminder-day-events button{display:grid;min-width:0;gap:1px;padding:7px 8px;border:0;border-left:3px solid #2563eb;border-radius:7px;color:#173b6d;background:#eaf2ff;text-align:left}.reminder-day-events button:hover{translate:0 -1px;box-shadow:0 5px 12px #2563eb24}.reminder-day-events button.overdue{border-left-color:#dc2626;color:#8f1d19;background:#fff0ef}.reminder-day-events button.completed{border-left-color:#16a36a;color:#176648;background:#eaf8f2}.reminder-day-events time{font-size:.63rem;font-weight:800}.reminder-day-events strong,.reminder-day-events small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reminder-day-events strong{font-size:.72rem}.reminder-day-events small{opacity:.75;font-size:.63rem}.reminder-detail-backdrop{position:fixed;z-index:1200;inset:0;display:grid;place-items:center;padding:20px;background:#0a14257a;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.reminder-detail-dialog{width:min(100%,540px);overflow:hidden;border:1px solid #dbe3ec;border-radius:18px;background:#fff;box-shadow:0 30px 80px #050f2047}.reminder-create-dialog{width:min(100%,580px);overflow:hidden;border:1px solid #dbe3ec;border-radius:18px;background:#fff;box-shadow:0 30px 80px #050f2047}.reminder-create-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid #e5eaf0}.reminder-create-dialog h2{margin:3px 0 0;color:#172033;font-size:1.1rem}.reminder-create-dialog header small{color:#64748b;font-weight:750}.reminder-create-dialog header button{display:grid;width:32px;height:32px;place-items:center;border:0;border-radius:8px;color:#64748b;background:#f1f4f7}.reminder-create-dialog header svg{width:18px}.reminder-create-dialog form{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:22px}.reminder-create-dialog form label{display:grid;gap:6px;color:#475569;font-size:.75rem;font-weight:750}.reminder-create-dialog form label:last-of-type,.reminder-create-dialog form footer{grid-column:1 / -1}.reminder-create-dialog input,.reminder-create-dialog select,.reminder-create-dialog textarea{width:100%;min-height:42px;padding:9px 11px;border:1px solid #cbd5e1;border-radius:9px;color:#172033;background:#fff;font:inherit;font-size:.82rem}.reminder-create-dialog textarea{resize:vertical}.reminder-create-dialog form footer{display:flex;justify-content:flex-end;gap:9px;margin-top:3px}.reminder-create-dialog form footer button{min-height:40px;padding:0 15px;border:1px solid #cbd5e1;border-radius:8px;color:#334155;background:#fff;font-weight:750}.reminder-create-dialog form footer .action-primary{color:#fff;background:#1d4ed8}.reminder-detail-dialog>header{display:grid;grid-template-columns:42px minmax(0,1fr) 34px;align-items:start;gap:12px;padding:20px;border-bottom:1px solid #e5eaf0}.reminder-detail-dialog>header>span{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;color:#1d4ed8;background:#eaf2ff}.reminder-detail-dialog>header>span.completed{color:#087052;background:#e7f8f0}.reminder-detail-dialog>header svg{width:20px}.reminder-detail-dialog h2{margin:3px 0 0;color:#172033;font-size:1.05rem}.reminder-detail-dialog header small{color:#64748b;font-weight:750}.reminder-detail-dialog>header>button{display:grid;width:32px;height:32px;place-items:center;border:0;border-radius:8px;color:#64748b;background:#f1f4f7}.reminder-detail-dialog dl{display:grid;gap:12px;margin:0;padding:20px}.reminder-detail-dialog dl>div{display:grid;grid-template-columns:115px 1fr;gap:14px}.reminder-detail-dialog dt{color:#64748b;font-size:.76rem;font-weight:750}.reminder-detail-dialog dd{margin:0;color:#26364a;font-size:.84rem}.reminder-detail-dialog>footer{display:flex;justify-content:flex-end;gap:9px;padding:15px 20px;border-top:1px solid #e5eaf0;background:#f8fafc}.reminder-detail-dialog>footer a,.reminder-detail-dialog>footer button{display:inline-flex;align-items:center;min-height:38px;padding:0 13px;border:1px solid #cbd5e1;border-radius:8px;color:#334155;background:#fff;font-size:.77rem;font-weight:750;text-decoration:none}.reminder-detail-dialog>footer .action-primary{color:#fff;background:#1d4ed8}@media(max-width:900px){.reminder-calendar-toolbar{align-items:stretch;flex-direction:column}.reminder-calendar-filters label{flex:1}}@media(max-width:620px){.reminder-month-navigation{flex-wrap:wrap}.reminder-month-navigation>div{min-width:160px;flex:1}.reminder-calendar-filters{align-items:stretch;flex-direction:column}.reminder-calendar-summary small{width:100%;margin-left:0}.reminder-detail-dialog>footer{flex-wrap:wrap}.reminder-detail-dialog>footer a,.reminder-detail-dialog>footer button{justify-content:center;flex:1}.reminder-create-dialog form{grid-template-columns:1fr}.reminder-create-dialog form label,.reminder-create-dialog form footer{grid-column:1}}.reminder-day-add{display:grid;width:24px;height:24px;padding:0;place-items:center;border:1px solid var(--ut-border);border-radius:7px;color:var(--ut-primary);background:var(--ut-surface);opacity:0;cursor:pointer;transition:opacity .12s ease}.reminder-day-add svg{width:14px;height:14px}.reminder-calendar-day>header span{margin-left:auto}.reminder-calendar-day>header span+.reminder-day-add{margin-left:6px}.reminder-calendar-day>header time+.reminder-day-add{margin-left:auto}.reminder-calendar-day:hover .reminder-day-add,.reminder-day-add:focus-visible{opacity:1}@media(hover:none){.reminder-day-add{opacity:1}}.customer-toolbar>select{min-width:180px}.customer-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0 18px}.customer-metrics article,.customer-metrics .metric-filter{position:relative;overflow:hidden;padding:18px 20px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;box-shadow:0 7px 22px #0f172a0a}.customer-metrics article:before,.customer-metrics .metric-filter:before{position:absolute;inset:0 auto 0 0;width:3px;background:#cbd5e1;content:""}.customer-metrics article.accent:before,.customer-metrics .metric-filter.accent:before{background:var(--ut-primary)}.customer-metrics span{display:block;color:#64748b;font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.customer-metrics strong{display:block;margin-top:8px;color:#172841;font-size:1.65rem;letter-spacing:-.04em}.customer-row-actions{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:6px}.customer-contact-action{display:grid;width:35px;height:35px;flex:0 0 35px;place-items:center;border:1px solid #dbe3ec;border-radius:10px;color:#52647a;background:#f8fafc;transition:transform .16s ease,border-color .16s ease,background .16s ease}.customer-contact-action svg{width:16px;height:16px}.customer-contact-action:hover{transform:translateY(-1px)}.customer-contact-action.whatsapp:hover{border-color:#86d9af;color:#087b4c;background:#e9fbf2}.customer-contact-action.email:hover{border-color:#a9c4ee;color:#1d4ed8;background:#eff6ff}.customer-row-actions .row-action{display:inline-flex;min-height:35px;align-items:center;gap:6px;padding:0 11px;border:1px solid #c9d7ea;border-radius:10px;color:#244e83;background:#f4f8fd;font-size:.73rem;font-weight:800}.customer-row-actions .row-action svg{width:15px;height:15px}.customer-row-actions .row-action:hover{border-color:#86a9d5;color:#173f73;background:#eaf2fc}.row-actions-menu{position:relative}.customer-table-card:has(.row-actions-menu[open]),.table-scroll:has(.row-actions-menu[open]){overflow:visible}.customers-results-table tbody tr:has(.row-actions-menu[open]){position:relative;z-index:10}.customers-results-table td.result-col-actions:has(.row-actions-menu[open]){position:relative;z-index:10;overflow:visible}.row-actions-menu summary{display:grid;width:34px;height:34px;place-items:center;border:1px solid #e2e8f0;border-radius:9px;color:#64748b;background:#fff;cursor:pointer;list-style:none}.row-actions-menu summary::-webkit-details-marker{display:none}.row-actions-menu summary:hover,.row-actions-menu[open] summary{border-color:#f2b38d;color:#d94f0b;background:#fff7f2}.row-actions-menu summary svg{position:static;width:17px;height:17px}.row-actions-menu>div{position:absolute;z-index:6;top:calc(100% + 6px);right:0;display:grid;width:210px;padding:6px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 16px 34px #0f172a24}.row-actions-menu>div button{padding:9px 10px;border:0;border-radius:8px;color:#334155;background:transparent;text-align:left}.row-actions-menu>div button:hover{color:#c94d0d;background:#fff7f2}.row-actions-menu>div button.danger{color:#b42318}.pagination nav,.pagination-pages{display:flex;align-items:center;gap:5px}.pagination .pagination-pages{gap:4px}.pagination button{width:34px;height:34px}.pagination button.active{border-color:var(--ut-primary);color:#fff;background:var(--ut-primary)}.pagination button.pagination-direction{width:auto;padding:0 11px;color:#475569;font-weight:700}.pagination-pages>span{padding:0 3px}.excel-export-button{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:5px 16px 5px 6px;border:1px solid #a7d7bb;border-radius:11px;color:#176b3a;background:linear-gradient(180deg,#fff,#f2fbf5);box-shadow:0 5px 14px #18703d1a;font-weight:750;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.excel-export-button:hover:not(:disabled){border-color:#57ad79;box-shadow:0 7px 18px #18703d29;transform:translateY(-1px)}.excel-export-button:focus-visible{outline:3px solid rgba(33,163,102,.22);outline-offset:2px}.excel-export-button:disabled{cursor:wait;opacity:.65}.excel-export-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;color:#fff;background:#1d6f42}.excel-export-icon svg{width:19px;height:19px;stroke-width:2.2}.entity-form-page{width:min(100%,1400px);margin:0 auto}.entity-form-header{display:grid;gap:24px;margin-bottom:28px}.entity-form-header .back-button{width:fit-content}.entity-form-header h1{margin:5px 0 8px}.entity-form-header p:last-child{max-width:760px;margin:0;color:#64748b}.entity-form-card{padding:clamp(22px,4vw,40px);border:1px solid #e2e8f0;border-radius:20px;background:#fff;box-shadow:0 14px 40px #0f172a0f}.entity-form-card>.overline{margin-top:0}.entity-form-card>h2,.entity-form-card .customer-form>h2{margin:6px 0 0}.entity-form-card .customer-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;margin-top:24px}.entity-form-card .customer-form>h2,.entity-form-card .customer-form>.location-picker,.entity-form-card .customer-form>.assignment-note,.entity-form-card .customer-form>.customer-form-extras,.entity-form-card .customer-form>.form-error{grid-column:1 / -1}.entity-form-card .location-picker{margin-top:2px;padding:18px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc}.entity-form-card .location-picker .leaflet-container{height:360px;border-radius:12px}.entity-form-card .customer-form-extras{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;margin:4px 0 0;padding:22px;background:#f8fafc}.entity-form-card .customer-form-extras label:nth-of-type(2){grid-row:span 2}.entity-form-card .customer-form-extras textarea{min-height:112px}.entity-form-card .progress-control{align-self:end}.entity-form-card .customer-form>.action-primary{grid-column:1 / -1;min-width:190px;min-height:46px;margin-top:8px;justify-self:end}@media(max-width:760px){.customer-metrics{grid-template-columns:1fr}.pagination{align-items:flex-start;flex-direction:column;gap:12px}.pagination nav{width:100%;justify-content:space-between}.pagination-pages{max-width:100%;overflow-x:auto}.entity-form-card .customer-form,.entity-form-card .customer-form-extras{grid-template-columns:1fr}.entity-form-card .customer-form-extras label:nth-of-type(2){grid-row:auto}.entity-form-card .location-picker .leaflet-container{height:280px}.entity-form-card .customer-form>.action-primary{width:100%}}.customer-title-line{display:flex;align-items:center;gap:12px}.customer-title-line h2{margin-right:4px}.customer-contact-line{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:12px}.customer-contact-line a,.customer-contact-line span{display:inline-flex;align-items:center;gap:6px;color:#617087;font-size:.8rem;text-decoration:none}.customer-contact-line svg,.customer-address svg{width:15px;height:15px}.customer-status-action{display:flex;align-items:flex-end;gap:12px;margin-top:18px;padding:14px 16px;border:1px solid #e1e6ed;border-radius:12px;background:#fff}.customer-status-action label{display:grid;flex:1;gap:6px;color:#526176;font-size:.78rem;font-weight:700}.customer-status-action select{height:40px;padding:0 10px;border:1px solid #dfe4ec;border-radius:9px}.customer-status-action button{height:40px;padding:0 14px;border:0;border-radius:9px;color:#526176;background:#eef2f6}.customer-address{grid-column:1/-1}.customer-address dd{display:flex;align-items:center;gap:7px}.customer-form select,.customer-form textarea{width:100%;padding:10px 13px;border:1px solid #dfe4ec;border-radius:10px;background:#fff}.customer-form select{height:44px;padding-block:0}.customer-form-extras{display:grid;gap:14px;margin:4px 0;padding:16px;border:1px solid #e2e7ee;border-radius:12px}.customer-form-extras legend{padding:0 6px;color:#273950;font-size:.88rem;font-weight:800}.reminder-group{display:grid;gap:10px}.reminder-group+.reminder-group{margin-top:24px;padding-top:18px;border-top:1px solid #e5eaf0}.reminder-group>h3{margin:0;color:#526176;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.reminder-group.completed article{opacity:.76}.customer-activity time,.crm-timeline time{white-space:nowrap}.status-pill.contacted,.status-pill.contactado{color:#285f9d;background:#eaf2fc}@media(max-width:760px){.customer-contact-line,.customer-title-line{align-items:flex-start;flex-direction:column}.customer-status-action{align-items:stretch;flex-direction:column}.customer-toolbar>select{min-width:0}}.import-wizard-card{padding:26px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 3px 12px #1f2f460d}.import-result-heading>span{display:grid;width:46px;height:46px;place-items:center;border-radius:13px;color:var(--ut-primary);background:#fff0e7}.import-wizard-card h2,.import-result-card h3{margin:18px 0 7px;color:#22344d}.import-wizard-card header p,.import-result-heading p,.import-failed-records header p{margin:0;color:#738096;line-height:1.55}.import-start-card{max-width:880px;margin:0 auto}.import-start-steps{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 28px;margin:0 0 4px;padding:0;color:#8a96a8;font-size:.86rem;font-weight:700;list-style:none}.import-start-steps li{display:flex;align-items:center;gap:8px}.import-start-steps span{display:grid;width:24px;height:24px;place-items:center;border-radius:50%;color:#738096;background:#eef1f5;font-size:.76rem}.import-start-steps li.active{color:#22344d}.import-start-steps li.active span{color:#fff;background:var(--ut-primary)}.import-start-drop{min-height:300px;transition:border-color .15s,background .15s}.import-start-drop>svg{width:42px;height:42px;color:var(--ut-primary)}.import-start-drop strong{color:#22344d;font-size:1.15rem}.import-start-drop.dragging{border-color:var(--ut-primary);background:#fff6ef}.import-start-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding-top:16px;border-top:1px solid #edf0f4}.import-start-footer p{margin:3px 0 0;color:#738096;font-size:.86rem}.import-start-footer button{display:inline-flex;align-items:center;gap:6px}.import-start-footer button svg{width:16px;height:16px}.import-wizard-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:760px;margin:0 auto 20px;padding:0;list-style:none}.import-wizard-steps li{position:relative;display:grid;justify-items:center;gap:7px;color:#8a96a7;font-size:.78rem;text-align:center}.import-wizard-steps li:not(:last-child):after{position:absolute;z-index:0;top:16px;left:calc(50% + 22px);width:calc(100% - 44px);height:2px;background:#dfe5ec;content:""}.import-wizard-steps li.complete:not(:last-child):after{background:var(--ut-primary)}.import-wizard-steps li>span{z-index:1;display:grid;width:34px;height:34px;place-items:center;border:2px solid #dfe5ec;border-radius:50%;background:#f5f7fb;font-weight:800}.import-wizard-steps li.active,.import-wizard-steps li.complete{color:#c95013}.import-wizard-steps li.active>span,.import-wizard-steps li.complete>span{border-color:var(--ut-primary);color:#fff;background:var(--ut-primary)}.import-wizard-card{max-width:1180px;margin:0 auto}.import-drop-zone{display:flex;min-height:260px;align-items:center;justify-content:center;flex-direction:column;gap:9px;margin-top:22px;padding:30px;border:2px dashed #cfd8e3;border-radius:14px;color:#718096;background:#f8fafc;text-align:center}.import-drop-zone>svg{width:38px;height:38px;color:var(--ut-primary)}.import-drop-zone.has-file{min-height:120px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;text-align:left;border-style:solid;border-color:#b9dfcd;background:#f4fbf7}.import-drop-zone.has-file div{display:grid;gap:4px}.import-drop-zone.has-file button{border:0;color:#a63d32;background:none}.import-wizard-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid #edf0f4}.import-wizard-actions a{color:#526177;font-weight:700;text-decoration:none}.import-review-card{max-width:1500px}.import-review-toolbar,.import-failed-records>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:20px 0 12px}.import-status-filters{display:flex;flex-wrap:wrap;gap:7px}.import-status-filters button{padding:7px 11px;border:1px solid #dfe5ec;border-radius:99px;color:#617087;background:#fff}.import-status-filters button.active{border-color:var(--ut-primary);color:#b74912;background:#fff1e8}.import-data-grid{max-height:520px;overflow:auto;border:1px solid #e4e9ef;border-radius:12px}.import-data-grid table{width:100%;min-width:1080px;border-collapse:collapse}.import-data-grid th{position:sticky;z-index:2;top:0;padding:10px;color:#607087;background:#f5f7fa;font-size:.72rem;text-align:left}.import-data-grid th small{display:block;margin-top:2px;color:#98a2b3;font-size:11px;font-weight:400;text-transform:none}.import-data-grid td{padding:10px;border-top:1px solid #edf0f4;color:#59677b;font-size:.76rem;vertical-align:top}.import-data-grid tr.row-invalid{background:#fff8f7}.import-data-grid tr.row-warning{background:#fffdf5}.import-data-grid details{min-width:160px}.import-data-grid details p{display:grid;gap:2px;margin:7px 0;color:#a33a31}.import-status{display:inline-flex;padding:4px 8px;border-radius:99px;font-size:.68rem;font-weight:800}.import-status.valid{color:#24704e;background:#e8f7ef}.import-status.warning{color:#8a6200;background:#fff3cd}.import-status.invalid{color:#b42318;background:#feeceb}.import-assign-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;color:#59677b;font-size:.78rem}.import-assign-bar label{display:inline-flex;align-items:center;gap:6px;margin-right:auto}.import-assign-bar>span{color:#8a6200}.import-edits-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;padding:10px 14px;border:1px solid #f3d27a;border-radius:10px;color:#8a6200;background:#fff8e6;font-size:.78rem}.import-cell-button{display:block;width:100%;min-height:28px;padding:4px 6px;border:1px dashed transparent;border-radius:6px;color:inherit;background:none;font:inherit;text-align:left;cursor:text}.import-cell-button:hover,.import-cell-button:focus-visible{border-color:#b8c4d6;background:#f8fafc}.import-cell-button.edited{border-color:#f3d27a;color:#6b4d00;background:#fff8e6}.import-cell-input{width:100%;min-width:120px;padding:4px 6px;border:1px solid #2f6fed;border-radius:6px;font:inherit}.import-data-grid tr.row-edited td:first-child{box-shadow:inset 3px 0 #f3b72a}.import-assign-panel{display:grid;gap:10px;margin-bottom:12px;padding:14px;border:1px solid #d0d7e2;border-radius:12px;background:#fff;box-shadow:0 8px 24px #10182814}.import-assign-panel header{display:flex;align-items:center;justify-content:space-between;color:#1d2939;font-size:.86rem}.import-assign-panel header button{display:inline-flex;padding:4px;border:0;background:transparent;color:#667085}.import-assign-search{display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid #d0d7e2;border-radius:8px}.import-assign-search svg{width:16px;color:#98a2b3}.import-assign-search input{flex:1;min-width:0;padding:9px 0;border:0;outline:none}.import-assign-panel ul{display:grid;max-height:240px;margin:0;padding:0;overflow:auto;list-style:none}.import-assign-panel li button{display:grid;width:100%;gap:2px;padding:8px 10px;border:0;border-radius:8px;background:transparent;text-align:left}.import-assign-panel li button:hover:not(:disabled){background:#f2f5f9}.import-assign-panel li span{color:#667085;font-size:.74rem}.import-assign-empty{padding:8px 10px;color:#667085;font-size:.78rem}.import-mapping-list{display:grid;border:1px solid #e4e9ef;border-radius:12px;overflow:hidden}.import-mapping-head,.import-mapping-row{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(220px,340px);align-items:center;gap:14px;padding:12px 16px}.import-mapping-head{color:#607087;background:#f5f7fa;font-size:.72rem;font-weight:700}.import-mapping-row{border-top:1px solid #edf0f4}.import-mapping-row.ignored{background:#fafbfc}.import-mapping-row.ignored .import-mapping-source strong{color:#98a2b3}.import-mapping-source{display:grid;gap:4px;min-width:0}.import-mapping-source label{display:grid;gap:2px}.import-mapping-source small{color:#98a2b3;font-size:.68rem}.import-mapping-source strong{color:#1d2939;font-size:.86rem}.import-mapping-samples{overflow:hidden;color:#667085;font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}.import-mapping-arrow{width:18px;height:18px;color:#98a2b3}.import-mapping-target{display:grid;gap:6px;justify-items:start}.import-mapping-target select{width:100%}.import-mapping-badge{padding:2px 8px;border-radius:99px;font-size:.66rem;font-weight:700}.import-mapping-badge.exact{color:#24704e;background:#e8f7ef}.import-mapping-badge.similar,.import-mapping-badge.content{color:#8a6200;background:#fff3cd}.import-mapping-badge.manual{color:#3e4c63;background:#eef2f6}.import-mapping-summary{display:grid;gap:4px;margin-top:14px;color:#667085;font-size:.78rem}.import-mapping-summary p{margin:0}.import-mapping-missing{color:#b42318}@media(max-width:640px){.import-mapping-head{display:none}.import-mapping-row{grid-template-columns:1fr;gap:8px}.import-mapping-arrow{display:none}}.import-result-heading{display:flex;align-items:center;gap:15px}.import-result-heading h2{margin:0 0 5px}.import-result-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:24px}.import-result-metrics article{padding:16px;border-radius:12px;background:#f5f7fa}.import-result-metrics span,.import-result-metrics strong{display:block}.import-result-metrics span{color:#738096;font-size:.75rem}.import-result-metrics strong{margin-top:5px;color:#25364d;font-size:1.45rem}.import-result-metrics .success{background:#edf9f2}.import-result-metrics .danger{background:#fff1ef}.import-failed-records{margin-top:20px;padding:16px;border:1px solid #f1d1cd;border-radius:12px;background:snow}.import-failed-records>header{margin:0 0 10px}.import-failed-records h3{margin:0 0 4px}.import-failed-records>div{display:grid;grid-template-columns:20px 90px minmax(0,1fr);gap:8px;padding:9px 0;border-top:1px solid #f3dfdc;color:#8f342c}.import-failed-records svg{width:17px}@media(max-width:800px){.import-start-grid,.import-result-metrics{grid-template-columns:1fr 1fr}.import-review-toolbar,.import-failed-records>header{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.import-start-grid,.import-result-metrics{grid-template-columns:1fr}.import-action-card,.import-wizard-card{padding:18px}.import-wizard-steps strong{font-size:.68rem}.import-wizard-actions{align-items:stretch;flex-direction:column-reverse}.import-wizard-actions>*{justify-content:center;text-align:center}}.excel-export-button.import-link{padding:5px 16px;text-decoration:none}.excel-export-button.import-link svg{width:18px}.customer-metrics .metric-filter{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease}.customer-metrics .metric-filter:hover{border-color:var(--ut-border-strong)}.customer-metrics .metric-filter[aria-pressed=true]{border-color:var(--ut-primary);box-shadow:0 0 0 3px var(--ut-primary-soft)}.customer-follow-up small.overdue{color:#b42318;font-weight:700}.customer-follow-up small{display:block;white-space:nowrap}.row-actions-menu>div button:has(svg){display:flex;align-items:center;gap:8px}.row-actions-menu>div button svg{width:16px;height:16px}.detail-actions .row-actions-menu summary{width:44px;height:44px}.heading-actions .excel-export-button,.heading-actions .excel-export-button.import-link{gap:8px;min-height:42px;padding:0 15px;border:1px solid var(--ut-border-strong);border-radius:11px;color:var(--ut-text-strong);background:var(--ut-surface);box-shadow:var(--ut-shadow-sm);font-weight:700;text-decoration:none}.heading-actions .excel-export-button:hover:not(:disabled){border-color:var(--ut-text-muted);background:var(--ut-surface-soft);box-shadow:var(--ut-shadow-sm);transform:none}.heading-actions .excel-export-button:focus-visible{outline:none;box-shadow:var(--ut-focus)}.heading-actions .excel-export-button svg{width:17px;height:17px;color:var(--ut-text-secondary)}.heading-actions .excel-export-icon{width:auto;height:auto;color:inherit;background:none}.heading-actions .excel-export-icon svg{stroke-width:2}.customer-row-actions{gap:6px}.customer-row-actions .customer-contact-action,.customer-row-actions .row-actions-menu summary{width:34px;height:34px;flex:0 0 34px;border:1px solid var(--ut-border);border-radius:9px;color:var(--ut-text-secondary);background:var(--ut-surface);transition:border-color .15s ease,color .15s ease,background .15s ease}.customer-row-actions .customer-contact-action:hover{transform:none}.customer-row-actions .customer-contact-action.whatsapp{color:#1a9e4f}.customer-row-actions .customer-contact-action.whatsapp:hover{border-color:#9fdcb7;color:#128043;background:#effaf3}.customer-row-actions .customer-contact-action.email:hover{border-color:var(--ut-border-strong);color:var(--ut-info);background:var(--ut-info-soft)}.customer-row-actions .row-action{min-height:34px;padding:0 12px;border:1px solid var(--ut-border);border-radius:9px;color:var(--ut-text-strong);background:var(--ut-surface);font-size:.78rem;font-weight:700}.customer-row-actions .row-action svg{color:var(--ut-text-secondary)}.customer-row-actions .row-action:hover,.customer-row-actions .row-actions-menu summary:hover,.customer-row-actions .row-actions-menu[open] summary{border-color:var(--ut-primary);color:var(--ut-primary);background:var(--ut-primary-soft)}.customer-row-actions .row-action:hover svg{color:inherit}.heading-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.location-map{position:relative}.location-map-toggle{position:absolute;z-index:1000;top:10px;right:10px;display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border:1px solid var(--ut-border-strong);border-radius:9px;color:var(--ut-text-strong);background:var(--ut-surface);box-shadow:var(--ut-shadow-md);font-size:.78rem;font-weight:700}.location-map-toggle svg{width:15px;height:15px}.location-map-toggle:hover{border-color:var(--ut-primary);color:var(--ut-primary)}.location-map.adjusting .location-map-toggle{border-color:var(--ut-primary);color:#fff;background:var(--ut-primary)}.location-map.adjusting .leaflet-container{outline:2px solid var(--ut-primary);outline-offset:-2px}.row-actions-menu>div button.warning{color:#b45309}.row-actions-menu>div button.warning:hover{color:#92400e;background:var(--ut-warning-soft)}.search-results-table td.result-col-actions{overflow:visible}.customers-results-table .result-col-primary{width:24%}.customers-results-table .result-col-secondary{width:15%}.customers-results-table .result-col-tertiary{width:14%}.customers-results-table .result-col-actions{width:262px}.projects-results-table .result-col-primary{width:24%}.projects-results-table .result-col-secondary,.projects-results-table .result-col-tertiary{width:auto}.projects-results-table .result-col-actions{width:150px}@media(max-width:760px){.customers-results-table .result-col-actions{width:220px}}.delivery-page{width:min(100%,1400px);margin:0 auto}.delivery-toolbar{justify-content:flex-end}.delivery-toolbar label{display:grid;max-width:240px;gap:6px;color:var(--ut-text-secondary);font-size:.76rem;font-weight:750}.delivery-toolbar select{min-width:220px}.delivery-list-card td{vertical-align:middle}.delivery-list-progress{display:flex;min-width:130px;align-items:center;gap:9px}.delivery-list-progress progress{width:90px;height:8px;accent-color:var(--ut-primary)}.delivery-list-progress span{color:var(--ut-text-secondary);font-size:.75rem;font-weight:750}.delivery-back{margin-bottom:26px}.delivery-form{display:grid;gap:22px}.delivery-form-section{padding:22px;border:1px solid var(--ut-border);border-radius:15px;background:#fff}.delivery-form-section>header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.delivery-form-section>header>svg{width:22px;color:var(--ut-primary)}.delivery-form-section header h2,.delivery-form-section header p{margin:0}.delivery-form-section header h2{font-size:1.05rem}.delivery-form-section header p{margin-top:4px;color:var(--ut-text-secondary);font-size:.8rem}.delivery-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px}.delivery-form label,.delivery-item label{display:grid;gap:7px;color:#334155;font-size:.82rem;font-weight:750}.delivery-form input,.delivery-form select,.delivery-form textarea,.delivery-status-control select,.delivery-receipt-items input{width:100%;min-height:43px;padding:0 12px;border:1px solid var(--ut-border);border-radius:10px;background:#fff;font:inherit}.delivery-form textarea{min-height:92px;padding-block:11px;resize:vertical}.delivery-form .full-width{grid-column:1 / -1}.delivery-products-editor>header .secondary-action{display:inline-flex;align-items:center;gap:7px;margin-left:auto}.delivery-products-editor>header .secondary-action svg{width:16px}.delivery-items-editor{display:grid;gap:10px}.delivery-item{display:grid;grid-template-columns:minmax(0,1fr) 150px 42px;align-items:end;gap:10px;padding:12px;border-radius:12px;background:#f8fafc}.delivery-item>button{display:grid;width:42px;height:43px;place-items:center;border:0;border-radius:9px;color:#b42318;background:#feeceb}.delivery-item>button svg{width:17px}.delivery-items-empty{padding:28px;border:1px dashed var(--ut-border);border-radius:12px;color:var(--ut-text-secondary);background:#f8fafc;text-align:center}.delivery-form-actions{display:flex;justify-content:flex-end}.delivery-form-actions button{min-width:190px}.delivery-detail-page{display:grid;gap:20px}.delivery-detail-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:26px;border:1px solid var(--ut-border);border-radius:18px;background:#fff}.delivery-title-row{display:flex;align-items:center;gap:12px}.delivery-title-row h1{margin:5px 0 8px;font-size:clamp(1.8rem,3vw,2.5rem)}.delivery-detail-hero>div>p:last-child{max-width:680px;margin:0;color:var(--ut-text-secondary)}.delivery-detail-actions{display:flex;flex-wrap:wrap;gap:9px}.delivery-detail-actions button{display:inline-flex;align-items:center;gap:7px;min-height:41px}.delivery-detail-actions svg{width:17px}.delivery-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.delivery-summary-grid article{display:flex;align-items:center;gap:13px;padding:18px;border:1px solid var(--ut-border);border-radius:14px;background:#fff}.delivery-summary-grid article>svg{width:22px;flex:none;color:var(--ut-primary)}.delivery-summary-grid span,.delivery-summary-grid strong{display:block}.delivery-summary-grid span{color:var(--ut-text-secondary);font-size:.73rem}.delivery-summary-grid strong{margin-top:4px;color:var(--ut-text);font-size:.92rem}.delivery-detail-card{padding:22px;border:1px solid var(--ut-border);border-radius:16px;background:#fff}.delivery-detail-card h2,.delivery-detail-card p{margin:0}.delivery-detail-card h2{font-size:1.05rem}.delivery-detail-card p{margin-top:5px;color:var(--ut-text-secondary);font-size:.82rem}.delivery-status-card{display:flex;align-items:center;justify-content:space-between;gap:20px}.delivery-status-control{display:flex;align-items:center;gap:9px}.delivery-status-control select{min-width:190px}.delivery-status-control button:disabled{opacity:.55}.delivery-receipt-card{border-color:#f2b38d;background:#fffaf6}.delivery-receipt-card>header,.delivery-products-card>header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.delivery-receipt-card>header>strong{color:#c94d0d}.delivery-receipt-items{display:grid;gap:9px}.delivery-receipt-items label{display:grid;grid-template-columns:minmax(0,1fr) 150px;align-items:center;gap:16px;padding:12px 14px;border:1px solid #f2dfd3;border-radius:11px;background:#fff}.delivery-receipt-items label span,.delivery-receipt-items label strong,.delivery-receipt-items label small{display:block}.delivery-receipt-items label small{margin-top:4px;color:var(--ut-text-secondary)}.delivery-receipt-card footer{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.delivery-receipt-evidence{margin-top:16px;padding:14px;border:1px dashed #e5b89b;border-radius:12px;background:#fff}.delivery-receipt-evidence>header{display:flex;align-items:center;gap:9px;margin-bottom:12px}.delivery-receipt-evidence>header svg{width:18px;color:var(--ut-primary)}.delivery-receipt-evidence>header strong,.delivery-receipt-evidence>header small{display:block}.delivery-receipt-evidence>header small{margin-top:2px;color:var(--ut-text-secondary)}.delivery-evidence-fields{display:grid;grid-template-columns:180px minmax(0,1fr);gap:10px}.delivery-evidence-fields label{display:grid;gap:6px;color:#334155;font-size:.78rem;font-weight:750}.delivery-evidence-fields select,.delivery-evidence-fields input{min-height:41px;padding:0 10px;border:1px solid var(--ut-border);border-radius:9px;background:#fff}.delivery-file-field{grid-column:1/-1}.delivery-file-field input{padding:8px}.delivery-selected-files{display:grid;gap:5px;margin:10px 0 0;padding:0;list-style:none}.delivery-selected-files li{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px 9px;border-radius:8px;background:#f8fafc}.delivery-selected-files svg{width:15px;color:var(--ut-primary)}.delivery-selected-files small{color:var(--ut-text-secondary)}.delivery-attachments-card>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}.delivery-attachments-card>header button,.delivery-attachment-grid footer button{display:inline-flex;align-items:center;gap:6px}.delivery-attachments-card>header svg,.delivery-attachment-grid footer svg{width:15px}.delivery-attachment-empty{padding:18px;border-radius:10px;background:#f8fafc;text-align:center}.delivery-attachment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.delivery-attachment-grid article{display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px;padding:12px;border:1px solid var(--ut-border);border-radius:11px}.delivery-attachment-grid article>span{display:grid;width:40px;height:40px;place-items:center;border-radius:10px;color:#2563eb;background:#eaf2fc}.delivery-attachment-grid article>span.photo{color:#7c3aed;background:#f2ecfb}.delivery-attachment-grid article>span svg{width:19px}.delivery-attachment-grid article strong,.delivery-attachment-grid article small{display:block}.delivery-attachment-grid article small{overflow:hidden;margin-top:3px;color:var(--ut-text-secondary);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.delivery-attachment-grid footer{grid-column:1/-1;display:flex;gap:8px}.delivery-attachment-grid footer button{padding:6px 8px;border:0;border-radius:7px;color:var(--ut-primary);background:var(--ut-primary-soft);font-weight:700}.delivery-products-card{padding:0;overflow:hidden}.delivery-products-card>header{padding:22px 22px 4px}.delivery-products-card>header>strong{color:var(--ut-primary)}.delivery-products-card table{width:100%;border-collapse:collapse}.delivery-products-card th,.delivery-products-card td{padding:13px 18px;border-top:1px solid var(--ut-border);text-align:left}.delivery-products-card th{color:var(--ut-text-secondary);background:#f8fafc;font-size:.72rem;text-transform:uppercase}.delivery-products-card td{color:#334155;font-size:.86rem}.delivery-products-card td strong,.delivery-products-card td small{display:block}.delivery-products-card td small{margin-top:4px;color:var(--ut-text-secondary)}@media(max-width:900px){.delivery-detail-hero{align-items:flex-start;flex-direction:column}.delivery-summary-grid{grid-template-columns:1fr}.delivery-status-card{align-items:flex-start;flex-direction:column}}@media(max-width:650px){.delivery-form-grid,.delivery-item{grid-template-columns:1fr}.delivery-products-editor>header{align-items:flex-start;flex-wrap:wrap}.delivery-products-editor>header .secondary-action{width:100%;justify-content:center;margin-left:0}.delivery-item>button{width:100%}.delivery-detail-actions,.delivery-detail-actions button,.delivery-status-control,.delivery-status-control select,.delivery-status-control button{width:100%}.delivery-detail-actions button,.delivery-status-control button{justify-content:center}.delivery-receipt-card>header,.delivery-products-card>header{align-items:flex-start;flex-direction:column}.delivery-receipt-items label,.delivery-evidence-fields,.delivery-attachment-grid{grid-template-columns:1fr}.delivery-attachments-card>header{align-items:flex-start;flex-direction:column}}.report-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:18px;padding:16px;border:1px solid #e1e6ed;border-radius:14px;background:#fff}.report-filters label{display:grid;gap:6px;color:#526176;font-size:.76rem;font-weight:750}.report-filters input,.report-filters select{width:100%;height:42px;padding:0 11px;border:1px solid #dfe4ec;border-radius:9px}.report-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:18px}.report-summary article{display:grid;gap:7px;padding:16px 18px;border:1px solid #e1e6ed;border-radius:13px;background:#fff}.report-summary span{color:#788599;font-size:.76rem}.report-summary strong{color:#22344d;font-size:1.35rem}.report-results .data-state{min-height:0}.report-results td a{color:#285f9d;font-weight:700;text-decoration:none}.report-results td small{display:block;margin-top:4px;color:#8a95a6}.activity-history{position:relative;display:grid;gap:0;padding:8px 20px 18px}.activity-history:before{position:absolute;top:28px;bottom:28px;left:39px;width:2px;background:#dbe5f1;content:""}.activity-history>article{position:relative;z-index:1;display:grid;grid-template-columns:40px minmax(0,1fr);gap:13px;padding:12px 0}.activity-history-icon{display:grid;width:40px;height:40px;place-items:center;border:4px solid #fff;border-radius:50%;color:#1d4ed8;background:#e8f1ff;box-shadow:0 0 0 1px #cddced}.activity-history-icon svg{width:16px}.activity-history-content{padding:13px 15px;border:1px solid #e1e8f0;border-radius:12px;background:#fff}.activity-history-content header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.activity-history-content header strong,.activity-history-content header small{display:block}.activity-history-content header strong{color:#1d2d43}.activity-history-content header small{margin-top:4px;color:#68778b}.activity-history-content time{color:#64748b;font-size:.72rem;white-space:nowrap}.activity-history-content footer{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:11px}.activity-history-content footer span{color:#53657b;font-size:.72rem}.activity-history-content footer a{color:#285f9d;font-weight:750;text-decoration:none}@media(max-width:700px){.reports-page .shared-page-header{align-items:flex-start;flex-direction:column}.report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.report-items-popover{position:relative;width:max-content}.report-items-popover>button{padding:6px 9px;border:1px solid var(--ut-border);border-radius:8px;color:var(--ut-primary);background:#fff;font-size:.74rem;font-weight:750}.report-items-popover aside{position:absolute;z-index:20;top:calc(100% + 6px);right:0;width:280px;padding:12px;border:1px solid var(--ut-border);border-radius:11px;background:#fff;box-shadow:0 14px 34px #0f172a29}.report-items-popover ul{display:grid;gap:9px;margin:0;padding:0;list-style:none}.report-items-popover li{display:flex;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--ut-border)}.report-items-popover li:last-child{padding-bottom:0;border:0}.report-items-popover li strong{color:var(--ut-text);font-size:.78rem}.report-items-popover li span{flex:none;color:var(--ut-text-secondary);font-size:.74rem}.report-items-popover aside p{margin:0;color:var(--ut-text-secondary);font-size:.76rem}.report-items-trigger{padding:6px 10px;border:1px solid var(--ut-border);border-radius:8px;color:var(--ut-primary);background:#fff;font-size:.74rem;font-weight:750;white-space:nowrap}.report-items-backdrop{position:fixed;z-index:90;inset:0;display:grid;place-items:center;padding:20px;background:#0f172a85}.report-items-dialog{width:min(620px,100%);max-height:80vh;overflow:auto;padding:22px;border-radius:16px;background:#fff;box-shadow:0 24px 70px #0f172a47}.report-items-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:14px;border-bottom:1px solid var(--ut-border)}.report-items-dialog>header p,.report-items-dialog>header h2{margin:0 0 4px}.report-items-dialog>header button{display:grid;width:34px;height:34px;place-items:center;border:0;border-radius:9px;color:var(--ut-text-secondary);background:#f1f5f9;font-size:1.2rem}.report-items-list{display:grid;gap:10px;margin-top:16px}.report-items-list article{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px;border:1px solid var(--ut-border);border-radius:11px}.report-items-list article strong,.report-items-list article small{display:block}.report-items-list article small{margin-top:4px;color:var(--ut-text-secondary)}.report-items-list dl{display:flex;gap:22px;margin:0}.report-items-list dl div{display:grid;gap:3px;text-align:right}.report-items-list dt{color:var(--ut-text-secondary);font-size:.68rem}.report-items-list dd{margin:0;color:var(--ut-text);font-weight:800}.report-items-state{padding:28px;color:var(--ut-text-secondary);text-align:center}.report-items-state.error{color:#b42318}@media(max-width:600px){.report-items-list article{align-items:flex-start;flex-direction:column}.report-items-list dl{width:100%;justify-content:space-between}.report-items-list dl div{text-align:left}}.productivity-period{margin:-6px 0 14px;color:var(--ut-text-secondary);font-size:.82rem}.productivity-kpis article{align-content:start}.productivity-change{display:inline-flex;align-items:center;gap:2px;font-size:.76rem;font-weight:750;white-space:nowrap}.productivity-change svg{width:14px;height:14px}.productivity-change.good{color:var(--ut-success-text)}.productivity-change.bad{color:var(--ut-error-text)}.productivity-change.neutral{color:var(--ut-text-muted);font-weight:600}.productivity-chart{margin-bottom:18px;padding:18px;border:1px solid var(--ut-border);border-radius:14px;background:var(--ut-surface)}.productivity-chart header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:14px}.productivity-chart h2{margin:0;color:var(--ut-text-strong);font-size:1rem}.productivity-chart label{display:grid;gap:6px;color:var(--ut-text-secondary);font-size:.76rem;font-weight:750}.productivity-chart select{height:38px;padding:0 10px;border:1px solid var(--ut-border);border-radius:9px}.productivity-chart ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.productivity-chart li{display:grid;grid-template-columns:minmax(90px,180px) 1fr auto;align-items:center;gap:12px;font-size:.84rem}.productivity-chart-name{overflow:hidden;color:var(--ut-text-strong);font-weight:650;text-overflow:ellipsis;white-space:nowrap}.productivity-chart-track{height:14px}.productivity-chart-bar{display:block;min-width:2px;height:100%;border-radius:0 4px 4px 0;background:var(--ut-primary)}.productivity-chart-value{min-width:56px;color:var(--ut-text-strong);font-variant-numeric:tabular-nums;font-weight:700;text-align:right}.productivity-table td{font-variant-numeric:tabular-nums;white-space:nowrap}.productivity-table td small a{font-weight:650}.pipeline-board{display:grid;grid-auto-columns:minmax(250px,1fr);grid-auto-flow:column;gap:14px;padding-bottom:8px;overflow-x:auto}.pipeline-column{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--ut-border);border-radius:14px;background:var(--ut-surface-muted)}.pipeline-column header{display:grid;gap:2px;padding:2px 4px 6px}.pipeline-column h2{display:flex;align-items:center;gap:8px;margin:0;color:var(--ut-text-strong);font-size:.9rem}.pipeline-column header strong{color:var(--ut-text);font-size:1.05rem;font-variant-numeric:tabular-nums}.pipeline-column header small,.pipeline-empty{color:var(--ut-text-muted);font-size:.76rem}.pipeline-empty{margin:0;padding:10px 4px}.pipeline-column ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.pipeline-card{display:grid;gap:5px;padding:12px;border:1px solid var(--ut-border);border-radius:11px;background:var(--ut-surface);box-shadow:var(--ut-shadow-sm);font-size:.8rem}.pipeline-card>a,.pipeline-card>strong{color:var(--ut-text-strong);font-size:.88rem;font-weight:750;text-decoration:none}.pipeline-card:has(>a){position:relative;cursor:pointer;transition:border-color .15s var(--ut-ease),box-shadow .15s var(--ut-ease)}.pipeline-card>a:after{position:absolute;inset:0;border-radius:inherit;content:""}.pipeline-card:has(>a):hover{border-color:var(--ut-border-strong);box-shadow:var(--ut-shadow-md)}.pipeline-card:has(>a):hover>a{color:var(--ut-primary)}.pipeline-card>a:focus-visible{outline:none}.pipeline-card:has(>a:focus-visible){box-shadow:var(--ut-focus)}.pipeline-card>span{color:var(--ut-text-secondary)}.pipeline-card .pipeline-card-amount{color:var(--ut-text);font-weight:750;font-variant-numeric:tabular-nums}.pipeline-card progress{width:100%;height:6px;accent-color:var(--ut-primary)}.pipeline-card footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 10px;color:var(--ut-text-muted);font-size:.74rem}.pipeline-card footer span{display:inline-flex;align-items:center;gap:4px}.pipeline-card footer svg{width:13px;height:13px}.pipeline-card .pipeline-overdue{color:var(--ut-error-text);font-weight:700}@media(max-width:600px){.productivity-chart li{grid-template-columns:minmax(70px,110px) 1fr auto;gap:8px}.pipeline-board{grid-auto-columns:minmax(230px,85%)}}.productivity-chart-note{margin:12px 0 0;color:var(--ut-text-muted);font-size:.78rem}.report-studio-page .heading-actions,.report-editor-header .heading-actions,.report-generate-actions,.report-pdf-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:9px}.report-studio-page .action-primary,.report-studio-page .secondary-action,.report-editor-header .action-primary,.report-editor-header .secondary-action,.report-preview-dialog .action-primary,.report-preview-dialog .secondary-action,.project-header-actions a.secondary-action{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 14px;border-radius:10px;font-weight:750;text-decoration:none;white-space:nowrap}.report-studio-page .action-primary,.report-editor-header .action-primary,.report-preview-dialog .action-primary{border:0}.report-studio-page .secondary-action,.report-editor-header .secondary-action,.report-preview-dialog .secondary-action{border:1px solid var(--ut-border);color:var(--ut-primary);background:var(--ut-surface)}.report-studio-page :is(.action-primary,.secondary-action) svg,.report-editor-header :is(.action-primary,.secondary-action) svg,.report-preview-dialog :is(.action-primary,.secondary-action) svg,.project-header-actions a.secondary-action svg{width:17px;height:17px}.report-studio-page :is(button,a):disabled,.report-editor-header button:disabled{cursor:not-allowed;opacity:.6}.report-templates-table{width:100%;border-collapse:collapse}.report-templates-table th{padding:12px 16px;color:var(--ut-text-secondary);background:var(--ut-surface-soft);font-size:.74rem;font-weight:750;letter-spacing:.02em;text-align:left;text-transform:uppercase}.report-templates-table td{padding:14px 16px;border-top:1px solid var(--ut-border);vertical-align:middle}.report-templates-table td:nth-child(3){color:var(--ut-text-secondary);white-space:nowrap}.report-templates-table td strong,.report-templates-table td small{display:block}.report-templates-table td small{margin-top:3px;color:var(--ut-text-secondary)}.report-template-actions{display:flex;flex-wrap:wrap;gap:6px}.report-template-actions a,.report-template-actions button{display:inline-flex;align-items:center;gap:5px;min-height:34px;padding:0 10px;border:1px solid var(--ut-border);border-radius:8px;color:var(--ut-primary);background:var(--ut-surface);font-size:.82rem;font-weight:700;text-decoration:none}.report-template-actions :is(a,button):hover:not(:disabled){border-color:var(--ut-primary);background:var(--ut-primary-soft)}.report-template-actions button.danger-text{color:var(--ut-error-text)}.report-template-actions button.danger-text:hover:not(:disabled){border-color:var(--ut-error);background:var(--ut-error-soft)}.report-template-actions svg{width:15px;height:15px}.report-template-dialog{display:grid;gap:14px;width:min(100%,520px)}.report-template-dialog label,.report-generate-form label,.report-entity-picker label,.report-description-field{display:grid;gap:6px;color:#334155;font-size:.82rem;font-weight:700}.report-template-dialog input:not([type=radio]),.report-template-dialog textarea,.report-generate-form select,.report-entity-picker :is(input,select),.report-description-field textarea{width:100%;min-height:42px;padding:8px 11px;border:1px solid var(--ut-border);border-radius:10px}.report-type-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:0;border:0}.report-type-options legend{margin-bottom:6px;color:#334155;font-size:.82rem;font-weight:700}.report-type-options label{display:flex;align-items:flex-start;gap:9px;padding:12px;border:1px solid var(--ut-border);border-radius:var(--ut-radius-md);cursor:pointer}.report-type-options label:has(input:checked){border-color:var(--ut-primary);background:var(--ut-primary-soft)}.report-type-options span{display:grid;gap:3px}.report-type-options small{color:var(--ut-text-secondary);font-weight:500;line-height:1.4}.report-studio-error,.report-studio-warning{display:flex;align-items:center;gap:7px;margin:0;padding:10px 12px;border-radius:10px;font-size:.84rem}.report-studio-error{color:var(--ut-error-text);background:var(--ut-error-soft)}.report-studio-warning{color:var(--ut-warning-text);background:var(--ut-warning-soft)}.report-studio-warning svg{flex:none;width:16px}.report-editor-page{display:flex;flex-direction:column;gap:14px;height:calc(100dvh - var(--ut-topbar-height) - 32px);min-height:560px;padding:16px clamp(12px,2vw,24px)}.report-editor-header{display:flex;align-items:center;gap:12px}.report-editor-back{display:grid;flex:none;width:40px;height:40px;place-items:center;border:1px solid var(--ut-border);border-radius:10px;color:var(--ut-text-strong);background:var(--ut-surface)}.report-editor-back svg{width:18px}.report-editor-title{display:flex;flex:1;align-items:center;gap:10px;min-width:0}.report-editor-title input{min-width:0;flex:0 1 420px;height:42px;padding:0 12px;border:1px solid transparent;border-radius:10px;background:transparent;font-size:1.25rem;font-weight:800}.report-editor-title input:hover{border-color:var(--ut-border)}.report-editor-title small{color:var(--ut-warning-text);font-weight:700}.report-editor-layout{display:grid;flex:1;grid-template-columns:300px minmax(0,1fr);gap:14px;min-height:0}.report-editor-sidebar{display:flex;flex-direction:column;gap:12px;min-height:0;overflow:auto}.report-editor-sidebar>section{padding:14px;border:1px solid var(--ut-border);border-radius:var(--ut-radius-md);background:var(--ut-surface)}.report-editor-sidebar h2{margin:0 0 6px;font-size:.92rem}.report-editor-sidebar p{margin:0 0 10px;color:var(--ut-text-secondary);font-size:.8rem;line-height:1.45}.report-editor-sidebar code,.report-field-palette code,.report-bindings code{padding:1px 5px;border-radius:5px;color:var(--ut-primary-text);background:var(--ut-primary-soft);font-size:.74rem}.report-designer{min-width:0;min-height:0;overflow:hidden;border:1px solid var(--ut-border);border-radius:var(--ut-radius-md);background:var(--ut-surface-muted)}.report-field-palette{display:grid;gap:6px}.report-field-palette input{width:100%;min-height:38px;padding:6px 10px;border:1px solid var(--ut-border);border-radius:9px}.report-field-palette summary{padding:6px 2px;color:var(--ut-text-strong);font-size:.82rem;font-weight:800;cursor:pointer}.report-field-palette ul,.report-bindings{display:grid;gap:4px;margin:0;padding:0;list-style:none}.report-field-palette li button{display:flex;align-items:center;gap:9px;width:100%;padding:7px 8px;border:1px solid transparent;border-radius:9px;color:var(--ut-text);background:none;text-align:left}.report-field-palette li button:hover,.report-field-palette li button:focus-visible{border-color:var(--ut-border);background:var(--ut-surface-soft)}.report-field-palette li button>svg{flex:none;width:16px;color:var(--ut-primary)}.report-field-palette li button>span{display:grid;flex:1;gap:2px;min-width:0}.report-field-palette li strong{font-size:.82rem}.report-field-palette li code{justify-self:start;overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.report-field-palette li small{color:var(--ut-text-muted);font-size:.7rem}.report-palette-empty{text-align:center}.report-static-elements{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px}.report-static-elements button{display:grid;justify-items:center;gap:4px;padding:10px 4px;border:1px solid var(--ut-border);border-radius:10px;color:var(--ut-text-strong);background:var(--ut-surface);font-size:.76rem;font-weight:700}.report-static-elements button:hover{border-color:var(--ut-primary);color:var(--ut-primary)}.report-static-elements svg{width:18px}.report-bindings li{display:grid;gap:2px;padding:6px 8px;border-radius:8px;background:var(--ut-surface-soft)}.report-bindings li span{color:var(--ut-text-secondary);font-size:.74rem}.report-bindings li.unknown code{color:var(--ut-error-text);background:var(--ut-error-soft)}.report-preview-dialog{display:flex;flex-direction:column;gap:12px;width:min(100% - 32px,1000px);height:min(100% - 32px,900px);padding:18px;border-radius:var(--ut-radius-lg);background:var(--ut-surface);box-shadow:var(--ut-shadow-lg)}.report-preview-dialog>header{display:flex;align-items:center;justify-content:space-between}.report-preview-dialog>header h2{margin:0;font-size:1.1rem}.report-preview-dialog>header button{display:grid;width:36px;height:36px;place-items:center;border:0;border-radius:9px;background:var(--ut-surface-muted)}.report-preview-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.report-source-options{display:flex;flex-basis:100%;gap:14px;margin:0;padding:0 0 10px;border:0}.report-source-options label{display:flex;align-items:center;gap:6px;font-weight:700}.report-entity-picker{display:flex;flex:1;flex-wrap:wrap;gap:10px}.report-entity-picker label{flex:1 1 220px}.report-preview-placeholder{margin:auto;color:var(--ut-text-secondary)}.report-pdf-preview{display:flex;flex:1;flex-direction:column;gap:10px;min-height:0}.report-pdf-toolbar{justify-content:space-between}.report-pdf-toolbar span{overflow:hidden;color:var(--ut-text-secondary);font-size:.84rem;text-overflow:ellipsis}.report-pdf-preview iframe{flex:1;width:100%;min-height:420px;border:1px solid var(--ut-border);border-radius:var(--ut-radius-md);background:var(--ut-surface-muted)}.report-studio-page .report-pdf-preview iframe{min-height:70vh}.report-generate-form{display:grid;gap:14px;margin-bottom:16px;padding:18px}.report-studio-page .admin-card:has(>.report-pdf-preview){padding:14px}.report-generate-form>label{max-width:520px}.report-template-description{margin:-6px 0 0;color:var(--ut-text-secondary)}@media(max-width:900px){.report-editor-page{height:auto}.report-editor-header{flex-wrap:wrap}.report-editor-layout{grid-template-columns:1fr}.report-editor-sidebar{max-height:none}.report-designer{height:75vh}.report-type-options{grid-template-columns:1fr}}.report-section-list,.report-section-active ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}.report-section-list button,.report-section-active li button{display:flex;align-items:flex-start;gap:9px;width:100%;padding:9px 10px;border:1px dashed var(--ut-border-strong);border-radius:10px;color:var(--ut-text);background:var(--ut-surface);text-align:left}.report-section-active li button{align-items:center;padding:6px 8px;border-style:solid;border-color:transparent}.report-section-list button:hover,.report-section-active li button:hover{border-color:var(--ut-primary);background:var(--ut-primary-soft)}.report-section-list svg,.report-section-active svg{flex:none;width:16px;color:var(--ut-primary)}.report-section-list span,.report-section-active li span{display:grid;gap:2px;min-width:0}.report-section-list strong,.report-section-active li strong{font-size:.82rem}.report-section-list small{color:var(--ut-text-secondary);font-size:.74rem;line-height:1.35}.report-section-active{display:grid;gap:8px;padding:10px;border:1px solid var(--ut-primary);border-radius:10px;background:var(--ut-primary-soft)}.report-section-active>strong{color:var(--ut-primary-text);font-size:.82rem}.report-section-active>span{color:var(--ut-text-secondary);font-size:.76rem;line-height:1.4}.report-section-active code{justify-self:start}.report-section-bindings{margin-bottom:6px}.report-section-bindings code{color:var(--ut-info);background:var(--ut-info-soft)}.project-list-progress{display:grid;min-width:110px;gap:5px}.project-list-progress span{font-size:.78rem;font-weight:750}.project-list-progress progress{width:100%;height:7px;accent-color:var(--ut-primary)}.project-products>header{margin-bottom:8px}.project-products>header p,.project-products>header h3{margin:0 0 5px}.project-products article>svg{flex:none}.project-products dl{display:flex;flex-wrap:wrap;gap:10px 24px;margin:9px 0 0}.project-products dl div{display:grid;gap:3px}.project-products dt{color:var(--ut-text-secondary);font-size:.7rem}.project-products dd{margin:0;color:var(--ut-text);font-size:.84rem;font-weight:750}.project-attachments>header h3,.project-attachments>header p{margin:0 0 5px}.project-attachments .attachment-filters{width:max-content;margin-bottom:18px}.project-gallery footer{flex-wrap:wrap}.project-gallery footer button,.attachment-action{display:inline-flex;align-items:center;gap:5px;padding:7px 9px;border:0;border-radius:8px;color:var(--ut-primary);background:#f1f5f9;font-size:.75rem;text-decoration:none}.project-gallery footer svg,.attachment-action svg{width:14px;height:14px}.image-preview-button{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}.attachment-lightbox{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:40px;background:#060e1be0}.attachment-lightbox>img{max-width:min(1100px,92vw);max-height:76vh;object-fit:contain}.attachment-lightbox>footer{display:flex;align-items:center;gap:16px;width:min(1100px,92vw);padding:14px 0;color:#fff}.attachment-lightbox>footer span{color:#cbd5e1}.attachment-lightbox>footer a{display:inline-flex;align-items:center;gap:6px;margin-left:auto;color:#fff}.lightbox-close{position:absolute;top:22px;right:26px;display:grid;width:42px;height:42px;place-items:center;border:0;border-radius:50%;color:#fff;background:#ffffff24}@media(max-width:600px){.attachment-lightbox{padding:18px}.attachment-lightbox>footer{align-items:flex-start;flex-direction:column}.attachment-lightbox>footer a{margin-left:0}}.project-attachments .attachment-filters button{display:inline-flex;align-items:center;gap:6px}.attachment-filter-count{min-width:20px;padding:1px 6px;border-radius:999px;color:inherit;background:#0f172a14;font-size:.7rem;font-variant-numeric:tabular-nums;text-align:center}.project-attachments .attachment-filters button.active .attachment-filter-count{background:#ffffff40}.document-preview{align-content:center;gap:10px;text-decoration:none}.document-preview span{padding:3px 10px;border-radius:999px;background:#fff;color:var(--ut-text-secondary);font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.document-preview.pdf{background:#fef2f2}.document-preview.pdf svg,.document-preview.pdf span{color:#b91c1c}.document-preview.excel{background:#ecfdf5}.document-preview.excel svg,.document-preview.excel span{color:#047857}.document-preview.word{background:#eff6ff}.document-preview.word svg,.document-preview.word span{color:#1d4ed8}.project-gallery article>div strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-gallery .attachment-visit{display:flex;align-items:center;gap:5px;margin:4px 0;color:var(--ut-primary-text);font-size:.78rem;font-weight:600}.project-gallery .attachment-visit svg{width:13px;flex:none}.upload-hint{color:var(--ut-text-muted);font-size:.76rem;font-weight:500}.upload-kind{margin:0;padding:10px 12px;border-radius:10px;color:var(--ut-text-strong);background:var(--ut-surface-muted);font-size:.84rem}.activity-filters{display:grid;gap:14px;margin-bottom:18px}.activity-filter-fields{display:flex;flex-wrap:wrap;gap:12px}.activity-filter-fields label{display:grid;flex:1 1 180px;max-width:260px;gap:6px}.activity-filter-fields label>span{display:inline-flex;align-items:center;gap:6px;color:var(--ut-text-secondary);font-size:.78rem;font-weight:600}.activity-filter-fields label>span svg{width:14px}.activity-filter-fields select,.activity-filter-fields input{height:40px;padding:0 12px;border:1px solid var(--ut-border);border-radius:10px}.activity-type-filters{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.activity-type-filters button{flex:none;min-height:34px;padding:0 14px;border:1px solid var(--ut-border);border-radius:999px;color:var(--ut-text-secondary);background:var(--ut-surface);font-size:.84rem;font-weight:600}.activity-type-filters button:hover{border-color:var(--ut-border-strong);color:var(--ut-text)}.activity-type-filters button[aria-pressed=true]{border-color:var(--ut-text);color:#fff;background:var(--ut-text)}.activity-feed-card{padding:6px 24px 20px;border:1px solid var(--ut-border);border-radius:var(--ut-radius-lg);background:var(--ut-surface);box-shadow:var(--ut-shadow-sm)}.activity-count{margin:14px 0 0;color:var(--ut-text-muted);font-size:.8rem;font-weight:600}.activity-day h2{position:sticky;z-index:1;top:var(--ut-topbar-height);margin:0;padding:16px 0 8px;color:var(--ut-text-strong);background:var(--ut-surface);font-size:.86rem;font-weight:700}.activity-day ol{position:relative;display:grid;margin:0;padding:0;list-style:none}.activity-day ol:before{position:absolute;top:18px;bottom:18px;left:17px;width:2px;border-radius:2px;background:var(--ut-border);content:""}.activity-day li{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:start;gap:14px;padding:10px 0}.activity-icon{position:relative;display:grid;width:36px;height:36px;place-items:center;border:3px solid var(--ut-surface);border-radius:50%}.activity-icon svg{width:16px;height:16px}.activity-icon.blue{color:#1d4ed8;background:#dbeafe}.activity-icon.green{color:var(--ut-success-text);background:#d1fae5}.activity-icon.orange{color:var(--ut-primary-text);background:#ffedd5}.activity-icon.slate{color:#475569;background:#e2e8f0}.activity-body{display:grid;gap:3px;min-width:0;padding-top:2px}.activity-body p{margin:0}.activity-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;color:var(--ut-text);font-size:.9rem}.activity-title strong{font-weight:600}.activity-title a,.activity-title span{color:var(--ut-text-secondary);font-size:.86rem}.activity-title a{color:var(--ut-primary-text);font-weight:600;text-decoration:none}.activity-title a:hover{text-decoration:underline;text-underline-offset:3px}.activity-description{overflow:hidden;color:var(--ut-text-secondary);font-size:.84rem;line-height:1.45;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.activity-meta{display:flex;flex-wrap:wrap;gap:4px 10px;color:var(--ut-text-muted);font-size:.76rem}.activity-meta span+span:before{margin-right:10px;content:"·"}.activity-kind{font-weight:600}.activity-day time{padding-top:4px;color:var(--ut-text-secondary);font-size:.8rem;font-weight:600;white-space:nowrap}.activity-more{display:flex;justify-content:center;padding-top:16px;border-top:1px solid var(--ut-border);margin-top:8px}@media(max-width:640px){.activity-filter-fields{display:grid;grid-template-columns:1fr 1fr}.activity-filter-fields label{max-width:none}.activity-filter-fields label:has(select){grid-column:1 / -1}.activity-feed-card{padding:4px 14px 16px}.activity-day li{gap:10px}}.app-shell-root{display:grid;grid-template-columns:var(--ut-sidebar-width) minmax(0,1fr);min-height:100vh;background:var(--ut-background)}.app-navigation{position:sticky;z-index:40;top:0;display:flex;height:100vh;height:100dvh;flex-direction:column;color:#fff;background:radial-gradient(120% 60% at 0% 0%,rgb(249 115 22 / 9%),transparent 55%),var(--ut-sidebar)}.nav-brand{display:flex;align-items:center;justify-content:space-between;flex:none;min-height:72px;padding:14px 20px}.nav-brand .brand-logo{width:40px;height:40px;flex-basis:40px}.nav-close{display:none;place-items:center;width:38px;height:38px;border:0;border-radius:10px;color:#fff;background:#ffffff14}.nav-close svg{width:20px}.app-navigation>nav{display:grid;align-content:start;gap:14px;flex:1 1 auto;min-height:0;padding:6px 12px 16px;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:rgb(255 255 255 / 18%) transparent;scrollbar-width:thin}.nav-section{display:grid;gap:2px}.app-navigation .nav-label{margin:0 0 6px;padding:0 12px;color:var(--ut-sidebar-muted);font-size:.66rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.app-navigation nav a,.nav-group-trigger{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:38px;padding:0 12px;border:0;border-radius:10px;color:var(--ut-sidebar-text);background:transparent;font:inherit;font-size:.9rem;font-weight:500;text-align:left;text-decoration:none;transition:color .15s ease,background-color .15s ease}.app-navigation nav a>span,.nav-group-trigger>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-navigation nav svg{width:18px;height:18px;flex:none}.app-navigation nav a:hover,.nav-group-trigger:hover{color:#fff;background:var(--ut-sidebar-hover)}.app-navigation nav a.active{color:#fff;background:var(--ut-sidebar-active);font-weight:600}.app-navigation nav a.active:before{position:absolute;top:9px;bottom:9px;left:-12px;width:3px;border-radius:0 3px 3px 0;background:var(--ut-accent);content:""}.app-navigation nav a.active svg{color:var(--ut-accent)}.nav-group{display:grid;gap:2px}.nav-group.active>.nav-group-trigger{color:#fff}.nav-group.active>.nav-group-trigger>svg:first-child{color:var(--ut-accent)}.nav-group-trigger .nav-group-chevron{width:15px;opacity:.6;transition:transform .2s var(--ut-ease)}.nav-group-trigger[aria-expanded=true] .nav-group-chevron{transform:rotate(180deg)}.nav-submenu{display:grid;gap:1px;margin:0 0 4px 21px;padding-left:12px;border-left:1px solid rgb(255 255 255 / 12%);animation:nav-submenu-in .18s var(--ut-ease)}.app-navigation nav .nav-submenu a{min-height:34px;padding:0 10px;border-radius:8px;font-size:.84rem}.app-navigation nav .nav-submenu a.active{background:var(--ut-sidebar-hover)}.app-navigation nav .nav-submenu a.active:before{top:8px;bottom:8px;left:-13px;width:2px}@keyframes nav-submenu-in{0%{opacity:0;transform:translateY(-4px)}}.nav-footer{display:flex;align-items:center;gap:10px;flex:none;margin:0 12px;padding:14px 4px max(14px,env(safe-area-inset-bottom));border-top:1px solid rgb(255 255 255 / 9%)}.nav-footer .avatar{width:34px;height:34px;color:#fff;background:#ffffff1f}.nav-footer-identity{display:grid;flex:1;min-width:0}.nav-footer-identity strong,.nav-footer-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-footer-identity strong{font-size:.84rem;font-weight:600}.nav-footer-identity small{color:var(--ut-sidebar-muted);font-size:.74rem}.app-navigation .logout{display:grid;place-items:center;width:36px;height:36px;flex:none;margin:0;padding:0;border:0;border-radius:10px;color:var(--ut-sidebar-text);background:transparent}.app-navigation .logout:hover{color:#fff;background:var(--ut-sidebar-hover)}.app-navigation .logout svg{width:18px}.app-workspace{min-width:0;overflow-x:hidden;background:var(--ut-background)}.app-topbar{position:sticky;z-index:30;top:0;display:flex;align-items:center;gap:16px;height:var(--ut-topbar-height);padding:0 28px;border-bottom:1px solid var(--ut-border);background:#ffffffe0;-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px)}.topbar-menu{display:none;place-items:center;width:40px;height:40px;flex:none;margin-left:-8px;border:0;border-radius:10px;color:var(--ut-text);background:transparent}.topbar-menu:hover{background:var(--ut-surface-muted)}.topbar-breadcrumb{display:flex;align-items:center;flex:1;min-width:0;gap:6px;font-size:.88rem}.topbar-breadcrumb .crumb{display:inline-flex;align-items:center;gap:6px;color:var(--ut-text-secondary);white-space:nowrap}.topbar-breadcrumb .crumb svg{width:14px;color:var(--ut-text-muted)}.topbar-breadcrumb strong{overflow:hidden;color:var(--ut-text);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.topbar-spacer{flex:1}.app-topbar .profile{position:relative;flex:none}.profile-trigger{display:flex;align-items:center;gap:10px;max-width:280px;padding:5px 8px 5px 5px;border:1px solid transparent;border-radius:999px;background:transparent;text-align:left;transition:background-color .15s ease,border-color .15s ease}.profile-trigger:hover,.profile-trigger[aria-expanded=true]{border-color:var(--ut-border);background:var(--ut-surface)}.app-topbar .avatar{width:34px;height:34px;color:#fff;background:linear-gradient(135deg,#1e3a5f,var(--ut-sidebar));font-size:.72rem;letter-spacing:.02em}.app-topbar .profile-identity{display:grid;gap:1px;min-width:0}.app-topbar .profile-identity strong,.app-topbar .profile-identity small{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-topbar .profile-identity strong{color:var(--ut-text);font-size:.85rem;font-weight:600}.app-topbar .profile-identity small{color:var(--ut-text-secondary);font-size:.74rem}.profile-chevron{width:16px;flex:none;color:var(--ut-text-muted)}.profile-menu{position:absolute;top:calc(100% + 8px);right:0;width:260px;padding:6px;border:1px solid var(--ut-border);border-radius:var(--ut-radius-md);background:var(--ut-surface);box-shadow:var(--ut-shadow-lg);animation:profile-menu-in .16s var(--ut-ease)}.profile-menu-header{display:grid;gap:2px;padding:10px 10px 12px;border-bottom:1px solid var(--ut-border)}.profile-menu-header strong{color:var(--ut-text);font-size:.9rem}.profile-menu-header small{overflow:hidden;color:var(--ut-text-secondary);font-size:.78rem;text-overflow:ellipsis}.profile-menu-header .profile-roles{margin-top:8px}.profile-menu-header .profile-roles span{padding:3px 8px;color:var(--ut-primary-text);background:var(--ut-primary-soft);font-size:.7rem;font-weight:700}.profile-menu>button{display:flex;align-items:center;gap:10px;width:100%;min-height:40px;margin-top:6px;padding:0 10px;border:0;border-radius:8px;color:var(--ut-text-strong);background:transparent;font-size:.88rem;font-weight:500}.profile-menu>button:hover{color:var(--ut-error-text);background:var(--ut-error-soft)}.profile-menu>button svg{width:17px}@keyframes profile-menu-in{0%{opacity:0;transform:translateY(-4px) scale(.98)}}.nav-backdrop{display:none}.command-trigger{display:flex;align-items:center;gap:8px;width:min(280px,32vw);height:38px;flex:none;padding:0 8px 0 12px;border:1px solid var(--ut-border);border-radius:10px;color:var(--ut-text-muted);background:var(--ut-surface-soft);font-size:.86rem}.command-trigger:hover{border-color:var(--ut-border-strong);color:var(--ut-text-secondary)}.command-trigger svg{width:16px;flex:none}.command-trigger span{flex:1;text-align:left}.app-topbar kbd,.command-palette kbd{padding:2px 6px;border:1px solid var(--ut-border);border-bottom-width:2px;border-radius:6px;color:var(--ut-text-secondary);background:var(--ut-surface);font:600 .68rem/1.4 inherit;font-family:inherit}.command-backdrop{position:fixed;z-index:1500;inset:0;display:flex;align-items:flex-start;justify-content:center;padding:12vh 16px 16px;background:#09142573;animation:nav-backdrop-in .15s ease}.command-palette{display:flex;width:min(100%,600px);max-height:70vh;flex-direction:column;overflow:hidden;border:1px solid var(--ut-border);border-radius:var(--ut-radius-lg);background:var(--ut-surface);box-shadow:var(--ut-shadow-lg);animation:profile-menu-in .16s var(--ut-ease)}.command-input{display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid var(--ut-border)}.command-input>svg{width:18px;flex:none;color:var(--ut-text-muted)}.command-input input,.command-input input:focus{flex:1;min-width:0;height:56px;padding:0;border:0;outline:none;background:transparent;box-shadow:none;font-size:1rem}.command-results{margin:0;padding:6px;overflow-y:auto;list-style:none}.command-group{margin:8px 10px 4px;color:var(--ut-text-muted);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.command-results button{display:flex;align-items:center;gap:12px;width:100%;min-height:46px;padding:6px 10px;border:0;border-radius:10px;color:var(--ut-text);background:transparent;text-align:left}.command-results button.active{background:var(--ut-surface-muted)}.command-results button>svg{width:18px;flex:none;color:var(--ut-text-secondary)}.command-results button.active>svg:first-child{color:var(--ut-primary-text)}.command-results button>span{display:grid;flex:1;min-width:0}.command-results strong,.command-results small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.command-results strong{font-size:.9rem;font-weight:600}.command-results small{color:var(--ut-text-secondary);font-size:.76rem}.command-enter{width:15px;color:var(--ut-text-muted)}.command-empty,.command-status{display:flex;align-items:center;gap:10px;margin:0;padding:18px 18px 22px;color:var(--ut-text-secondary);font-size:.88rem}.command-empty p{margin:0}.command-empty svg{width:18px}.command-footer{display:flex;gap:16px;padding:10px 16px;border-top:1px solid var(--ut-border);color:var(--ut-text-muted);background:var(--ut-surface-soft);font-size:.74rem}.command-footer kbd{margin-right:3px}.nav-collapse{display:grid;place-items:center;width:32px;height:32px;flex:none;border:0;border-radius:8px;color:var(--ut-sidebar-muted);background:transparent}.nav-collapse:hover{color:#fff;background:var(--ut-sidebar-hover)}.nav-collapse svg{width:18px}.app-shell-root{transition:grid-template-columns .22s var(--ut-ease)}@media(min-width:901px){.app-shell-root.nav-collapsed{--ut-sidebar-width: 76px}.nav-collapsed .nav-brand{flex-direction:column;justify-content:center;gap:10px;padding:14px 0 6px}.nav-collapsed .brand-copy,.nav-collapsed .nav-group-chevron,.nav-collapsed .nav-footer-identity{display:none}.nav-collapsed .app-navigation>nav{padding-inline:14px}.nav-collapsed .app-navigation .nav-label{height:1px;margin:4px 8px 8px;padding:0;overflow:hidden;background:#ffffff1a;color:transparent}.nav-collapsed .app-navigation nav a,.nav-collapsed .nav-group-trigger{justify-content:center;min-height:42px;padding:0}.nav-collapsed .app-navigation nav a>span,.nav-collapsed .nav-group-trigger>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.nav-collapsed .app-navigation nav a.active:before{left:-14px}.nav-collapsed .nav-group.active>.nav-group-trigger{background:var(--ut-sidebar-active)}.nav-collapsed .nav-footer{flex-direction:column;margin-inline:12px;padding-inline:0}}.bottom-nav{display:none}@media(max-width:900px){.app-shell-root{grid-template-columns:1fr}.app-navigation{position:fixed;z-index:1400;top:0;left:0;width:min(86vw,300px);box-shadow:var(--ut-shadow-lg);transform:translate(-105%);transition:transform .24s var(--ut-ease),visibility 0s linear .24s;visibility:hidden}.app-navigation.open{transform:translate(0);transition:transform .24s var(--ut-ease);visibility:visible}.nav-close{display:grid}.nav-collapse{display:none}.bottom-nav{position:fixed;z-index:1200;right:0;bottom:0;left:0;display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;padding:6px max(8px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border-top:1px solid var(--ut-border);background:#fffffff0;box-shadow:0 -6px 20px #0f172a0f;-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px)}.bottom-nav a,.bottom-nav button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;min-height:52px;padding:4px 2px;border:0;border-radius:12px;color:var(--ut-text-secondary);background:transparent;font-size:.68rem;font-weight:600;text-decoration:none}.bottom-nav span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bottom-nav svg{width:22px;height:22px}.bottom-nav a.active{color:var(--ut-primary-text)}.bottom-nav a.active svg{padding:2px 10px;width:44px;height:26px;border-radius:999px;background:var(--ut-primary-soft)}.app-shell-root:has(.bottom-nav) .app-workspace{padding-bottom:calc(68px + env(safe-area-inset-bottom))}.nav-backdrop{position:fixed;z-index:1300;inset:0;display:block;border:0;background:#09142585;animation:nav-backdrop-in .2s ease}.app-topbar{gap:10px;padding:0 max(16px,env(safe-area-inset-left))}.topbar-menu{display:grid}.app-topbar .profile-identity,.profile-chevron,.command-trigger span,.command-trigger kbd,.command-footer{display:none}.command-trigger{width:40px;justify-content:center;padding:0;border-color:transparent;background:transparent;color:var(--ut-text)}.command-trigger svg{width:20px}.command-backdrop{padding-top:8px}.profile-trigger{padding:3px}body.nav-locked{overflow:hidden}}@media(max-width:480px){.topbar-breadcrumb .crumb{display:none}}@keyframes nav-backdrop-in{0%{opacity:0}}.profile-menu .profile-menu-link{display:flex;align-items:center;gap:10px;min-height:40px;margin-top:6px;padding:0 10px;border-radius:8px;color:var(--ut-text-strong);font-size:.88rem;font-weight:500;text-decoration:none}.profile-menu .profile-menu-link:hover{background:var(--ut-surface-muted)}.profile-menu .profile-menu-link svg{width:17px}.profile-menu .profile-menu-link+button{margin-top:2px}.simple-auth-card.trial-card{width:min(100%,640px)}.trial-form{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}.trial-form>:not(label){grid-column:1 / -1}.simple-form label>span{display:block;margin-bottom:6px}.simple-form .field-error>small{display:block;margin-top:4px;font-size:.78rem;font-weight:500}.simple-form select{width:100%;height:49px;padding:0 12px;border:1px solid #dfe4ec;border-radius:12px;color:var(--ut-text);background:var(--ut-surface);font-weight:400;outline:none}.simple-form select:focus{border-color:var(--ut-primary);box-shadow:0 0 0 3px #f56a1c1f}.inline-link-button{padding:0;border:0;color:inherit;background:none;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}.simple-form .field-error select,.simple-form .field-error input{border-color:#e88b83}.simple-form input:disabled{color:var(--ut-text-secondary);background:var(--ut-surface-muted)}.simple-form .form-hint,.simple-auth-card .form-hint{margin:0;color:var(--ut-text-muted);font-size:.82rem}.turnstile-field{min-height:65px;margin-top:6px}.form-error a{color:inherit;font-weight:700}.trial-login{margin-top:22px;color:var(--ut-text-muted);font-size:.88rem;text-align:center}.trial-login a{color:var(--ut-primary-text);font-weight:700;text-decoration:none}.trial-sent-icon{display:grid;width:52px;height:52px;place-items:center;margin-bottom:14px;border-radius:50%;color:var(--ut-primary-text);background:var(--ut-primary-soft)}.trial-sent-icon.warning{color:var(--ut-warning-text);background:var(--ut-warning-soft)}.warning-message{margin:0 0 20px;padding:12px 14px;border:1px solid #fde4b0;border-radius:10px;color:var(--ut-warning-text);background:var(--ut-warning-soft);font-size:.88rem}.trial-sent .primary-button{width:100%;margin-bottom:14px}.trial-sent .link-button{display:block;margin:18px auto 0;padding:0;border:0;color:var(--ut-primary-text);background:none;font-weight:700;cursor:pointer}.trial-banner{display:flex;align-items:center;gap:10px;margin:12px 24px 0;padding:10px 14px;border:1px solid var(--ut-border);border-radius:var(--ut-radius-md);color:var(--ut-text-strong);background:var(--ut-primary-soft);font-size:.88rem}.trial-banner.ending{border-color:#fcd34d;color:var(--ut-warning-text);background:var(--ut-warning-soft)}.trial-banner svg{flex:none;width:18px}.trial-banner p{flex:1;margin:0}.trial-banner span{color:var(--ut-text-secondary)}.trial-banner a{flex:none;color:var(--ut-primary-text);font-weight:700;text-decoration:none}@media(max-width:640px){.trial-form{grid-template-columns:1fr}.simple-auth-card.trial-card{padding:28px 20px}.trial-banner{margin:10px 16px 0}}html,body,#root{width:100%;max-width:100%;overflow-x:clip}.app-shell-root .leaflet-container{z-index:0;max-width:100%;isolation:isolate}.dashboard-project-map,.operations-live-map,.operations-map,.location-picker,.location-viewer{width:100%;max-width:100%;min-width:0}.dashboard-map-panel,.operations-map-card,.operations-live-map-card,.project-location-card,.customer-map-card{min-width:0}@media(max-width:900px){.customers-content,.dashboard-content{width:100%;max-width:100%;padding:24px clamp(14px,4vw,24px) 32px}.shared-page-header,.shared-page-header>div{min-width:0;width:100%}.shared-page-header h1{font-size:clamp(1.55rem,7vw,2rem);overflow-wrap:anywhere}.workday-overview .operations-map-card{min-height:0}.workday-overview .operations-map{height:clamp(340px,58vh,480px);min-height:0}}@media(max-width:700px){.operations-team-panel>header,.operations-live-map-card>header,.operations-incidents-card>header,.operations-map-card>header,.dashboard-map-header{gap:10px;padding:14px}.operations-map-card>header,.dashboard-map-header{padding:0}.operations-team-panel nav{width:100%;padding-bottom:5px;overflow-x:auto;scrollbar-width:thin}.operations-team-panel nav button{flex:0 0 auto;white-space:nowrap}.operations-live-map{height:clamp(270px,72vw,330px)}.operations-map-card,.dashboard-map-panel{padding:12px}.operations-map{display:flex;height:auto;min-height:0;flex-direction:column}.operations-map .leaflet-container{height:clamp(300px,78vw,390px);flex:0 0 auto}.workday-map-legend{position:static;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 14px;padding:10px;border:0;border-top:1px solid var(--ut-border);border-radius:0;box-shadow:none}.dashboard-columns-layout .dashboard-project-map,.dashboard-project-map{display:flex;height:auto;min-height:0;flex-direction:column}.dashboard-project-map .leaflet-container{height:clamp(300px,78vw,390px);flex:0 0 auto}.dashboard-map-legend{position:static;width:100%;max-height:none;padding:10px 4px 2px;border:0;border-radius:0;background:#fff;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.dashboard-map-legend>div{grid-template-columns:repeat(2,minmax(0,1fr))}.leaflet-control-attribution{max-width:calc(100vw - 70px);overflow:hidden;font-size:8px;text-overflow:ellipsis;white-space:nowrap}}@media(max-width:480px){.customers-content,.dashboard-content{padding-inline:12px}.shared-page-header{gap:14px;margin-bottom:20px}.shared-page-header .action-primary,.shared-page-header>button,.shared-page-header>a{width:100%}.operations-worker-row{grid-template-columns:34px minmax(0,1fr)}.operations-worker-status{grid-column:2}.operations-worker-detail{grid-column:2;grid-row:auto;justify-self:start}.dashboard-map-legend>div{grid-template-columns:1fr}.location-actions,.coordinate-row,.location-viewer footer{align-items:stretch;flex-direction:column}.location-actions button,.location-viewer footer a{width:100%;text-align:center}}@media(max-width:640px){.customer-table-card:has(.search-results-table){overflow:visible;border:0;background:transparent;box-shadow:none}.search-results-scroll{overflow:visible}.search-results-table,.search-results-table tbody{display:block;width:100%;min-width:0}.search-results-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.search-results-table tbody{display:grid;gap:10px}.search-results-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:14px 16px;border:1px solid var(--ut-border);border-radius:var(--ut-radius-md);background:var(--ut-surface);box-shadow:var(--ut-shadow-sm)}.search-results-table tbody tr:hover td{background:transparent}.search-results-table td,.search-results-table td+td{display:block;width:auto;padding:0;overflow:visible;border:0;white-space:normal}.search-results-table .result-col-secondary,.search-results-table .result-col-tertiary{display:grid;grid-column:1 / -1;grid-template-columns:96px minmax(0,1fr);width:auto;align-items:baseline;gap:2px 8px;color:var(--ut-text-secondary);font-size:.84rem}.search-results-table td[data-label]>*{grid-column:2}.search-results-table td:not([data-label])>*{grid-column:1 / -1}.search-results-table td[data-label]:before{color:var(--ut-text-muted);content:attr(data-label);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.search-results-table .result-col-primary{grid-column:1;grid-row:1;width:auto}.search-results-table .result-col-status{grid-column:2;grid-row:1;justify-self:end;width:auto}.search-results-table .result-col-status:before{display:none}.search-results-table .result-col-actions{grid-column:1 / -1;width:auto;margin-top:4px;padding-top:10px;border-top:1px solid var(--ut-border)}.search-results-table .result-col-actions:empty{display:none}.search-results-table .result-col-select{grid-column:1 / -1;width:auto}.search-results-table .customer-row-actions{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start}.search-results-table .customer-row-actions button{width:auto}.customer-table-card:has(.search-results-table) .pagination{margin-top:12px}}@media(max-width:640px){.customer-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0 14px}.customer-metrics article{padding:12px}.customer-metrics span{font-size:.62rem;letter-spacing:.04em;line-height:1.3}.customer-metrics strong{margin-top:6px;font-size:1.3rem}}
