.sf-overlay{position:fixed;inset:0;z-index:1200;background:var(--bg-overlay);display:flex;align-items:flex-end;justify-content:flex-start;padding:var(--space-xl)}.sf-modal{display:flex;flex-direction:column;width:380px;max-width:100%;height:620px;max-height:calc(100dvh - 2 * var(--space-xl));background:var(--surface-card);border:1px solid var(--surface-hairline);border-radius:var(--radius-xl);box-shadow:var(--shadow-floating);overflow:hidden;outline:none;animation:sf-pop var(--dur-base) var(--ease-emphasized)}.sf-modal.is-max{width:min(720px,calc(100vw - 2 * var(--space-xl)));height:calc(100dvh - 2 * var(--space-xl));margin:auto}.sf-overlay:has(.sf-modal.is-max){align-items:center;justify-content:center}@keyframes sf-pop{0%{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.sf-modal{animation:none}}.sf-head{gap:var(--space-sm);padding:var(--space-md) var(--space-md);border-bottom:1px solid var(--surface-hairline)}.sf-badge,.sf-head{display:flex;align-items:center;flex:none}.sf-badge{width:38px;height:38px;border-radius:var(--radius-full);justify-content:center;background:var(--gold-gradient)}.sf-head-text{flex:1 1;min-width:0}.sf-title{font-weight:700;font-size:var(--fs-caption);color:var(--text-primary)}.sf-pill{display:inline-flex;align-items:center;gap:6px;margin-top:3px;padding:2px 9px;border-radius:var(--radius-pill);font-size:var(--fs-micro);font-weight:600;color:var(--success);background:var(--success-bg)}.sf-pill-dot{width:6px;height:6px;border-radius:var(--radius-full);background:currentColor}.sf-hbtn{width:32px;height:32px;flex:none;border-radius:var(--radius-md);border:1px solid var(--surface-hairline);background:var(--surface-card);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer}.sf-hbtn:hover{background:var(--state-hover);color:var(--text-primary)}.sf-body{overflow:hidden}.sf-body,.sf-form{flex:1 1;min-height:0;display:flex;flex-direction:column}.sf-form{overflow:auto;gap:var(--space-md);padding:var(--space-lg) var(--space-md)}.sf-hello{font-size:var(--fs-caption);font-weight:600;color:var(--text-primary)}.sf-hello span{display:block;margin-top:4px;font-size:var(--fs-micro);font-weight:400;color:var(--text-secondary)}.sf-faq{border:1px solid var(--surface-hairline);border-radius:var(--radius-md);overflow:hidden}.sf-faq-toggle{width:100%;display:flex;align-items:center;gap:var(--space-sm);padding:10px var(--space-md);background:var(--bg-sunken);border:0;font:inherit;font-weight:600;font-size:var(--fs-caption);color:var(--text-primary);cursor:pointer}.sf-faq-caret{-webkit-margin-start:auto;margin-inline-start:auto;color:var(--text-tertiary)}.sf-faq-list{padding:4px var(--space-md) var(--space-sm)}.sf-chips{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.sf-msg{min-height:92px}.sf-err{font-size:var(--fs-caption);color:var(--error);background:var(--error-bg);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md)}.sf-foot{font-size:var(--fs-micro);color:var(--text-tertiary);text-align:center;margin:0}.sf-hp{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;opacity:0;pointer-events:none}.sf-thread,.sf-thread-body{flex:1 1;min-height:0;display:flex;flex-direction:column}.sf-thread-body{overflow:auto;gap:var(--space-md);padding:var(--space-lg) var(--space-md)}.sf-row{display:flex}.sf-row.sf-u{justify-content:flex-start}.sf-row.sf-a{justify-content:flex-end}.sf-bubble{max-width:82%;padding:10px var(--space-md);border-radius:var(--radius-lg);font-size:var(--fs-caption);line-height:1.7;border:1px solid var(--surface-hairline)}.sf-u .sf-bubble{background:var(--state-selected);border-bottom-right-radius:5px}.sf-a .sf-bubble{background:var(--bg-sunken);border-bottom-left-radius:5px}.sf-bubble-text{white-space:pre-wrap;color:var(--text-primary);word-break:break-word}.sf-who{font-size:var(--fs-micro);font-weight:700;color:var(--gold-deep);margin-bottom:4px}.sf-ts{display:block;font-size:10.5px;margin-top:5px}.sf-sys,.sf-ts{color:var(--text-tertiary)}.sf-sys{align-self:center;margin:2px auto;font-size:var(--fs-micro);background:var(--bg-sunken);border:1px dashed var(--surface-divider);border-radius:var(--radius-pill);padding:5px var(--space-md)}.sf-thread-err{color:var(--error);background:var(--error-bg)}.sf-thread-err,.sf-ticket-note{font-size:var(--fs-micro);padding:var(--space-sm) var(--space-md)}.sf-ticket-note{flex:none;line-height:1.7;color:#7a5e1e;background:#fbf4e2;border-top:1px solid var(--surface-hairline)}.theme-dark .sf-ticket-note,[data-theme=dark] .sf-ticket-note{color:var(--text-secondary);background:var(--warning-bg)}.sf-cap-note{font-size:var(--fs-micro);line-height:1.7;color:var(--text-secondary);background:var(--state-selected);padding:var(--space-sm) var(--space-md)}.sf-cap-note,.sf-composer{flex:none;border-top:1px solid var(--surface-hairline)}.sf-composer{display:flex;gap:var(--space-sm);align-items:flex-end;padding:var(--space-md)}.sf-composer-input{flex:1 1;min-height:0;height:44px;max-height:120px;resize:none;border:1px solid var(--surface-hairline);border-radius:var(--radius-xl);padding:11px var(--space-lg);font:inherit;font-size:var(--fs-caption);background:var(--surface-input);color:var(--text-primary)}.sf-composer-input:focus{outline:none;border-color:var(--gold-primary)}@media (max-width:640px){.sf-composer-input,.sf-modal .field-input,.sf-modal .sf-msg,.sf-page-card .sf-composer-input{font-size:16px}}.sf-send{flex:none;width:44px;height:44px;border:0;border-radius:var(--radius-full);background:var(--gold-gradient);color:var(--gold-on);display:flex;align-items:center;justify-content:center;cursor:pointer}.sf-send:disabled{opacity:.5;cursor:default}.sf-list{flex:1 1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-lg) var(--space-md)}.sf-list-head{display:flex;align-items:center;justify-content:space-between;font-weight:700;color:var(--text-primary);margin-bottom:var(--space-xs)}.sf-list-item{display:flex;flex-direction:column;gap:6px;width:100%;text-align:start;padding:var(--space-md);border:1px solid var(--surface-hairline);border-radius:var(--radius-md);background:var(--surface-card);cursor:pointer;font:inherit}.sf-list-item:hover{background:var(--state-hover)}.sf-li-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.sf-li-ref{font-size:var(--fs-micro);color:var(--text-tertiary)}.sf-li-preview{font-size:var(--fs-caption);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-back,.sf-li-preview{color:var(--text-secondary)}.sf-back{display:inline-flex;align-items:center;gap:4px;margin:var(--space-sm) var(--space-md) 0;padding:0;background:none;border:0;font:inherit;font-size:var(--fs-micro);cursor:pointer}.sf-back:hover{color:var(--text-primary)}@media (max-width:640px){.sf-overlay{padding:0;align-items:flex-end}.sf-modal{width:100%;height:92dvh;max-height:92dvh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;border-bottom:0;animation:sf-sheet var(--dur-base) var(--ease-emphasized)}.sf-modal.is-max{width:100%;height:100dvh;max-height:100dvh;border-radius:0;margin:0}.sf-overlay:has(.sf-modal.is-max){align-items:stretch;justify-content:stretch}}@keyframes sf-sheet{0%{transform:translateY(100%)}to{transform:none}}@media (prefers-reduced-motion:reduce){.sf-modal{animation:none!important}}.sf-page-card{max-width:640px;margin:0 auto;display:flex;flex-direction:column;min-height:min(70vh,560px);background:var(--surface-card);border:1px solid var(--surface-hairline);border-radius:var(--radius-xl);box-shadow:var(--shadow-raised);overflow:hidden}.sf-page-head{gap:var(--space-sm);padding:var(--space-lg);border-bottom:1px solid var(--surface-hairline)}.sf-page-empty,.sf-page-head{display:flex;align-items:center}.sf-page-empty{max-width:480px;margin:var(--space-3xl) auto;text-align:center;color:var(--text-secondary);flex-direction:column;gap:var(--space-md)}button.sf-drawer-support,button.sf-nav-support{background:none;border:0;font:inherit;cursor:pointer}button.sf-drawer-support{width:100%}.sf-footer-link{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:start}.sf-footer-link:hover{color:var(--text-primary)}.sf-admin-scrim{position:fixed;inset:0;z-index:1200;background:rgba(0,0,0,.5)}.sf-admin-modal{position:fixed;top:50%;inset-inline-start:50%;transform:translate(-50%,-50%);z-index:1201;width:min(540px,94vw);height:min(680px,88vh);display:flex;flex-direction:column;overflow:hidden;background:var(--surface-card);border:1px solid var(--surface-hairline);border-radius:var(--radius-xl);box-shadow:var(--shadow-floating)}.sf-admin-head{justify-content:space-between;padding:var(--space-md) var(--space-lg)}.sf-admin-context,.sf-admin-head{flex:none;display:flex;align-items:center;gap:var(--space-sm);border-bottom:1px solid var(--surface-hairline)}.sf-admin-context{flex-wrap:wrap;padding:var(--space-sm) var(--space-lg);background:var(--bg-sunken);font-size:var(--fs-micro);color:var(--text-secondary)}.sf-fab-wrap{display:none}@media (min-width:901px){.sf-fab-wrap{display:block;position:fixed;bottom:var(--space-xl);right:var(--space-xl);z-index:1100}}.sf-fab{width:56px;height:56px;border:0;border-radius:var(--radius-full);background:var(--gold-gradient);color:var(--gold-on);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-floating);transition:transform var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.sf-fab svg{width:26px;height:26px}.sf-fab:hover{transform:translateY(-2px)}.sf-fab:focus-visible{outline:none;box-shadow:var(--focus-ring),var(--shadow-floating)}.sf-fab-tip{right:calc(100% + var(--space-sm));white-space:nowrap;background:var(--text-primary);color:var(--bg-base);font-size:var(--fs-micro);font-weight:600;padding:7px 12px;border-radius:var(--radius-md);box-shadow:var(--shadow-raised);opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-standard)}.sf-fab-tip,.sf-fab-tip:after{position:absolute;top:50%;transform:translateY(-50%)}.sf-fab-tip:after{content:"";right:-4px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid var(--text-primary)}.sf-fab-wrap:focus-within .sf-fab-tip,.sf-fab-wrap:hover .sf-fab-tip{opacity:1}@media (prefers-reduced-motion:reduce){.sf-fab,.sf-fab-tip{transition:none}.sf-fab:hover{transform:none}}