*{box-sizing:border-box}body{margin:0;background:#f3f7f8;color:#173e47;font:18px/1.5 system-ui,sans-serif}header{background:#173e47;color:white;padding:18px 24px;display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap}header span{font-size:13px;border:1px solid;padding:4px 8px;border-radius:6px}main{max-width:820px;margin:auto;padding:24px 18px 64px}section,.card{background:white;border:1px solid #cbdadd;border-radius:16px;padding:24px;margin:20px 0}h1{font-size:1.5rem;line-height:1.3}h2{font-size:1.15rem}label{display:block;margin:14px 0}input:not([type=radio]):not([type=checkbox]),textarea,select{font:inherit;width:100%;padding:12px;border:1px solid #86a6ad;border-radius:8px}input[type=radio],input[type=checkbox]{width:22px;height:22px;vertical-align:middle;margin-right:10px}button{font:inherit;background:#17616a;color:white;border:0;border-radius:9px;padding:13px 18px;cursor:pointer;margin:5px 6px 5px 0}button.secondary{background:#e3edef;color:#173e47}button:disabled{opacity:.55;cursor:wait}a{color:#145b67}#status{white-space:pre-wrap}#status.error{color:#9d2525}.option{padding:12px;border:1px solid #cbdadd;border-radius:8px}dd{margin:4px 0 18px;white-space:pre-wrap}dt{font-weight:650}.actions{display:flex;flex-wrap:wrap;gap:8px}table{border-collapse:collapse;width:100%;font-size:15px}td,th{padding:10px;text-align:left;border-bottom:1px solid #ddd;overflow-wrap:anywhere}[hidden]{display:none!important}:focus-visible{outline:3px solid #ca8b25;outline-offset:3px}@media(max-width:500px){section{padding:18px}.actions button{width:100%}}
.ros-checklist-row{min-width:0;margin:18px 0;padding:12px 16px 16px;border:1px solid #cbdadd;border-radius:10px}.ros-checklist-row legend{max-width:100%;padding:0 5px;font-weight:650;line-height:1.4}.ros-checklist-row label{margin:7px 0}.ros-checklist-row select{min-height:48px}.ros-instructions{margin-bottom:22px}

.calendar-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.calendar-controls label{flex:1;min-width:130px}.calendar-day{border:1px solid #cbdadd;border-radius:10px;padding:12px;margin:10px 0;min-width:0}.calendar-day h3{font-size:1rem}.calendar-day button{font-size:14px;padding:8px}.calendar-appointment{font-size:14px;overflow-wrap:anywhere}.calendar-week{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.calendar-week .calendar-day{margin:0}

.calendar-block{padding:8px 10px;background:#fff2d6;border-left:4px solid #a56b00;font-size:14px}.calendar-day button{min-height:44px}.calendar-day{overflow-wrap:anywhere}
