/* Retain the approved green theme; navigation occupies one top row. */
body>.sidebar{position:sticky;inset:0 0 auto;top:0;width:100%;height:76px;min-height:76px;padding:0 28px;display:flex;flex-direction:row;align-items:center;gap:30px;z-index:8;background:#173f3a;border-bottom:1px solid #31534d}
.sidebar .brand{display:flex;align-items:center;gap:10px;margin:0;flex:none;font-size:24px;line-height:1.15;white-space:nowrap}
.sidebar .brand .logo{width:40px;height:40px;min-width:40px;border-radius:12px;font-size:24px}
.sidebar .brand small{font-size:10px;margin-top:6px;letter-spacing:.04em}
.sidebar .side-label{display:none}
.sidebar #nav{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex:1;min-width:0;gap:4px;margin:0;height:100%;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#6e9186 transparent}
.sidebar #nav button{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;width:auto;height:44px;margin:0;padding:0 15px;font-size:14px;border-radius:9px;white-space:nowrap}
.sidebar #nav button .nav-icon{width:18px;height:18px;display:inline-flex;font-size:18px}
.sidebar #nav button.active{color:#173f3a;background:#e5f0e9}
.sidebar .side-bottom{display:flex;align-items:center;gap:9px;position:static;margin:0;padding:0 0 0 20px;border-top:0;border-left:1px solid #45645b;flex:none;font-size:13px;white-space:nowrap}
.sidebar .side-bottom .avatar{width:32px;height:32px;font-size:15px;margin:0}
.sidebar .side-bottom small{font-size:10px;margin-top:3px}
body>.shell{margin:0;width:100%;min-width:0}
.shell>header{position:static;min-height:54px;height:auto;padding:10px 32px;background:#fff}
.shell>main,.shell>#filterbar{max-width:1800px;margin-inline:auto}
.management-center{display:flex;flex-direction:column;gap:20px;min-width:0}
.management-center>.settings-nav{position:static;display:flex;flex-direction:row;align-items:center;gap:18px;width:100%;overflow-x:auto;padding:0 0 12px;border-bottom:1px solid var(--line);scrollbar-width:thin}
.settings-nav section{display:flex;align-items:center;gap:4px;flex:none;margin:0;padding:0}
.settings-nav section+section{padding-left:18px;border-left:1px solid var(--line)}
.settings-nav section h3{display:none}
.settings-nav section button{width:auto;flex:none;white-space:nowrap;padding:11px 14px;margin:0;font-size:13px}
.settings-nav section button span{display:none}
.settings-content{width:100%;min-width:0}
.calendar-workspace-head{flex-wrap:wrap;gap:10px}.calendar-workspace-head>div:first-child{margin-right:auto}
.calendar-date-badges{display:inline-flex;align-items:center;gap:2px;vertical-align:middle;margin-left:3px;line-height:1}
.calendar-date-badges .doctor-rest-mark{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:1.4px solid #36776a;color:#286c5f;border-radius:50%;font-size:10px;font-weight:600;background:#e9f4ed}
.calendar-date-badges .holiday-mark{display:inline-flex;font-size:10px;color:#b8514d;font-weight:600}.calendar-date-badges .holiday-mark.workday{color:#a27825}
.month-day .calendar-date-badges{margin-left:0;position:absolute;top:3px;right:3px;gap:1px}.month-day{position:relative}
.mini-month .calendar-date-badges .doctor-rest-mark{width:12px;height:12px;font-size:8px}.mini-month .holiday-mark{font-size:8px}
.month-board .month-day .calendar-date-badges{top:10px;right:8px}
.month-board .holiday-name{display:block;font-size:10px;font-weight:400;color:#aa6557;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.calendar-day-notice{padding:12px 16px;border:1px solid #d6e6dc;border-radius:8px;background:#f0f7f2;margin:10px 0;color:#47685a;font-size:13px;line-height:1.7}
.calendar-day-notice.has-conflict{background:#fff8e9;border-color:#e8d8b0;color:#8c6829}
.calendar-day-notice p{margin:0}.calendar-source-note{font-size:11px;color:var(--muted);margin:12px 0;line-height:1.6}.calendar-source-note a{color:inherit;text-decoration:underline}
.doctor-weather{margin:0 0 18px;padding:14px 0;border-top:1px solid #e3e9e6;border-bottom:1px solid #e3e9e6;min-height:85px}
.doctor-weather h4{font-weight:500;font-size:12px;color:#758a82;margin:0 0 9px}.doctor-weather .weather-reading{display:flex;gap:12px;align-items:baseline;color:#284b41}.doctor-weather strong{font-size:23px;font-weight:500}.doctor-weather p{font-size:12px;line-height:1.6;margin:6px 0}.doctor-weather small{display:block;font-size:10px;line-height:1.7;color:#8a9691}.doctor-weather small a{color:inherit}
@media(max-width:760px){.calendar-inspector .doctor-weather{flex:0 0 100%;min-height:0;padding:10px 0}.calendar-workspace>.calendar-source-note,.calendar-workspace>.calendar-day-notice{margin:10px 12px}}
#doctor-rest-form{max-width:660px;padding:26px}#doctor-rest-form h2{margin-bottom:10px}#doctor-rest-form>p{line-height:1.7}#doctor-rest-form .rest-confirm{display:flex;align-items:start;gap:8px;margin-top:18px;font-size:13px;line-height:1.6}#doctor-rest-form .rest-confirm input{width:auto;margin-top:3px}#doctor-rest-form .actions{flex-wrap:wrap}
@media(max-width:1150px){body>.sidebar{gap:15px;padding-inline:18px}.sidebar .side-bottom{display:none}.sidebar #nav button{padding-inline:12px}.sidebar .brand small{display:none}}
@media(max-width:700px){body>.sidebar{height:62px;min-height:62px;padding:0 10px;gap:10px}.sidebar .brand{display:flex}.sidebar .brand>span:not(.logo){display:none}.sidebar .brand .logo{width:32px;height:32px;min-width:32px;font-size:20px;border-radius:10px}.sidebar #nav{justify-content:flex-start;gap:2px}.sidebar #nav button{height:40px;font-size:12px;padding-inline:10px;gap:5px}.sidebar #nav button .nav-icon{width:16px;height:16px}.shell>header{padding:8px 14px;min-height:48px}.shell>main{padding:20px 14px}.sidebar #nav button:focus-visible{outline:2px solid #d2eab1;outline-offset:-2px}#toast{bottom:20px}.settings-nav section+section{padding-left:10px}.settings-nav section button{padding:10px}.calendar-workspace-head #calendar-rest{font-size:12px;padding:9px 12px}.calendar-workspace-head #calendar-add{font-size:12px;padding:9px 12px}.doctor-weather{margin-bottom:10px}.calendar-inspector .doctor-weather{display:block}.calendar-date-badges .doctor-rest-mark{width:15px;height:15px;font-size:9px}#doctor-rest-form{padding:20px}.global-intake{bottom:20px}}
@media print{body>.sidebar,.doctor-weather{display:none}body>.shell{margin:0}.calendar-date-badges{print-color-adjust:exact}}
@media(max-width:760px){.month-board .holiday-name{display:none}.month-board .month-day .calendar-date-badges{top:0;right:1px}.month-board .calendar-date-badges .doctor-rest-mark{width:13px;height:13px;font-size:9px}.calendar-date-badges .holiday-mark{font-size:9px}}

/* Full-width doctor calendar: one month, one horizontal type filter. */
body[data-workspace="calendar"] .shell>main{max-width:none}
.calendar-fullwidth .calendar-layout{display:block;width:100%}
.calendar-fullwidth .calendar-typebar{min-width:0;margin:0 0 18px;padding:13px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.calendar-fullwidth .calendar-legend{display:flex;flex-wrap:nowrap;align-items:center;gap:24px;overflow-x:auto;scrollbar-width:thin;padding:0;border:0;min-height:30px}
.calendar-fullwidth .calendar-legend h3{display:block;flex:none;font-size:12px;margin:0;font-weight:500}
.calendar-fullwidth .calendar-legend label{flex:none;white-space:nowrap;font-size:13px;min-height:30px}
.calendar-fullwidth .calendar-legend input{width:14px;height:14px}
.calendar-fullwidth .calendar-legend i{width:9px;height:9px}
.calendar-fullwidth .calendar-workspace-head{align-items:center}
.calendar-fullwidth .calendar-primary-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;margin:0;width:auto}
.calendar-fullwidth .calendar-primary-actions button{white-space:nowrap;font-size:12px;padding:9px 13px;min-height:38px}
.calendar-fullwidth button:disabled{cursor:not-allowed;opacity:.5}
.calendar-fullwidth .calendar-edit-hint{width:100%;font-size:12px;color:#78867f;margin:0;line-height:1.6}
.calendar-fullwidth .calendar-weather-row[hidden]{display:none}
.calendar-fullwidth .doctor-weather{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;min-height:0;margin:0 0 16px;padding:10px 14px;background:#edf4ef;border:0;border-radius:7px}
.calendar-fullwidth .doctor-weather h4,.calendar-fullwidth .doctor-weather p{margin:0}
.calendar-fullwidth .doctor-weather strong{font-size:19px}
.calendar-fullwidth .doctor-weather small{display:inline;font-size:10px}
.calendar-fullwidth .calendar-workspace>.calendar-source-note{padding-inline:20px}
.calendar-fullwidth .calendar-workspace>.calendar-day-notice{margin-inline:20px}
@media(min-width:761px){.calendar-fullwidth .month-board .month-day{min-height:clamp(86px,calc((100dvh - 350px)/6),150px)}.calendar-fullwidth .month-events>span{font-size:12px;padding:3px 6px}.calendar-fullwidth .calendar-controls{margin-bottom:18px}}
@media(max-width:760px){.calendar-fullwidth .calendar-typebar{margin-bottom:14px;padding-block:7px}.calendar-fullwidth .calendar-legend{gap:15px}.calendar-fullwidth .calendar-legend h3{font-size:11px}.calendar-fullwidth .calendar-legend label{font-size:11px}.calendar-fullwidth .calendar-primary-actions{width:100%;justify-content:flex-start;gap:7px;margin:0}.calendar-fullwidth .calendar-primary-actions button{font-size:11px;padding:8px 9px;min-height:36px}.calendar-fullwidth .calendar-primary-actions #calendar-share{margin-left:auto}.calendar-fullwidth .doctor-weather{padding:10px;gap:5px 12px}.calendar-fullwidth .calendar-workspace>.calendar-source-note{padding-inline:0}.calendar-fullwidth .calendar-workspace>.calendar-day-notice{margin-inline:12px}}
@media print{.calendar-fullwidth .calendar-typebar,.calendar-fullwidth .calendar-weather-row,.calendar-fullwidth .calendar-edit-hint{display:none}}
