:root{--brand:#176b5b;--brand-dark:#0d4d42;--bg:#f4f7f6;--ink:#17332e;--muted:#63736f;--danger:#b42318}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}a{color:var(--brand)}.topbar{background:#fff;border-bottom:1px solid #dce6e3;position:sticky;top:0;z-index:10}.nav{max-width:1180px;margin:auto;padding:.8rem 1rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.brand{font-weight:800;text-decoration:none;color:var(--ink);margin-right:auto}.nav a:not(.brand){text-decoration:none}.container{max-width:1180px;margin:2rem auto;padding:0 1rem}.card{background:#fff;border:1px solid #dce6e3;border-radius:16px;padding:1.25rem;box-shadow:0 5px 20px #153e3510;margin-bottom:1rem}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.metric{font-size:2rem;font-weight:800}.muted{color:var(--muted)}h1{font-size:clamp(1.6rem,4vw,2.35rem);margin:.25rem 0 1.2rem}h2{margin-top:.2rem}label{font-weight:650;display:block;margin:.7rem 0 .3rem}input,select,textarea{width:100%;padding:.75rem;border:1px solid #b9cbc6;border-radius:9px;font:inherit;background:#fff}input[type=checkbox],input[type=radio]{width:auto;margin-right:.4rem}textarea{min-height:110px}.btn{display:inline-block;border:0;border-radius:9px;background:var(--brand);color:#fff;padding:.7rem 1rem;text-decoration:none;font-weight:700;cursor:pointer}.btn:hover{background:var(--brand-dark)}.btn.secondary{background:#e8f1ef;color:var(--ink)}.btn.danger{background:var(--danger)}.actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}.alert{padding:.85rem 1rem;border-radius:10px;margin-bottom:1rem}.alert.success{background:#dcfae6;color:#05603a}.alert.error{background:#fee4e2;color:#912018}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.75rem;border-bottom:1px solid #e1e9e7;vertical-align:top}.badge{display:inline-block;padding:.2rem .55rem;border-radius:999px;background:#e5f4ef;color:#075a48;font-size:.85rem}.badge.draft{background:#fff3cc;color:#7a4d00}.question{padding:1rem 0;border-bottom:1px solid #e2ebe8}.required:after{content:' *';color:var(--danger)}.option{display:block;font-weight:400;padding:.35rem 0}.login{max-width:430px;margin:8vh auto}.mobile-list .card{display:block;text-decoration:none;color:inherit}.mobile-list .card:hover{border-color:var(--brand)}.photo-preview{max-width:160px;max-height:120px;border-radius:8px}.gps-status{padding:.6rem;background:#eef5f3;border-radius:8px}.hide{display:none}@media(max-width:700px){.container{margin:1rem auto}.nav{gap:.7rem}.desktop-only{display:none}.btn{min-height:46px}.mobile-list .card{padding:1.4rem}th,td{padding:.55rem}}
@media print{.topbar,.no-print,.actions{display:none!important}.container{max-width:none;margin:0}.card{border:0;box-shadow:none;padding:0}body{background:#fff}}
.editor-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-top:1.5rem}.field-editor{display:grid;gap:.8rem;margin:1rem 0}.field-card{display:grid;grid-template-columns:38px 1fr 38px;gap:.7rem;align-items:start;border:1px solid #c9d8d4;border-radius:12px;padding:.8rem;background:#fafdfe}.field-card.dragging{opacity:.45;border:2px dashed var(--brand)}.drag-handle{cursor:grab;font-size:1.35rem;color:var(--muted);padding:.5rem;text-align:center;user-select:none}.remove-field{border:0;background:#fee4e2;color:var(--danger);font-size:1.5rem;border-radius:8px;cursor:pointer;min-height:38px}.condition-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.condition-row label{display:grid;gap:.3rem;font-size:.88rem;font-weight:700}.condition-row select{margin:0}.field-main label{font-size:.9rem}@media(max-width:700px){.editor-heading{align-items:stretch;flex-direction:column}.field-card{grid-template-columns:30px 1fr 34px}.condition-row{grid-template-columns:1fr}}
.editor-tabs-summary{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin:1rem 0}.editor-tab-chip{display:inline-flex;align-items:center;gap:.35rem;background:#e8f1ef;border-radius:999px;padding:.3rem .65rem}.editor-tab-chip span{display:grid;place-items:center;width:1.35rem;height:1.35rem;border-radius:50%;background:var(--brand);color:#fff;font-size:.75rem}.inspection-tabs{display:flex;gap:.45rem;flex-wrap:wrap;padding:.4rem 0 .8rem;margin:1rem 0;border-bottom:1px solid #dce6e3}.inspection-tab{position:relative;flex:0 0 auto;border:1px solid #c9d8d4;border-radius:10px 10px 3px 3px;background:#eef5f3;color:var(--ink);padding:.75rem 1rem;font:inherit;font-weight:700;cursor:pointer}.inspection-tab:hover{border-color:var(--brand)}.inspection-tab.active{background:var(--brand);border-color:var(--brand);color:#fff}.tab-status{display:inline-block;width:.55rem;height:.55rem;border-radius:50%;margin-right:.45rem;background:#b8c5c1}.inspection-tab.started .tab-status{background:#f5a623}.inspection-tab.complete .tab-status{background:#20b26b}.inspection-tab.active .tab-status{outline:2px solid #ffffff99}.inspection-panel{display:none;animation:tab-in .16s ease-out}.inspection-panel.active{display:block}.section-heading{display:flex;align-items:start;justify-content:space-between;gap:1rem;padding:.4rem 0}.section-progress{white-space:nowrap;color:var(--muted);font-size:.9rem}.tab-navigation{display:flex;justify-content:space-between;gap:.75rem;margin:1.2rem 0}@keyframes tab-in{from{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:none}}@media(max-width:700px){.inspection-tabs{margin-left:-1.25rem;margin-right:-1.25rem;padding-left:1.25rem;padding-right:1.25rem}.inspection-tab{min-height:48px}.section-heading{display:block}.section-progress{display:block;margin-bottom:.5rem}.tab-navigation .btn{flex:1;padding:.65rem .45rem}}
:root{--brand:#b51f27;--brand-dark:#921820;--accent:#6f9f32;--bg:#f7f7f4;--ink:#2b2424;--muted:#6f6868}.brand{display:flex;align-items:center;min-width:132px}.brand img{display:block;width:132px;height:auto}.login-logo{text-align:center;padding:.4rem 0 1.1rem;border-bottom:1px solid #eee;margin-bottom:1.1rem}.login-logo img{display:inline-block;width:min(268px,85%);height:auto}.dashboard-heading{background:#fff;border:1px solid #eadbdd;border-left:5px solid var(--brand);border-radius:16px;padding:1rem 1.25rem;margin-bottom:1rem}.dashboard-heading img{width:210px;max-width:65%;height:auto}.dashboard-heading h1{margin:.55rem 0 0}.topbar{border-bottom:3px solid var(--brand)}.metric{color:var(--brand)}.inspection-tab.complete .tab-status{background:var(--accent)}@media(max-width:700px){.brand{min-width:92px}.brand img{width:92px}.login{margin:3vh auto}.dashboard-heading img{width:170px}.nav{gap:.55rem}.nav a:not(.brand){font-size:.92rem}}@media print{.dashboard-heading{border:0}.dashboard-heading img{width:170px}}
.smtp-config{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin:1rem 0}.smtp-config>div{background:#f7eeee;border-left:3px solid var(--brand);border-radius:7px;padding:.65rem}.smtp-log,.error-detail{white-space:pre-wrap;overflow-wrap:anywhere;background:#171717;color:#e8e8e8;border-radius:9px;padding:1rem;max-height:430px;overflow:auto;font:12px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace}.error-detail{max-height:160px;margin:.5rem 0 0}details summary{cursor:pointer;color:var(--brand);font-weight:650}
.gps-address{margin:.65rem 0;padding:.7rem .85rem;background:#f7eeee;border-left:4px solid #b51f27;border-radius:4px;font-weight:600}.gps-map{margin-top:.75rem;border:1px solid #d7ddda;border-radius:10px;overflow:hidden;background:#e9ecef}.gps-map canvas{display:block;width:100%;height:auto;aspect-ratio:16/9}.gps-map a,.map-links{display:block;padding:.35rem .6rem;background:#fff;text-align:right;font-size:.8rem}.report-map{margin-top:1.25rem;page-break-inside:avoid}.report-map img,.report-map iframe{display:block;width:100%;height:360px;object-fit:cover;border:1px solid #d7ddda;border-radius:10px}.report-meta{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}@media(max-width:700px){.report-map img,.report-map iframe{height:260px}}@media print{.report-map iframe{display:none}.map-links{display:none}}
.template-admin-nav{display:flex;gap:.5rem;margin:0 0 1rem;overflow-x:auto}.template-admin-nav button{border:1px solid #d8c8ca;background:#fff;color:var(--ink);padding:.75rem 1rem;border-radius:10px;font:inherit;font-weight:700;white-space:nowrap;cursor:pointer}.template-admin-nav button.active{background:var(--brand);border-color:var(--brand);color:#fff}.editor-screen{display:none}.editor-screen.active{display:block}.section-manager{display:grid;gap:.65rem;margin:1rem 0}.section-row{display:grid;grid-template-columns:42px minmax(180px,1fr) 90px auto auto auto;gap:.5rem;align-items:center;padding:.7rem;border:1px solid #dfd4d5;border-radius:10px;background:#faf8f8}.section-number{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--brand);color:#fff;font-weight:800}.section-row .btn{padding:.6rem}.field-preview-list{border:1px solid #e4d9da;border-radius:12px;padding:0 1rem;background:#fff}.preview-field{position:relative;padding-right:4rem}.edit-pencil{position:absolute;right:.2rem;top:.8rem;width:42px;height:42px;border:0;border-radius:50%;background:var(--brand);color:#fff;font-size:1.4rem;cursor:pointer}.preview-upload{display:grid;place-items:center;min-height:100px;border:2px dashed #cdbfc1;border-radius:10px;color:var(--brand);font-weight:700}.preview-upload small{color:var(--muted);font-weight:400}.empty-state{padding:2rem;text-align:center;color:var(--muted)}.field-dialog{width:min(760px,calc(100% - 2rem));max-height:90vh;border:0;border-radius:16px;padding:1.25rem;box-shadow:0 20px 70px #0005}.field-dialog::backdrop{background:#251b1bc0}.dialog-heading{display:flex;align-items:center;justify-content:space-between}.dialog-close{border:0;background:#eee;width:42px;height:42px;border-radius:50%;font-size:1.5rem;cursor:pointer}@media(max-width:700px){.section-row{grid-template-columns:38px 1fr auto auto}.section-row .muted{grid-column:2}.section-row [data-delete-section]{grid-column:2/5}.template-admin-nav{margin-left:-1rem;margin-right:-1rem;padding:0 1rem}.field-dialog{padding:1rem}}
.preview-field{padding-left:2.5rem}.preview-field.dragging{opacity:.45;border:2px dashed var(--brand)}.preview-drag{position:absolute;left:.25rem;top:1rem;color:var(--muted);font-size:1.25rem;cursor:grab;user-select:none}
.start-heading{margin-bottom:1rem}.back-link{display:inline-block;margin-bottom:.6rem}.location-picker fieldset{border:0;padding:0;margin:0}.location-picker legend{font-size:1.15rem;font-weight:800;margin-bottom:.8rem}.location-options{display:grid;gap:.7rem}.location-option{display:flex;align-items:flex-start;gap:.75rem;margin:0;padding:1rem;border:2px solid #ded4d5;border-radius:12px;background:#fff;cursor:pointer}.location-option:hover{border-color:var(--brand);background:#fffafa}.location-option:has(input:checked){border-color:var(--brand);background:#f9eeee;box-shadow:0 0 0 2px #b51f2720}.location-option input{width:1.25rem;height:1.25rem;margin:.15rem 0 0;flex:0 0 auto}.location-option span{display:grid;gap:.15rem}.location-option strong{font-size:1.05rem}.location-option small{color:var(--muted);font-weight:400}.location-picker>.actions{justify-content:center}@media(min-width:760px){.location-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
.control-question{padding:1rem;border:1px solid #e3d9da;border-radius:12px;margin:.75rem 0;background:#fff}.control-answer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:.55rem 0}.control-answer .option{margin:0;padding:.75rem;border:1px solid #ddd1d3;border-radius:9px;background:#faf8f8}.sub-label{font-size:.9rem;margin-top:.8rem}@media(max-width:480px){.control-answer{grid-template-columns:1fr 1fr}}
.location-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem;align-items:center;margin-bottom:.45rem}.location-search input{font-size:1.05rem;padding:.85rem}.location-count{margin:.25rem 0 .75rem}@media(max-width:520px){.location-search{grid-template-columns:1fr}.location-search .btn{width:100%}}
.field-capabilities-title{margin:1.25rem 0 .55rem;font-weight:800}.field-capabilities{display:grid;gap:.75rem}.field-capability{border:1px solid #dfd4d5;border-radius:12px;background:#faf8f8;overflow:hidden;transition:border-color .15s,box-shadow .15s}.field-capability:has(> .simple-switch input:checked){border-color:var(--brand);box-shadow:0 5px 16px #7b192012}.simple-switch{display:flex;align-items:flex-start;gap:.7rem;margin:0;padding:.9rem;cursor:pointer}.simple-switch input{width:1.25rem;height:1.25rem;margin:.15rem 0 0;flex:0 0 auto}.simple-switch span{display:grid;gap:.1rem}.simple-switch small{color:var(--muted);font-weight:400}.capability-settings{display:grid;gap:.6rem;padding:.9rem;border-top:1px solid #eadede;background:#fff}.capability-settings .simple-switch{margin-top:.2rem;padding:.75rem;border:1px solid #dfd4d5;border-radius:9px;background:#faf8f8}.capability-settings .simple-switch:has(input:checked){border-color:var(--brand);background:#f9eeee}.advanced-settings{margin-top:1rem;border-top:1px solid #e5dcdd;padding-top:.8rem}.advanced-settings summary{cursor:pointer;font-weight:700;color:var(--brand)}.field-dialog .dialog-heading p{margin:.15rem 0 .7rem}.field-dialog .dialog-heading h2{margin-bottom:0}
.analytics-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.analytics-overview-header{grid-column:1/-1;padding:.15rem .25rem 0}.analytics-overview-header h1{margin:0}.analytics-overview-header p{margin:.35rem 0 0}.analytics-card{display:flex;flex-direction:column;color:inherit;text-decoration:none;transition:transform .15s,border-color .15s}.analytics-card:hover{transform:translateY(-2px);border-color:var(--brand)}.analytics-card h2{color:var(--ink)}.analytics-card-meta{display:flex;gap:1rem;margin:auto 0 1rem}.analytics-card-meta span{padding:.45rem .7rem;background:#f7eeee;border-radius:8px}.analytics-open{color:var(--brand);font-weight:750;margin-top:.8rem}.answer-chart{display:flex;width:100%;height:28px;overflow:hidden;border-radius:999px;background:#e8e8e8}.answer-chart.large{height:44px}.answer-chart span{display:block;height:100%}.answer-chart .yes{background:#6f9f32}.answer-chart .no{background:#b51f27}.chart-legend{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:.55rem}.yes-text{color:#527c22}.no-text{color:#b51f27}.dashboard-filter{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;align-items:end}.dashboard-filter .actions{min-width:260px;margin:0;flex-wrap:nowrap;align-self:end}.dashboard-filter .actions .btn{flex:1}.dashboard-quick-periods{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #eadbdd}.analytics-metrics{margin-bottom:1rem}.period-comparison{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;margin-bottom:1rem}.period-comparison h2{margin:0}.period-comparison p{margin:.3rem 0 0}.period-comparison-values{display:flex;gap:.65rem;flex-wrap:wrap}.period-comparison-values>div{display:grid;gap:.15rem;min-width:145px;padding:.65rem .8rem;border-radius:10px;background:#f7eeee}.period-comparison-values strong{font-size:1.08rem}.period-comparison-delta.improved{background:#e8f5df;color:#3f7120}.period-comparison-delta.declined{background:#fff0f0;color:#b51f27}.period-comparison-delta.unchanged{background:#eef3f2}.question-analytics details{margin-top:1rem}.store-result{display:inline-flex;width:110px;height:9px;background:#eadfe0;border-radius:9px;overflow:hidden;margin-right:.5rem;vertical-align:middle}.store-result span{display:block;background:#6f9f32}.question-analytics summary{padding:.5rem 0}@media(max-width:700px){.analytics-overview{grid-template-columns:1fr}.dashboard-filter{grid-template-columns:1fr}.dashboard-filter .actions{min-width:0;flex-wrap:wrap}.dashboard-filter .actions .btn{flex:1 1 100%}.dashboard-quick-periods .btn{flex:1 1 calc(50% - .5rem)}.answer-chart.large{height:34px}.store-result{width:70px}.analytics-card-meta{flex-wrap:wrap}.period-comparison{display:block}.period-comparison-values{margin-top:1rem}.period-comparison-values>div{flex:1 1 100%}}
.dashboard-primary-actions{margin:0 0 1rem}.dashboard-primary-actions .btn{min-width:180px;text-align:center}@media(max-width:700px){.dashboard-primary-actions .btn{width:100%}}
.dashboard-launch{display:flex;align-items:center;justify-content:space-between;gap:1rem}.dashboard-launch h2{margin:0}.dashboard-launch p{margin:.25rem 0 0}.dashboard-launch .dashboard-primary-actions{margin:0;justify-content:flex-end}@media(max-width:700px){.dashboard-launch{align-items:stretch;flex-direction:column}.dashboard-launch .dashboard-primary-actions{justify-content:stretch}}
.error-page{max-width:620px;margin:8vh auto;text-align:center;padding:2.5rem 1.5rem}.error-logo{display:block;width:180px;max-width:70%;height:auto;margin:0 auto 1rem}.error-code{font-size:clamp(4.5rem,18vw,8rem);font-weight:900;line-height:.9;color:var(--brand);letter-spacing:-.08em;margin:.7rem 0 1rem}.error-page h1{margin-bottom:.55rem}.error-page p{max-width:390px;margin:0 auto}.error-actions{justify-content:center;margin-top:1.5rem}
.dashboard-filter{grid-template-columns:140px 140px minmax(220px,1fr) minmax(220px,1fr) minmax(260px,auto)}.dashboard-filter .actions{justify-content:flex-end}@media(max-width:1100px){.dashboard-filter{grid-template-columns:repeat(2,minmax(200px,1fr))}.dashboard-filter .actions{justify-content:flex-start}}@media(max-width:700px){.dashboard-filter{grid-template-columns:1fr}}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem 1rem;font:inherit;font-size:.95rem;font-weight:700;line-height:1.2;text-align:center;white-space:nowrap;vertical-align:middle;appearance:none}.btn.compact{min-height:38px;padding:.5rem .75rem}.actions{align-items:center}.actions>form{display:flex;margin:0}.filter-actions{align-self:end;margin:0}.table-actions{display:flex;align-items:center;justify-content:flex-end;gap:.4rem;flex-wrap:wrap;min-width:150px}.table-actions form{display:flex;margin:0}table:has(.table-actions) th:last-child,td:has(.table-actions){text-align:right}.admin-management-grid{grid-template-columns:minmax(300px,.7fr) minmax(620px,1.5fr)}.install-help{display:none;margin-top:1.35rem;border:1px solid #dfd4d5;border-radius:11px;background:#faf8f8}.install-help summary{padding:.85rem 1rem;color:var(--brand);font-weight:750;cursor:pointer}.install-help-content{padding:0 1rem .8rem;font-size:.92rem}.install-help-content p{margin:.55rem 0}.login-actions{justify-content:center}.completion-actions{justify-content:flex-end}@media(max-width:980px){.admin-management-grid{grid-template-columns:1fr}}@media(max-width:700px){.btn.compact{min-height:42px}.table-actions{min-width:132px}.completion-actions{justify-content:center}.completion-actions .btn{min-width:min(100%,260px)}.install-help{display:block}.login-actions .btn{width:100%}}
.photo-capture{margin:.45rem 0 1rem}.photo-input{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.photo-trigger{margin-bottom:.45rem}.photo-trigger:disabled{opacity:.55;cursor:not-allowed}.photo-previews{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.65rem;margin-top:.7rem}.photo-preview-item{position:relative;border:1px solid #ded4d5;border-radius:10px;overflow:hidden;background:#faf8f8}.photo-preview-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.photo-preview-meta{display:flex;align-items:center;justify-content:space-between;gap:.35rem;padding:.45rem}.photo-preview-meta span{font-size:.85rem;font-weight:700}.photo-remove{border:0;border-radius:7px;background:#fee4e2;color:var(--danger);padding:.4rem .55rem;font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}@media(max-width:480px){.photo-trigger{width:100%}.photo-previews{grid-template-columns:repeat(2,minmax(0,1fr))}}
.answer-options-editor{display:grid;gap:.55rem;margin:.1rem 0}.answer-option-block{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:.5rem;padding:.55rem;border:1px solid #dfd4d5;border-radius:10px;background:#faf8f8}.answer-option-number{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--brand);color:#fff;font-size:.85rem;font-weight:800}.answer-option-block input{margin:0}.answer-option-actions{display:flex;gap:.35rem}.answer-option-actions .btn{min-width:38px;padding:.45rem}@media(max-width:620px){.answer-option-block{grid-template-columns:34px minmax(0,1fr)}.answer-option-actions{grid-column:2;flex-wrap:wrap}.answer-option-actions .btn{min-width:auto}}
.submit-overlay{position:fixed;inset:0;z-index:100;background:rgba(35,30,30,.58);display:grid;place-items:center;padding:1rem}.submit-overlay[hidden]{display:none!important}.submit-progress{display:grid;justify-items:center;gap:.8rem;max-width:340px;padding:1.6rem;text-align:center;color:var(--ink);background:#fff;border-radius:16px;box-shadow:0 18px 55px #0005}.submit-progress span:last-child{color:var(--muted);font-size:.92rem}.spinner{width:42px;height:42px;border:5px solid #eadbdd;border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.dependent-field{margin-left:1.25rem;padding-left:1rem!important;border-left:4px solid var(--brand);background:#fff8f8}.dependent-field .preview-drag{cursor:not-allowed;opacity:.5}.dependent-link{margin:0 2.5rem .55rem 0;color:var(--brand);font-size:.84rem;font-weight:700;line-height:1.35}@media(max-width:620px){.dependent-field{margin-left:.55rem;padding-left:.7rem!important}.dependent-link{margin-right:2rem}}
[hidden]{display:none!important}
.definition-email-switch{margin:.8rem 0;padding:.85rem;border:1px solid #dfd4d5;border-radius:10px;background:#faf8f8}.definition-email-switch:has(input:checked){border-color:var(--brand);background:#f9eeee}
.rating-control{display:flex;flex-wrap:wrap;gap:.55rem;margin:.75rem 0}.rating-choice{display:grid;place-items:center;gap:.05rem;min-width:52px;margin:0;padding:.5rem;border:1px solid #d8c8ca;border-radius:10px;background:#fff;cursor:pointer}.rating-choice:has(input:checked){border-color:var(--brand);background:#fff1f2;box-shadow:0 0 0 2px #b51f2720}.rating-choice input{position:absolute;opacity:0;pointer-events:none}.rating-choice span{font-size:1.5rem;line-height:1;color:#e7a517}.rating-smileys .rating-choice span{filter:saturate(1.1)}.rating-choice small{font-weight:800;color:var(--ink)}.rating-hint{margin:-.25rem 0 .7rem;font-size:.88rem}.report-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.25rem 0 1.2rem}.report-heading h1{margin:0}.report-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.report-heading-actions form{margin:0}.delivery-status{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;font-size:26px;font-weight:800;box-shadow:0 3px 12px #153e3518}.delivery-status.sent{background:#dcfae6;color:#087443;border:1px solid #a8e8bd}.delivery-status.failed{background:#fee4e2;color:#b42318;border:1px solid #f3b4af}.report-photos{display:grid;grid-template-columns:repeat(2,minmax(0,160px));gap:10px;margin-top:10px}.report-photo{display:block;overflow:hidden;aspect-ratio:1/1;padding:0;border:1px solid #d9e4e1;border-radius:11px;background:linear-gradient(115deg,#f5f7f6 20%,#e7efed 42%,#f5f7f6 64%);background-size:220% 100%;animation:report-photo-loading 1.4s ease-in-out infinite;box-shadow:0 2px 7px #153e3512;cursor:pointer}.report-photo img{display:block;width:100%;height:100%;object-fit:cover;opacity:0;filter:blur(16px);transform:scale(1.06);transition:opacity .45s ease,filter .7s ease,transform .7s ease}.report-photo img.is-loaded{opacity:1;filter:blur(0);transform:scale(1)}.report-photo:has(img.is-loaded){animation:none;background:#eef3f2}.report-photo:hover img.is-loaded{transform:scale(1.04)}@keyframes report-photo-loading{0%{background-position:100% 0}100%{background-position:-120% 0}}@media(prefers-reduced-motion:reduce){.report-photo{animation:none}.report-photo img{transition:none}}@media(max-width:700px){.report-heading{align-items:flex-start;flex-direction:column}.report-heading-actions{width:100%;justify-content:flex-start}.report-photos{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}}@media(hover:none) and (pointer:coarse){.install-help{display:block}}
.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.completion-requirements{margin:.45rem 0 0;text-align:center}.completion-requirements[hidden]{display:none!important}
.history-mobile-list{display:none}@media(max-width:700px){.history-table{display:none}.history-mobile-list{display:grid;gap:.7rem}.history-mobile-item{padding:1rem;border:1px solid #dce6e3;border-radius:12px;background:#fbfdfc}.history-mobile-item h2{margin:0 0 .75rem;font-size:1.05rem;line-height:1.35}.history-mobile-item dl{display:grid;grid-template-columns:1fr;gap:.55rem;margin:0 0 1rem}.history-mobile-item dl div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:.6rem;align-items:baseline}.history-mobile-item dt{color:var(--muted);font-size:.86rem;font-weight:700}.history-mobile-item dd{margin:0;overflow-wrap:anywhere}.history-mobile-item .btn{width:100%}}
.photo-preview-meta{justify-content:center}.photo-remove{min-width:108px}.delivery-status.pending{background:#fff3cf;color:#986801;border:1px solid #f2d98b}.report-lightbox{width:min(1100px,calc(100vw - 2rem));height:min(90vh,900px);margin:auto;padding:0;border:0;border-radius:14px;background:#161313;box-shadow:0 25px 80px #000b}.report-lightbox::backdrop{background:#120d0ddd}.report-lightbox img{display:block;width:100%;height:100%;object-fit:contain}.report-lightbox-close{position:absolute;top:.7rem;right:.7rem;z-index:1;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#242020;font-size:30px;line-height:1;cursor:pointer;box-shadow:0 2px 10px #0006}.nav-main,.nav-account{display:flex;align-items:center;gap:.75rem}.nav-main{margin-left:auto;flex-wrap:wrap}.nav-account a{font-weight:700;text-decoration:none;white-space:nowrap}.nav-account form{margin:0}@media(max-width:700px){.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.dashboard-stats .card{padding:1rem;margin-bottom:0}.dashboard-stats .muted{font-size:.86rem;line-height:1.25}.dashboard-stats .metric{font-size:1.8rem}.nav{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;padding:.65rem 1rem}.nav .brand{grid-column:1;grid-row:1}.nav-account{grid-column:2;grid-row:1;gap:.45rem;min-width:0}.nav-account a{max-width:none;font-size:.82rem}.nav-account-label{display:none}.nav-account .btn{min-height:40px;padding:.55rem .7rem;font-size:.84rem}.nav-main{grid-column:1/-1;grid-row:2;display:flex;justify-content:space-between;gap:.55rem;margin:0;padding-top:.55rem;border-top:1px solid #eadbdd;overflow-x:auto;flex-wrap:nowrap}.nav-main a{flex:0 0 auto;font-size:.88rem;white-space:nowrap}}@media(max-width:360px){.brand{min-width:72px}.brand img{width:72px}.nav{padding-left:.7rem;padding-right:.7rem}.nav-account{gap:.3rem}.nav-account a{font-size:.76rem}.nav-account .btn{padding:.5rem .55rem}}
.noticeboard-home{display:grid;gap:.7rem;margin:0 0 1rem}.noticeboard-home-item{position:relative;padding:1rem 1.15rem 1rem 1.35rem;border:1px solid #e9c8cb;border-left:5px solid var(--brand);border-radius:14px;background:#fff7f7;box-shadow:0 4px 16px #82151a0b}.noticeboard-home-item h2{margin:0 0 .25rem;font-size:1.1rem;color:var(--brand)}.noticeboard-home-item p{margin:.2rem 0}.noticeboard-home-item small{color:var(--muted);font-weight:650}.noticeboard-list{display:grid;gap:.75rem}.noticeboard-item{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid #eadedf}.noticeboard-item:last-child{border-bottom:0}.noticeboard-item h3{margin:0 0 .25rem}.noticeboard-item p{margin:.25rem 0 .55rem;white-space:normal}.noticeboard-actions{display:flex;align-items:flex-end;flex-direction:column;gap:.45rem;min-width:max-content}.noticeboard-actions form{margin:0}.noticeboard-dates .muted{margin:.3rem 0 0;font-size:.85rem}.noticeboard-public-item h2{color:var(--brand)}@media(max-width:700px){.noticeboard-home-item{padding:.9rem 1rem}.noticeboard-item{display:block}.noticeboard-actions{align-items:stretch;flex-direction:row;flex-wrap:wrap;margin-top:.85rem}.noticeboard-actions .badge{align-self:center}.noticeboard-actions .btn{flex:1;text-align:center}.noticeboard-management{grid-template-columns:1fr}}
@media(max-width:700px){.nav-main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;overflow:visible;flex-wrap:wrap;padding:.5rem;margin:0 -.25rem;border:1px solid #eadbdd;border-radius:12px;background:#faf6f6}.nav-main a{display:flex;align-items:center;justify-content:center;min-height:42px;padding:.5rem .55rem;border:1px solid #eadbdd;border-radius:8px;background:#fff;color:var(--brand);font-size:.86rem;text-align:center;white-space:normal;line-height:1.15;box-shadow:0 1px 3px #4b1c1c0a}.nav-main a:active{background:#f8e7e8;border-color:#d9a5aa}.nav-main a:last-child:nth-child(odd){grid-column:1/-1}}
.noticeboard-item{border:1px solid #e5eeee;border-radius:12px;padding:1rem;background:#fff}.noticeboard-item.is-scheduled{border-color:#cdd8f1;background:#f1f5ff}.noticeboard-item.is-expired{border-color:#d9d9d9;background:#f2f2f2;color:#777}.noticeboard-item.is-expired h3{color:#656565}.noticeboard-item.is-expired .muted{color:#858585}.badge.scheduled{background:#dfe9ff;color:#284b88}.badge.expired{background:#e2e2e2;color:#656565}
.noticeboard-item{display:block}.noticeboard-item>div:first-child{min-width:0}.noticeboard-actions{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:.5rem;min-width:0;margin-top:.85rem}.noticeboard-actions .badge{white-space:nowrap}.noticeboard-actions .btn{min-width:104px;text-align:center}.noticeboard-actions form{display:block}.noticeboard-actions form .btn{width:100%}@media(max-width:420px){.noticeboard-actions{display:grid;grid-template-columns:1fr 1fr}.noticeboard-actions .badge{justify-self:start;align-self:center}.noticeboard-actions .btn{min-width:0;width:100%}.noticeboard-actions form{grid-column:1/-1}.noticeboard-actions form .btn{max-width:150px}}
.noticeboard-actions{justify-content:flex-end}@media(max-width:420px){.noticeboard-actions{display:flex;flex-wrap:wrap;justify-content:flex-end}.noticeboard-actions .badge{justify-self:auto}.noticeboard-actions form{grid-column:auto}.noticeboard-actions form .btn{max-width:none}}
.noticeboard-meta{display:block;line-height:1.45}.noticeboard-state{font-weight:800}.noticeboard-state.active{color:#087443}.noticeboard-state.scheduled{color:#284b88}.noticeboard-state.expired{color:#656565}
.noticeboard-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.8rem}.noticeboard-footer .noticeboard-actions{flex:0 0 auto;margin:0;flex-wrap:nowrap}.noticeboard-footer .noticeboard-actions .btn{min-width:0}@media(max-width:620px){.noticeboard-footer{align-items:flex-start;flex-direction:column}.noticeboard-footer .noticeboard-actions{align-self:flex-end;flex-wrap:wrap}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.noticeboard-mail-actions{display:flex;align-items:center;gap:.38rem}.noticeboard-send-form{margin:0}.notice-mail-button,.notice-mail-status{display:inline-flex;align-items:center;justify-content:center;gap:.34rem;min-height:36px;padding:.42rem .58rem;border:1px solid #c9ded9;border-radius:9px;background:#eef6f4;color:#1e5548;font:700 .8rem/1 inherit;white-space:nowrap}.notice-mail-button{cursor:pointer}.notice-mail-button:hover{border-color:#9fc5bb;background:#e2f0ec}.notice-mail-button span:first-child,.notice-mail-status span:first-child{font-size:1.18rem;line-height:1}.notice-mail-status{width:38px;padding:.35rem;border-radius:50%;cursor:help}.notice-mail-status.sent{background:#e1f7e9;border-color:#a4dfb8;color:#167445}.notice-mail-status.failed{background:#fff0f0;border-color:#e7a7aa;color:#bd2028}.notice-mail-status.sending{background:#fff6dd;border-color:#efd28c;color:#8d6200}@media(max-width:700px){.noticeboard-footer .noticeboard-actions{align-self:stretch;justify-content:flex-end}.noticeboard-mail-actions{margin-right:auto}.notice-mail-button{min-height:40px}.notice-mail-status{width:40px;height:40px}}

/* Akce v administrativních tabulkách jsou na počítači vždy v jednom přehledném řádku. */
@media(min-width:701px){.table-actions{flex-wrap:nowrap;min-width:max-content;white-space:nowrap}.table-actions .btn{flex:0 0 auto}}
@media(max-width:700px){.nav-account a{color:var(--ink)}.nav-main{border-color:#dfe7e5;background:#fff;box-shadow:0 2px 8px #17332e08}.nav-main a{border-color:#e5ecea;background:#fff;color:var(--ink);box-shadow:none}.nav-main a:active{background:#eef4f2;border-color:#c8d8d3}}
@media(max-width:700px){.nav-main{display:flex;align-items:stretch;justify-content:space-around;gap:0;margin:0;padding:.2rem 0 0;border:0;border-top:1px solid #eadbdd;border-radius:0;background:transparent;box-shadow:none;overflow:visible;flex-wrap:wrap}.nav-main a{display:flex;flex:1 1 50%;align-items:center;justify-content:center;min-height:38px;padding:.45rem .3rem;border:0;border-radius:0;background:transparent;color:var(--brand);font-size:.87rem;font-weight:650;text-align:center;white-space:nowrap;box-shadow:none}.nav-main a:active{background:#f8eeee;color:var(--brand-dark)}}
.supervisor-select{margin:1rem 0 0;padding:.85rem;border:1px solid #dfd4d5;border-radius:12px;background:#faf8f8}.supervisor-select legend{padding:0 .35rem;font-weight:800}.supervisor-select .simple-switch{margin:.45rem 0;padding:.7rem;border:1px solid #e6dddd;border-radius:9px;background:#fff}.supervisor-select .simple-switch:has(input:checked){border-color:var(--brand);background:#fff6f6}
.admin-management-grid{grid-template-columns:1fr}
.admin-management-grid>.card{min-width:0}.admin-management-grid .table-wrap{max-width:100%}
.helpdesk-link{display:inline-grid!important;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--brand)!important;line-height:1;text-decoration:none;transition:transform .15s,filter .15s}.helpdesk-link img{display:block;width:38px;height:38px;object-fit:contain}.helpdesk-link:hover{filter:drop-shadow(0 3px 4px #82151a35);transform:translateY(-1px) rotate(8deg)}.helpdesk-link:focus-visible{outline:3px solid #b51f2740;outline-offset:2px}.helpdesk-card{max-width:760px}.helpdesk-card textarea{min-height:170px;resize:vertical}.helpdesk-card input[type=file]{padding:.8rem;background:#fafcfc}.helpdesk-file-hidden,.helpdesk-file-selected{display:none!important}.helpdesk-add-photo{margin-top:.65rem}.helpdesk-photo-previews{display:grid;grid-template-columns:repeat(3,minmax(0,120px));gap:.65rem;margin:.75rem 0}.helpdesk-photo-preview{position:relative;aspect-ratio:1;margin:0;overflow:hidden;border:1px solid #dce6e3;border-radius:10px;background:#eef3f2}.helpdesk-photo-preview img{display:block;width:100%;height:100%;object-fit:cover}.helpdesk-photo-preview.unavailable{display:grid;place-items:center;padding:.5rem;color:var(--muted);font-size:.78rem;text-align:center}.helpdesk-photo-remove{position:absolute;right:.4rem;bottom:.4rem;min-height:32px;padding:.35rem .55rem;border:0;border-radius:7px;background:#fff;color:var(--danger);font:inherit;font-size:.76rem;font-weight:800;box-shadow:0 1px 5px #0003}.helpdesk-actions{justify-content:flex-start}.helpdesk-actions .btn{min-width:190px}@media(max-width:700px){.helpdesk-photo-previews{grid-template-columns:repeat(2,minmax(0,1fr))}.helpdesk-actions{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.helpdesk-actions .btn{width:100%;min-width:0;padding-left:.55rem;padding-right:.55rem;font-size:.9rem}}
.admin-table-search{margin:.75rem 0 1rem}.admin-table-search label{margin-top:0}.admin-table-search input{max-width:560px}.admin-table-search-empty{margin:.8rem 0 0}
.login-password-help{text-align:center;margin:1rem 0 0}.login-password-help a{font-weight:700;text-decoration:none}
.photo-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.camera-capture-dialog{width:min(100vw - 2rem,620px);padding:0;border:0;border-radius:16px;background:#fff;box-shadow:0 20px 70px #0008}.camera-capture-dialog::backdrop{background:#1d1717cc}.camera-capture{padding:1rem}.camera-capture h2{margin:.1rem 0 .75rem}.camera-video-wrap{position:relative;min-height:220px;border-radius:12px;overflow:hidden;background:#eef3f2}.camera-capture video{display:block;width:100%;max-height:70vh;object-fit:cover;border-radius:12px;background:#eef3f2}.camera-loading{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:.75rem;background:#eef3f2;color:var(--ink);font-weight:750}.camera-loading[hidden]{display:none}.camera-loading .spinner{width:34px;height:34px;border-width:4px}.camera-capture .actions{justify-content:center}
.photo-required-alert{display:block;margin-top:.55rem;padding:.7rem .85rem;border:1px solid #e79b96;border-radius:8px;background:#fff0ef;color:#b42318!important;font-size:.96rem;font-weight:850;line-height:1.45}
.history-export-actions{float:right;margin:0}.history-filter-form{align-items:end}.history-filter-form>div{min-width:0}@media(max-width:700px){.history-export-actions{float:none;display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:0 0 1rem}.history-export-actions .btn{width:100%;padding-inline:.55rem}.history-filter-form{grid-template-columns:1fr;gap:.85rem}.history-filter-form>div{grid-column:1/-1}.history-filter-form .filter-actions{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.history-filter-form .filter-actions .btn{width:100%}}@media(max-width:390px){.history-export-actions{grid-template-columns:1fr}}
.location-gps-help{display:block;margin:.7rem 0;color:var(--muted);line-height:1.4}
@media(max-width:700px){.history-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.history-filter-form>div:nth-child(-n+2){grid-column:auto}.history-filter-form input[type=date]{min-width:0;min-height:44px;padding:.45rem .5rem;font-size:.86rem;letter-spacing:-.02em}}
.report-lightbox-nav{position:absolute;top:50%;z-index:1;display:grid;place-items:center;width:48px;height:58px;border:0;border-radius:12px;background:#ffffffe8;color:#242020;font-size:42px;line-height:1;cursor:pointer;transform:translateY(-50%);box-shadow:0 2px 12px #0006}.report-lightbox-nav.previous{left:.7rem}.report-lightbox-nav.next{right:.7rem}.report-lightbox-nav[hidden]{display:none}@media(max-width:700px){.report-lightbox-nav{width:44px;height:54px;font-size:38px}.report-lightbox-nav.previous{left:.45rem}.report-lightbox-nav.next{right:.45rem}}
.rating-control{justify-content:center;align-items:stretch}.rating-choice{justify-items:center;text-align:center}.rating-hint{text-align:center}.report-lightbox-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:1rem;background:#120d0ddd}.report-lightbox-overlay[hidden]{display:none!important}.report-lightbox-overlay .report-lightbox{position:relative;display:block;width:min(1100px,calc(100vw - 2rem));height:min(90vh,900px);margin:0;padding:0;border:0;border-radius:14px;background:#161313;box-shadow:0 25px 80px #000b}.report-lightbox-overlay .report-lightbox img{display:block;width:100%;height:100%;object-fit:contain}.report-lightbox-overlay .report-lightbox-nav,.report-lightbox-overlay .report-lightbox-close{z-index:3}
.report-css-lightbox{display:none;position:fixed;inset:0;z-index:1100;align-items:center;justify-content:center;padding:1rem}.report-css-lightbox:target{display:flex}.report-css-lightbox-backdrop{position:absolute;inset:0;background:#120d0ddd}.report-css-lightbox-content{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:min(1100px,calc(100vw - 2rem));height:min(90vh,900px)}.report-css-lightbox-image{display:flex;width:100%;height:100%;align-items:center;justify-content:center}.report-css-lightbox-image img{display:block;max-width:100%;max-height:100%;object-fit:contain;border-radius:12px;box-shadow:0 25px 80px #000b}.report-css-lightbox-nav,.report-css-lightbox-close{position:absolute;z-index:2;display:grid;place-items:center;text-decoration:none;background:#ffffffe8;color:#242020;box-shadow:0 2px 12px #0006}.report-css-lightbox-nav{top:50%;width:48px;height:58px;border-radius:12px;font-size:42px;line-height:1;transform:translateY(-50%)}.report-css-lightbox-nav.previous{left:.7rem}.report-css-lightbox-nav.next{right:.7rem}.report-css-lightbox-close{top:.7rem;right:.7rem;width:42px;height:42px;border-radius:50%;font-size:30px;line-height:1}@media(max-width:700px){.report-css-lightbox-nav{width:44px;height:54px;font-size:38px}.report-css-lightbox-nav.previous{left:.45rem}.report-css-lightbox-nav.next{right:.45rem}}
.inspection-offline-status{margin:.75rem 0;padding:.7rem .85rem;border:1px solid #d9e4e1;border-radius:9px;background:#eef4f2;color:var(--ink);font-weight:700}.inspection-offline-status[hidden]{display:none}.inspection-offline-status.offline{border-color:#f0c36d;background:#fff8e8;color:#7a5200}.inspection-offline-status.syncing{display:flex;align-items:center;gap:.75rem;border-color:#b7d8d1;background:#edf8f5;color:var(--brand-dark)}.inspection-offline-status.syncing::before{content:'';flex:0 0 auto;width:26px;height:26px;border:4px solid #c9e0db;border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}.inspection-offline-status.ready{border-color:#a8d7bc;background:#ecfaef;color:#176b38}body.inspection-syncing .inspection-offline-status.offline,body.inspection-has-network .inspection-offline-status.offline{display:none!important}
