.free-controls{max-width:480px;width:calc(100% - 32px);max-height:90dvh;overflow:auto;border:0;border-radius:20px;padding:24px;color:#262921;background:#faf8f3}.free-controls::backdrop{background:#18201688}.free-controls h2{margin-top:0}.free-controls p{line-height:1.5}.free-controls label{display:grid;gap:8px;margin:18px 0;font-size:14px}.free-controls input{min-height:44px;padding:10px;border:1px solid #999;border-radius:8px;font:inherit}.free-controls button{padding:12px 18px;min-height:44px;background:#943f28;color:white;border:0;border-radius:10px;margin:0 8px 12px 0;font:inherit;cursor:pointer}.free-controls a{display:block;color:#943f28;margin:12px 0;overflow-wrap:anywhere}.free-controls :focus-visible{outline:3px solid #943f28;outline-offset:3px}body.free-plan #room-rec-tag,body.free-plan .rec-dot{display:none!important}

.free-controls textarea{width:100%;box-sizing:border-box;padding:12px;font:inherit;border:1px solid #999;border-radius:10px;margin:16px 0}

.free-ui { width: 100%; color: var(--ink, #262921); font-size: 1rem; }
.free-card { background: var(--bg-surface, #fff); border: 1px solid var(--line, #dfded8); border-radius: 16px; padding: 22px; margin-bottom: 18px; min-width: 0; }
.free-card h3 { margin: 0 0 10px; font-size: 1.12rem; }
.free-card h4 { margin: 0 0 10px; }
.free-hint { color: var(--ink-soft, #596056); font-size: .88rem; line-height: 1.6; font-weight: 400; }
.free-ui label { display: grid; gap: 8px; margin: 18px 0; font-weight: 600; }
.free-ui input { box-sizing: border-box; width: 100%; min-width: 0; min-height: 46px; padding: 12px; border: 1px solid var(--line-strong, #999); border-radius: 10px; font: inherit; color: inherit; background: var(--bg-surface, #fff); }
.free-ui button { min-height: 44px; border: 1px solid transparent; border-radius: 10px; padding: 11px 18px; background: var(--red-accent, #943f28); color: #fff; font: inherit; font-size: .92rem; font-weight: 600; line-height: 1.4; cursor: pointer; }
.free-ui .free-secondary { background: transparent; border-color: var(--line-strong, #aaa); color: inherit; }
.free-ui button:disabled { opacity: .6; cursor: wait; }
.free-ui .free-check { display: flex; align-items: flex-start; gap: 10px; font-weight: 400; font-size: .9rem; line-height: 1.6; }
.free-ui .free-check input { width: 20px; min-height: 20px; height: 20px; flex: none; margin-top: 3px; }
.free-ui a { color: var(--red-accent, #943f28); text-underline-offset: 3px; }
.free-ui summary { cursor: pointer; font-weight: 600; min-height: 24px; }
.free-status { line-height: 1.5; font-size: .9rem; margin: 12px 0 0; }
.free-status:empty { display: none; }
.free-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.free-invite-result { margin-top: 20px; border-top: 1px solid var(--line, #ddd); padding-top: 20px; }
.free-danger summary { color: var(--red-accent, #943f28); }
.free-ui :focus-visible { outline: 3px solid var(--red-accent, #943f28); outline-offset: 3px; }

.people-owner-actions { padding: 4px 14px 12px; }
.people-invite { width: 100%; }
.free-panel { position: absolute; inset: 0; z-index: 75; display: flex; flex-direction: column; background: var(--bg-app); }
.free-panel .set-head { flex: none; }
.free-panel .set-head-title { margin: 0; }
.free-panel .set-back { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 44px; height: 44px; padding: 10px; border: 0; border-radius: 10px; background: transparent; color: inherit; cursor: pointer; }
.free-panel .set-back svg { width: 22px; height: 22px; transform: rotate(180deg); }
.free-panel .set-back:hover { background: #ffffff20; }
.free-panel-body { min-height: 0; overflow-y: auto; flex: 1; padding: 22px; }
.free-panel-body > .free-ui { max-width: 960px; margin-inline: auto; }
.free-workspace-host { width: 100%; }
.set-card:has(.free-workspace-host) { background: transparent; border: 0; }
.set-row:has(> .free-workspace-host) { padding: 0; background: transparent; }
.set-row:has(> .free-workspace-host) > .set-row-main { display: none; }
.live-support-row { text-align: left; width: 100%; color: inherit; background: var(--bg-surface); border: 0; border-bottom: 1px solid var(--line); font: inherit; cursor: pointer; }
.live-support-row .avatar { background: var(--red-accent); color: white; flex: none; }
.live-support-row svg { width: 24px; height: 24px; }
.live-support-copy { display: grid; gap: 5px; min-width: 0; }
.live-support-copy span { font-size: .85rem; color: var(--ink-soft); }
.set-disclosure { background: var(--bg-surface); border: 1px solid var(--line); border-radius: 14px; margin-bottom: 14px; overflow: hidden; }
.set-disclosure > summary { cursor: pointer; padding: 18px 20px; min-height: 44px; box-sizing: border-box; }
.set-disclosure > summary strong { font-size: 1rem; font-weight: 600; }
.set-disclosure > summary span { display: block; margin: 6px 0 0 17px; font-size: .85rem; line-height: 1.45; color: var(--ink-soft); }
.set-disclosure > summary:focus-visible { outline: 3px solid var(--red-accent); outline-offset: -3px; }
.set-disclosure[open] > summary { border-bottom: 1px solid var(--line); }
.set-disclosure > .set-section { margin: 0; }
.set-disclosure .set-card { margin: 0; border: 0; border-radius: 0; }
.set-disclosure .set-grp-help { padding: 12px 16px 0; }
.set-category-list { background: transparent; border: 0; }
.set-category-list .set-nav { background: var(--bg-surface); }
.set-overview h2 { margin: 0 0 10px; font-size: 1.6rem; }
.set-overview-intro { color: var(--ink-soft); margin: 0 0 26px; line-height: 1.6; }
.set-overview-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); gap: 16px; }
.set-overview-card { display: grid; gap: 10px; text-align: left; padding: 24px; color: var(--ink); background: var(--bg-surface); border: 1px solid var(--line); border-radius: 16px; font: inherit; cursor: pointer; }
.set-overview-card span { font-size: .9rem; color: var(--ink-soft); line-height: 1.5; }
.set-overview-card:hover { border-color: var(--red-accent); }
@media (min-width: 957px) {
  .app--panes > .free-panel { left: calc(60px + var(--list-w, clamp(360px, 30%, 460px))); z-index: 12; }
  .set-detail-body { padding: 28px; container-type: inline-size; }
  .set-detail-body .set-section { margin: 0; }
  .set-detail-body .set-card { margin-inline: 0; }
  .set-list .set-nav { padding-block: 12px; }
  .set-pane > .set-me { padding-block: 10px; }
  .set-pane .set-me-av { width: 40px; height: 40px; font-size: .9rem; }
  .set-list > button.set-nav { width: 100%; text-align: left; font: inherit; font-size: 1rem; font-weight: 600; color: var(--ink); border: 0; background: var(--bg-surface); cursor: pointer; }
}
@container (min-width: 760px) { .free-workspace { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; align-items: start; } .free-workspace .free-card { margin: 0; } }
@media (max-width: 956px) { .free-panel { position: fixed; } }

.free-panel--chat .free-panel-body { padding: 0; overflow: hidden; display: flex; }
.support-conversation { display: flex; flex-direction: column; min-height: 0; width: 100%; height: 100%; }
.support-notice { flex: none; padding: 10px 20px; background: var(--bg-surface); border-bottom: 1px solid var(--line); color: var(--ink-soft); font-size: .8rem; }
.support-notice summary { cursor: pointer; }
.support-notice p { line-height: 1.5; margin-bottom: 4px; }
.support-messages { flex: 1; min-height: 0; overflow-y: auto; padding: 20px; display: flex; flex-direction: column; gap: 8px; }
.support-messages .msg--out { align-self: flex-end; }
.support-messages .msg--in { align-self: flex-start; }
.support-day, .support-empty { align-self: center; color: var(--ink-soft); font-size: .8rem; text-align: center; margin: 12px; }
.support-composer { flex: none; margin: 0; }
.support-status { flex: none; padding: 0 20px; font-size: .85rem; color: var(--red-accent); }
.support-status:empty { display: none; }
.live-support-copy span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
