:root{font-family:Segoe UI,Arial,sans-serif;color:#182b40;background:#f1f4f7;line-height:1.5}*{box-sizing:border-box}body{margin:0}header{background:#173653;color:white;padding:22px 4%;display:flex;justify-content:space-between;align-items:center;border-bottom:5px solid #35a3b8}header strong{font-size:27px;letter-spacing:4px}header span{display:block;color:#d2e2ef;font-size:14px}.account{display:flex;gap:20px;align-items:center}nav{background:white;display:flex;gap:24px;padding:14px 4%;flex-wrap:wrap;border-bottom:1px solid #d9e1e7}a{color:#155873;text-decoration:none}a:hover{text-decoration:underline}main{max-width:1440px;margin:auto;padding:32px 4% 60px}h1{font-size:32px;line-height:1.2;margin:8px 0 16px}h2{font-size:21px}.eyebrow{font-size:12px;letter-spacing:2px;color:#437387;font-weight:700}.cards{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin:28px 0}.cards a{background:white;padding:20px;border:1px solid #dce4e9;border-radius:9px}.cards b{display:block;font-size:30px;color:#173653}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.button,button{background:#185f79;color:white;border:1px solid #185f79;padding:10px 15px;border-radius:5px;font:inherit;cursor:pointer;display:inline-block}.secondary{background:white;color:#185f79}.filters{display:flex;align-items:end;gap:15px;background:white;padding:18px;border-radius:8px;margin-bottom:20px;flex-wrap:wrap}label{display:block;font-weight:600;font-size:14px}input,select,textarea{display:block;font:inherit;width:100%;border:1px solid #aebec9;border-radius:4px;padding:10px;background:white;color:#182b40}input[type=checkbox]{width:auto;display:inline-block}textarea{min-height:100px}input:focus,select:focus,textarea:focus,a:focus,button:focus{outline:3px solid #e3a835;outline-offset:2px}.table-wrap{overflow-x:auto;margin-top:22px;background:white;border:1px solid #dce4e9;border-radius:7px}table{border-collapse:collapse;width:100%;min-width:650px;text-align:left}th{background:#e5edf2;padding:14px}td{padding:16px 14px;border-bottom:1px solid #e2e8ed;vertical-align:top}small{display:block;color:#5e6f7d;font-size:12px}.badge{border-radius:4px;padding:4px 8px;background:#e0eee5;display:inline-block;font-size:13px}.red{background:#ffe1e1;color:#8c2222}.yellow{background:#fff0c9;color:#725500}.pagination{display:flex;justify-content:space-between;margin-top:20px}.editor{max-width:760px;background:white;padding:28px;border-radius:8px}.editor form p{margin:18px 0}.helptext{font-size:12px;color:#52636c;display:block}.errorlist{color:#9c2020}.notice{padding:15px;background:#fff0cf;border-left:4px solid #d6a030}.login{max-width:500px;margin:50px auto;background:white;padding:32px;border-radius:9px}.panel{background:white;padding:24px;margin:22px 0;border:1px solid #dce4e9;border-radius:7px}dl{display:grid;grid-template-columns:270px 1fr}dt,dd{padding:9px;border-bottom:1px solid #e8edf1;margin:0;overflow-wrap:anywhere}dt{font-weight:600}.detail-heading{display:flex;justify-content:space-between;align-items:center}.qr{width:130px;height:130px;background:white}.event{border-top:1px solid #dce4e9;padding:15px 0}.event h3{margin:5px 0}.event form{margin:10px 0}footer{text-align:center;padding:20px;color:#5e6f7d;font-size:12px}@media(max-width:800px){.cards{grid-template-columns:repeat(2,1fr)}header{align-items:start;gap:15px}.account{display:block}h1{font-size:26px}dl{grid-template-columns:1fr}dd{padding-top:0}nav{gap:14px}}@media print{@page{size:A4;margin:15mm}header{background:white;color:black;border-bottom:2px solid #222;padding:0 0 12px}header span{color:#333}nav,.actions,.filters,.account,.pagination,button,footer{display:none!important}body{background:white}main{padding:15px 0}.cards{margin:15px 0}.cards a{padding:10px}.panel{break-inside:avoid;border:1px solid #ccc}.table-wrap{overflow:visible}table{min-width:0;font-size:10px}td,th{padding:7px}.event{break-inside:avoid}a{color:black}.qr{width:105px;height:105px}}

.calendar-nav{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:20px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.weekday{text-align:center;font-weight:700;padding:10px}.calendar-day{min-height:100px;background:#f4f7fa;border:2px solid transparent;border-radius:5px;padding:10px;display:flex;flex-direction:column;justify-content:space-between;color:#243d52}.calendar-day b{font-size:13px}.calendar-day:hover{border-color:#185f79;text-decoration:none}.other-month{color:#9caab6;background:#fafbfc}.has-appointments{background:#dceef8;color:#154b6d}.is-overdue{background:#ffe4e4;color:#8c2222}.is-today{border-color:#173653}.is-selected{outline:3px solid #d69e21;outline-offset:-4px}.calendar-legend{font-size:12px;color:#52636c}@media(max-width:650px){.calendar-day{min-height:75px;padding:5px;font-size:13px}.calendar-label{display:none}.calendar-grid{gap:2px}.calendar-nav h2{font-size:20px}.panel:has(.calendar-grid){padding:10px}.calendar-day small{font-size:10px}.calendar-day b{font-size:13px}}@media print{.calendar-nav a{display:none}.calendar-day{min-height:65px;print-color-adjust:exact}.calendar-grid{break-inside:avoid}}

.compact-hose-page header{padding:10px 4%}.compact-hose-page header strong{font-size:22px}.compact-hose-page nav{padding:8px 4%}.compact-hose-page main{padding:16px 3%}.compact-hose-page footer{padding:8px}.hose-editor{background:white;border:1px solid #dce4e9;border-radius:8px;padding:18px}.hose-editor-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.hose-editor-heading h1{font-size:25px;margin:0}.hose-form-columns{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}.hose-form-columns fieldset{min-width:0;border:1px solid #d4dfe6;border-radius:6px;padding:12px}.hose-form-columns legend{font-size:14px;font-weight:700;color:#185f79;padding:0 6px}.compact-field{margin-bottom:9px}.compact-field label{font-size:12px;margin-bottom:3px;line-height:1.3}.compact-field input,.compact-field select,.compact-field textarea{font-size:14px;padding:7px 9px;min-height:34px}.technical-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.wide-field{grid-column:1/-1}.checkbox-field{display:flex;align-items:center;gap:12px}.checkbox-field label{margin:0}.checkbox-field input{min-height:0;width:18px;height:18px}.hose-form-bottom{display:flex;gap:20px;align-items:end;margin-top:12px}.notes-field{flex:1;margin:0}.notes-field textarea{min-height:52px;height:52px;resize:vertical}.hose-form-bottom button{min-width:150px}.compact-field .errorlist{font-size:12px;margin:3px 0;padding-left:18px}@media(max-width:900px){.hose-form-columns{grid-template-columns:1fr 1fr}.hose-form-columns fieldset:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 12px}}@media(max-width:600px){.hose-form-columns{grid-template-columns:1fr}.hose-form-columns fieldset:last-child{display:block}.hose-form-bottom{display:block}.hose-form-bottom button{margin-top:15px;width:100%}.hose-editor{padding:12px}.hose-editor-heading h1{font-size:22px}}
.compact-hose-page footer{padding:4px}.compact-hose-page main{padding-bottom:12px}

.calendar-jump{display:flex;align-items:center;gap:8px}.calendar-jump select{font-size:20px;font-weight:700;color:#173653;min-width:110px;padding:7px 28px 7px 10px}.calendar-print-title{display:none}.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}@media print{.calendar-jump{display:none}.calendar-print-title{display:block}}
@media (min-width: 801px) {
  .customer-hose-details {
    grid-template-columns: 19rem minmax(0, 1fr);
  }
}
