.plan-toolbar{margin-bottom:20px}.plan-filters{display:flex;gap:16px;align-items:end;flex-wrap:wrap}.plan-filters label{flex:1;min-width:160px}.plan-metrics{display:flex;gap:20px;flex-wrap:wrap;padding-top:20px;color:var(--secondary);font-size:12px}.plan-metrics b{color:var(--text)}.plan-week{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:10px;margin-bottom:20px;overflow-x:auto;padding-bottom:10px}.plan-day{min-width:0;padding:14px;min-height:160px}.plan-day h3{font-size:12px;border-bottom:1px solid var(--border);padding-bottom:14px}.plan-patient{display:flex;flex-direction:column;align-items:start;gap:9px;width:100%;margin-top:10px;padding:12px;text-align:start;height:auto;white-space:normal;overflow-wrap:anywhere}.plan-patient strong{color:var(--theme-accent)}.plan-patient .tag{font-size:9px;white-space:normal}.plan-patient small,.plan-muted{font-size:12px;color:var(--secondary);line-height:1.7}.plan-detail{margin-top:20px;padding:24px}.plan-detail>.cardhead{padding:0}.plan-toolbar .plan-filters,.plan-toolbar .plan-metrics{padding-left:24px;padding-right:24px}.plan-toolbar .plan-metrics{padding-bottom:24px}.plan-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;border-top:1px solid var(--border);margin-top:20px;padding-top:20px}.plan-detail-grid section,.plan-detail-grid>div{min-width:0}.plan-detail-grid dl{display:grid;grid-template-columns:minmax(100px,1fr) minmax(0,2fr);gap:12px;font-size:13px}.plan-detail-grid dd{margin:0;overflow-wrap:anywhere}.plan-detail-grid dt{color:var(--secondary)}.plan-detail details{padding:10px 0;border-bottom:1px solid var(--border);font-size:12px}.plan-detail summary{cursor:pointer}.plan-detail p{overflow-wrap:anywhere}.plan-voided{opacity:.65}.plan-voided td{text-decoration:line-through}.plan-detail .cardhead{flex-wrap:wrap}.plan-detail .row{flex-wrap:wrap}@media(max-width:1200px){.plan-week{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.plan-week{grid-template-columns:1fr}.plan-day{min-height:0}.plan-detail-grid{grid-template-columns:1fr}.plan-filters{display:grid;grid-template-columns:1fr}.plan-filters label{min-width:0}.plan-filters .row{flex-wrap:wrap}.plan-toolbar .cardhead{align-items:start;flex-direction:column}.plan-toolbar .row{flex-wrap:wrap}.plan-detail-grid dl{grid-template-columns:1fr}.plan-detail-grid dd{margin-bottom:12px}}

#modal.plan-document-dialog{width:min(1280px,calc(100vw - 32px));max-width:none}.plan-document-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px}.plan-document-pane{min-width:0}.plan-document-pane .row{flex-wrap:wrap}.plan-document-pane .row label{max-width:120px}.plan-source-scroll{overflow:auto;max-height:58vh;border:1px solid var(--border);background:#fff}.plan-source-scroll canvas{display:block;width:100%;height:auto}.plan-document-pane pre{max-height:200px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}.plan-document-pane small{overflow-wrap:anywhere;display:block}.plan-extracted-draft{border-color:#d6a64b!important;box-shadow:0 0 0 2px #d6a64b33}.plan-document-grid .wide{grid-column:1/-1}.plan-draft-fields{align-content:start}.plan-draft-fields input[type=checkbox]{width:auto;display:inline}@media(max-width:850px){.plan-document-grid{grid-template-columns:1fr}.plan-source-scroll{max-height:45vh}.plan-draft-fields{grid-template-columns:1fr}}

.plan-tabs{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:18px;margin-top:20px}.plan-tabs button[aria-pressed=true]{border-color:var(--theme-accent);color:var(--theme-accent);background:color-mix(in srgb,var(--theme-accent) 8%,transparent)}.plan-pane[hidden]{display:none!important}.plan-pane{padding-top:10px}@media(max-width:600px){.plan-tabs{display:grid;grid-template-columns:1fr 1fr}}

.plan-detail .tablewrap table{width:100%}.plan-detail .tablewrap th,.plan-detail .tablewrap td{white-space:normal;overflow-wrap:anywhere;min-width:100px;max-width:300px}.plan-detail .tablewrap td:last-child{min-width:110px}
.plan-calendar-source{min-width:0;overflow-wrap:anywhere}.plan-calendar-source details{font-size:12px}

.plan-shortcuts{display:flex;gap:8px;flex-wrap:wrap;padding:0 24px 20px}.plan-calendar-nav{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:20px 24px 0}.plan-calendar-nav h3{margin:0;font-size:16px}.plan-calendar-nav .row{flex-wrap:wrap}.plan-view-switch button[aria-pressed=true]{background:color-mix(in srgb,var(--theme-accent) 12%,transparent);color:var(--theme-accent);border-color:var(--theme-accent)}.plan-scroll-target{scroll-margin-top:24px;min-width:0}#plan-calendar-section{overflow-x:auto}.plan-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;min-width:770px;margin-bottom:20px}.plan-month .plan-day{padding:10px;min-height:150px;margin:0}.plan-month .plan-day h3{font-size:11px;padding-bottom:8px;margin-top:0}.plan-month .plan-patient{padding:8px;gap:5px;font-size:11px}.plan-month .plan-patient small{font-size:10px}.plan-weekday{text-align:center;color:var(--secondary);font-size:12px;padding:8px}.plan-outside-month{opacity:.55}.plan-today{border-color:var(--theme-accent)!important}.plan-today h3{color:var(--theme-accent)}
@media(max-width:700px){.plan-calendar-nav{align-items:flex-start;flex-direction:column}.plan-calendar-nav .row{gap:6px}.plan-calendar-nav button{padding:9px;font-size:12px}.plan-shortcuts{display:grid;grid-template-columns:1fr 1fr}.plan-shortcuts button{white-space:normal}.plan-month .plan-day{min-height:120px}}

.plan-month .plan-day{max-height:260px;overflow-y:auto}.plan-month .plan-patient>span:not(.tag){display:none}

/* A complete month stays visible; busy days open a full, readable agenda. */
.plan-month.plan-month-compact{height:calc(100dvh - 225px);min-height:450px;grid-template-rows:22px repeat(var(--plan-weeks),minmax(0,1fr));gap:4px;margin-bottom:8px}.plan-month-compact .plan-day{min-height:0!important;max-height:none;overflow:hidden;padding:3px!important;display:flex;flex-direction:column;gap:2px}.plan-month-compact .plan-day h3{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;margin:0;padding:0;border:0;height:14px}.plan-month-compact .plan-day h3 button{min-height:0;padding:1px 4px;border:0;background:transparent;box-shadow:none;font-size:11px}.plan-month-compact .plan-day h3 small{font-size:9px;color:var(--secondary)}.plan-month-entries{min-height:0;display:grid;gap:3px}.plan-month-patient{min-height:0;display:flex;flex-direction:column;align-items:stretch;text-align:start;gap:1px;padding:2px 4px;font-size:11px;line-height:1.2;white-space:normal;border-radius:5px;background:color-mix(in srgb,var(--theme-accent) 6%,transparent)}.plan-month-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}.plan-month-dose{color:var(--theme-accent);font-size:10px;font-weight:700;white-space:nowrap}.plan-month-more{min-height:0;align-self:start;padding:0 4px;font-size:10px;border:0;background:transparent;box-shadow:none;color:var(--theme-accent)}.plan-month-compact .plan-weekday{padding:2px}.plan-agenda-patient{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;text-align:start;margin-bottom:8px}.plan-agenda-patient .plan-month-name{white-space:normal;overflow-wrap:anywhere}.plan-agenda-patient .plan-month-dose{font-size:13px}.plan-agenda-patient small{grid-column:1/-1;font-size:11px}.plan-month-toolbar{margin-bottom:8px}.plan-month-toolbar .cardhead{padding:8px 14px}.plan-month-toolbar .cardhead h2{margin:0;font-size:14px}.plan-month-toolbar .cardhead p{display:none}.plan-month-toolbar button{min-height:28px;padding:4px 9px;font-size:11px}.plan-month-toolbar .plan-shortcuts{padding:0 14px 6px;gap:5px}.plan-month-toolbar .plan-filters{padding:0 14px;gap:10px}.plan-month-toolbar .plan-filters label{font-size:10px;gap:3px}.plan-month-toolbar input{min-height:30px;padding:5px 8px;font-size:11px}.plan-month-toolbar .plan-calendar-nav{padding:7px 14px 0}.plan-month-toolbar .plan-calendar-nav h3{font-size:14px}.plan-month-toolbar .plan-metrics{padding:6px 14px 8px;gap:10px;font-size:10px}
@media(max-width:700px){.plan-month-toolbar .plan-shortcuts{display:flex;flex-wrap:wrap}.plan-month-toolbar .plan-calendar-nav{flex-direction:row}.plan-month-toolbar .plan-filters{display:flex}.plan-month-toolbar .plan-filters label{min-width:120px}.plan-month-compact{min-width:770px}}

