*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--text);font:var(--text-base)/var(--rhythm-body-leading) var(--font)}a{color:var(--brand);text-decoration:none}header,main{max-width:var(--operations-content-width);margin:auto;padding:var(--space-6)}header,.tower-header-links,.toolbar,.actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4)}header{border-bottom:var(--stroke-thin) solid var(--border)}.tower-header-links{margin-left:auto}.brand{color:var(--text);font-size:var(--text-xl);font-weight:var(--weight-bold)}.brand span,.eyebrow{color:var(--brand)}.brand small{font-size:var(--text-sm);color:var(--text-secondary)}h1{font-size:var(--text-display);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading)}h2{font-size:var(--text-xl);line-height:var(--leading-heading)}h3{font-size:var(--text-lg);margin-top:0}.lead{font-size:var(--text-lg)}.muted,small,#updated{color:var(--text-secondary)}.eyebrow{font-size:var(--text-sm);letter-spacing:var(--tracking-label)}.notice{border-left:var(--stroke-focus) solid var(--brand);background:var(--brand-wash);padding:var(--space-4);margin-block:var(--space-6)}.notice p{margin:var(--space-2) 0}.toolbar{margin-block:var(--space-6)}.services,.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--size-directory-search)),1fr));gap:var(--space-4)}article,.panel{background:var(--surface);border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-card);padding:var(--space-6)}.panel{margin-block:var(--space-6);min-width:0}.services article{padding:var(--space-4)}button,input,textarea{font:inherit}button{background:var(--button-bg);color:var(--text);border:var(--stroke-thin) solid var(--border);border-radius:var(--button-radius);padding:var(--button-padding-y) var(--button-padding-x);min-height:var(--button-height);cursor:pointer}button:hover{background:var(--button-hover-bg)}button:disabled{opacity:var(--button-disabled-opacity);cursor:not-allowed}.primary{background:var(--button-primary-bg);color:var(--button-primary-fg);font-weight:var(--button-weight)}.primary:hover{background:var(--button-primary-hover-bg)}input,textarea{display:block;width:100%;background:var(--canvas);color:var(--text);border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-control);padding:var(--space-3);margin-block:var(--space-2) var(--space-4)}textarea{resize:vertical}label{display:block}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:var(--stroke-emphasis) solid var(--brand);outline-offset:var(--space-1)}#message{min-height:var(--space-6);color:var(--brand);white-space:pre-wrap}li{margin-block:var(--space-3);overflow-wrap:anywhere}#impact{margin-top:var(--space-4);white-space:pre-wrap;overflow-wrap:anywhere}.failed{color:var(--fact)}[hidden]{display:none!important}
.services{grid-template-columns:repeat(auto-fit,minmax(min(100%,calc(var(--operations-content-width)/4)),1fr))}
.management-workspace>#workbench-title{margin-block:0 var(--rhythm-text-gap)}
.management-workspace>[data-view]{margin-block-start:0}
[data-view="overview"] .services article{display:grid;align-content:start;gap:var(--rhythm-text-gap)}
[data-view="overview"] .services article>h3,[data-view="overview"] .services article>p,[data-view="overview"] .services article>small{margin:0}
[data-view="overview"] .services article>h3{line-height:var(--rhythm-heading-leading)}
[data-view="overview"] .services article>p,[data-view="overview"] .services article>small{line-height:var(--rhythm-body-leading)}
.photo-incident{overflow-wrap:anywhere;margin-block:var(--space-4)}
#wagle-copy article{margin-block:var(--space-4)}#wagle-copy .actions{margin-block:var(--space-4)}select{font:inherit;background:var(--canvas);color:var(--text);border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-control);padding:var(--space-3);width:100%;margin-block:var(--space-2) var(--space-4)}#wagle-rules details{margin-block:var(--space-4);line-height:var(--rhythm-body-leading)}#wagle-copy p{line-height:var(--rhythm-body-leading)}
#message:empty{display:none}.notice{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-3) var(--space-4);margin-block:var(--space-4)}.notice p{margin:0;font-size:var(--text-sm)}
#auth-toggle{display:block;margin-block-start:var(--space-4)}
input[type=checkbox]{display:inline-block;width:auto;min-width:var(--space-4);margin-right:var(--space-2)}fieldset{border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-card);padding:var(--space-4);margin-block:var(--space-4)}#staff-list article{margin-top:var(--space-4)}#staff-list button{margin-right:var(--space-2)}#grant-code{font-family:var(--font-number);font-variant-numeric:var(--figures-number)}summary{cursor:pointer}

