/* GuardManage Tenant UI v3 – modern operations design */
:root{
  --gm-bg:#f4f6f8;--gm-surface:#ffffff;--gm-surface-2:#f8fafb;--gm-text:#141820;--gm-muted:#687282;
  --gm-border:#e3e7ec;--gm-border-strong:#d3d9e0;--gm-sidebar:#11151b;--gm-sidebar-2:#171c24;
  --gm-gold:var(--tenant-primary,#d8b22d);--gm-gold-soft:#fff8dc;--gm-radius:14px;--gm-radius-sm:10px;
  --gm-shadow:0 8px 26px rgba(23,31,43,.055);--gm-shadow-hover:0 14px 34px rgba(23,31,43,.10)
}
html,body{background:var(--gm-bg);color:var(--gm-text)}
body{font-feature-settings:"tnum" 1,"ss01" 1;-webkit-font-smoothing:antialiased}

/* Main shell */
.gm-tenant-shell{grid-template-columns:264px minmax(0,1fr)!important;background:var(--gm-bg)!important}
.gm-tenant-sidebar{background:linear-gradient(180deg,var(--gm-sidebar) 0%,#131820 55%,#10141a 100%)!important;border-right:1px solid rgba(255,255,255,.07)!important;padding:18px 14px!important;box-shadow:8px 0 30px rgba(16,20,26,.06)}
.gm-brand-box{padding:4px 8px 17px!important;margin-bottom:12px!important;border-bottom:1px solid rgba(255,255,255,.09)!important}
.gm-brand-box img{max-height:72px!important;max-width:205px!important;border-radius:12px!important;filter:drop-shadow(0 4px 14px rgba(0,0,0,.18))}
.gm-brand-name{font-size:13px!important;font-weight:760!important;color:#f5f7f9;letter-spacing:-.01em;margin-top:12px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gm-tenant-nav{gap:3px!important;padding:2px 0!important;scrollbar-width:thin}
.gm-tenant-nav button{position:relative;min-height:42px;padding:9px 11px 9px 42px!important;border-radius:10px!important;color:#c8ced7!important;font-size:12.5px!important;font-weight:690!important;letter-spacing:-.005em;transition:background .15s ease,color .15s ease,transform .15s ease!important}
.gm-tenant-nav button::before{content:attr(data-gm-icon);position:absolute;left:12px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:6px;display:grid;place-items:center;color:#929cab;font-size:15px;font-weight:800}
.gm-tenant-nav button:hover{background:rgba(255,255,255,.055)!important;color:#fff!important;transform:translateX(1px)}
.gm-tenant-nav button.active{background:linear-gradient(90deg,rgba(216,178,45,.17),rgba(255,255,255,.06))!important;color:#fff!important;box-shadow:none!important}
.gm-tenant-nav button.active::after{content:"";position:absolute;left:-14px;top:8px;bottom:8px;width:3px;border-radius:0 6px 6px 0;background:var(--gm-gold);box-shadow:0 0 14px color-mix(in srgb,var(--gm-gold) 50%,transparent)}
.gm-tenant-nav button.active::before{color:var(--gm-gold)}
.gm-sidebar-foot{padding:14px 8px 3px!important;border-top:1px solid rgba(255,255,255,.09)!important;gap:4px!important}.gm-sidebar-foot span{font-size:12px}.gm-sidebar-foot small{font-size:10px!important;color:#7e8997!important;line-height:1.35}

.gm-tenant-shell .tenant-header{height:64px!important;background:rgba(17,21,27,.98)!important;border-bottom:1px solid rgba(255,255,255,.06);padding:0 28px!important;backdrop-filter:blur(12px)}
.tenant-header .brand{font-size:20px!important;font-weight:800!important;letter-spacing:-.025em}.tenant-header .company{color:#929baa!important;font-size:10.5px!important;margin-top:2px}.tenant-header .toolbar{gap:10px!important}.tenant-header .toolbar>span{font-size:12px;color:#e9edf2}.tenant-header .toolbar>span::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#53b483;margin-right:7px;box-shadow:0 0 0 3px rgba(83,180,131,.13)}
.tenant-header .btn{background:#fff!important;border-color:#fff!important;color:#171b21!important;border-radius:9px!important;padding:7px 11px!important;font-size:11px!important}
.gm-tenant-shell .tenant-content{padding:22px 28px 48px!important;max-width:1720px!important;margin:0 auto!important;width:100%}

/* Global account / license information */
.tenant-content>.cards{grid-template-columns:repeat(4,minmax(150px,1fr))!important;gap:12px!important;margin:0 0 14px!important}
.tenant-content>.cards .card{position:relative;overflow:hidden;min-height:86px;padding:15px 17px!important;border:1px solid var(--gm-border)!important;border-radius:var(--gm-radius)!important;background:linear-gradient(145deg,#fff,#fbfcfd)!important;box-shadow:var(--gm-shadow)!important}
.tenant-content>.cards .card::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--gm-gold);opacity:.75}
.tenant-content>.cards .metric span{font-size:9.5px!important;letter-spacing:.14em!important;color:#7c8694!important}.tenant-content>.cards .metric b{font-size:22px!important;margin-top:7px!important;letter-spacing:-.025em}
.tenant-page:not([data-gm-module="dashboard"]) .tenant-content>.cards{display:none!important}
.tenant-content>.notice{display:grid!important;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title button" "sub button";column-gap:18px;align-items:center;padding:11px 14px 11px 16px!important;margin:0 0 14px!important;border:1px solid #eadb9a!important;border-left:3px solid var(--gm-gold)!important;background:linear-gradient(90deg,#fffaf0,#fff)!important;border-radius:11px!important;box-shadow:none!important}
.tenant-content>.notice>b{grid-area:title;font-size:12px}.tenant-content>.notice>.muted{grid-area:sub;font-size:11px!important;color:#7d7460!important}.tenant-content>.notice>.btn{grid-area:button;margin:0!important;padding:7px 10px!important;font-size:11px!important}

/* Module surface */
.gm-module-view{border:1px solid var(--gm-border)!important;border-radius:16px!important;box-shadow:var(--gm-shadow)!important;background:var(--gm-surface)!important;overflow:hidden!important;margin-bottom:0!important}
.gm-module-view>.gm-module-head{min-height:78px;padding:16px 20px!important;background:linear-gradient(180deg,#fff,#fcfdfe)!important;border-bottom:1px solid var(--gm-border)!important;align-items:center!important}
.gm-module-head .eyebrow{font-size:9px!important;letter-spacing:.17em!important;color:#8993a1!important;margin-bottom:3px}.gm-module-head h2{font-size:21px!important;font-weight:810!important;letter-spacing:-.03em!important;line-height:1.1}.gm-module-head .muted{font-size:12px!important;color:#737e8d!important;margin-top:3px}.gm-build-chip{font-size:9px!important;border:1px solid var(--gm-border)!important;background:#f8fafb!important;color:#87919d!important;border-radius:999px!important;padding:5px 8px!important;white-space:nowrap}.gm-module-view>.panel-body{padding:18px!important;background:#fff}

/* Section cards, KPI cards */
.gb-section{border:1px solid var(--gm-border)!important;border-radius:13px!important;background:#fff!important;box-shadow:0 3px 14px rgba(23,31,43,.025)!important;overflow:hidden!important;margin-bottom:16px!important}.gb-section-head{min-height:58px;padding:13px 16px!important;background:#fff!important;border-bottom:1px solid var(--gm-border)!important}.gb-section-head h3{font-size:16px!important;font-weight:780!important;letter-spacing:-.018em;margin:0}.gb-section-head .muted{font-size:11px!important;margin-top:3px}
.gb-kpis,.go-dashboard-kpis{gap:10px!important;margin-bottom:16px!important}.gb-kpis>div,.go-dashboard-kpis>div,.gm-summary{position:relative;overflow:hidden;min-height:82px!important;padding:14px 15px!important;border:1px solid var(--gm-border)!important;border-radius:12px!important;background:linear-gradient(145deg,#fff,#fafbfd)!important;box-shadow:0 4px 16px rgba(23,31,43,.035)!important}.gb-kpis>div::after,.go-dashboard-kpis>div::after,.gm-summary::after{content:"";position:absolute;right:-20px;bottom:-32px;width:76px;height:76px;border-radius:50%;background:color-mix(in srgb,var(--gm-gold) 8%,transparent)}.gb-kpis span,.go-dashboard-kpis span,.gm-summary span{font-size:9px!important;letter-spacing:.13em!important;color:#84909e!important;font-weight:800!important;text-transform:uppercase}.gb-kpis b,.go-dashboard-kpis b{font-size:23px!important;letter-spacing:-.03em;margin-top:5px!important;position:relative;z-index:1}

/* Dashboard */
.go-dashboard-columns{gap:14px!important}.go-list-row{padding:11px 2px!important}.go-list-row b{font-size:12px}.go-list-row span{font-size:10.5px!important}.gm-info,.gm-workspace-intro{border:1px solid var(--gm-border)!important;border-left:3px solid var(--gm-gold)!important;background:linear-gradient(90deg,var(--gm-gold-soft),#fff 35%)!important;border-radius:11px!important;padding:13px 15px!important;box-shadow:none!important}.gm-info b,.gm-workspace-intro b{font-size:13px}.gm-info span,.gm-workspace-intro span{font-size:11.5px!important}.gm-dashboard-links button,.gm-action{border:1px solid var(--gm-border)!important;border-radius:12px!important;background:#fff!important;box-shadow:0 4px 14px rgba(23,31,43,.028)!important;transition:transform .15s ease,box-shadow .15s ease,border .15s ease!important}.gm-dashboard-links button:hover,.gm-action:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--gm-gold) 65%,#d6dbe1)!important;box-shadow:var(--gm-shadow-hover)!important}.gm-action-number{color:#a78100!important}

/* Buttons */
.btn{min-height:36px;border-radius:9px!important;border:1px solid var(--gm-border-strong)!important;background:#fff!important;color:#20252d!important;padding:8px 12px!important;font-size:11.5px!important;font-weight:730!important;box-shadow:0 1px 2px rgba(20,28,38,.025);transition:transform .12s ease,box-shadow .12s ease,background .12s ease!important}.btn:hover{background:#f7f9fa!important;box-shadow:0 5px 14px rgba(23,31,43,.07);transform:translateY(-1px)}.btn.primary{background:linear-gradient(180deg,color-mix(in srgb,var(--gm-gold) 92%,#fff),var(--gm-gold))!important;border-color:color-mix(in srgb,var(--gm-gold) 82%,#8e7600)!important;color:#17150d!important;box-shadow:0 5px 14px color-mix(in srgb,var(--gm-gold) 20%,transparent)}.btn.primary:hover{filter:brightness(.98);box-shadow:0 7px 18px color-mix(in srgb,var(--gm-gold) 28%,transparent)}.btn.dark{background:#171c23!important;border-color:#171c23!important;color:#fff!important}.btn.danger{background:#fff8f8!important;border-color:#efd0d0!important;color:#a13d3d!important}.btn.small{min-height:30px!important;padding:6px 9px!important;font-size:10.5px!important}

/* Forms */
.field{gap:5px!important;margin:8px 0!important}.field label{font-size:10.5px!important;font-weight:720!important;color:#586373!important}.field input,.field select,.field textarea,.search,.go-toolbar select,.go-toolbar input,.toolbar>select,.toolbar>input{min-height:40px!important;border:1px solid var(--gm-border-strong)!important;border-radius:9px!important;background:#fff!important;padding:8px 10px!important;color:#20252d!important;outline:none;transition:border .12s ease,box-shadow .12s ease,background .12s ease!important}.field input:focus,.field select:focus,.field textarea:focus,.search:focus,.go-toolbar input:focus,.go-toolbar select:focus{border-color:color-mix(in srgb,var(--gm-gold) 75%,#aeb5be)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--gm-gold) 12%,transparent)!important}.field textarea{min-height:94px!important}.search{min-width:280px!important}.section-title{font-size:9px!important;letter-spacing:.16em!important;color:#8a94a1!important}

/* Tables */
.table-wrap{border-radius:0 0 12px 12px;scrollbar-width:thin}.table{font-size:11.5px!important;border-collapse:separate!important;border-spacing:0!important}.table thead{position:sticky;top:0;z-index:1}.table th{background:#171c23!important;color:#f5f7fa!important;font-size:10px!important;font-weight:760!important;letter-spacing:.01em;padding:10px 12px!important;border:0!important}.table td{padding:11px 12px!important;border-bottom:1px solid #edf0f3!important;background:#fff;line-height:1.35}.table tbody tr:hover td{background:#fafbfd}.table tbody tr:last-child td{border-bottom:0!important}.table .muted{font-size:10px!important;color:#818b98!important}.pill{padding:4px 8px!important;font-size:9px!important;font-weight:760!important;border:1px solid transparent}.pill.good,.pill.ok{background:#eaf7f0!important;color:#237250!important;border-color:#d3ecdf}.pill.bad{background:#fff0f0!important;color:#a13d3d!important;border-color:#f2d4d4}.pill.gold{background:#fff8dc!important;color:#7e6500!important;border-color:#ecdf9d}

/* Order calendar */
.gb-calendar-strip{gap:0!important;border:1px solid var(--gm-border)!important;border-radius:12px!important;overflow:hidden!important;background:#fff}.gb-day{min-height:96px!important;border-color:var(--gm-border)!important;padding:10px!important;background:#fff!important}.gb-day.weekend{background:#fcfaf2!important}.gb-day b{font-size:10.5px!important}.gb-day span{border-radius:7px!important;background:var(--gm-gold-soft)!important;border:1px solid #eedf9f!important;color:#5e4b00!important;padding:5px 6px!important;font-size:9.5px!important;margin-top:5px!important}

/* Week planner */
.go-week-grid{gap:8px!important}.go-week-day{min-height:410px!important;border:1px solid var(--gm-border)!important;border-radius:12px!important;background:#f8fafb!important;padding:8px!important}.go-week-head{padding:5px 4px 9px!important;border-bottom:1px solid var(--gm-border)!important}.go-week-head b{font-size:12px}.go-week-head span{font-size:10px!important}.go-shift-card{border:1px solid #dce2e8!important;border-radius:9px!important;padding:9px!important;box-shadow:0 3px 10px rgba(23,31,43,.035)!important}.go-shift-card:hover{transform:translateY(-1px);box-shadow:0 7px 16px rgba(23,31,43,.08)!important}.go-shift-card.unfilled{background:#fff7f7!important;border-color:#eccaca!important}

/* Patrol hierarchy */
.pv-explainer{border:1px solid var(--gm-border)!important;border-left:3px solid var(--gm-gold)!important;border-radius:12px!important;background:linear-gradient(90deg,var(--gm-gold-soft),#fff 38%)!important;padding:14px 16px!important}.pv-service-tabs{gap:9px!important}.pv-service-tabs button,.pv-route-tabs button{border:1px solid var(--gm-border)!important;border-radius:11px!important;background:#fff!important;box-shadow:0 3px 12px rgba(23,31,43,.025)!important}.pv-service-tabs button.active,.pv-route-tabs button.active{background:linear-gradient(145deg,#fffdf3,#fff)!important;border-color:color-mix(in srgb,var(--gm-gold) 65%,#d6dbe1)!important;box-shadow:0 6px 16px color-mix(in srgb,var(--gm-gold) 10%,transparent)!important}.pv-service-kpis>div{border-color:var(--gm-border)!important;background:#f8fafb!important}.pv-object-strip span{border-color:#e1e5e9!important;background:#f8fafb!important}.go-route-plan>div{border-color:var(--gm-border)!important;border-radius:9px!important;box-shadow:0 2px 8px rgba(23,31,43,.025)}

/* Settings / branding */
.gp-settings-grid{gap:16px!important}.gp-settings-grid>div{border:1px solid var(--gm-border)!important;border-radius:13px!important;padding:17px!important;box-shadow:0 3px 14px rgba(23,31,43,.025)!important}.gm-branding-layout{gap:14px!important;margin-top:0!important}.gm-brand-preview,.gm-brand-controls{border:1px solid var(--gm-border)!important;border-radius:12px!important;padding:16px!important;background:#fff!important}.gm-logo-preview{height:132px!important;background:linear-gradient(145deg,#f7f9fb,#fff)!important;border:1px dashed #cfd6de!important}.gm-logo-preview img{max-height:102px!important}.gm-upload{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:center!important;border:1px dashed #c8d0d9!important;border-radius:11px!important;padding:13px!important;background:#f9fafb!important;margin:10px 0!important;cursor:default!important}.gm-upload:hover{border-color:#c8d0d9!important}.gm-upload input[type="file"]{display:block!important;width:100%!important;min-height:38px!important;border:1px solid var(--gm-border-strong)!important;border-radius:8px!important;background:#fff!important;padding:5px!important;font-size:10.5px!important;cursor:pointer}.gm-upload input[type="file"]::file-selector-button{border:0;border-radius:6px;background:#171c23;color:#fff;padding:7px 10px;margin-right:9px;font-weight:700;cursor:pointer}.gm-upload span{font-size:10px!important;color:#7d8794!important;margin-top:7px!important;font-weight:500!important}.gm-brand-file-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;font-size:10px;color:#687382}.gm-brand-file-meta b{font-size:10.5px;color:#313945;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gm-brand-status{font-size:10px!important;min-height:18px!important;color:#687382!important}

/* Modals */
.modal-backdrop{background:rgba(9,13,18,.62)!important;backdrop-filter:blur(5px)!important;padding:24px!important}.modal{width:min(760px,calc(100vw - 36px))!important;max-height:88vh!important;border-radius:16px!important;padding:22px!important;border:1px solid rgba(255,255,255,.5)!important;box-shadow:0 30px 90px rgba(0,0,0,.26)!important}.modal h2{font-size:20px!important;letter-spacing:-.025em!important}.modal-actions{padding-top:13px!important;border-top:1px solid var(--gm-border)!important;margin-top:18px!important}

/* Misc */
.loading{min-height:140px!important;color:#7c8794!important;font-size:12px}.notice{border-radius:11px!important}.notice.bad{background:#fff5f5!important;border-color:#efcaca!important}.muted{color:#747f8d}.go-toolbar{margin-bottom:14px!important}.go-toolbar .search{max-width:460px!important}.gp-clamp{color:#697381!important}.support-banner{border-radius:11px!important}

@media(max-width:1200px){.gm-tenant-shell{grid-template-columns:238px minmax(0,1fr)!important}.gm-tenant-shell .tenant-content{padding:18px 20px 40px!important}.tenant-content>.cards{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:820px){.gm-tenant-shell{grid-template-columns:1fr!important}.gm-tenant-sidebar{position:relative!important;height:auto!important;padding:12px!important}.gm-brand-box{display:flex;align-items:center;gap:12px}.gm-brand-box img{width:150px!important}.gm-brand-name{margin:0!important}.gm-tenant-nav{display:flex!important;flex-direction:row!important;overflow-x:auto!important}.gm-tenant-nav button{min-width:max-content!important;padding-left:36px!important}.gm-sidebar-foot{display:none!important}.gm-tenant-shell .tenant-header{position:sticky!important}.tenant-page:not([data-gm-module="dashboard"]) .tenant-content>.cards{display:none!important}.gp-settings-grid{grid-template-columns:1fr!important}}
@media(max-width:620px){.gm-tenant-shell .tenant-content{padding:12px!important}.tenant-content>.cards{grid-template-columns:1fr 1fr!important}.tenant-content>.notice{grid-template-columns:1fr!important;grid-template-areas:"title" "sub" "button";gap:6px}.tenant-content>.notice>.btn{justify-self:start}.gm-module-view>.gm-module-head{align-items:flex-start!important}.gm-build-chip{display:none}.gb-kpis,.go-dashboard-kpis{grid-template-columns:1fr 1fr!important}.search{min-width:0!important;width:100%!important}.gm-branding-layout{grid-template-columns:1fr!important}}