.activity-comparison{border:1px solid var(--border);border-radius:9px;padding:14px;margin:10px 0}.activity-comparison h3{margin:0 0 10px}.activity-comparison dl{display:flex!important;flex-wrap:wrap;gap:16px!important;margin:0 0 10px!important}.activity-comparison dl>div{flex:1;min-width:150px}.activity-comparison dt{font-size:11px;color:var(--secondary)}.activity-comparison dd{margin:5px 0!important;font-size:13px;font-weight:700;overflow-wrap:anywhere}.activity-comparison small{font-size:11px;color:var(--secondary)}

.capsule-entry{border:1px solid var(--border);border-radius:8px;padding:14px;margin:12px 0}.capsule-entry legend{font-size:12px;color:var(--theme-accent)}.capsule-comparison dl{display:grid;grid-template-columns:minmax(130px,1fr) minmax(0,2fr);gap:8px;font-size:12px}.capsule-comparison dd{margin:0;overflow-wrap:anywhere}.capsule-comparison dt{color:var(--secondary)}.capsule-comparison details{font-size:11px}.capsule-comparison h3{font-size:14px}.capsule-comparison .notice{display:block}@media(max-width:650px){.capsule-comparison dl{grid-template-columns:1fr}}

.capsule-selection-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0}.capsule-selection-toolbar>span{margin-right:auto;font-size:13px}.capsule-selection-toolbar input[type=checkbox],#plan-capsules-section input[type=checkbox]{width:18px;height:18px;min-height:0;accent-color:var(--theme-accent)}