.tower-badge-image{width:var(--space-16);aspect-ratio:1;object-fit:contain}#badge-management{margin-block:var(--space-6)}#badge-management p{line-height:var(--rhythm-body-leading)}
.wagle-policy-tabs{margin-block-end:var(--space-6);border-bottom:var(--stroke-thin) solid var(--border);padding-block-end:var(--space-4)}.wagle-policy-tabs [aria-selected=true]{color:var(--brand);border-color:var(--brand);background:var(--brand-wash)}

/* Rank rules as one table: tiers down, conditions across, forecast at the end; the first tier is fixed at zero. */
.tier-scroll{overflow-x:auto}
.tier-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}
.tier-table caption{caption-side:top;text-align:left;padding-block:var(--space-2) var(--space-3);color:var(--text-secondary)}
.tier-table th,.tier-table td{padding:var(--space-2);border-bottom:var(--stroke-thin) solid var(--border);text-align:left;vertical-align:middle}
.tier-table thead th{font-size:var(--text-xs);color:var(--text-secondary);white-space:nowrap}
.tier-table tbody th{white-space:nowrap}
.tier-table tbody th>*{vertical-align:middle}
.tier-image{width:var(--size-tier-image);height:var(--size-tier-image);object-fit:contain;margin-inline-end:var(--space-2)}
.tier-table input{width:100%;min-width:var(--size-table-field-min);box-sizing:border-box}
.tier-table input[type=number]{max-width:var(--size-table-number);text-align:right;font-variant-numeric:tabular-nums}
.tier-table input[readonly]{opacity:var(--opacity-disabled)}
.tier-eta{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--text-secondary)}
.tier-eta[data-problem="true"],.tier-forecast[data-problem="true"]{color:var(--brand)}
.tier-forecast{margin-block:var(--space-3);font-size:var(--text-sm)}
.tier-help dt{font-weight:var(--weight-semibold);margin-top:var(--space-2)}
.tier-help dd{margin:0;color:var(--text-secondary);font-size:var(--text-sm)}
.tier-settings{display:grid;gap:var(--space-3);margin-top:var(--space-5);border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-card);padding:var(--space-4)}
.tier-table input[aria-invalid="true"]{border-color:var(--brand);color:var(--brand)}

/* Menu groups and the home dashboard. Attention uses the brand orange (--down is the market fall colour, blue in Korea). */
.dashboard{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--size-dash-card),1fr));gap:var(--space-3);margin-bottom:var(--space-5)}
.dash-card{display:grid;gap:var(--space-1);padding:var(--space-4);border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-card);color:var(--text);text-decoration:none;background:var(--surface)}
.dash-card:hover{border-color:var(--brand)}
.dash-card span{font-size:var(--text-sm);color:var(--text-secondary)}
.dash-card strong{font-size:var(--text-xl);font-variant-numeric:tabular-nums}
.dash-card small{font-size:var(--text-xs);color:var(--text-secondary)}
.dash-card[data-alert="true"]{border-color:var(--brand)}.dash-card[data-alert="true"] strong{color:var(--brand)}

/* Menu hierarchy: items are full rows in body colour; group titles are small muted labels above a divider that also
   open their group's first screen (no dead text in the menu). */
#tower-menu a{color:var(--text);font-size:var(--text-sm);font-weight:var(--weight-medium)}
#tower-menu a:hover{background:var(--surface-hover);color:var(--text)}
#tower-menu a[aria-current="page"]{color:var(--brand);font-weight:var(--weight-bold)}
#tower-menu .tower-menu-group{min-height:auto;margin:var(--space-3) 0 0;padding:var(--space-3) var(--space-3) var(--space-1);border-top:var(--stroke-thin) solid var(--border);border-radius:0;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-muted);letter-spacing:var(--tracking-label);background:transparent}
#tower-menu .tower-menu-section:first-child>.tower-menu-group{margin-top:0;border-top:0;padding-top:var(--space-1)}
#tower-menu .tower-menu-group:hover{color:var(--text-secondary);background:transparent;text-decoration:underline}

