/* Curator workspace: queue states, meetings and agreements, workload calendar,
   block overview and materials library. Same midnight palette as the rest of Bio. */
.w-views{display:flex;flex-wrap:wrap;gap:8px;margin:-4px 0 10px}
.w-filters{border:1px solid var(--d-line,#2b3d56);border-radius:14px;padding:4px 14px;margin-bottom:14px;background:#111c2c}
.w-filters summary{min-height:44px;display:flex;align-items:center;cursor:pointer;color:#a9c9f4;font-size:13px}
.w-filter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;padding:6px 0 10px}
.w-filter{display:grid;gap:6px;font-size:12px;color:var(--muted)}
.w-filter select{min-height:44px;border-radius:10px;border:1px solid #3b5170;background:#0c1728;color:#e5f0ff;padding:0 10px;font:inherit;font-size:13px}
.w-view-save{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding-bottom:10px}
.w-inline-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}
.w-inline-form .field{margin:0;min-width:220px}
.w-item{display:grid;gap:4px;padding:12px 0;border-bottom:1px solid #1f2f45}
.w-item:last-child{border-bottom:0}
.w-item-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.w-item-tags .d-queue-type{margin:0}
.w-state{font-size:10px;padding:4px 8px;border-radius:6px;background:#1d2d44;color:#b9cde9;white-space:nowrap}
.w-state.s-new{background:#253e60;color:#cfe2ff}
.w-state.s-in_progress{background:#20384a;color:#9fe0d2}
.w-state.s-later{background:#2e2a3f;color:#cbbcf3}
.w-state.s-done{background:#1b3c38;color:#a4e1ca}
.w-due{font-size:11px;color:var(--muted);margin-left:auto}
.w-item.is-late .w-due{color:var(--d-warn,#f1c087);font-weight:600}
.w-item.state-done{opacity:.72}
.w-detail{color:var(--muted);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.w-item-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.w-item-actions .btn{min-height:44px;font-size:12px}
.w-more .icon{width:15px;height:15px}
.w-later{border:1px solid #314762;border-radius:12px;padding:10px 14px;margin:14px 0;min-width:0}
.w-later legend{color:#b7cdeb;font-size:13px;padding:0 6px}

/* Brief and meetings */
.w-brief-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap;background:linear-gradient(120deg,#152a46,#131f31);border-color:#345276}
.w-brief-head h2{font-size:22px;margin:6px 0}
.w-brief-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px;margin:20px 0}
.w-block{border:1px solid var(--d-line,#2b3d56);border-radius:14px;padding:12px 14px;margin-top:12px;background:#121d2e}
.w-block.is-main{border-color:#4c74a8}
.w-block-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px}
.w-block p{margin:6px 0;line-height:1.55}
.w-exp{display:inline-flex;flex-wrap:wrap;gap:4px 10px}
.w-exp-positive{color:#9fe0c8}.w-exp-negative{color:#f2b8c4}.w-exp-neutral{color:#c3d6f0}.w-exp-unknown{color:var(--muted)}
.w-metrics{list-style:none;margin:10px 0 0;padding:0}
.w-metrics li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:8px 0;border-bottom:1px solid #22334a}
.w-metrics li b{color:var(--metric);font-variant-numeric:tabular-nums}
.w-metrics li small{grid-column:1/-1;color:var(--muted);font-size:11px}
.w-meeting{border:1px solid var(--d-line,#2b3d56);border-radius:14px;padding:12px 14px;margin-top:12px}
.w-meeting.is-planned{border-color:#4c74a8;background:#13233a}
.w-meeting.is-cancelled{opacity:.7}
.w-meeting-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
.w-agenda{white-space:pre-line;margin:10px 0;font-size:13px;line-height:1.6}
.w-summary{border-left:3px solid #71dab3;padding:6px 0 6px 12px;margin:10px 0}
.w-summary p{white-space:pre-line;margin:6px 0;line-height:1.6}
.w-summary small{color:var(--muted);font-size:11px;display:block;margin-bottom:8px}
.w-meeting h4,.w-participant h4{font-size:13px;margin:12px 0 4px;color:#cfe0f7}
.w-tasks{list-style:none;margin:6px 0;padding:0}
.w-task{padding:4px 0}
.w-task .j-check{align-items:flex-start}
.w-task small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.w-task.is-done span{color:#9fb6d3;text-decoration:line-through}
.w-task.is-done small{text-decoration:none}
.w-task-row{display:grid;grid-template-columns:150px minmax(0,1fr) 160px 44px;gap:0 10px;align-items:end;border:0;padding:0;margin:0}
.w-task-row .btn{min-height:44px;margin-bottom:17px;padding:0}
.w-private{display:flex;gap:10px;align-items:flex-start;border:1px dashed #50627e;border-radius:12px;padding:6px 12px;margin-top:16px;background:#121a28}
.w-private>.icon{margin-top:20px;color:#9fb6d3}
.w-private .field{flex:1;margin:10px 0}
.w-notes{margin-top:0}
.w-notes .card-head p{display:flex;gap:6px;align-items:center}
.w-notes .card-head .icon{width:14px;height:14px}
.w-note{border-top:1px solid #22334a;padding:10px 0}
.w-note p{white-space:pre-line;line-height:1.55}
.w-note small{color:var(--muted);font-size:11px;margin-right:10px}
.w-participant{margin-top:0}
.w-confirm{display:block;line-height:1.6;padding:10px 12px;margin:0 0 10px;border-radius:12px;background:#152a46;border:1px solid #345276;font-size:13px}
.w-confirm .icon{width:15px;height:15px;color:#9fc5ff;vertical-align:-3px;margin-right:6px}
.w-confirm .text-btn{min-height:44px;display:inline-flex;align-items:center}

/* Workload calendar and block overview */
.w-cal-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.w-cal-tools .segmented button{min-height:44px;padding:6px 14px;font-size:12px}
.w-kind-meeting,.w-kind-control,.w-kind-discussion{width:9px;height:9px;border-radius:50%;display:inline-block}
.w-kind-meeting{background:#7fb2ff}.w-kind-control{border:2px solid var(--d-energy,#ffbf69)}.w-kind-discussion{background:#c9b6f5;border-radius:2px}
.w-cal-day{border-top:1px solid var(--d-line,#2b3d56);padding:12px 0}
.w-cal-day h3{display:flex;align-items:center;gap:8px;font-size:14px;margin-bottom:6px;color:#cfe0f7}
.w-cal-day h3::first-letter{text-transform:uppercase}
.w-cal-day h3 span{font-size:11px;color:var(--muted)}
.w-cal-day.is-today h3{color:#a9cdff}
.w-cal-event{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:8px;background:transparent;color:var(--text);text-align:left;border-radius:10px;border-left:3px solid transparent}
.w-cal-event:hover{background:#1a2a40}
.w-cal-event.is-meeting{border-left-color:#7fb2ff}.w-cal-event.is-control{border-left-color:var(--d-energy,#ffbf69)}.w-cal-event.is-discussion{border-left-color:#c9b6f5}
.w-cal-time{min-width:64px;font-variant-numeric:tabular-nums;color:#c3d6f0;font-size:13px}
.w-cal-copy{flex:1;min-width:0}
.w-cal-copy strong{display:block;font-size:14px}
.w-cal-copy small{display:block;color:var(--muted);font-size:12px;overflow-wrap:anywhere}
.w-cal-event>.icon{width:15px;height:15px;color:#8fafda}
.w-programs{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px}
.w-program h3{font-size:14px;margin:16px 0 6px;color:#cfe0f7}
.w-program p{font-size:13px;line-height:1.6}
.w-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
.w-facts div{background:#121d2e;border-radius:10px;padding:8px 10px}
.w-facts dt{font-size:11px;color:var(--muted)}
.w-facts dd{margin:2px 0 0;font-size:20px;font-variant-numeric:tabular-nums}
.w-split{display:flex;height:10px;border-radius:6px;overflow:hidden;background:#22334a;margin:6px 0}
.w-split i{display:block;min-width:0}
.w-split .w-done{background:#71dab3}.w-split .w-partial{background:#c9b6f5}.w-split .w-skipped{background:#7f93ad}.w-split .w-none{background:repeating-linear-gradient(90deg,#3d5272 0 6px,transparent 6px 10px)}

/* Library and catalog card state */
.w-library .card-head{flex-wrap:wrap}
.w-material{display:flex;justify-content:space-between;gap:16px;border-top:1px solid #22334a;padding:14px 0;flex-wrap:wrap}
.w-material h3{margin:6px 0 2px}
.w-material-body{white-space:pre-line;font-size:13px;color:#c3d6f0;margin-top:6px;max-width:70ch}
.w-card-flags{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.w-card-actions{margin:10px 0 0}

@media(max-width:1100px){.w-brief-grid{grid-template-columns:1fr}}
@media(max-width:700px){
 .w-due{margin-left:0;width:100%}
 .w-item-actions .btn{flex:1 1 auto}
 .w-task-row{grid-template-columns:1fr 44px;grid-template-areas:"o x" "t t" "d d"}
 .w-task-row>label:nth-of-type(1){grid-area:o}.w-task-row>label:nth-of-type(2){grid-area:t}.w-task-row>label:nth-of-type(3){grid-area:d}.w-task-row>.btn{grid-area:x}
 .w-programs{grid-template-columns:1fr}
 .w-cal-time{min-width:52px;font-size:12px}
 .w-inline-form .field{min-width:0;width:100%}
}

.w-templates{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 10px}
.w-templates .field-label{width:100%}

/* Touch targets: shared segmented controls, filters and chart switches stay at 44px on every width. */
.segmented button,.d-filter,.chart-tabs button,.chart-style-control button,.chart-goal-control,.w-cal-tools .segmented button,.admin-open{min-height:44px}
.d-cal-toolbar .segmented button,.analytics-card .chart-tabs button,.workspace-table .btn.admin-open,.admin-users .admin-open,.admin-users .btn{min-height:44px}
