/* One action rail, mounted outside every changing intake view. Physical positions do not mirror. */
.shell{height:var(--layo-flow-vh,100dvh);min-height:0;grid-template-rows:104px 3px minmax(0,1fr) auto}
.flow-footer{direction:ltr;display:grid;grid-template-columns:128px minmax(0,1fr) 160px;align-items:center;gap:12px;padding:10px clamp(16px,3vw,42px) max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg);min-height:76px;z-index:20}
.flow-footer .primary,.flow-footer .secondary{width:100%;height:52px;min-height:52px;justify-content:center;padding:0 12px;line-height:1.2}
.flow-footer .primary:hover,.flow-footer .secondary:hover{transform:none}
.flow-footer .flow-review{justify-self:center;max-width:100%;font-size:14px;line-height:1.2;text-align:center}
.flow-footer[aria-hidden=true]{visibility:hidden}
.flow-view{width:min(900px,100%);margin:0 auto;padding-bottom:16px}
.flow-view h2{font-size:clamp(24px,3vw,38px);line-height:1.2;letter-spacing:-.025em}
.flow-view .flow-intro{margin-bottom:20px}
.flow-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.flow-field{min-width:0;margin-bottom:20px;scroll-margin-block:20px}
.flow-field.wide{grid-column:1/-1}
.flow-field label,.flow-field legend{display:block;font-size:16px;font-weight:600;line-height:1.4;margin:0 0 9px}
.flow-field .helper,.flow-hint{font-size:14px;line-height:1.55;margin:8px 0}
.answer-composer{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.85);padding:12px}
.answer-composer:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(121,147,164,.12)}
.answer-composer textarea{width:100%;min-height:66px;max-height:160px;padding:6px 2px;border:0;resize:vertical;outline:none;background:transparent;color:var(--ink);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}
.selected-tags{display:flex;gap:8px;flex-wrap:wrap}
.selected-tags:empty{display:none}
.selected-tag{min-height:44px;max-width:100%;border:1px solid var(--accent);border-radius:16px;background:#edf2f5;color:var(--ink);padding:8px 12px;font-size:14px;text-align:start;display:flex;gap:10px;align-items:center}
.flow-options{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.flow-options .suggestion-chip{min-height:44px;font-size:14px;line-height:1.4;text-align:start}
.flow-options .suggestion-chip:hover{transform:none}
.flow-input{width:100%;height:54px;border:1px solid var(--line);border-radius:15px;padding:0 14px;background:white;color:var(--ink);min-width:0;font-size:16px}
.flow-compact{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,.6fr);gap:12px}
.flow-notice{border:1px solid var(--line);border-radius:16px;padding:16px;background:rgba(255,255,255,.76);margin:16px 0;font-size:15px;line-height:1.55}
.flow-error{color:var(--danger);font-size:14px;min-height:22px;line-height:1.5}
.flow-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.flow-detail-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
.flow-detail-list button{min-height:60px;text-align:start;border:1px solid var(--line);border-radius:16px;padding:16px;background:white;color:var(--ink)}
.flow-summary{margin:16px 0;display:grid;gap:12px}.flow-fact{border-bottom:1px solid var(--line);padding-bottom:12px;overflow-wrap:anywhere;line-height:1.55}.flow-fact strong{display:block;font-size:14px;color:var(--muted)}
.flow-room-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.flow-room-layout .room-list{align-content:start}.flow-room-layout .room-card{align-items:start}.flow-room-layout .room-meta strong{white-space:normal}.flow-room-layout .room-meta span{font-size:14px;white-space:pre-wrap}.flow-room-layout .mini-actions{flex-wrap:wrap}.flow-room-layout .empty{padding:18px}
.flow-proposal{padding:14px;border:1px solid var(--line);border-radius:16px;background:white;margin:12px 0}.flow-proposal blockquote{font-size:14px;color:var(--muted);margin:8px 0;white-space:pre-wrap;overflow-wrap:anywhere}.flow-proposal label{display:flex;gap:12px;align-items:start}.flow-proposal input{width:20px;height:20px;flex:none}.flow-proposal.conflict{border-color:var(--warning)}
.flow-live{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.flow-hidden-nav{display:none!important}
html[dir=rtl] .flow-view h2,html[dir=rtl] .flow-field label{letter-spacing:normal;line-height:1.6}
html[dir=rtl] .flow-footer button{direction:rtl}
.flow-footer:focus-within{outline-offset:-3px}
@media(max-width:700px){.shell{grid-template-rows:124px 3px minmax(0,1fr) auto}.flow-grid,.flow-room-layout,.flow-detail-list{grid-template-columns:1fr}.flow-footer{grid-template-columns:76px minmax(0,1fr) 108px;gap:8px;padding-left:12px;padding-right:12px}.flow-footer .primary,.flow-footer .secondary{font-size:14px}.flow-footer .flow-review{font-size:13px}.flow-view{padding-bottom:4px}.flow-view .flow-intro{margin-bottom:14px}.flow-field{margin-bottom:16px}.flow-compact{grid-template-columns:minmax(0,1fr) minmax(80px,.65fr)}.flow-room-layout .mini{min-height:44px}.screen{padding:20px 16px}.flow-footer{min-height:72px}}
@media(max-height:500px){.shell{grid-template-rows:76px 3px minmax(0,1fr) auto}.topbar{min-height:0}.flow-footer{min-height:66px;padding-top:6px;padding-bottom:6px}.flow-footer .primary,.flow-footer .secondary{height:48px;min-height:48px}.brand{max-height:44px}.brand-sub{display:none}}
@media print{.flow-footer{display:none}.shell{display:block;height:auto}.screen{overflow:visible}.flow-hidden-nav{display:none!important}}

/* Draft corrections share the existing form/panel; no values are inserted as HTML. */
.draft-issues{flex-shrink:0;max-height:9rem;overflow:auto;font-size:.88rem;color:var(--muted,#62666d)}
.draft-issues:empty{display:none}.draft-issues p{margin:.3rem 0}.draft-issues button{margin-inline-end:1rem;text-align:start}
.flow-field textarea[data-timing]{width:100%;min-height:4rem;resize:vertical;border:1px solid #d9dedb;border-radius:12px;padding:12px;font:inherit}