/* Members: a table, and one member in detail below it. */
.member-scroll{overflow-x:auto}
.member-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}
.member-table th,.member-table td{padding:var(--space-2) var(--space-3);border-bottom:var(--stroke-thin) solid var(--border);text-align:left;vertical-align:middle}
.member-table thead th{font-size:var(--text-xs);color:var(--text-secondary);white-space:nowrap}
.member-table td strong{display:block}.member-table td small{color:var(--text-secondary);font-size:var(--text-xs)}
.member-table tr[aria-selected="true"]{background:var(--brand-wash)}
.member-num{font-variant-numeric:tabular-nums;white-space:nowrap}.member-plan{font-weight:var(--weight-semibold)}
.member-suspended{color:var(--brand)}
.member-detail{margin-top:var(--space-5);padding:var(--space-5);border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-card);background:var(--surface)}
.member-detail-head{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap}.member-detail-head h2{margin:0}.member-detail-head small{color:var(--text-secondary);font-size:var(--text-xs)}.member-detail-head button{margin-left:auto}
.member-section{margin-top:var(--space-5);padding-top:var(--space-4);border-top:var(--stroke-thin) solid var(--border)}
.member-section h3{margin:0 0 var(--space-3);font-size:var(--text-base)}
.member-credits{font-size:var(--text-lg);font-variant-numeric:tabular-nums;margin:0 0 var(--space-1)}
.member-entries{margin:var(--space-3) 0;padding-left:var(--space-5);font-size:var(--text-sm);color:var(--text-secondary)}
.member-grant{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-3)}.member-grant h4{flex-basis:100%;margin:0;font-size:var(--text-sm)}.member-grant input[type=number]{max-inline-size:var(--size-table-field)}.member-grant p{flex-basis:100%;margin:0}
.member-error{color:var(--brand)}

/* The system dashboard is a separate place: one strip of links under the home cards. */
.dash-system{margin-bottom:var(--space-5);padding:var(--space-4);border:var(--stroke-thin) dashed var(--border);border-radius:var(--radius-card)}
.dash-system h2{margin:0 0 var(--space-1);font-size:var(--text-base)}.dash-system p{margin:0 0 var(--space-3);font-size:var(--text-sm);color:var(--text-secondary)}
.dash-system-links{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);font-size:var(--text-sm)}

