*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}:root{--yellow:#ffd400;--yellow-2:#ffba00;--black:#0b0b0b;--graphite:#181818;--white:#fff;--bg:#f4f4f1;--soft:#f8f8f5;--text:#111;--muted:#747474;--line:#e6e6df;--danger:#e54848;--danger-bg:#fff1f1;--shadow:0 16px 40px #00000014;--shadow-strong:0 26px 70px #00000029}html{background:var(--bg);font-size:17px}body{background:var(--bg);min-width:320px;color:var(--text);margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-weight:400;overflow-x:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer;border:0}input,textarea,select{border:1px solid var(--line);width:100%;min-height:54px;color:var(--text);background:#fff;border-radius:16px;outline:none;padding:13px 15px;font-size:16px;font-weight:400}input:focus,textarea:focus,select:focus{border-color:#111;box-shadow:0 0 0 3px #ffd40038}textarea{resize:vertical;min-height:120px}label{gap:8px;font-size:14px;font-weight:500;display:grid}.eyebrow,.heroKicker{color:var(--yellow-2);letter-spacing:.1em;font-size:12px;font-weight:700}.loginShell{background:radial-gradient(circle at 18% 10%,#ffd4003d,#0000 32%),linear-gradient(145deg,#090909,#181818);place-items:center;min-height:100vh;padding:20px;display:grid}.loginCard{width:min(460px,100%);box-shadow:var(--shadow-strong);background:#fff;border-radius:32px;gap:16px;padding:30px;display:grid}.loginLogo{width:min(370px,92%);height:auto;margin:0 auto 8px;display:block}.loginTitle{gap:5px;margin-bottom:4px;display:grid}.loginTitle>span{color:var(--yellow-2);font-size:18px;font-weight:700}.loginTitle h1{letter-spacing:-.045em;margin:0;font-size:28px;font-weight:700;line-height:1}.loginTitle p{color:var(--muted);margin:3px 0 0}.error,.autocompleteError{background:var(--danger-bg);color:var(--danger);border:1px solid #ffd1d1;border-radius:15px;padding:12px 14px;font-weight:600}.autocompleteError{margin-top:8px;font-size:13px}.primaryButton,.darkButton,.dangerButton,.ghostDark,.uploadButton,.backHub{border-radius:16px;min-height:50px;padding:12px 16px;font-weight:650}.primaryButton,.uploadButton{background:linear-gradient(135deg,var(--yellow),var(--yellow-2));color:#111;box-shadow:0 10px 24px #ffd40033}.darkButton,.ghostDark{background:var(--black);color:#fff}.dangerButton{background:var(--danger-bg);color:var(--danger);border:1px solid #ffd1d1}.iconTextButton,.heroButton,.uploadButton,.backHub{justify-content:center;align-items:center;gap:8px;display:inline-flex}.uploadButton input{display:none}.appShell{background:var(--bg);min-height:100vh;padding-bottom:105px}.topBarSpacer{width:100%}.topBrand{align-items:center;gap:18px;min-width:0;display:flex}.topBrandCentered{justify-self:center}.headerLogo{object-fit:contain;width:220px;max-width:32vw;height:auto;display:block}.hubName{border-left:1px solid var(--line);gap:2px;padding-left:18px;display:grid}.hubName strong{font-size:21px;font-weight:750;line-height:1}.hubName span{color:var(--muted);font-size:12px}.content{gap:18px;width:min(980px,100% - 28px);margin:18px auto 0;display:grid}.hubWelcome{color:#fff;box-shadow:var(--shadow);background:radial-gradient(circle at 88% 10%,#ffd4002e,#0000 34%),linear-gradient(145deg,#0a0a0a,#1d1d1d);border-radius:32px;padding:30px}.hubWelcome h1{letter-spacing:-.055em;margin:7px 0 8px;font-size:clamp(36px,6vw,54px);font-weight:760;line-height:.98}.hubWelcome p{color:#d0d0d0;max-width:700px;margin:0;font-size:16px}.hubToday{background:linear-gradient(135deg,#ffda1f,var(--yellow-2));color:#111;border-radius:28px;padding:24px;box-shadow:0 18px 38px #ffbe0033}.hubTodayHeading{justify-content:space-between;align-items:flex-end;margin-bottom:18px;display:flex}.hubToday h2{letter-spacing:-.045em;margin:0;font-size:clamp(26px,4vw,36px);font-weight:780}.hubTodayGrid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.hubTodayCard{background:#ffffffdb;border:1px solid #11111114;border-radius:22px;align-items:center;gap:14px;min-height:112px;padding:16px;display:flex;box-shadow:0 10px 24px #6b480014}.hubTodayIcon{width:48px;height:48px;color:var(--yellow);background:#111;border-radius:15px;flex:none;place-items:center;display:grid}.hubTodayCard>div:last-child{gap:2px;display:grid}.hubTodayCard strong{letter-spacing:-.04em;font-size:30px;font-weight:800;line-height:1}.hubTodayCard span{color:#333;font-size:13px;font-weight:600}.hubMainModules{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.hubMainCard{border:1px solid var(--line);text-align:left;min-height:190px;box-shadow:var(--shadow);background:#fff;border-radius:26px;grid-template-rows:auto 1fr;grid-template-columns:1fr auto;gap:14px;padding:20px;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid;position:relative}.hubMainCard:not(.disabled):hover{border-color:#111;transform:translateY(-2px);box-shadow:0 20px 44px #0000001c}.hubMainCard:not(.disabled):active{transform:scale(.99)}.hubMainCard.disabled{opacity:.55;cursor:default}.hubMainIcon{background:var(--black);width:58px;height:58px;color:var(--yellow);border-radius:18px;place-items:center;display:grid}.hubMainText{grid-column:1/-1;align-self:end;gap:4px;display:grid}.hubMainText strong{font-size:22px;font-weight:750}.hubMainText span{color:var(--muted);font-size:13px}.hubMainText em{color:#777;background:#f1f1ed;border-radius:999px;width:fit-content;margin-top:5px;padding:5px 9px;font-size:10px;font-style:normal;font-weight:650}.hubMainArrow{color:#777;align-self:center}.sectionTopline{display:flex}.backHub{border:1px solid var(--line);min-height:42px;box-shadow:var(--shadow);background:#fff;padding:9px 12px}.heroCard{color:#fff;box-shadow:var(--shadow);background:radial-gradient(circle at 90% 10%,#ffd4002e,#0000 35%),linear-gradient(145deg,#0a0a0a,#1c1c1c);border-radius:28px;justify-content:space-between;align-items:center;gap:18px;padding:24px;display:flex;position:relative;overflow:hidden}.heroCard h2{letter-spacing:-.055em;margin:6px 0 4px;font-size:clamp(30px,5vw,46px);font-weight:700}.heroCard p{color:#c7c7c7;margin:0}.statsGrid,.miniStats{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.statCard,.miniStats>div{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:22px;padding:18px 14px}.statCard span,.miniStats span{color:var(--muted);font-size:13px;display:block}.statCard strong,.miniStats strong{letter-spacing:-.045em;margin-top:4px;font-size:27px;font-weight:700;display:block}.sectionCard{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:28px;padding:22px}.sectionHeader{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.sectionHeader h3,.visitHero h2{letter-spacing:-.045em;margin:4px 0 0;font-size:28px;font-weight:700;line-height:1}.searchInput{background:var(--soft);margin-bottom:16px}.visitList{gap:10px;display:grid}.visitRow{border:1px solid var(--line);text-align:left;background:#fafaf7;border-radius:18px;grid-template-columns:100px 1fr auto;align-items:center;gap:14px;width:100%;padding:14px;display:grid}.visitRow:hover{border-color:#111}.visitDate,.visitMain{gap:3px;display:grid}.visitDate strong{font-size:18px;font-weight:650}.visitDate span,.visitMain span{color:var(--muted);font-size:13px}.visitMain strong{font-size:17px;font-weight:650}.statusPill,.heroStatus{color:#fff;white-space:nowrap;background:#111;border-radius:999px;width:fit-content;padding:8px 12px;font-size:12px;font-weight:600}.statusPill.urgent{background:var(--danger)}.visitHero{background:linear-gradient(135deg,var(--yellow),var(--yellow-2));box-shadow:var(--shadow);border-radius:26px;justify-content:space-between;align-items:center;gap:14px;padding:20px;display:flex}.visitHero p{margin:5px 0 0}.formGrid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.span2{grid-column:1/-1}.quickActions{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px;display:grid}.quickActions button{background:var(--soft);border:1px solid var(--line);text-align:left;border-radius:16px;justify-content:flex-start;align-items:center;gap:12px;min-height:62px;padding:13px 15px;display:flex}.quickActions button>svg{flex:none}.quickActions button span{gap:1px;display:grid}.quickActions button strong{font-size:14px;font-weight:650}.quickActions button small{color:var(--muted);font-size:11px}.autocompleteHost{width:100%}gmp-place-autocomplete{margin:2px 0;width:100%!important;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:12px!important;font-family:inherit!important;font-size:14px!important;display:block!important}gmp-place-autocomplete::part(input){width:100%;height:44px;min-height:44px;box-shadow:none;color:#161616;background:#fff;border:1px solid #e3e3df;border-radius:12px;outline:none;padding:0 14px 0 38px;font-family:inherit;font-size:14px;font-weight:400}gmp-place-autocomplete::part(input):focus{border-color:#c9a900;box-shadow:0 0 0 2px #ffcd001f}.mapsRow{margin-top:-7px}.mapsButton{color:#fff;cursor:pointer;background:#151515;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:32px;padding:0 10px;font-family:inherit;font-size:11px;font-weight:600;display:inline-flex}.mapsButton:hover{background:#2a2a2a}.costGrid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.totalBanner{background:var(--black);color:#fff;border-radius:20px;justify-content:space-between;align-items:center;margin-top:16px;padding:17px 18px;display:flex}.totalBanner strong{color:var(--yellow);font-size:24px;font-weight:700}.surveyGrid{gap:14px;margin-top:16px;display:grid}.surveyCard{border:1px solid var(--line);background:#fafaf7;border-radius:22px;gap:10px;padding:16px;display:grid}.surveyTitle{justify-content:space-between;align-items:center;display:flex}.surveyTitle strong{font-weight:650}.surveyTitle button{background:var(--danger-bg);width:36px;height:36px;color:var(--danger);border-radius:999px;font-size:22px}.helper{color:var(--muted);margin-top:-8px;font-size:14px}.photoGrid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.photoCard{border:1px solid var(--line);background:#fafaf7;border-radius:22px;overflow:hidden}.photoPreview{background:#ddd;width:100%;padding:0;display:block}.photoPreview img{object-fit:cover;width:100%;height:280px;display:block}.photoFields{gap:10px;padding:14px;display:grid}.fullWidth{justify-content:center;align-items:center;gap:8px;width:100%;display:inline-flex}.teamGrid{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:18px;display:grid}.teamCard{color:#fff;background:linear-gradient(145deg,#111,#1e1e1e);border-radius:20px;align-items:center;gap:12px;padding:14px;display:flex}.avatar{background:var(--yellow);color:#111;border-radius:16px;place-items:center;width:48px;height:48px;font-size:20px;font-weight:700;display:grid}.teamCard>div:last-child{gap:2px;display:grid}.teamCard strong{font-weight:650}.teamCard span{color:#aaa;font-size:13px}.teamCard em{color:var(--yellow);font-size:12px;font-style:normal;font-weight:600}.bottomNav{left:50%;bottom:max(12px,env(safe-area-inset-bottom));z-index:60;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0f0f0ff2;border-radius:22px;grid-template-columns:repeat(5,1fr);gap:6px;width:min(620px,100% - 24px);padding:8px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 18px 45px #00000040}.bottomNav button{color:#aaa;background:0 0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:58px;font-size:10px;display:flex}.bottomNav button svg{width:21px;height:21px}.bottomNav button span{font-size:10px;font-weight:500}.bottomNav button.active{background:var(--yellow);color:#111}.bottomNav button.active span{font-weight:650}.imageOverlay{z-index:9999;background:#000000f5;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.imageOverlay img{object-fit:contain;border-radius:18px;max-width:100%;max-height:88vh}.imageClose{top:max(18px,env(safe-area-inset-top));background:var(--yellow);color:#111;border-radius:999px;width:54px;height:54px;font-size:36px;font-weight:700;position:fixed;right:18px}@media (width<=820px){.topBar{grid-template-columns:auto 1fr auto}.topBarSpacer{display:none}.topBrandCentered{justify-self:start}.headerLogo{width:185px;max-width:40vw}.hubMainModules{grid-template-columns:1fr}.hubMainCard{grid-template-rows:auto;grid-template-columns:auto 1fr auto;align-items:center;min-height:120px}.hubMainText{grid-column:auto;align-self:center}}@media (width<=700px){.content{width:calc(100% - 18px);margin-top:10px}.topBar{padding-left:14px;padding-right:14px}.headerLogo{width:150px;max-width:42vw}.hubName{padding-left:10px}.hubName strong{font-size:17px}.hubWelcome{border-radius:24px;padding:22px}.hubWelcome h1{font-size:36px}.hubToday{border-radius:24px;padding:18px}.hubTodayGrid{grid-template-columns:repeat(3,1fr);gap:8px}.hubTodayCard{text-align:center;justify-items:center;gap:8px;min-height:104px;padding:12px 10px;display:grid}.hubTodayIcon{border-radius:13px;width:40px;height:40px}.hubTodayCard strong{font-size:25px}.hubTodayCard span{font-size:11px}.heroCard{padding:20px;display:grid}.heroButton{width:100%}.statsGrid,.miniStats{gap:8px}.statCard,.miniStats>div{border-radius:18px;padding:14px 10px}.statCard strong,.miniStats strong{font-size:22px}.sectionCard{border-radius:22px;padding:16px}.sectionHeader h3,.visitHero h2{font-size:24px}.visitRow{grid-template-columns:72px 1fr}.statusPill{grid-column:2}.formGrid,.costGrid,.quickActions,.photoGrid,.teamGrid{grid-template-columns:1fr}.span2{grid-column:auto}.photoPreview img{height:250px}.visitHero{align-items:flex-start}.bottomNav{width:calc(100% - 16px);bottom:max(8px,env(safe-area-inset-bottom))}}@media (width<=430px){input,textarea,select{min-height:57px;font-size:17px}label{font-size:15px}.topBar{grid-template-columns:1fr auto}.headerLogo{width:130px;max-width:42vw}.hubName span{display:none}.hubName{gap:0;padding-left:9px}.hubName strong{font-size:16px}.ghostDark{min-height:44px;padding:10px 13px}.loginLogo{width:94%}.heroCard h2{font-size:34px}.statsGrid,.miniStats{grid-template-columns:repeat(3,1fr)}.statCard strong,.miniStats strong{font-size:21px}.hubToday h2{font-size:25px}.hubTodayCard span{font-size:10px}}@media print{.topBar,.bottomNav,.heroCard,.statsGrid,.dangerButton,.darkButton,.uploadButton,.quickActions,.sectionTopline{display:none!important}body,.appShell,.content{background:#fff}.content{width:100%;margin:0}.sectionCard{box-shadow:none;border:1px solid #ddd}}.topBarSpacer{min-width:1px}.topBrandCentered{justify-self:center;justify-items:center;gap:5px;width:100%;display:grid}.topBrandCentered .headerLogo{object-fit:contain;width:225px;max-width:100%;height:auto}.topBrandCentered .hubName{text-align:center;border-left:0;justify-items:center;gap:2px;padding-left:0;display:grid}.versionBadge{background:linear-gradient(135deg, var(--yellow), var(--yellow-2));color:#111;letter-spacing:.08em;white-space:nowrap;border-radius:999px;width:fit-content;margin-top:4px;padding:4px 10px;font-size:9px;font-style:normal;font-weight:800;line-height:1}.hubTodayEyebrow{color:#111;letter-spacing:.09em;margin-bottom:5px;font-size:11px;font-weight:800;display:block}@media (width<=820px){.topBar{grid-template-columns:1fr auto 1fr}.topBrandCentered .headerLogo{width:195px}}@media (width<=700px){.topBar{grid-template-columns:1fr auto}.topBarSpacer{display:none}.topBrandCentered{justify-self:start;justify-items:start;width:auto}.topBrandCentered .headerLogo{width:150px}.topBrandCentered .hubName{text-align:left;justify-items:start}.versionBadge{padding:4px 8px;font-size:8px}}@media (width<=430px){.topBrandCentered .headerLogo{width:132px}.topBrandCentered .hubName span{display:none}}.topBar{z-index:50;padding:max(15px, env(safe-area-inset-top)) 22px 15px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff7;border-bottom:1px solid #0000000d;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;display:grid;position:sticky;top:0}.topBarSpacer{width:100%;display:block}.topBrandCentered{flex-direction:row;justify-content:center;justify-self:center;align-items:center;gap:18px;width:auto;display:flex}.topBrandCentered .headerLogo{object-fit:contain;width:198px;max-width:none;height:auto;display:block}.topBrandCentered .hubName{border-left:1px solid var(--line);text-align:left;justify-items:start;gap:3px;padding-left:18px;display:grid}.topBrandCentered .hubName strong{font-size:21px;font-weight:760;line-height:1}.topBrandCentered .hubName span{color:var(--muted);font-size:12px;font-weight:450;display:block}.topBar>.ghostDark{justify-self:end}.hubWelcomeVersion{color:#ffffff8c;letter-spacing:.08em;background:#ffffff17;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:700;position:absolute;top:18px;right:20px}.versionBadge{display:none!important}@media (width<=820px){.topBrandCentered .headerLogo{width:175px}}@media (width<=700px){.topBar{grid-template-columns:1fr auto}.topBarSpacer{display:none}.topBrandCentered{justify-self:start;gap:11px}.topBrandCentered .headerLogo{width:145px}.topBrandCentered .hubName{padding-left:11px}}@media (width<=430px){.topBrandCentered .headerLogo{width:122px}.topBrandCentered .hubName strong{font-size:16px}.topBrandCentered .hubName span{display:none}.hubWelcomeVersion{top:14px;right:15px}}.hubWelcome{position:relative}.hubVersionBadge{z-index:2;border:1.5px solid var(--yellow);min-height:28px;color:var(--yellow);letter-spacing:.08em;white-space:nowrap;background:#00000047;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-size:10px;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:18px;right:20px;box-shadow:0 6px 18px #0000002e}.hubWelcomeVersion{display:none!important}@media (width<=700px){.hubVersionBadge{min-height:25px;padding:0 9px;font-size:8px;top:14px;right:14px}}.statusPill.completed,.heroStatus.completed{color:#fff;background:#1f8f4e}.statusPill.working,.heroStatus.working{color:#fff;background:#2166d1}.statusPill.cancelled,.heroStatus.cancelled{color:#fff;background:#7a7a7a}.statusPill.urgent{background:var(--danger);color:#fff}.calendarHero{color:#fff;box-shadow:var(--shadow);background:radial-gradient(circle at 90% 5%,#ffd40033,#0000 34%),linear-gradient(145deg,#0a0a0a,#1d1d1d);border-radius:28px;justify-content:space-between;align-items:center;gap:20px;padding:26px;display:flex}.calendarHero h1{letter-spacing:-.05em;margin:6px 0 7px;font-size:clamp(32px,5vw,46px);line-height:1}.calendarHero p{color:#c8c8c8;max-width:620px;margin:0;line-height:1.45}.calendarSyncButton{flex:none;justify-content:center;align-items:center;gap:8px;min-width:205px;display:inline-flex}.calendarSyncButton:disabled{opacity:.65;cursor:wait}.calendarSuccess,.calendarError{border-radius:17px;padding:14px 16px;font-size:14px;font-weight:600}.calendarSuccess{color:#176b38;background:#edf9f1;border:1px solid #bde8ca}.calendarError{background:var(--danger-bg);color:var(--danger);border:1px solid #ffd1d1}.calendarEmpty{text-align:center;min-height:230px;color:var(--muted);align-content:center;place-items:center;gap:7px;display:grid}.calendarEmpty svg{color:#aaa}.calendarEmpty strong{color:#111;font-size:18px}.calendarEmpty span{font-size:13px}.googleEventList{gap:10px;display:grid}.googleEventRow{border:1px solid var(--line);background:#fafaf7;border-radius:18px;grid-template-columns:90px minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px;display:grid}.googleEventRow.isSurvey{background:linear-gradient(90deg,#ffd4001a,#fff0 48%),#fafaf7;border-color:#ffbe00bf}.googleEventDate,.googleEventMain{gap:3px;display:grid}.googleEventDate strong{font-size:17px}.googleEventDate span,.googleEventMain span{color:var(--muted);font-size:12px}.googleEventMain strong{font-size:16px;font-weight:700}.googleEventMain small{color:#666;white-space:pre-wrap;margin-top:3px;font-size:11px}.googleEventStatus{justify-self:end}.calendarPill{color:#666;white-space:nowrap;background:#ededeb;border-radius:999px;align-items:center;min-height:29px;padding:0 10px;font-size:10px;font-weight:700;display:inline-flex}.calendarPill.survey{background:var(--yellow);color:#111}.calendarPill.imported{color:#fff;background:#1f8f4e}.calendarRuleCard{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:22px;align-items:flex-start;gap:14px;padding:18px;display:flex}.calendarRuleIcon{background:var(--yellow);color:#111;border-radius:15px;flex:none;place-items:center;width:48px;height:48px;display:grid}.calendarRuleCard strong{font-size:16px}.calendarRuleCard p{color:var(--muted);margin:5px 0 0;font-size:13px;line-height:1.45}@media (width<=700px){.calendarHero{padding:20px;display:grid}.calendarSyncButton{width:100%;min-width:0}.googleEventRow{grid-template-columns:70px minmax(0,1fr)}.googleEventStatus{grid-column:2;justify-self:start}}.calendarPill.installation{color:#111;background:#ffc928}.installationHero{color:#fff;box-shadow:var(--shadow);background:radial-gradient(circle at 90% 10%,#ffd40033,#0000 36%),linear-gradient(145deg,#0a0a0a,#1c1c1c);border-radius:28px;justify-content:space-between;align-items:center;gap:18px;padding:24px;display:flex;position:relative;overflow:hidden}.installationHero h2{letter-spacing:-.055em;margin:6px 0 4px;font-size:clamp(30px,5vw,46px)}.installationHero p{color:#c7c7c7;margin:0}.installationList{gap:10px;display:grid}.installationRow{border:1px solid var(--line);text-align:left;background:#fafaf7;border-radius:18px;grid-template-columns:90px minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;padding:15px;display:grid}.installationRow:hover{border-color:#111}.installationDate,.installationMain{gap:3px;display:grid}.installationDate strong{font-size:18px}.installationDate span,.installationMain span,.installationMain small{color:var(--muted);font-size:12px}.installationMain strong{font-size:17px;font-weight:700}.installationStatus{color:#fff;white-space:nowrap;background:#111;border-radius:999px;width:fit-content;padding:8px 12px;font-size:11px;font-weight:700}.installationStatus.completed{background:#1f8f4e}.installationStatus.working{background:#2166d1}.installationStatus.cancelled{background:#7a7a7a}.installationEmpty{text-align:center;color:var(--muted);padding:30px}.installationVisitHero{background:radial-gradient(circle at 90% 10%, #ffffff29, transparent 35%), linear-gradient(135deg, var(--yellow), var(--yellow-2));color:#111}.installationActions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.installationActions .darkButton,.installationActions .primaryButton{justify-content:center;align-items:center;display:inline-flex}.installMapsButton{min-height:50px;padding:0 16px;font-size:13px}@media (width<=700px){.installationHero{padding:20px;display:grid}.installationRow{grid-template-columns:68px minmax(0,1fr)}.installationStatus{grid-column:2}.installationActions{display:grid}.installationActions>button{width:100%}}.hubTodaySplit{grid-template-columns:1fr 1px 1fr;align-items:stretch;gap:18px;display:grid}.hubTodaySection{min-width:0}.hubTodaySectionTitle{color:#111;align-items:center;gap:8px;margin-bottom:11px;display:flex}.hubTodaySectionTitle strong{font-size:15px;font-weight:800}.hubTodayDivider{background:#1111112e;width:1px;min-height:100%}.hubTodaySection .hubTodayGrid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.hubTodaySection .hubTodayCard{text-align:center;justify-content:center;min-height:86px;padding:12px}.hubTodaySection .hubTodayCard>div{justify-items:center;gap:3px;display:grid}.hubTodaySection .hubTodayCard strong{font-size:27px}.hubTodaySection .hubTodayCard span{font-size:11px}.selectedAddress{color:#6a6a6a;align-items:flex-start;gap:6px;margin-top:7px;padding:0 2px;font-size:12px;line-height:1.35;display:flex}.selectedAddress svg{color:#b39400;flex:none;margin-top:1px}@media (width<=700px){.hubTodaySplit{grid-template-columns:1fr;gap:16px}.hubTodayDivider{width:100%;height:1px;min-height:1px}.hubTodaySection .hubTodayGrid{grid-template-columns:repeat(3,1fr)}.hubTodaySection .hubTodayCard{min-height:78px;padding:10px 6px}.hubTodaySection .hubTodayCard strong{font-size:24px}.hubTodaySection .hubTodayCard span{font-size:10px}}.installationProGrid{grid-template-columns:1fr 1fr;gap:14px;margin-top:22px;display:grid}.installationProCard{border:1px solid var(--line);background:#fafaf7;border-radius:22px;padding:18px}.installationProHeader{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.installationProHeader h4{letter-spacing:-.035em;margin:4px 0 0;font-size:20px;line-height:1}.smallUploadButton{color:#fff;cursor:pointer;white-space:nowrap;background:#111;border-radius:11px;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:8px 11px;font-size:11px;font-weight:700;display:inline-flex}.smallUploadButton input{display:none}.projectEmpty{text-align:center;min-height:190px;color:var(--muted);background:#fff;border:1px dashed #d7d7d0;border-radius:18px;align-content:center;place-items:center;gap:7px;padding:20px;display:grid}.projectEmpty svg{color:#999}.projectEmpty strong{color:#111;font-size:15px}.projectEmpty span{max-width:300px;font-size:12px;line-height:1.4}.projectPreview{gap:12px;display:grid}.projectImageButton{background:#ecece8;border-radius:18px;width:100%;padding:0;overflow:hidden}.projectImageButton img{object-fit:contain;background:#fff;width:100%;height:260px;display:block}.projectPdfPreview{text-align:center;background:#fff;border-radius:18px;align-content:center;place-items:center;gap:7px;min-height:190px;padding:20px;display:grid}.projectPdfPreview svg{color:#111}.projectPdfPreview strong{text-overflow:ellipsis;max-width:100%;font-size:14px;overflow:hidden}.projectPdfPreview span{color:var(--muted);font-size:11px}.projectActions{grid-template-columns:1fr auto;gap:8px;display:grid}.projectActions button{border-radius:12px;min-height:44px}.installationChecklist{gap:8px;display:grid}.checkRow{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:14px;grid-template-columns:none;align-items:center;gap:11px;min-height:48px;padding:10px 12px;display:flex}.checkRow input{width:22px;height:22px;min-height:0;accent-color:var(--yellow-2);flex:none;margin:0}.checkRow span{font-size:13px;font-weight:600}.installationPhotosCard{margin-top:14px}.installationPhotoPhases{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.installationPhotoPhase{border:1px solid var(--line);background:#fff;border-radius:17px;min-width:0;padding:12px}.photoPhaseHeader{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.photoPhaseHeader strong{font-size:14px}.installationMiniGallery{grid-template-columns:repeat(2,1fr);gap:7px;display:grid}.installationMiniPhoto{aspect-ratio:1;background:#ecece8;border-radius:12px;position:relative;overflow:hidden}.installationMiniPhoto>button:first-child{width:100%;height:100%;padding:0;display:block}.installationMiniPhoto img{object-fit:cover;width:100%;height:100%;display:block}.miniPhotoDelete{color:#fff;background:#000000c2;border-radius:999px;place-items:center;width:25px;height:25px;font-size:18px;line-height:1;display:grid;position:absolute;top:5px;right:5px}.photoPhaseEmpty{color:#999;background:#f6f6f2;border-radius:12px;grid-column:1/-1;place-items:center;min-height:72px;font-size:11px;display:grid}.uploadingText{color:var(--muted);font-size:11px;font-weight:600}@media (width<=760px){.installationProGrid,.installationPhotoPhases{grid-template-columns:1fr}.installationMiniGallery{grid-template-columns:repeat(3,1fr)}.projectImageButton img{height:220px}}@media (width<=430px){.installationProHeader{align-items:flex-start}.installationProHeader h4{font-size:18px}.smallUploadButton{padding:8px 9px}.installationMiniGallery{grid-template-columns:repeat(2,1fr)}}.photoPhaseHeader{align-items:flex-start}.photoPhaseTitle{gap:4px;min-width:0;display:grid}.photoCaptureActions{flex:none;align-items:center;gap:6px;display:flex}.cameraButton,.galleryButton{cursor:pointer;white-space:nowrap;border-radius:11px;grid-template-columns:none;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:8px 10px;font-size:11px;font-weight:750;display:inline-flex}.cameraButton{background:linear-gradient(135deg, var(--yellow), var(--yellow-2));color:#111}.galleryButton{color:#fff;background:#111}.cameraButton input,.galleryButton input{display:none}.photoSaveStatus{width:fit-content;font-size:10px;font-weight:700;line-height:1.1}.photoSaveStatus.loading{color:#8a6d00}.photoSaveStatus.saved{color:#1f8f4e}.photoSaveStatus.error{color:var(--danger)}.installationMiniPhoto:after{content:"";pointer-events:none;border-radius:inherit;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #0000000a}@media (width<=700px){.photoPhaseHeader{grid-template-columns:1fr;gap:9px;display:grid}.photoCaptureActions{grid-template-columns:1fr 1fr;width:100%;display:grid}.cameraButton,.galleryButton{width:100%;min-height:44px;font-size:12px}}@media (width<=430px){.cameraButton,.galleryButton{min-height:46px}}.savedAddressField{border:1px solid var(--line);width:100%;min-height:54px;color:var(--text);text-align:left;background:#fff;border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;display:grid}.savedAddressField:hover{border-color:#c9a900}.savedAddressField svg{color:#b39400;flex:none}.savedAddressField span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:16px;font-weight:400;overflow:hidden}.savedAddressField em{color:#777;background:#f2f2ee;border-radius:999px;padding:5px 8px;font-size:10px;font-style:normal;font-weight:700}.addressEditWrap{gap:7px;display:grid}.cancelAddressEdit{color:#777;background:0 0;border-radius:8px;width:fit-content;padding:4px 8px;font-size:11px;font-weight:650}.cancelAddressEdit:hover{color:#111;background:#f2f2ee}@media (width<=430px){.savedAddressField{min-height:57px}.savedAddressField span{font-size:17px}.savedAddressField em{display:none}}.operatorSelectorField{gap:8px;display:grid}.operatorSelector{border:1px solid var(--line);background:#fff;border-radius:16px;flex-wrap:wrap;gap:8px;min-height:54px;padding:8px;display:flex}.operatorChip{color:#111;text-align:left;background:#f5f5f1;border:1px solid #e5e5df;border-radius:12px;align-items:center;gap:8px;min-height:42px;padding:7px 11px 7px 8px;transition:background .14s,border-color .14s,transform .14s;display:inline-flex}.operatorChip:hover{border-color:#b9b9b1}.operatorChip:active{transform:scale(.98)}.operatorChip.selected{background:linear-gradient(135deg, var(--yellow), var(--yellow-2));border-color:#d9aa00}.operatorCheck{color:#111;background:#fff;border:1px solid #d8d8d1;border-radius:8px;flex:none;place-items:center;width:24px;height:24px;font-size:14px;font-weight:900;display:grid}.operatorChip.selected .operatorCheck{border-color:#1111112e}.operatorChipText{gap:1px;min-width:0;display:grid}.operatorChipText strong{font-size:13px;font-weight:750;line-height:1.15}.operatorChipText small{text-overflow:ellipsis;white-space:nowrap;color:#777;max-width:180px;font-size:9px;font-weight:500;overflow:hidden}.operatorChip.selected .operatorChipText small{color:#1111119e}.operatorSelectedSummary{align-items:baseline;gap:6px;padding:0 2px;font-size:11px;display:flex}.operatorSelectedSummary span{color:var(--muted)}.operatorSelectedSummary strong{font-weight:700}.operatorEmpty{width:100%;min-height:38px;color:var(--muted);place-items:center;font-size:12px;display:grid}@media (width<=700px){.operatorSelector{grid-template-columns:1fr 1fr;display:grid}.operatorChip{width:100%;min-width:0}}@media (width<=430px){.operatorSelector{grid-template-columns:1fr}.operatorChip{min-height:46px}.operatorChipText strong{font-size:14px}.operatorChipText small{max-width:230px}}.hubMainModules{grid-template-columns:repeat(4,1fr)}.usersHero{color:#fff;box-shadow:var(--shadow);background:radial-gradient(circle at 90% 8%,#ffd4002e,#0000 35%),linear-gradient(145deg,#0a0a0a,#1c1c1c);border-radius:28px;justify-content:space-between;align-items:center;gap:18px;padding:24px;display:flex}.usersHero h1{letter-spacing:-.05em;margin:6px 0;font-size:clamp(32px,5vw,46px);line-height:1}.usersHero p{color:#c8c8c8;max-width:620px;margin:0;line-height:1.45}.usersHeroCount{background:var(--yellow);color:#111;text-align:center;border-radius:20px;min-width:112px;padding:16px 18px}.usersHeroCount strong{font-size:32px;font-weight:800;line-height:1;display:block}.usersHeroCount span{margin-top:4px;font-size:11px;font-weight:700;display:block}.bottomNav{grid-template-columns:repeat(4,1fr)}@media (width<=900px){.hubMainModules{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.hubMainModules{grid-template-columns:1fr}.usersHero{align-items:flex-start}.usersHeroCount{min-width:92px;padding:13px 14px}}@media (width<=430px){.usersHero{display:grid}.usersHeroCount{width:fit-content}}:root{--hub-body-font:16px;--hub-small-font:12px;--hub-label-font:14px;--hub-control-font:16px}html,body,#root{font-size:var(--hub-body-font)}body{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}input,textarea,select{font-size:var(--hub-control-font)!important;line-height:1.35!important}button{font-size:14px}label{font-size:var(--hub-label-font)}.tacaPageHeroKicker,.eyebrow,.fieldSurveyKicker,.smartKicker,.notificationEyebrow,.tacaStatCard span,.smartMetric span{font-size:11px!important}.tacaStatCard strong,.smartMetric strong{font-size:30px!important}.tacaSearchBar input,.smartSearch input{font-size:15px!important}.tacaTimelineStep{font-size:11px!important}.tacaTimelineDot{transform:scale(1.08)}.weatherTitle strong{font-size:17px!important}.weatherTitle small{font-size:12px!important}.weatherCondition{padding:7px 10px!important;font-size:11px!important}.weatherMetric span{font-size:10px!important}.weatherMetric strong{font-size:16px!important}.weatherAdvice{font-size:12px!important}.weatherCompact,.weatherCompact strong{font-size:11px!important}.sectionCard label,.operatorSelectorField>label,.installationProCard label{font-size:14px!important}.sectionCard input,.sectionCard textarea,.sectionCard select{min-height:54px}.sectionCard textarea{min-height:130px;padding-top:14px}.sectionHeader h2,.installationProHeader h2{font-size:28px!important}.savedAddressField,.operatorSelectedSummary,.operatorEmpty,.operatorChipText strong{font-size:13px!important}.operatorChipText small{font-size:10px!important}.fieldSurveyBack,.fieldSurveyMeta,.fieldSaved,.fieldPhotoCount,.fieldHint{font-size:12px!important}.fieldSurveyHero h1{font-size:clamp(42px,5vw,62px)!important}.fieldAction{min-height:56px!important;font-size:14px!important}.fieldClientCardHeader h2,.fieldCardHeader h2{font-size:26px!important}.surveyDesktopForm label,.fieldPhotoFields label{font-size:14px!important}.surveyDesktopForm input,.surveyDesktopForm textarea,.surveyDesktopForm select,.fieldPhotoFields input,.fieldPhotoFields textarea{min-height:54px;font-size:16px!important}.fieldNotes{min-height:135px!important}.fieldAddPhoto{min-height:48px!important;font-size:14px!important}.calendarViewButton,.weekNavigation button,.todayButton{font-size:12px!important}.weekTitle h2{font-size:22px!important}.installNextMain strong,.surveyNextMain strong{font-size:18px!important}.installNextMain>span,.installNextMain>small,.surveyNextMain>span,.surveyNextMain>small,.installOpen,.surveyOpen{font-size:12px!important}.installEventTime,.surveyEventTime{font-size:10px!important}.installEvent strong,.surveyEvent strong{font-size:12px!important}.installEvent small,.surveyEvent small,.surveyOperator{font-size:10px!important}@media (width<=700px){:root{--hub-body-font:17px;--hub-small-font:13px;--hub-label-font:15px;--hub-control-font:17px}.content,.mainContent{padding-left:12px!important;padding-right:12px!important}input,select,textarea{font-size:17px!important}input,select{min-height:58px!important}textarea{min-height:140px}label{font-size:15px!important}button{min-height:44px;font-size:14px!important}.topBar{min-height:76px!important}.topBar .brandTitle,.topBar strong{font-size:18px}.tacaStatCard{min-height:100px!important;padding:16px!important}.tacaStatCard span{font-size:12px!important}.tacaStatCard strong{font-size:34px!important}.mobileDayButton{min-height:68px!important}.mobileDayButton strong{font-size:11px!important}.mobileDayButton span{font-size:20px!important}.mobileAgendaItem{grid-template-columns:68px minmax(0,1fr)!important;min-height:92px!important;padding:14px!important}.mobileAgendaTime strong{font-size:21px!important}.mobileAgendaTime span{font-size:10px!important}.mobileAgendaMain>strong{font-size:16px!important}.mobileAgendaMain>small{font-size:12px!important;line-height:1.35!important}.surveyNext,.installNext{padding:16px!important}.surveyNextTime strong,.installNextTime strong{font-size:28px!important}.surveyNextMain strong,.installNextMain strong{font-size:17px!important}.surveyNextMain>span,.surveyNextMain>small,.installNextMain>span,.installNextMain>small{font-size:13px!important}.surveyOpen,.installOpen{min-height:48px!important;font-size:14px!important}.tacaTimelineStep{font-size:10px!important}.weatherCard{padding:16px!important}.weatherTitle strong{font-size:18px!important}.weatherTitle small{font-size:12px!important}.weatherMetric span{font-size:10px!important}.weatherMetric strong{font-size:17px!important}.visitHero h1,.fieldSurveyHero h1{font-size:38px!important}.sectionHeader h2,.fieldClientCardHeader h2,.fieldCardHeader h2{font-size:27px!important}.sectionCard{padding:18px!important}.sectionCard label,.surveyDesktopForm label,.fieldPhotoFields label{font-size:15px!important}.sectionCard input,.sectionCard select,.surveyDesktopForm input,.surveyDesktopForm select,.fieldPhotoFields input{min-height:58px!important;font-size:17px!important}.sectionCard textarea,.surveyDesktopForm textarea,.fieldPhotoFields textarea{font-size:17px!important;line-height:1.4!important}.operatorChipText strong{font-size:14px!important}.operatorChipText small{font-size:11px!important}.fieldAction{min-height:62px!important;font-size:15px!important}}@media (width>=701px){.content,.mainContent{font-size:16px}.sectionCard input,.sectionCard select,.surveyDesktopForm input,.surveyDesktopForm select{font-size:16px!important}}
