/* Host workspace: shared Cloudflare OS tokens, 14px controls and 16px body. */
img.brand-mark { width:40px; height:18px; object-fit:contain; background:none; border:0; border-radius:0; flex-shrink:0; }
.host-management { font-size:var(--text-lg); line-height:1.6; }
.host-management p { font-size:var(--text-lg); }
.host-management .host-supporting, .host-management [data-host-error] { font-size:var(--text-base); }
.host-management h3 { font-size:var(--text-lg); font-weight:500; margin:0 0 8px; }
.host-management h2 { margin:0 0 16px; }
.host-management input, .host-management textarea, .host-management select { width:100%; min-width:0; }
.host-management select { font:inherit; font-size:var(--text-lg); color:inherit; border:1px solid var(--color-kumo-line); border-radius:8px; background:var(--color-kumo-control); padding:12px; min-height:48px; }
.host-management textarea { resize:vertical; }
.host-management input:read-only, .host-management textarea:read-only { background:var(--color-kumo-tint); }
.host-management :is(input,textarea,select):focus-visible { outline:2px solid var(--orange); outline-offset:2px; }
.host-management :is(input[type=checkbox]) { accent-color:var(--orange); }
.host-identity { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:0 0 24px; border-bottom:1px solid var(--color-kumo-line); margin-bottom:32px; color:var(--muted); font-size:var(--text-base); overflow-wrap:anywhere; }
.host-identity > div, .host-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.host-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; }
.host-heading .portal-intro { max-width:720px; }
.host-heading .host-actions { padding-top:35px; flex-shrink:0; }
.host-list-tools, .host-roster-controls { display:flex; align-items:center; justify-content:space-between; gap:24px; margin:0 0 24px; }
.host-filters { display:flex; gap:4px; flex-wrap:wrap; }
.host-filters button { background:transparent; border-color:transparent; }
.host-filters button[aria-pressed=true] { background:var(--color-kumo-tint); border-color:var(--color-kumo-line); }
.host-events { display:grid; gap:16px; }
.host-event { display:flex; align-items:center; justify-content:space-between; gap:32px; padding:28px; background:var(--color-kumo-control); border:1px solid var(--color-kumo-line); border-radius:16px; box-shadow:var(--shadow-stack); }
.host-event > div { min-width:0; }
.host-event h2 { margin:12px 0 8px; }
.host-event h2 button { font-size:var(--text-xl); font-weight:500; color:var(--text-color-kumo-default); padding:0; white-space:normal; text-align:left; line-height:1.4; }
.host-event p { margin:0 0 16px; }
.host-event-meta, .host-event-summary { display:flex; align-items:center; gap:10px 20px; flex-wrap:wrap; font-size:var(--text-base); color:var(--muted); overflow-wrap:anywhere; }
.host-event-summary { margin:-16px 0 32px; }
.host-state-open { color:var(--text-color-kumo-success); }
.host-state-draft, .host-state-scheduled { color:var(--text-color-kumo-brand); }
.host-event-form { display:grid; gap:24px; max-width:1000px; }
.host-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; }
.host-wide { grid-column:1/-1; }
.host-lab-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.host-management .host-lab-option { display:flex; align-items:flex-start; gap:12px; padding:16px; border:1px solid var(--color-kumo-line); border-radius:10px; margin:0; cursor:pointer; }
.host-management .host-lab-option:has(:checked) { background:var(--color-kumo-tint); border-color:var(--color-kumo-fill); }
.host-management .host-lab-option input { width:18px; height:18px; flex-shrink:0; margin:3px 0 0; }
.host-lab-option span { display:grid; gap:5px; }
.host-lab-option b { font-size:var(--text-lg); font-weight:500; }
.host-lab-option span span { font-size:var(--text-base); color:var(--muted); }
.host-form-footer { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:0 0 24px; }
.host-management [data-host-error] { color:var(--text-color-kumo-danger); }
.host-detail-grid { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:24px; align-items:start; }
.host-copy-row { display:flex; gap:8px; margin:8px 0 20px; }
.host-invite-code { display:flex; align-items:center; flex-wrap:wrap; gap:10px 16px; margin:20px 0; font-size:var(--text-base); }
.host-invite-code code { color:var(--text-color-kumo-default); font-size:var(--text-lg); letter-spacing:.03em; overflow-wrap:anywhere; }
.host-checklist { padding:0; list-style:none; margin:20px 0 28px; }
.host-checklist li { display:flex; gap:12px; margin:12px 0; }
.host-checklist .icon { color:var(--text-color-kumo-brand); flex-shrink:0; margin-top:4px; }
.host-section { margin-top:40px; }
.host-section-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:24px; }
.host-section-heading h2 { margin:0; }
.host-section-heading p { margin:6px 0 0; }
.host-roster-controls > label:not(.search-label) { display:flex; align-items:center; gap:10px; font-size:var(--text-base); margin:0; }
.host-roster-controls select { width:auto; }
.host-roster { display:grid; gap:12px; margin-top:24px; }
.host-person { display:grid; grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr); gap:24px; padding:24px; border:1px solid var(--color-kumo-line); border-radius:12px; background:var(--color-kumo-control); overflow-wrap:anywhere; }
.host-person > div > span { font-size:var(--text-base); color:var(--muted); }
.host-person-build { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:12px; }
.host-person-build:last-child { margin-bottom:0; }
.host-person-build b { font-weight:500; }
.host-person-build p { width:100%; margin:0; }
.host-notice { border-left:2px solid var(--orange); padding:12px 16px; background:var(--color-kumo-tint); }
.host-event-footer { display:flex; align-items:center; flex-wrap:wrap; gap:12px 20px; border-top:1px solid var(--color-kumo-line); margin-top:48px; padding-top:24px; font-size:var(--text-base); color:var(--muted); }
.host-event-footer p { width:100%; overflow-wrap:anywhere; }
.event-welcome { padding:20px; margin:0 0 24px; border:1px solid var(--color-kumo-line); border-radius:12px; background:var(--color-kumo-tint); }
.event-welcome h3 { font-size:var(--text-xl); margin:0 0 10px; font-weight:500; }
.event-welcome p { font-size:var(--text-lg); margin:8px 0; }
.event-welcome .event-welcome-meta { font-size:var(--text-base); color:var(--muted); }
@media (max-width:1050px) { .host-heading { flex-wrap:wrap; gap:0; margin-bottom:28px; } .host-heading .portal-intro { margin-bottom:16px; } .host-heading .host-actions { padding-top:0; } .host-list-tools { flex-wrap:wrap; } .portal-header { gap:16px; padding:12px 20px; flex-wrap:wrap; } }
@media (max-width:700px) {
 .portal-header { position:relative; gap:12px; }
 .portal-header nav { order:3; width:100%; }
 .portal-utilities { flex-wrap:wrap; }
 .portal-main { padding:28px 20px 48px; }
 .host-identity, .host-event, .host-section-heading, .host-form-footer { align-items:flex-start; flex-direction:column; gap:16px; }
 .host-identity > div { display:flex; gap:8px; flex-wrap:wrap; }
 .host-detail-grid, .host-form-grid, .host-lab-options, .host-person { grid-template-columns:minmax(0,1fr); }
 .host-management .panel-form, .host-event, .host-person { padding:20px; }
 .host-roster-controls { align-items:flex-start; flex-direction:column; }
 .host-copy-row { flex-wrap:wrap; }
 .host-copy-row input { flex-basis:100%; }
 .host-management .event-overview { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .host-management .metric { padding:16px; }
 .host-management .metric b { font-size:var(--text-xl); }
 .host-event-summary { margin-top:0; }
}

.host-identity > a { flex-shrink:0; font-size:var(--text-base); }
.operator-login > a.primary { display:inline-flex; align-items:center; gap:10px; font-size:var(--text-lg); padding:12px 20px; border-radius:8px; text-decoration:none; color:var(--color-white,#fff); background:var(--orange); }