.member-search{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.member-search input[type=search]{flex:1 1 var(--size-search-field);min-width:0}
.member-table td[data-warn="true"]{color:var(--brand);font-weight:var(--weight-semibold)}.member-table input{inline-size:100%;max-inline-size:var(--size-table-field)}
.member-table button{white-space:nowrap}
/* Sally credit prices: one column whose parts are spaced by the scale, never by ad-hoc margins. */
[data-view="credits"].is-active{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4)}[data-view="credits"]>*{margin:0}[data-view="credits"]>.member-scroll,[data-view="credits"]>.member-grant,[data-view="credits"]>dl{align-self:stretch}
[data-view="growth"].is-active{display:flex;flex-direction:column;gap:var(--space-4)}[data-view="growth"]>*{margin:0}
[data-view="points"].is-active{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4)}[data-view="points"]>*{margin:0}[data-view="points"]>form{align-self:stretch}
[data-view="messages"].is-active{display:flex;flex-direction:column;gap:var(--space-4)}[data-view="messages"]>*{margin:0}.message-form{display:grid;gap:var(--space-3);max-inline-size:var(--operations-content-width)}.message-form label{display:grid;gap:var(--space-1);font-size:var(--text-sm)}.message-form label[hidden]{display:none}
.hold-list{display:grid;gap:var(--space-4);margin:0;padding:0;list-style:none}.hold-item{display:grid;gap:var(--space-2);padding:var(--space-4);border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-card)}.hold-body{margin:0;white-space:pre-wrap}
/* Crew desk (2026-10-21): a draft's checkbox beside its title; the week and tab rows wrap. */
.crew-job-head{display:flex;gap:var(--space-2);align-items:center}.crew-tabs,.crew-pager{flex-wrap:wrap}.crew-pager{align-items:center}.crew-pager button{font-variant-numeric:tabular-nums}
/* The crew desk keeps the shared rhythm: blocks (mode, 7 days, tabs, list, schedules) apart by the section gap, lines inside a block by the content gap. */
[data-view="flow"].is-active{display:grid;gap:var(--rhythm-section-gap);align-content:start}[data-view="flow"] p{margin:0}
/* 순환 현황: 할 일 세 갈래 → 순환 흐름(갈래마다 칸) → 고른 칸의 상세. Problems carry the brand colour; connected stays quiet. */
.flow-head{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}
[data-view="flow"] :is(h3,h4,ul,dl,dd){margin:0}[data-view="flow"] ul{padding:0;list-style:none}
.flow-todo,.flow-map-box,.flow-detail{display:grid;gap:var(--rhythm-content-gap)}
.flow-todo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--size-channel-card-min)),1fr));gap:var(--space-4)}
.flow-todo-col{display:grid;align-content:start;gap:var(--space-2);padding:var(--space-4);border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-card);background:var(--surface)}
.flow-todo-col[data-kind="now"]{border-color:var(--brand-border)}
.flow-todo-col ul{display:grid;gap:var(--space-3)}.flow-todo-col li{display:grid;gap:var(--space-1)}
.flow-link{justify-self:start;padding:0;border:0;background:none;color:var(--text);font:inherit;font-weight:var(--weight-semibold);text-align:left;cursor:pointer}
.flow-link:hover{color:var(--brand)}
.flow-cut{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--brand)}
.flow-map{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--size-dash-card)),1fr));gap:var(--space-4);margin:0;padding:0;list-style:none;counter-reset:lane}
.flow-lane{display:grid;align-content:start;gap:var(--space-2)}
.flow-lane h4{font-size:var(--text-sm);color:var(--text-secondary);counter-increment:lane}
.flow-lane h4::before{content:counter(lane) " · "}
.flow-nodes{display:grid;gap:var(--space-2)}
.flow-base{grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--size-dash-card)),1fr))}
.flow-node{display:grid;gap:var(--space-1);padding:var(--space-3);border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-card);background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer}
.flow-node:hover,.flow-node[aria-pressed="true"]{border-color:var(--brand-border);background:var(--surface-hover)}
.flow-node small{color:var(--text-secondary);font-size:var(--text-xs);overflow-wrap:anywhere}
.flow-node-top{display:flex;gap:var(--space-2);align-items:center}
.flow-dot{flex:none;width:var(--space-2);height:var(--space-2);border-radius:var(--radius-round);background:var(--text-secondary)}
.flow-dot:is([data-status="broken"],[data-status="absent"],[data-status="unknown"]){background:var(--brand)}
.flow-dot[data-status="partial"]{background:none;box-shadow:inset 0 0 0 var(--stroke-emphasis) var(--brand)}
.flow-state{font-size:var(--text-xs);color:var(--text-secondary)}
.flow-node:is([data-status="broken"],[data-status="absent"],[data-status="unknown"]) .flow-state{color:var(--brand);font-weight:var(--weight-semibold)}
.flow-kind{justify-self:start;font-size:var(--text-xs);color:var(--brand)}
.flow-detail{padding:var(--space-4);border:var(--stroke-thin) solid var(--brand-border);border-radius:var(--radius-card)}
.flow-detail dl{display:grid;grid-template-columns:auto 1fr;gap:var(--space-2) var(--space-4)}.flow-detail dt{color:var(--text-secondary)}
[data-view="crew"].is-active{display:grid;gap:var(--rhythm-section-gap);align-content:start}[data-view="crew"] :is(p,h3,h4){margin:0}
.crew-mode,.crew-board,.crew-workers,.crew-jobs,.crew-editor{display:grid;gap:var(--rhythm-content-gap)}[data-view="crew"] .actions{margin:0}[data-view="crew"] :is(p,.actions):empty{display:none}
/* 순환 감시 (2026-10-31): top line → red notice → three bands (base · crew · analysis) → the registry → day records. The three
   state colours are the shared palette's green-300 · gold-300 · coral-300; a row reads name/state · last · next · why. */