.capsule-selection-toolbar>label{flex:1;min-width:240px}.capsule-selection-toolbar select{max-width:100%}.capsule-selection-chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px}.capsule-selection-chips button{font-size:11px;padding:6px 10px;min-height:30px}

.plan-export-fields{border:1px solid var(--line,#52616b);border-radius:10px;padding:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.plan-export-fields legend{padding:0 6px}.plan-export-fields label{display:flex;align-items:flex-start;gap:8px;font-size:12px}.plan-export-fields input[type=checkbox]{width:auto;flex:none;margin-top:2px}#plan-export-preview{width:100%;font-family:ui-monospace,monospace;font-size:12px;line-height:1.6}@media(max-width:650px){.plan-export-fields{grid-template-columns:1fr}}
#modal.plan-order-export{width:min(860px,calc(100vw - 28px))}#modal.plan-order-export .wide{grid-column:1/-1}#modal.plan-order-export .plan-export-fields label{display:flex;flex-direction:row;align-items:flex-start;gap:8px}#modal.plan-order-export .plan-export-fields input[type=checkbox]{width:auto;flex:none}
#modal.plan-order-export{max-width:860px}
#modal .plan-documented-activity,#modal .plan-calendar-source{grid-column:1/-1;min-width:0;overflow-wrap:anywhere}

.plan-open-wrap{display:inline-flex;position:relative;vertical-align:middle;margin-inline-end:8px}.plan-open-icon{min-width:44px;min-height:44px;padding:8px;display:inline-flex;align-items:center;justify-content:center}.plan-open-tip{display:none;position:absolute;inset-inline-start:0;top:100%;z-index:5;background:var(--panel,#252525);color:var(--text);padding:8px;border:1px solid var(--border);border-radius:6px;width:max-content;max-width:180px}.plan-open-wrap:hover .plan-open-tip,.plan-open-wrap:focus-within .plan-open-tip{display:block}

.plan-compact-table{width:100%;table-layout:auto;min-width:0!important}.plan-compact-table th,.plan-compact-table td,.plan-detail .tablewrap .plan-compact-table td,.plan-detail .tablewrap .plan-compact-table th{min-width:0;max-width:none;padding:10px 12px;white-space:normal;overflow-wrap:anywhere;vertical-align:top}.plan-compact-table th{font-size:12px}.plan-compact-table td{font-size:13px}.plan-compact-table td>small,.plan-patient-identity small{display:block;color:var(--secondary);margin-top:4px}.plan-patient-identity{display:flex;align-items:flex-start;gap:8px;min-width:160px;max-width:290px}.plan-patient-identity>div{min-width:0}.plan-patient-identity .plan-open-wrap{flex:none;margin:0}.plan-activity-col{width:112px;font-variant-numeric:tabular-nums}.plan-activity-value{display:block;white-space:nowrap;font-weight:600;font-variant-numeric:tabular-nums}.plan-activity-secondary{display:block;color:var(--secondary);white-space:nowrap}.plan-compact-table details{max-width:230px}.plan-open-icon:focus-visible{outline:2px solid var(--theme-accent);outline-offset:2px}.plan-open-tip{pointer-events:none}.plan-compact-table th[scope=col]{text-align:start}
@media(max-width:700px){.plan-compact-table th,.plan-compact-table td{padding:8px}.plan-patient-identity{min-width:150px}.plan-compact-table .plan-activity-col{width:96px}}

.plan-compact-table th.plan-activity-col{white-space:nowrap;overflow-wrap:normal}.plan-compact-table .plan-activity-value small{display:inline;margin:0}.plan-compact-table td{line-height:1.5}.plan-compact-table th{letter-spacing:.03em}

.plan-compact-table .plan-deviation-alert{display:block;color:var(--theme-accent);font-weight:700}.plan-compact-table .plan-activity-value small{display:inline!important}

@media(max-width:600px){.plan-compact-table{display:block;width:100%}.plan-compact-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.plan-compact-table tbody{display:block}.plan-compact-table tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid var(--border);padding:10px}.plan-compact-table td,.plan-detail .tablewrap .plan-compact-table td{display:block;width:auto;min-width:0;border:0;padding:8px;max-width:none}.plan-compact-table td:first-child{grid-column:1/-1}.plan-compact-table td:before{content:attr(data-label);display:block;font-size:11px;color:var(--secondary);margin-bottom:4px}.plan-compact-table td:first-child:before{display:none}.plan-patient-identity{min-width:0;max-width:none}.plan-compact-table td[colspan]{grid-column:1/-1}}
.calendar-event-types{margin:0 16px 14px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;min-width:0}.calendar-event-types summary{cursor:pointer;font-weight:600;overflow-wrap:anywhere}.calendar-event-types .row{flex-wrap:wrap;margin:12px 0}.calendar-event-types fieldset{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:10px;border:0;padding:0;min-width:0}.calendar-event-types legend{padding:8px 0}.calendar-event-types label{display:flex;flex-direction:row;align-items:center;gap:8px;min-width:0}.calendar-event-types input{width:auto;flex:none}.calendar-event-types small{display:block;margin-top:12px;line-height:1.6}.plan-month-kind{font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.patient-cancelled{border-color:#dc5b5b!important;background:color-mix(in srgb,var(--surface) 90%,#d93434)!important}.patient-cancelled,.patient-cancelled :is(.plan-month-name,strong,small,.tag){color:#d84d4d!important}.cancellation-detail{padding:16px;border-left:4px solid #d84d4d;border-radius:8px;background:var(--surface)}.cancellation-detail h3{color:#d84d4d}.capsule-live-activity{min-width:140px}.capsule-live-activity b{font-size:18px;color:var(--strong)}.capsule-live-activity small{display:block;font-size:11px;line-height:1.6}

.capsule-expiry-below{margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.capsule-expiry-below small{display:block;margin-top:5px}

.preparation-progress{margin:20px 0;padding:16px;border:1px solid var(--border);border-radius:12px;min-width:0}.preparation-progress p{line-height:1.6}.preparation-milestones{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}.preparation-milestones article{padding:14px;background:var(--surface);border:1px solid var(--border);border-radius:9px;min-width:0}.preparation-milestones h4{margin:0 0 12px}.preparation-milestones dl{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0}.preparation-milestones dt{font-size:12px;color:var(--secondary);margin-bottom:8px}.preparation-milestones dd{margin:0;overflow-wrap:anywhere}.preparation-field-group{min-width:0;padding:16px;border:1px solid var(--border);border-radius:10px}.preparation-field-group legend{font-weight:700;padding:0 6px}.preparation-field-group p{line-height:1.6;margin:0 0 16px}.preparation-field-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media(max-width:600px){.preparation-field-group>div{grid-template-columns:1fr}}
