:root{--sm-bg: #0b1120;--sm-surface: #131c31;--sm-surface-elevated: #1e293b;--sm-text: #f8fafc;--sm-text-muted: #94a3b8;--sm-border: rgba(148, 163, 184, .22);--sm-primary: #f59e0b;--sm-primary-text: #0f172a;--sm-ai-badge-bg: rgba(139, 92, 246, .22);--sm-ai-badge-border: #a78bfa;--sm-ai-badge-text: #ddd6fe;--sm-scale: 1}html[data-theme=light]{--sm-bg: #f1f5f9;--sm-surface: #ffffff;--sm-surface-elevated: #f8fafc;--sm-text: #0f172a;--sm-text-muted: #475569;--sm-border: rgba(15, 23, 42, .15);--sm-primary: #d97706;--sm-primary-text: #ffffff;--sm-ai-badge-bg: #ede9fe;--sm-ai-badge-border: #7c3aed;--sm-ai-badge-text: #5b21b6}html.large-text{--sm-scale: 1.3}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{margin:0;font-family:Be Vietnam Pro,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--sm-bg);color:var(--sm-text);font-size:calc(16px * var(--sm-scale));line-height:1.5}.sm-viewport{min-height:100dvh;display:flex;justify-content:center;background:var(--sm-bg)}.sm-phone-frame{width:100%;max-width:440px;min-height:100dvh;display:flex;flex-direction:column;background:var(--sm-surface);border-left:1px solid var(--sm-border);border-right:1px solid var(--sm-border);position:relative}.sm-offline-banner{background:#b91c1c;color:#fff;padding:10px 16px;text-align:center;font-weight:600;font-size:calc(.9rem * var(--sm-scale))}.sm-topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--sm-border);gap:10px}.sm-topbar-brand{display:flex;align-items:center;gap:10px}.sm-brand-dot{width:38px;height:38px;border-radius:12px;background:#f59e0b2e;color:var(--sm-primary);display:inline-flex;align-items:center;justify-content:center;font-size:1.2rem}.sm-brand-title{display:block;font-size:calc(1.05rem * var(--sm-scale));line-height:1.2}.sm-brand-subtitle{display:block;font-size:calc(.78rem * var(--sm-scale));color:var(--sm-text-muted)}.sm-topbar-actions{display:flex;align-items:center;gap:8px}.sm-pill-btn,.sm-icon-btn{min-height:48px;min-width:48px;padding:0 14px;border-radius:999px;border:1px solid var(--sm-border);background:var(--sm-surface-elevated);color:var(--sm-text);font-family:inherit;font-weight:600;font-size:calc(.88rem * var(--sm-scale));cursor:pointer}.sm-pill-btn.is-active{border-color:var(--sm-primary);background:#f59e0b2e}.sm-content{flex:1;padding:14px 16px 110px;display:flex;flex-direction:column;gap:14px}.sm-role-switcher{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}.sm-toast{background:#f59e0b2e;border:1.5px solid var(--sm-primary);color:var(--sm-text);padding:12px 14px;border-radius:14px;font-weight:600;font-size:calc(.88rem * var(--sm-scale))}.sm-card{background:var(--sm-surface-elevated);border:1px solid var(--sm-border);border-radius:20px;padding:18px 16px}.sm-subcard{background:var(--sm-surface);border:1px solid var(--sm-border);border-radius:16px;padding:14px;margin:12px 0;display:flex;flex-direction:column;gap:10px}.sm-card-header-row{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:10px}.sm-stage-badge{font-size:calc(.78rem * var(--sm-scale));color:var(--sm-text-muted);font-weight:600}.sm-badge-subtle{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;background:#94a3b829;color:var(--sm-text);font-size:calc(.76rem * var(--sm-scale));font-weight:600}.sm-badge-warn{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;background:#f59e0b38;color:var(--sm-primary);font-size:calc(.76rem * var(--sm-scale));font-weight:700}.sm-ai-replica-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:999px;background:var(--sm-ai-badge-bg);border:1.5px solid var(--sm-ai-badge-border);color:var(--sm-ai-badge-text);font-weight:700;font-size:calc(.8rem * var(--sm-scale))}.sm-page-title{margin:4px 0 8px;font-size:calc(1.35rem * var(--sm-scale));line-height:1.25}.sm-section-title{margin:0 0 10px;font-size:calc(1.08rem * var(--sm-scale))}.sm-page-desc{margin:0 0 14px;color:var(--sm-text-muted);font-size:calc(.92rem * var(--sm-scale))}.sm-field-label{display:block;margin:10px 0 6px;font-weight:600;font-size:calc(.88rem * var(--sm-scale))}.sm-phone-row{display:flex;gap:8px;margin-bottom:14px}.sm-select-country{min-height:50px;padding:0 12px;border-radius:14px;border:1px solid var(--sm-border);background:var(--sm-surface);color:var(--sm-text);font-family:inherit;font-size:calc(.95rem * var(--sm-scale));font-weight:600}.sm-input,.sm-textarea{width:100%;min-height:50px;padding:10px 14px;border-radius:14px;border:1px solid var(--sm-border);background:var(--sm-surface);color:var(--sm-text);font-family:inherit;font-size:calc(.96rem * var(--sm-scale));margin-bottom:10px}.sm-otp-input{text-align:center;letter-spacing:8px;font-size:calc(1.4rem * var(--sm-scale));font-weight:700}.sm-two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sm-chip-grid{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}.sm-chip-btn{min-height:44px;padding:8px 12px;border-radius:999px;border:1px solid var(--sm-border);background:var(--sm-surface);color:var(--sm-text);font-family:inherit;font-size:calc(.84rem * var(--sm-scale));font-weight:600;cursor:pointer;white-space:nowrap}.sm-chip-btn.is-selected{border-color:var(--sm-primary);background:#f59e0b33;color:var(--sm-text)}.sm-portrait-demo-wrap{display:flex;flex-direction:column;align-items:center;margin:12px 0 16px}.sm-living-portrait-canvas{border-radius:999px}.sm-caption{margin:6px 0 0;font-size:calc(.8rem * var(--sm-scale));color:var(--sm-text-muted);text-align:center}.sm-caption-left{margin:4px 0 0;font-size:calc(.82rem * var(--sm-scale));color:var(--sm-text-muted)}.sm-btn-primary{width:100%;min-height:calc(54px * var(--sm-scale));padding:12px 18px;border-radius:16px;border:none;background:var(--sm-primary);color:var(--sm-primary-text);font-family:inherit;font-size:calc(1rem * var(--sm-scale));font-weight:700;cursor:pointer;margin-top:8px}.sm-btn-link-block{display:flex;align-items:center;justify-content:center;text-decoration:none}.sm-btn-secondary{width:100%;min-height:50px;padding:10px 16px;border-radius:14px;border:1px solid var(--sm-border);background:var(--sm-surface);color:var(--sm-text);font-family:inherit;font-size:calc(.94rem * var(--sm-scale));font-weight:600;cursor:pointer}.sm-btn-secondary-pill{min-height:48px;padding:8px 14px;border-radius:999px;border:1px solid var(--sm-border);background:var(--sm-surface);color:var(--sm-text);font-family:inherit;font-size:calc(.85rem * var(--sm-scale));font-weight:600;cursor:pointer}.sm-btn-call-pill{min-height:48px;padding:8px 16px;border-radius:999px;border:none;background:var(--sm-primary);color:var(--sm-primary-text);font-family:inherit;font-size:calc(.88rem * var(--sm-scale));font-weight:700;cursor:pointer}.sm-btn-text{min-height:48px;border:none;background:transparent;color:var(--sm-primary);font-family:inherit;font-size:calc(.88rem * var(--sm-scale));font-weight:600;cursor:pointer}.sm-secondary-stack{margin-top:10px;display:flex;flex-direction:column;gap:8px}.sm-secondary-row{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.sm-list-stack{display:flex;flex-direction:column;gap:12px}.sm-person-card,.sm-photo-item-card{background:var(--sm-surface);border:1px solid var(--sm-border);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:10px}.sm-ai-card{border-color:var(--sm-ai-badge-border)}.sm-person-top{display:flex;align-items:center;gap:12px}.sm-person-info{flex:1;display:flex;flex-direction:column;gap:4px}.sm-person-title-row{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap}.sm-person-meta{font-size:calc(.82rem * var(--sm-scale));color:var(--sm-text-muted)}.sm-person-actions{display:flex;flex-wrap:wrap;gap:8px}.sm-avatar-circle{width:52px;height:52px;border-radius:999px;background:#f59e0b33;color:var(--sm-primary);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem}.sm-member-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:14px 0}.sm-member-grid.is-single-col{grid-template-columns:1fr}.sm-member-tile{background:var(--sm-surface);border:2px solid var(--sm-ai-badge-border);border-radius:20px;padding:16px 12px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;text-align:center}.sm-tile-name{font-size:calc(1.08rem * var(--sm-scale))}.sm-tile-sub{font-size:calc(.82rem * var(--sm-scale));color:var(--sm-text-muted)}.sm-learning-banner{background:#8b5cf624;border:1px solid var(--sm-ai-badge-border);border-radius:14px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px;font-size:calc(.84rem * var(--sm-scale))}.sm-btn-inline-off{min-height:40px;padding:4px 12px;border-radius:999px;border:1px solid var(--sm-border);background:var(--sm-surface);color:var(--sm-text);font-weight:700;cursor:pointer}.sm-request-card{background:#f59e0b24;border:1.5px solid var(--sm-primary);border-radius:16px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.sm-call-screen{text-align:center}.sm-call-title{margin:4px 0 2px;font-size:calc(1.45rem * var(--sm-scale))}.sm-call-Addressing{margin:0 0 8px;font-size:calc(.86rem * var(--sm-scale));color:var(--sm-text-muted)}.sm-subtitle-bubble{background:var(--sm-surface);border:1px solid var(--sm-border);border-radius:16px;padding:14px;margin:10px 0}.sm-subtitle-text{margin:0;font-size:calc(1.02rem * var(--sm-scale));font-weight:500}.sm-quick-prompts{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:8px 0 12px}.sm-call-input-row{display:flex;gap:8px;margin-bottom:10px}.sm-call-input-row .sm-input{margin-bottom:0}.sm-btn-send-text{min-height:50px;min-width:68px;border-radius:14px;border:1px solid var(--sm-primary);background:#f59e0b33;color:var(--sm-text);font-weight:700;cursor:pointer}.sm-btn-call-main{min-height:88px;font-size:calc(1.12rem * var(--sm-scale));border-radius:22px}.sm-btn-call-main.is-listening{background:#ef4444;color:#fff}.sm-call-controls-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.sm-call-ctrl-btn{min-height:54px;border-radius:14px;border:1px solid var(--sm-border);background:var(--sm-surface);color:var(--sm-text);font-family:inherit;font-weight:600;font-size:calc(.84rem * var(--sm-scale));cursor:pointer}.sm-call-ctrl-btn.is-active{border-color:var(--sm-primary);background:#f59e0b2e}.sm-call-end-btn{border-color:#ef444480;color:#fca5a5}.sm-feedback-modal{margin-top:14px;padding:14px;border-radius:16px;background:var(--sm-surface);border:1.5px solid var(--sm-primary)}.sm-feedback-row{display:flex;justify-content:center;gap:10px;margin-top:10px}.sm-alert-box,.sm-preview-box,.sm-meter-box,.sm-reading-prompt-box{background:var(--sm-surface);border:1px solid var(--sm-border);border-radius:16px;padding:14px;margin:12px 0;display:flex;flex-direction:column;gap:6px}.sm-reading-sentence{margin:0;font-size:calc(1.15rem * var(--sm-scale));font-weight:600;line-height:1.45}.sm-progress-track{width:100%;height:10px;border-radius:999px;background:#94a3b833;overflow:hidden;margin:6px 0}.sm-progress-fill{height:100%;background:var(--sm-primary);border-radius:999px}.sm-checkbox-row,.sm-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:14px;background:var(--sm-surface);border:1px solid var(--sm-border);margin:10px 0;cursor:pointer}.sm-checkbox-row input,.sm-toggle-row input{width:22px;height:22px;flex-shrink:0}.sm-menu-row-btn{width:100%;min-height:52px;padding:12px 16px;border-radius:14px;border:1px solid var(--sm-border);background:var(--sm-surface);color:var(--sm-text);font-family:inherit;font-size:calc(.92rem * var(--sm-scale));font-weight:600;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.sm-memory-text{margin:4px 0;font-size:calc(.95rem * var(--sm-scale))}.sm-bottom-dock{position:fixed;bottom:0;width:100%;max-width:440px;display:grid;grid-template-columns:repeat(3,1fr);background:var(--sm-surface);border-top:1px solid var(--sm-border);padding:6px 8px calc(6px + env(safe-area-inset-bottom));z-index:20}.sm-dock-btn{min-height:calc(52px * var(--sm-scale));border:none;background:transparent;color:var(--sm-text-muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-family:inherit;font-weight:600;font-size:calc(.82rem * var(--sm-scale));border-radius:12px;cursor:pointer}.sm-dock-btn.is-active{color:var(--sm-primary);background:#f59e0b1f}.sm-dock-icon{font-size:calc(1.2rem * var(--sm-scale))}