[data-view="cycle"].is-active{display:grid;gap:var(--rhythm-section-gap);align-content:start}[data-view="cycle"] :is(p,h3,h4,ol,ul,dl,dd){margin:0}[data-view="cycle"] :is(ol,ul){padding:0;list-style:none}
.cycle-head{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:baseline}
.cycle-summary{font-size:var(--text-xl);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.cycle-summary[data-alert="true"]{color:var(--coral-300)}
.cycle-notice{display:grid;gap:var(--space-2);padding:var(--space-4);border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-card);background:var(--surface)}
.cycle-notice[data-alert="true"]{border-color:var(--coral-300)}.cycle-notice[data-alert="true"]>strong{color:var(--coral-300)}
.cycle-notice ul{display:grid;gap:var(--space-2)}.cycle-notice li{display:grid;gap:var(--space-1)}
.cycle-link{justify-self:start;padding:0;border:0;background:none;color:var(--text);font:inherit;font-weight:var(--weight-semibold);text-align:left;cursor:pointer}.cycle-link:hover{color:var(--brand)}
.cycle-band{display:grid;gap:var(--rhythm-content-gap);min-width:0}
.cycle-band-head{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:baseline}
.cycle-rows,.cycle-indicators{display:grid;gap:var(--space-2)}
[data-view="failures"]{display:grid;gap:var(--space-5)}.failure-search{display:flex;gap:var(--space-2);flex-wrap:wrap}.failure-search input{min-width:0;flex:1 1 auto}
.failure-detail{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:var(--space-1) var(--space-3);margin-top:var(--space-3)}.failure-detail dd{margin:0;overflow-wrap:anywhere}
.failure-recent{display:grid;gap:var(--space-1);margin:0;padding:0;list-style:none}
.failure-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.failure-table th,.failure-table td{padding:var(--space-2);border-bottom:var(--stroke-thin) solid var(--border);text-align:start;vertical-align:top}
.cycle-row{display:grid;gap:var(--space-2);padding:var(--space-3);border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-card);background:var(--surface);min-width:0}
.cycle-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.cycle-row>:is(.cycle-who,.cycle-reason){grid-column:1/-1}
.cycle-row[data-severity="red"]{border-color:var(--coral-300)}
.cycle-row:target,.cycle-row:focus-within{border-color:var(--brand-border)}
.cycle-cell{display:grid;gap:var(--space-1);min-width:0;overflow-wrap:anywhere}.cycle-cell>span{font-variant-numeric:tabular-nums}
.cycle-label{color:var(--text-secondary);font-size:var(--text-xs)}
.cycle-who{align-content:start}.cycle-who .cycle-label{display:none}
.cycle-name{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;min-width:0}
.cycle-dot{flex:none;width:var(--space-2);height:var(--space-2);border-radius:var(--radius-round);background:var(--green-300)}
.cycle-dot[data-severity="yellow"]{background:var(--gold-300)}.cycle-dot[data-severity="red"]{background:var(--coral-300)}
.cycle-row .cycle-name{flex-wrap:nowrap;align-items:baseline}.cycle-row .cycle-name strong{min-width:0}
.cycle-job{flex:none;color:var(--text-secondary);font-size:var(--text-xs)}
.cycle-state{justify-self:start;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--green-300)}
.cycle-state[data-severity="yellow"]{color:var(--gold-300)}.cycle-state[data-severity="red"]{color:var(--coral-300)}
.cycle-state:is([data-status="blocked"],[data-status="not-registered"]){color:var(--text-secondary)}.cycle-state:is([data-status="key-pending"],[data-status="fallback"]){color:var(--gold-300)}.cycle-state:is([data-status="connected"],[data-status="wired"]){color:var(--green-300)}.cycle-state[data-status="excluded"]{color:var(--text-secondary);font-weight:var(--weight-regular)}
.cycle-note{color:var(--text-secondary);font-size:var(--text-xs)}
.cycle-order{font-size:var(--text-sm);color:var(--green-300)}.cycle-order[data-holds="false"]{color:var(--coral-300);font-weight:var(--weight-semibold)}
.cycle-cols{display:none;color:var(--text-secondary);font-size:var(--text-xs)}
.cycle-pager{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.cycle-pager span{font-variant-numeric:tabular-nums}
.cycle-indicator{display:grid;gap:var(--space-2);padding:var(--space-3);border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-card);background:var(--surface)}
.cycle-indicator[data-status="connected"]{border-color:var(--green-300)}
.cycle-indicator dl{display:grid;gap:var(--space-1) var(--space-3)}.cycle-indicator dt{color:var(--text-secondary);font-size:var(--text-xs)}.cycle-indicator dd{overflow-wrap:anywhere}
.cycle-services{display:grid;gap:var(--space-2)}.cycle-services li{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:baseline}
.cycle-history{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.cycle-history li[data-alert="true"]{color:var(--coral-300)}
@media (min-width:801px){
 .cycle-row,.cycle-cols{grid-template-columns:minmax(0,1.3fr) var(--size-copy-min) var(--size-copy-min) minmax(0,2fr);align-items:start}
 .cycle-cols{display:grid;gap:var(--space-2);padding-inline:var(--space-3)}
 .cycle-row>:is(.cycle-who,.cycle-reason){grid-column:auto}
 .cycle-row .cycle-cell:not(.cycle-who) .cycle-label{display:none}
 .cycle-indicator dl{grid-template-columns:var(--size-copy-min) minmax(0,1fr)}
}

/* CS 문의 (2026-11-09): inbox left, conversation centre; stacked on narrow screens. */
.support-layout{display:grid;gap:var(--space-4);grid-template-columns:minmax(0,1fr)}
.support-inbox,.support-thread{display:flex;flex-direction:column;gap:var(--space-3);min-inline-size:0}
.support-row{display:flex;flex-direction:column;gap:var(--space-1);inline-size:100%;padding:var(--space-3);text-align:start;background:transparent;border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-control);color:var(--text);cursor:pointer}
.support-row:hover{background:var(--surface-hover)}.support-row[aria-current="true"]{border-color:var(--brand);background:var(--brand-wash)}
.support-row-head{display:flex;gap:var(--space-2);align-items:baseline;justify-content:space-between}
.support-preview{overflow-wrap:anywhere;font-size:var(--text-sm);color:var(--text-secondary)}
.support-unread{display:inline-grid;place-items:center;min-inline-size:var(--size-icon);padding-inline:var(--space-1);border-radius:var(--radius-round);background:var(--brand);color:var(--on-brand);font-size:var(--text-xs);font-weight:var(--weight-semibold)}
.support-head{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:baseline}
.support-log{display:flex;flex-direction:column;gap:var(--space-3);max-block-size:60vh;overflow-y:auto;padding:var(--space-3);border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-card)}
.support-bubble{display:flex;flex-direction:column;gap:var(--space-1);max-inline-size:85%;align-self:flex-start}
.support-bubble[data-author="staff"]{align-self:flex-end;align-items:flex-end}
.support-name,.support-time{font-size:var(--text-xs);color:var(--text-muted)}
.support-bubble[data-author="member"] .support-name{display:none}
.support-body{padding:var(--space-2) var(--space-3);background:var(--ask-bubble-staff);border-radius:var(--radius-card);border-start-start-radius:var(--radius-tail);overflow-wrap:anywhere;white-space:pre-wrap}
.support-bubble[data-author="staff"] .support-body{background:var(--brand);color:var(--on-brand);border-start-start-radius:var(--radius-card);border-start-end-radius:var(--radius-tail)}
.support-body p{margin:0}.support-body img{display:block;max-inline-size:min(100%,var(--size-ask-photo));block-size:auto;border-radius:var(--radius-control)}
.support-day{align-self:center;padding:var(--space-1) var(--space-3);border-radius:var(--radius-control);background:var(--surface-raised);font-size:var(--text-xs);color:var(--text-muted)}
.support-compose{display:flex;flex-direction:column;gap:var(--space-2)}
.support-input{display:flex;align-items:flex-end;gap:var(--space-2)}.support-input textarea{flex:1;min-inline-size:0;box-sizing:border-box;border-radius:var(--radius-control)}
.support-icon{display:grid;place-items:center;flex:none;inline-size:var(--size-control-target);block-size:var(--size-control-target);padding:0;border:0;border-radius:var(--radius-round);background:var(--surface-raised);color:var(--text)}
.support-icon::before{content:"";inline-size:var(--size-icon);block-size:var(--size-icon);background:currentColor;-webkit-mask:center/contain no-repeat;mask:center/contain no-repeat}
.support-add::before{-webkit-mask-image:var(--icon-plus);mask-image:var(--icon-plus)}
.support-go{background:var(--brand);color:var(--on-brand)}.support-go::before{-webkit-mask-image:var(--icon-send);mask-image:var(--icon-send)}
.support-icon:disabled{opacity:var(--opacity-dim)}
.support-filename{font-size:var(--text-sm);color:var(--text-secondary);overflow-wrap:anywhere}
@media (min-width:801px){.support-layout{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}}

