/* Shared CrewChat surfaces and typography follow the active app theme. */
#seafix-demo #sf-chat-safety{box-sizing:border-box;width:min(560px,calc(100vw - 40px));max-height:calc(100dvh - 48px);padding:0;border:1px solid var(--sf-line);border-radius:20px;background:var(--sf-canvas,var(--sf-surface));color:var(--sf-text);font-family:inherit;font-size:var(--sf-chat-text-size,13px);line-height:1.5;box-shadow:0 20px 80px rgb(0 0 0 / .2);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
#seafix-demo #sf-chat-safety[data-safety-view=menu]{width:min(360px,calc(100vw - 32px))}
#seafix-demo #sf-chat-safety::backdrop{background:rgb(0 0 0 / .32);backdrop-filter:blur(5px)}
#seafix-demo #sf-chat-safety [hidden]{display:none!important}
#seafix-demo #sf-chat-safety>header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;background:var(--sf-canvas,var(--sf-surface));border-bottom:1px solid var(--sf-line)}
#seafix-demo #sf-chat-safety h2{margin:0;color:var(--sf-heading);font-size:16px;line-height:1.35;font-weight:600;letter-spacing:-.2px}
#seafix-demo #sf-chat-safety :is(button,select,textarea){font:inherit;color:var(--sf-heading);border:1px solid var(--sf-line);border-radius:11px;min-height:40px;padding:10px 12px;background:var(--sf-surface-raised);box-shadow:none}
#seafix-demo #sf-chat-safety button{display:inline-flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;text-align:left;font-weight:500;background:transparent;line-height:1.4}
#seafix-demo #sf-chat-safety button svg{width:18px;height:18px;flex:none}
#seafix-demo #sf-chat-safety button span{min-width:0;overflow-wrap:anywhere}
#seafix-demo #sf-chat-safety [data-safety-close]{width:32px;height:32px;min-height:32px;flex:none;padding:6px;border:0;border-radius:50%;color:var(--sf-muted);background:var(--sf-surface-raised)}
#seafix-demo #sf-chat-safety button:disabled{opacity:.45;cursor:default}
#seafix-demo #sf-chat-safety :is(button,select,textarea,input):focus-visible{outline:2px solid var(--sf-heading);outline-offset:3px;box-shadow:none}
#seafix-demo #sf-chat-safety .sf-safety-content{padding:20px;display:grid;gap:16px}
#seafix-demo #sf-chat-safety p{margin:0;line-height:1.6;overflow-wrap:anywhere;color:var(--sf-muted)}
#seafix-demo #sf-chat-safety .sf-safety-person{font-size:14px;font-weight:600;color:var(--sf-heading)}
#seafix-demo #sf-chat-safety [data-safety-note]{margin:16px 20px 0;padding:12px 14px;border:1px solid var(--sf-line);border-radius:12px;background:var(--sf-surface-raised);color:var(--sf-text)}
#seafix-demo #sf-chat-safety [data-safety-note].is-error{color:var(--sf-danger);background:var(--sf-danger-soft);border-color:color-mix(in srgb,var(--sf-danger) 25%,transparent)}
#seafix-demo #sf-chat-safety :is(nav,[data-safety-peers],form){display:grid;gap:16px;min-width:0}
#seafix-demo #sf-chat-safety .sf-safety-options{gap:0;border:1px solid var(--sf-line);border-radius:14px;background:var(--sf-surface);overflow:hidden}
#seafix-demo #sf-chat-safety .sf-safety-options button{justify-content:flex-start;width:100%;min-height:50px;padding:14px;border:0;border-radius:0;font-weight:400;gap:12px}
#seafix-demo #sf-chat-safety .sf-safety-options button+button{border-top:1px solid var(--sf-line)}
#seafix-demo #sf-chat-safety .sf-safety-options button::after{content:"";width:6px;height:6px;flex:none;margin-left:auto;border-right:1.5px solid var(--sf-muted);border-top:1.5px solid var(--sf-muted);transform:rotate(45deg);opacity:.65}
#seafix-demo #sf-chat-safety label{display:grid;gap:8px;font-weight:500;color:var(--sf-heading)}
#seafix-demo #sf-chat-safety textarea{width:100%;resize:vertical;box-sizing:border-box;line-height:1.5}
#seafix-demo #sf-chat-safety select{width:100%;max-width:100%}
#seafix-demo #sf-chat-safety fieldset{min-width:0;margin:0;padding:12px;border:1px solid var(--sf-line);border-radius:14px}
#seafix-demo #sf-chat-safety legend{padding:0 6px;color:var(--sf-heading);font-weight:500}
#seafix-demo #sf-chat-safety [data-safety-messages]{max-height:28dvh;overflow:auto;overscroll-behavior:contain;display:grid;gap:8px;scrollbar-width:thin}
#seafix-demo #sf-chat-safety .sf-safety-message{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid transparent;border-radius:11px;background:var(--sf-surface-raised);font-weight:400;cursor:pointer}
#seafix-demo #sf-chat-safety .sf-safety-message:has(input:checked){border-color:var(--sf-heading)}
#seafix-demo #sf-chat-safety input[type=checkbox]{width:18px;height:18px;flex:none;margin:2px 0;accent-color:var(--sf-heading)}
#seafix-demo #sf-chat-safety .sf-safety-message>span{display:grid;gap:4px;min-width:0;white-space:pre-wrap;overflow-wrap:anywhere}
#seafix-demo #sf-chat-safety strong{font-weight:600;color:var(--sf-heading)}
#seafix-demo #sf-chat-safety small{font-size:11px;color:var(--sf-muted)}
#seafix-demo #sf-chat-safety .sf-safety-consent{display:flex;align-items:flex-start;gap:10px;line-height:1.5;font-weight:400}
#seafix-demo #sf-chat-safety footer{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:4px;padding-top:16px;border-top:1px solid var(--sf-line)}
#seafix-demo #sf-chat-safety :is(button[type=submit],[data-safety-submit]){background:var(--sf-heading);color:var(--sf-canvas,var(--sf-surface));border-color:var(--sf-heading);font-weight:600}
#seafix-demo #sf-chat-safety :is(.sf-safety-evidence,.sf-safety-list-item){display:grid;gap:8px;padding:14px;margin:0 0 10px;border:1px solid var(--sf-line);border-radius:14px;background:var(--sf-surface);overflow-wrap:anywhere}
#seafix-demo #sf-chat-safety :is(.sf-safety-copy,.sf-safety-evidence p){white-space:pre-wrap;color:var(--sf-text)}
#seafix-demo #sf-chat-safety .sf-safety-disclosure{padding:14px;background:var(--sf-surface-raised);border-radius:12px;font-size:12px}
#seafix-demo #sf-chat-person[role=button]{cursor:pointer;border-radius:8px}
#seafix-demo #sf-chat-person[role=button]:focus-visible{outline:2px solid var(--sf-heading);outline-offset:3px}
@media(hover:hover){#seafix-demo #sf-chat-safety button:not(:disabled):not([type=submit]):not([data-safety-submit]):hover{background:var(--sf-surface-raised)}#seafix-demo #sf-chat-safety :is(button[type=submit],[data-safety-submit]):not(:disabled):hover{opacity:.85}}
@media(max-width:759px){#seafix-demo #sf-chat-safety{border-radius:20px;width:calc(100vw - 24px);max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 32px)}#seafix-demo #sf-chat-safety>header{padding:16px}#seafix-demo #sf-chat-safety .sf-safety-content{padding:16px}#seafix-demo #sf-chat-safety :is(select,textarea){font-size:16px}#seafix-demo #sf-chat-safety footer button{flex:1;min-height:44px}#seafix-demo #sf-chat-safety [data-safety-note]{margin-inline:16px}}
