:root{--ink:#16201f;--muted:#667270;--line:#dce5e2;--paper:#fff;--wash:#f3f7f5;--brand:#174d49;--brand-dark:#102c2b;--brand-soft:#d9ebe7;--lime:#c7e36f;--amber:#b97715;--amber-soft:#fff1d7;--red:#a5483f;--red-soft:#fae7e4;--blue:#2e658d;--blue-soft:#e6f0f8;--shadow:0 16px 45px #19353214}*{box-sizing:border-box}html{background:var(--wash)}body{color:var(--ink);background:radial-gradient(circle at 8% 0%, #c7e36f29, transparent 28rem), var(--wash);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-frame{min-height:100dvh}.topbar{z-index:40;color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#102c2bf7;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;min-height:68px;padding:10px max(18px,50vw - 560px);display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;display:flex}.brand-mark{width:36px;height:36px;color:var(--brand-dark);background:var(--lime);border-radius:11px;place-items:center;display:grid}.brand strong,.brand small{display:block}.brand strong{letter-spacing:.01em;font-size:15px}.brand small{color:#b8cbc7;letter-spacing:.07em;text-transform:uppercase;margin-top:2px;font-size:10px}.topbar-actions{align-items:center;gap:10px;display:flex}.demo-pill{color:#d7e4e1;border:1px solid #ffffff24;border-radius:999px;padding:6px 9px;font-size:11px}.main-content{width:min(100%,1120px);margin:0 auto;padding:28px 18px 104px}.page-stack{gap:28px;display:grid}.page-heading h1,.hero-panel h1{letter-spacing:-.04em;margin:3px 0 7px;font-size:clamp(29px,6vw,48px);line-height:1}.page-heading p:last-child,.hero-panel p:last-child{max-width:690px;color:var(--muted);margin:0;line-height:1.6}.page-heading-action{justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.page-heading-action .button{flex:none}.eyebrow{color:var(--brand);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:11px;font-weight:800}.hero-panel{box-shadow:var(--shadow);background:linear-gradient(135deg,#fff 0%,#edf5f2 100%);border:1px solid #cddbd7;border-radius:24px;justify-content:space-between;align-items:flex-end;gap:28px;padding:28px;display:flex;overflow:hidden}.hero-icon{height:64px;color:var(--brand-dark);background:var(--lime);border-radius:20px;flex:0 0 64px;place-items:center;display:grid;transform:rotate(3deg)}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.metric-card{border:1px solid var(--line);background:#ffffffd1;border-radius:17px;padding:18px}.metric-card span,.metric-card small{color:var(--muted);display:block}.metric-card span{text-transform:uppercase;letter-spacing:.07em;font-size:12px;font-weight:700}.metric-card strong{letter-spacing:-.04em;margin:6px 0 2px;font-size:27px;display:block}.metric-card small{font-size:12px}.attention-strip{color:#68430d;background:var(--amber-soft);border:1px solid #efd19f;border-radius:14px;align-items:center;gap:12px;padding:14px 16px;display:flex}.attention-strip div{gap:2px;display:grid}.attention-strip strong{font-size:14px}.attention-strip span{font-size:12px}.section-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:12px;display:flex}.section-heading h2{letter-spacing:-.02em;margin:2px 0 0;font-size:19px}.section-heading>span{color:var(--muted);font-size:12px}.job-list{gap:12px;display:grid}.job-card{border:1px solid var(--line);background:var(--paper);border-radius:18px;padding:18px 52px 18px 18px;transition:transform .18s,border-color .18s,box-shadow .18s;display:block;position:relative;box-shadow:0 7px 22px #1935320a}.job-card:hover{box-shadow:var(--shadow);border-color:#b6ccc6;transform:translateY(-2px)}.job-card-topline{align-items:center;gap:10px;margin-bottom:11px;display:flex}.job-card h3{margin:0;font-size:18px}.job-price{color:var(--brand);margin-left:auto;font-size:13px;font-weight:800}.service-line{color:var(--muted);margin:4px 0 12px;font-size:13px}.job-meta{color:#52615e;flex-wrap:wrap;gap:8px 17px;font-size:12px;display:flex}.job-meta span{align-items:center;gap:5px;display:inline-flex}.card-arrow{width:30px;height:30px;color:var(--brand);place-items:center;display:grid;position:absolute;top:50%;right:18px;transform:translateY(-50%)}.status{letter-spacing:.07em;text-transform:uppercase;border-radius:999px;align-items:center;min-height:24px;padding:4px 8px;font-size:10px;font-weight:800;display:inline-flex}.status-ready,.status-completed{color:#225848;background:#dcefe7}.status-in_progress{color:#2b5474;background:var(--blue-soft)}.status-awaiting_report{color:#765013;background:var(--amber-soft)}.status-follow_up{color:#833c35;background:var(--red-soft)}.status-scheduled{color:#596463;background:#ebefee}.principles-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.principles-grid article{color:#d9e6e3;background:var(--brand-dark);border-radius:16px;align-items:flex-start;gap:12px;padding:17px;display:flex}.principles-grid svg{color:var(--lime);flex:none}.principles-grid strong{color:#fff;font-size:13px;display:block}.principles-grid p{margin:4px 0 0;font-size:12px;line-height:1.5}.bottom-nav{z-index:50;padding:7px 10px max(7px, env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;grid-template-columns:repeat(2,1fr);display:none;position:fixed;bottom:0;left:0;right:0}.bottom-nav.manager{grid-template-columns:repeat(3,1fr)}.bottom-nav a{color:#61706d;place-items:center;gap:3px;min-height:48px;font-size:10px;font-weight:700;display:grid}.bottom-nav a:hover{color:var(--brand)}.auth-wrap,.auth-message{place-items:center;min-height:65dvh;display:grid}.auth-message{text-align:center}.page-heading.compact h1{font-size:clamp(27px,5vw,40px)}.job-hero{color:#fff;background:var(--brand-dark);box-shadow:var(--shadow);border-radius:23px;grid-template-columns:minmax(0,1fr) auto;gap:22px;padding:25px;display:grid}.job-hero-main h1{letter-spacing:-.04em;margin:11px 0 4px;font-size:clamp(28px,5vw,43px);line-height:1}.job-hero-main>p{color:#b8cbc7;margin:0}.job-hero-main .job-card-topline>span:last-child{color:#a8bbb7;font-size:11px}.job-hero-meta{color:#d5e1df;flex-wrap:wrap;gap:9px 18px;margin-top:22px;font-size:12px;display:flex}.job-hero-meta span{align-items:center;gap:6px;display:inline-flex}.price-panel{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:18px;flex-direction:column;justify-content:center;align-self:stretch;min-width:160px;padding:20px;display:flex}.price-panel span,.price-panel small{color:#a8bbb7}.price-panel span{letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:800}.price-panel strong{color:var(--lime);letter-spacing:-.04em;margin:6px 0 2px;font-size:28px}.price-panel small{font-size:11px}.detail-grid{grid-template-columns:1.2fr .8fr;gap:14px;display:grid}.detail-card{border:1px solid var(--line);background:#fff;border-radius:19px;padding:21px}.detail-card-heading{justify-content:space-between;align-items:flex-end;margin-bottom:15px;display:flex}.detail-card-heading h2{margin:3px 0 0;font-size:20px}.detail-card-heading>span{min-width:40px;height:40px;color:var(--brand);background:var(--brand-soft);border-radius:13px;place-items:center;font-weight:900;display:grid}.device-table{border-top:1px solid var(--line)}.device-table>div,.quoted-device-list>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:10px 1px;font-size:13px;display:flex}.device-table span,.quoted-device-list span{color:var(--muted)}.ecosystem-row{justify-content:space-between;gap:20px;padding:14px 1px 4px;font-size:12px;display:flex}.ecosystem-row span{color:var(--muted)}.prepair-note{color:#235449;background:#e5f3ed;border-radius:13px;align-items:center;gap:10px;margin-top:14px;padding:12px;display:flex}.prepair-note strong,.prepair-note span{display:block}.prepair-note strong{font-size:12px}.prepair-note span{margin-top:2px;font-size:11px}.readiness-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.readiness-list li{border-radius:11px;align-items:center;gap:8px;padding:10px 11px;font-size:12px;display:flex}.readiness-list .ready{color:#285b4c;background:#e9f4ef}.readiness-list .not-ready{color:#873e36;background:var(--red-soft)}.teaching-note{color:var(--muted);border-top:1px solid var(--line);align-items:flex-start;gap:9px;margin-top:14px;padding-top:14px;display:flex}.teaching-note svg{color:var(--brand);flex:none}.teaching-note p{margin:0;font-size:12px;line-height:1.5}.metric-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.job-action-panel{background:linear-gradient(120deg,#fff,#e8f3ef);border:1px solid #cadbd6;border-radius:19px;justify-content:space-between;align-items:center;gap:24px;padding:22px;display:flex}.job-action-panel h2{margin:3px 0 5px;font-size:20px}.job-action-panel p:last-child{color:var(--muted);margin:0;font-size:13px}.button{border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 17px;font-weight:800;display:inline-flex}.button.primary{color:#fff;background:var(--brand)}.button.primary:hover{background:var(--brand-dark)}.button.secondary{color:var(--brand);background:#fff;border:1px solid #bfd0cc}.button.secondary:hover{border-color:var(--brand)}.button:disabled{opacity:.55;cursor:wait}.report-form{gap:16px;display:grid}.form-section{border:1px solid var(--line);background:#fff;border-radius:19px;padding:21px}.commercial-section{background:#f9fcfb;border-color:#c9d9d4}.form-section-heading{align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.form-section-heading>span{height:32px;color:var(--brand);background:var(--brand-soft);border-radius:10px;flex:0 0 32px;place-items:center;font-size:11px;font-weight:900;display:grid}.form-section-heading h2{margin:0;font-size:18px}.form-section-heading p{color:var(--muted);margin:3px 0 0;font-size:12px;line-height:1.45}.field-grid{gap:12px;display:grid}.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field{gap:6px;margin-top:12px;display:grid}.field>span{color:#4f5e5b;letter-spacing:.03em;font-size:11px;font-weight:800}.field small{color:var(--muted);font-size:10px}.field input,.field select,.field textarea{width:100%;min-height:42px;color:var(--ink);background:#fff;border:1px solid #cbd8d5;border-radius:10px;outline:none;padding:10px 11px}.field textarea{resize:vertical;line-height:1.5}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #174d491a}.staff-time-list{gap:11px;display:grid}.staff-time-card{border:1px solid var(--line);border-radius:13px;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:0;padding:12px 14px 15px;display:grid}.staff-time-card legend{padding:0 6px;font-size:13px;font-weight:800}.staff-time-card legend small{color:var(--muted);text-transform:capitalize;margin-left:7px;font-size:10px;font-weight:600}.quoted-device-list{border-top:1px solid var(--line);margin-bottom:12px}.check-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.check-grid label{cursor:pointer;align-items:center;min-height:44px;display:flex;position:relative}.check-grid input{opacity:0;pointer-events:none;position:absolute}.check-grid span{color:#566461;border:1px solid var(--line);border-radius:10px;align-items:center;width:100%;min-height:44px;padding:9px 11px;font-size:11px;line-height:1.3;display:flex}.check-grid input:checked+span{color:#743f18;background:var(--amber-soft);border-color:#dda65a;box-shadow:inset 3px 0 #c27c1c}.form-message{z-index:20;box-shadow:var(--shadow);border-radius:12px;padding:13px 15px;font-size:13px;font-weight:700;position:sticky;top:76px}.form-message.success{color:#285b4c;background:#e9f4ef;border:1px solid #bcd9cc}.form-message.error{color:#873e36;background:var(--red-soft);border:1px solid #e6c0bb}.submit-bar{z-index:30;color:#d8e4e1;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#102c2bf7;border:1px solid #ffffff1f;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;padding:15px 17px;display:flex;position:sticky;bottom:14px;box-shadow:0 18px 45px #102c2b38}.submit-bar strong,.submit-bar span{display:block}.submit-bar strong{color:#fff;font-size:12px}.submit-bar span{margin-top:2px;font-size:10px}.submit-bar .button{color:var(--brand-dark);background:var(--lime)}.labour-action-panel{color:#fff;background:linear-gradient(115deg, var(--brand), var(--brand-dark));border-radius:18px;align-items:center;gap:18px;padding:18px 20px;display:flex}.labour-action-panel>div{flex:auto}.labour-action-panel h2{margin:3px 0 4px;font-size:19px}.labour-action-panel p:last-child{color:#c8d9d6;margin:0;font-size:12px}.labour-action-panel .eyebrow{color:var(--lime)}.inline-success,.inline-error{font-size:11px;font-weight:800}.inline-success{color:var(--lime)}.inline-error{color:#ffc8c1}.customer-search-bar{border:1px solid var(--line);background:#fff;border-radius:16px;gap:9px;padding:13px;display:flex}.customer-search-bar input{border:1px solid #cbd8d5;border-radius:10px;flex:auto;min-width:0;padding:0 13px}.choice-list{gap:8px;display:grid}.choice-list label{cursor:pointer;position:relative}.choice-list input{opacity:0;position:absolute}.choice-list span{border:1px solid var(--line);border-radius:11px;padding:12px 13px;display:block}.choice-list strong,.choice-list small{display:block}.choice-list strong{font-size:13px}.choice-list small{color:var(--muted);margin-top:3px;font-size:10px}.choice-list input:checked+span{border-color:var(--brand);box-shadow:inset 3px 0 0 var(--brand);background:#edf6f2}.empty-note{color:var(--muted);text-align:center;border:1px dashed #bdcbc8;border-radius:11px;margin:0;padding:15px;font-size:12px}.compact-checks{margin-top:17px}.device-entry-list{gap:8px;display:grid}.device-entry-row{grid-template-columns:minmax(150px,.8fr) minmax(180px,1.6fr) 90px;gap:8px;display:grid}.device-entry-row input,.device-entry-row select,.staff-assignment-row select{min-width:0;min-height:42px;color:var(--ink);background:#fff;border:1px solid #cbd8d5;border-radius:10px;padding:9px 10px}.staff-assignment-list{gap:8px;display:grid}.staff-assignment-row{border:1px solid var(--line);border-radius:11px;grid-template-columns:1fr 150px;align-items:center;gap:9px;padding:10px 11px;display:grid}.staff-assignment-row label{cursor:pointer;align-items:center;gap:10px;display:flex}.staff-assignment-row label span,.staff-assignment-row label strong,.staff-assignment-row label small{display:block}.staff-assignment-row label strong{font-size:12px}.staff-assignment-row label small{color:var(--muted);margin-top:2px;font-size:10px}.analytics-table-wrap{border:1px solid var(--line);background:#fff;border-radius:19px;padding:20px}.analytics-list{border-top:1px solid var(--line);display:grid}.analytics-list article{border-bottom:1px solid var(--line);grid-template-columns:minmax(220px,2fr) repeat(3,minmax(90px,.7fr));align-items:center;gap:16px;padding:14px 10px;display:grid}.analytics-list article.under-target{box-shadow:inset 3px 0 0 var(--red)}.analytics-list article.healthy{box-shadow:inset 3px 0 #59a182}.analytics-list article>div:not(.analytics-name){text-align:right}.analytics-list span{color:var(--muted);font-size:10px;display:block}.analytics-list strong{font-size:13px}.analytics-name strong{font-size:14px}.analytics-name span{margin-top:3px}.insight-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.insight-grid article{border:1px solid var(--line);background:#fff;border-radius:15px;align-items:flex-start;gap:11px;padding:17px;display:flex}.insight-grid svg{width:19px;color:var(--brand);flex:none}.insight-grid strong{font-size:13px;display:block}.insight-grid p{color:var(--muted);margin:4px 0 0;font-size:11px;line-height:1.45}@media (max-width:700px){.topbar{min-height:61px;padding-inline:14px}.brand small{display:none}.main-content{padding:20px 14px 96px}.hero-panel{border-radius:20px;padding:21px}.page-heading-action{align-items:stretch;display:grid}.page-heading-action .button{width:100%}.hero-icon{display:none}.metric-grid{grid-template-columns:repeat(3,1fr);gap:8px}.metric-card{border-radius:14px;padding:13px 11px}.metric-card span{font-size:9px}.metric-card strong{font-size:22px}.metric-card small{display:none}.job-card{padding:16px 42px 16px 15px}.job-meta{gap:7px;display:grid}.principles-grid{grid-template-columns:1fr}.job-hero{grid-template-columns:1fr;padding:20px}.price-panel{min-width:0}.detail-grid{grid-template-columns:1fr}.metric-grid.four{grid-template-columns:repeat(2,1fr)}.job-action-panel,.labour-action-panel,.customer-search-bar{display:grid}.job-action-panel .button{width:100%}.field-grid.two,.field-grid.three,.staff-time-card,.check-grid{grid-template-columns:1fr}.submit-bar{display:grid;bottom:70px}.submit-bar .button{width:100%}.analytics-list article{grid-template-columns:1fr repeat(3,1fr);gap:10px}.analytics-name{grid-column:1/-1}.analytics-list article>div:not(.analytics-name){text-align:left}.insight-grid{grid-template-columns:1fr}.device-entry-row{grid-template-columns:1fr 1.4fr 70px}.staff-assignment-row{grid-template-columns:1fr}.bottom-nav{display:grid}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