/* 기자단 표: 작업 보기 · 예약 설정 stacked with a gap (2026-11-03, user: the two buttons touched). */
.crew-board-actions button{display:block}.crew-board-actions button+button{margin-top:var(--space-2)}
.crew-tab-step{align-self:center;color:var(--text-secondary)}.crew-tab-step,.crew-tab-gap{user-select:none}.crew-tab-break{flex-basis:100%;block-size:0}
.crew-cause{font-size:var(--text-sm);font-weight:var(--weight-semibold)}
/* The menu as a drawer (2026-11-03): a toggle on top; folded, a rail of the groups' icons. */
.tower-menu-toggle{display:inline-flex;align-items:center;justify-content:center;inline-size:var(--size-control-target);block-size:var(--size-control-target);margin-block-end:var(--space-2);padding:0;background:transparent;border:0;border-radius:var(--radius-control);color:var(--text-secondary);cursor:pointer}
.tower-menu-toggle:hover{background:var(--surface-hover);color:var(--text)}
.tower-menu-icon{inline-size:var(--space-5);block-size:var(--space-5);flex:none;fill:none;stroke:currentColor;stroke-width:var(--stroke-icon);stroke-linecap:round;stroke-linejoin:round}
#tower-menu .tower-menu-group{display:flex;align-items:center;gap:var(--space-2)}
.management-shell[data-folded]{grid-template-columns:calc(var(--size-control-target) + var(--space-6)) minmax(0,1fr)}
.management-shell[data-folded] .tower-menu-label{display:none}
.management-shell[data-folded] #tower-menu .tower-menu-group{justify-content:center;margin:0;padding:var(--space-3) 0;border-top:0;color:var(--text-secondary)}
.management-shell[data-folded] #tower-menu .tower-menu-group:hover{background:var(--surface-hover);color:var(--text);text-decoration:none}
.tower-menu-section,.tower-menu-items{display:flex;flex-direction:column;gap:var(--space-1)}
.management-shell[data-folded] .tower-menu-section{position:relative}
.management-shell[data-folded] .tower-menu-items{display:none;position:absolute;inset-block-start:0;inset-inline-start:calc(100% + var(--space-6));z-index:var(--z-rail);min-inline-size:calc(var(--space-24) * 2);padding:var(--space-2);background:var(--surface);border:var(--stroke-thin) solid var(--border);border-radius:var(--radius-card)}
.management-shell[data-folded] .tower-menu-section:hover .tower-menu-items,.management-shell[data-folded] .tower-menu-section:focus-within .tower-menu-items{display:flex}
/* The gap to the fly-out is bridged, so the pointer can cross it without closing the menu. */
.management-shell[data-folded] .tower-menu-items::before{content:"";position:absolute;inset-block:0;inset-inline-start:calc(-1 * var(--space-6) - var(--stroke-thin));inline-size:var(--space-6)}
.tower-menu-flyhead{display:none}.management-shell[data-folded] .tower-menu-flyhead{display:block;padding:var(--space-2) var(--space-3);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--weight-semibold)}
