*{box-sizing:border-box}body{color:#1f2937;background:#f4f7fb;margin:0;font-family:Inter,Segoe UI,Arial,sans-serif}.app{max-width:1100px;margin:0 auto;padding:1.25rem}.app-header h1{margin:0}.app-header p{color:#4b5563;margin-top:.35rem}.panel{background:#fff;border:1px solid #d6deeb;border-radius:10px;padding:1rem}.panel-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;display:flex}table{border-collapse:collapse;width:100%}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #e5e7eb;padding:.65rem}.actions{gap:.45rem;display:flex}button{color:#fff;cursor:pointer;background:#1d4ed8;border:1px solid #1d4ed8;border-radius:6px;padding:.4rem .65rem;font-size:.92rem}button.secondary{color:#111827;background:#f3f4f6;border-color:#d1d5db}button.danger{background:#b91c1c;border-color:#b91c1c}button:disabled{opacity:.6;cursor:not-allowed}.error{color:#7f1d1d;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;margin:.75rem 0;padding:.7rem}.survey-form{gap:1rem;display:grid}fieldset{border:1px solid #d1d5db;border-radius:8px;gap:.65rem;padding:.75rem;display:grid}legend{padding:0 .35rem;font-weight:700}label{gap:.3rem;font-size:.93rem;display:grid}.required{color:#dc2626;font-weight:700}label.checkbox{align-items:center;gap:.5rem;display:flex}input,select,textarea{width:100%;font:inherit;border:1px solid #cbd5e1;border-radius:6px;padding:.45rem}input[type=checkbox]{width:auto}h3{margin:.4rem 0 0}.photo-row{border:1px dashed #cbd5e1;border-radius:8px;grid-template-columns:140px 1fr;align-items:start;gap:.6rem;padding:.65rem;display:grid}.form-actions{justify-content:flex-end;display:flex}.photo-preview{object-fit:cover;border:1px solid #d1d5db;border-radius:6px;width:140px;height:100px}.muted{color:#6b7280;margin:.25rem 0;font-size:.88rem}.monitoring-table th,.monitoring-table td{vertical-align:middle}.monitoring-table td:nth-child(n+2),.monitoring-table th:nth-child(n+2){text-align:center;width:140px}.survey-view{gap:.9rem;display:grid}.survey-view-section{background:#f8fbff;border:1px solid #dbe2ee;border-radius:8px;padding:.75rem}.survey-view-section h3{margin-top:0}.survey-view-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem 1rem;display:grid}.survey-view-grid p{color:#334155;margin:.2rem 0 0}.survey-view-tier-table{border-collapse:collapse;width:100%}.survey-view-tier-table th,.survey-view-tier-table td{border:1px solid #d1d5db;padding:.45rem .55rem}.survey-view-tier-table th:nth-child(n+2),.survey-view-tier-table td:nth-child(n+2){text-align:center}@media (width<=900px){.actions{flex-direction:column}th,td{font-size:.9rem}.photo-row{grid-template-columns:1fr}.photo-preview{width:100%;height:auto;max-height:220px}.monitoring-table thead{display:none}.monitoring-table,.monitoring-table tbody,.monitoring-table tr,.monitoring-table td{width:100%;display:block}.monitoring-table tr{background:#f8fafc;border:1px solid #d1d5db;border-radius:8px;margin-bottom:.65rem}.monitoring-table td{white-space:normal;border-bottom:1px solid #e5e7eb;padding:.55rem .65rem}.monitoring-table td:last-child{border-bottom:0}.monitoring-table td:first-child{background:#eef2ff;border-radius:8px 8px 0 0;font-weight:700}.monitoring-table td:nth-child(n+2){text-align:left;justify-content:space-between;align-items:center;width:100%;display:flex}.monitoring-table td:nth-child(2):before{content:"Include tier";color:#334155;font-weight:600}.monitoring-table td:nth-child(3):before{content:"Customer dashboard";color:#334155;font-weight:600}.monitoring-table td:nth-child(4):before{content:"Installer dashboard";color:#334155;font-weight:600}.monitoring-table input[type=checkbox]{margin:0;transform:scale(1.18)}.survey-view-grid{grid-template-columns:1fr}.survey-view-tier-table{white-space:nowrap;display:block;overflow-x:auto}}@media print{.survey-view{font-size:.85rem}.survey-view-section h3{display:none}.survey-view-grid{display:block}.survey-view-grid>div{grid-template-columns:1fr 1fr;gap:.75rem;padding:.12rem 0;display:grid}.survey-view-grid>div p{margin:0}.survey-view-section{background:0 0;border:none;padding:.25rem 0}.print-hide{display:none!important}}
