/* Preview only. The production template never loads this stylesheet. */
.preview-ui { --text-muted:#5d6d66; --accent:#42685b; --ui-line:#cbd5ce; letter-spacing:0; overflow-wrap:anywhere; }
.preview-ui *, .preview-ui *::before, .preview-ui *::after { letter-spacing:0; }
.preview-ui :focus-visible { outline:3px solid #486e59; outline-offset:3px; }
.preview-ui a { text-underline-offset:4px; }
.preview-ui .ui-icon { width:20px; height:20px; flex:none; display:inline-block; vertical-align:middle; }
.preview-ui .ui-preview-mark { text-align:center; padding:4px 16px; background:#e5eacd; color:#354a38; font-size:12px; line-height:20px; }
.preview-ui .ui-header { max-width:1280px; margin:auto; padding:18px 48px; display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:20px; border-bottom:1px solid var(--ui-line); }
.preview-ui .ui-brand { display:flex; align-items:center; gap:10px; color:var(--text-dark); text-decoration:none; min-width:0; }
.preview-ui .ui-brand > span { min-width:0; }
.preview-ui .ui-brand > img { flex:none; }
.preview-ui .ui-brand strong { display:block; font-size:24px; font-weight:400; line-height:1.1; }
.preview-ui .ui-brand small { display:block; font-size:12px; color:var(--text-muted); font-style:italic; }
.preview-ui .ui-header-actions { display:flex; align-items:center; gap:20px; }
.preview-ui .ui-languages { display:flex; align-items:center; gap:4px; }
.preview-ui .ui-languages a { display:grid; place-items:center; min-width:36px; min-height:44px; color:var(--text-muted); text-decoration:none; font-size:13px; }
.preview-ui .ui-languages a[aria-current] { color:var(--bg-dark); border-bottom:2px solid var(--bg-dark); }
.preview-ui .ui-account-link { display:flex; align-items:center; gap:8px; min-height:44px; color:var(--bg-dark); font-size:14px; text-decoration:none; }
.preview-ui .ui-account-link:focus-visible { outline-offset:0; }
.preview-ui .page-landing > .site-header, .preview-ui .page-footer, .preview-ui .account-header > .lang-switcher, .preview-ui .captcha-lang-row { display:none; }
.preview-ui .hero { padding-top:36px; padding-bottom:36px; }
.preview-ui .hero-title { font-size:44px; line-height:1.15; }
.preview-ui .hero-description { font-size:16px; line-height:1.65; }
.preview-ui .ui-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:14px 20px; margin:24px 0; }
.preview-ui .ui-text-link { color:var(--bg-dark); font-size:15px; }
.preview-ui .btn, .preview-ui .btn-primary, .preview-ui .cta-button { min-height:44px; font:inherit; font-size:14px; line-height:1.4; border-radius:4px; text-transform:none; }
.preview-ui .btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:10px 16px; background:#fff; border-color:#bac8be; color:var(--bg-dark); text-decoration:none; }
.preview-ui .btn:hover:not(:disabled) { background:#e9efea; }
.preview-ui .btn-success { background:var(--bg-dark); color:#fff; border-color:var(--bg-dark); }
.preview-ui .btn-danger, .preview-ui #requestDeletion { color:#7b3030; border-color:#cba6a2; background:#fff8f6; }
.preview-ui .ui-primary, .preview-ui #emailForm > button, .preview-ui #codeForm > button, .preview-ui #reportOrderForm > button { background:var(--bg-dark); color:white; border-color:var(--bg-dark); }
.preview-ui .ui-primary:hover:not(:disabled), .preview-ui #emailForm > button:hover, .preview-ui #codeForm > button:hover { background:#3f6552; color:white; }
.preview-ui .ui-primary .ui-icon, .preview-ui .cta-card-primary .ui-icon { filter:brightness(0) invert(1); }
.preview-ui button:disabled { opacity:.55; cursor:not-allowed; }
.preview-ui input:not([type=checkbox]):not([type=radio]), .preview-ui select, .preview-ui textarea { border:1px solid #9eafa3; border-radius:4px; font:inherit; font-size:16px; max-width:100%; min-width:0; }
.preview-ui input:not([type=checkbox]):not([type=radio]), .preview-ui select { min-height:44px; padding:10px 12px; }
.preview-ui input[type=checkbox], .preview-ui input[type=radio] { width:18px; height:18px; accent-color:var(--bg-dark); }
.preview-ui .cta-grid { scroll-margin-top:24px; }
.preview-ui .cta-card { padding:26px; border-radius:6px; }
.preview-ui .cta-card-head { min-height:44px; gap:12px; margin-bottom:12px; }
.preview-ui .cta-icon { width:42px; height:42px; }
.preview-ui .cta-title, .preview-ui .cta-title-dark { font-size:25px; }
.preview-ui .ui-mode-label { font-size:16px; line-height:1.45; margin:0 0 12px; }
.preview-ui .cta-description, .preview-ui .cta-description-dark { font-size:15px; line-height:1.6; }
.preview-ui .cta-description { color:#e3eae5; }
.preview-ui .cta-button { border-radius:4px; padding:12px 16px; max-width:100%; align-self:stretch; justify-content:space-between; }
.preview-ui .cta-button > span { min-width:0; overflow-wrap:anywhere; }
.preview-ui .cta-card-primary .cta-button { background:#c8d8c5; }
.preview-ui .trust-pill > span:last-child { color:#586960; font-size:12px; }
.preview-ui .features { border-radius:0; box-shadow:none; background:transparent; padding-top:36px; padding-bottom:36px; border-top:1px solid var(--ui-line); }
.preview-ui .feature-label { font-size:14px; }
.preview-ui .wellbeing { border-radius:0; box-shadow:none; }
.preview-ui .wellbeing-title { text-wrap:pretty; }
.preview-ui .wellbeing-description, .preview-ui .wellbeing-footer-text { color:#e0e8e0; font-size:15px; }
.preview-ui .wellbeing-signature { color:#c8d6ca; font-size:13px; }
.preview-ui .safety-footer { padding-top:12px; padding-bottom:32px; }
.preview-ui .safety-footer .btn { margin-top:12px; }
.preview-ui .legal-footer { max-width:1184px; margin:32px auto 0; border-top:1px solid var(--ui-line); padding:24px; color:#52645a; font-size:13px; }
.preview-ui .ui-copyright { color:var(--bg-dark); font-size:15px; }
.preview-ui .admin-container { padding-top:28px; }
.preview-ui .admin-header { margin-bottom:18px; }
.preview-ui .ui-admin-menu { margin-bottom:24px; border-bottom:1px solid var(--ui-line); }
.preview-ui .ui-admin-menu > summary { display:none; }
.preview-ui .admin-nav { gap:4px 8px; margin-bottom:14px; }
.preview-ui .admin-nav a { border:0; background:transparent; min-height:44px; display:flex; align-items:center; padding:10px 12px; font-size:14px; text-transform:none; }
.preview-ui .admin-nav a[aria-current=page] { color:var(--bg-dark); background:#e1ebe3; box-shadow:inset 0 -2px var(--bg-dark); }
.preview-ui .runtime-section { padding:24px 0; }
.preview-ui .runtime-section h3 { font-size:21px; font-weight:400; }
.preview-ui .runtime-grid { gap:16px; }
.preview-ui .account-header h1, .preview-ui .admin-header h2 { font-weight:400; }
.preview-ui .stat-card .label, .preview-ui th { color:#56675c; font-size:13px; text-transform:none; }
.preview-ui .account-table-scroll table { min-width:780px; }
.preview-ui .account-table-scroll td { overflow-wrap:break-word; vertical-align:top; }
.preview-ui .ui-nowrap { white-space:nowrap; overflow-wrap:normal; }
.preview-ui .ui-id { display:flex; align-items:flex-start; gap:6px; min-width:160px; }
.preview-ui .ui-id details { min-width:0; margin:0; }
.preview-ui .ui-id summary { cursor:pointer; list-style:none; font-size:12px; padding:8px 0; }
.preview-ui .ui-id summary::marker { content:''; }
.preview-ui .ui-id-full { display:block; font-size:12px; overflow-wrap:anywhere; white-space:normal; max-width:240px; padding:6px 0; }
.preview-ui .ui-copy { width:36px; height:36px; padding:8px; flex:none; border:1px solid #b9c8be; border-radius:4px; background:white; cursor:pointer; }
.preview-ui .ui-copy .ui-icon { width:18px; height:18px; }
.preview-ui .ui-copy-feedback { display:block; color:var(--bg-dark); font-size:12px; }
.preview-ui .account-shell { padding-top:28px; }
.preview-ui .account-form { max-width:480px; }
.preview-ui .auth-modes { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:24px; }
.preview-ui .auth-modes [aria-pressed=true] { background:var(--bg-dark); color:white; }
.preview-ui .auth-text-button { padding:10px 0; min-height:44px; text-align:left; border:0; background:transparent; color:var(--bg-dark); text-decoration:underline; font:inherit; cursor:pointer; }
.preview-ui .member-start { padding:18px 0; border-bottom:1px solid var(--ui-line); }
.preview-ui .member-start h2 { font-size:23px; font-weight:400; }
.preview-ui #resetPasswordFields label { display:flex; flex-direction:column; gap:8px; margin-bottom:16px; }
.preview-ui .portal-tabs { display:flex; flex-wrap:wrap; gap:4px; padding:12px 0; margin:20px 0 0; border-bottom:1px solid var(--ui-line); }
.preview-ui .portal-tabs button { border:0; min-height:44px; border-radius:4px; padding:10px 14px; text-align:left; font-size:15px; }
.preview-ui .portal-tabs button[aria-selected=true] { background:#dde9de; box-shadow:inset 0 -2px var(--bg-dark); color:var(--bg-dark); }
.preview-ui .ui-record { display:block; width:100%; color:var(--text-dark); text-decoration:none; padding:6px 0; }
.preview-ui .ui-record strong { display:block; font-size:17px; font-weight:400; margin-bottom:6px; }
.preview-ui .ui-record-meta { display:flex; flex-wrap:wrap; align-items:center; gap:6px 14px; color:#5d6d66; font-size:14px; }
.preview-ui .ui-state { display:inline-block; padding:3px 8px; border-radius:3px; background:#e2ebe3; color:#36523f; font-size:13px; }
.preview-ui .account-list li { padding:14px 0; }
.preview-ui .chat-page { max-width:800px; min-height:0; height:calc(100dvh - 109px); box-shadow:none; }
.preview-ui .chat-header-v2 { padding:8px 18px; justify-content:flex-end; }
.preview-ui .chat-logo, .preview-ui .chat-header-v2 .lang-switcher { display:none; }
.preview-ui.preview-admin .chat-header-v2 .lang-switcher { display:flex; }
.preview-ui .chat-header-badge { font-size:12px; padding:4px 8px; }
.preview-ui .chat-mode-bar { font-size:13px; line-height:1.4; gap:8px 16px; padding:10px 18px; flex-shrink:0; }
.preview-ui #quotaStatus:empty { display:none; }
.preview-ui .chat-page .chat-messages { min-height:0; overflow:auto; padding:18px; overscroll-behavior:contain; }
.preview-ui .message-bubble { font-size:16px; line-height:1.6; border-radius:8px; }
.preview-ui .chat-page .chat-input-area { padding:12px 16px; flex-shrink:0; }
.preview-ui #sendButton { border-radius:4px; min-height:44px; min-width:44px; width:44px; padding:10px; }
.preview-ui #sendButton .ui-icon { filter:brightness(0) invert(1); }
.preview-ui .chat-bottom-nav { grid-template-columns:repeat(auto-fit,minmax(70px,1fr)); padding:4px 0 calc(4px + env(safe-area-inset-bottom)); }
.preview-ui .bottom-nav-sub { display:none; }
.preview-ui .bottom-nav-item { min-height:56px; padding:6px; gap:2px; }
.preview-ui .bottom-nav-icon { width:26px; height:26px; background:transparent; }
.preview-ui .bottom-nav-item.active .bottom-nav-icon { background:transparent; color:var(--bg-dark); }
.preview-ui .bottom-nav-label { font-size:13px; }
.preview-ui .chat-finished { flex-shrink:0; max-height:45dvh; overflow:auto; }
.preview-ui .captcha-container, .preview-ui .login-container { min-height:calc(100dvh - 109px); padding:28px 18px; }
.preview-ui .captcha-card, .preview-ui .login-card { border-radius:6px; padding:30px; }
.preview-ui .captcha-description { font-size:15px; }
.preview-ui .ui-keyboard .chat-header-v2, .preview-ui .ui-keyboard .chat-bottom-nav { display:none; }
@media (max-height:550px) {
    .preview-ui .chat-page .chat-header-v2, .preview-ui .chat-page .chat-bottom-nav { display:none; }
}
@media (min-width:821px) and (max-width:1050px) {
    .preview-ui .hero-title { font-size:38px; }
    .preview-ui .cta-grid { gap:14px; padding-left:24px; padding-right:24px; }
    .preview-ui .cta-card { padding:20px; }
    .preview-ui .ui-mode-label { font-size:15px; }
}
@media (max-width:820px) {
    .preview-ui .ui-header { padding:12px 18px; gap:10px; }
    .preview-ui .ui-brand strong { font-size:21px; }
    .preview-ui .ui-brand small { display:none; }
    .preview-ui .ui-header-actions { gap:10px; }
    .preview-ui .ui-account-link span { display:none; }
    .preview-ui .ui-account-link { width:36px; justify-content:center; }
    .preview-ui .ui-languages a { min-width:30px; }
    .preview-ui .hero { padding:24px 18px; gap:16px; }
    .preview-ui .hero-title { font-size:32px; }
    .preview-ui .hero-description { font-size:16px; }
    .preview-ui .ui-hero-actions { margin:18px 0; }
    .preview-ui .hero-trust { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
    .preview-ui .trust-pill { flex-direction:row; justify-content:flex-start; max-width:none; min-width:0; gap:8px; }
    .preview-ui .trust-pill-icon { width:28px; height:28px; }
    .preview-ui .trust-pill > span:last-child { font-size:12px; min-width:0; overflow-wrap:anywhere; }
    .preview-ui .cta-card { min-height:0; padding:24px; }
    .preview-ui .cta-description, .preview-ui .cta-description-dark { margin-bottom:20px; }
    .preview-ui .features-grid { gap:24px 12px; }
    .preview-ui .wellbeing-title br { display:none; }
    .preview-ui .ui-admin-menu > summary { display:flex; align-items:center; gap:10px; min-height:48px; cursor:pointer; list-style:none; padding:10px 0; }
    .preview-ui .ui-current-section { margin-left:auto; font-size:13px; color:#506456; }
    .preview-ui .admin-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; padding-bottom:12px; }
    .preview-ui .admin-nav a { min-width:0; padding:10px; }
    .preview-ui .portal-tabs { gap:4px; }
    .preview-ui .portal-tabs { flex-wrap:nowrap; overflow-x:auto; scrollbar-width:thin; }
    .preview-ui .portal-tabs button { flex:0 0 auto; font-size:14px; min-height:44px; white-space:nowrap; }
    .preview-ui .chat-page { height:calc(100dvh - 97px); }
    .preview-ui .chat-header-v2 { padding:4px 16px; }
    .preview-ui .chat-mode-bar { padding:8px 16px; font-size:12px; }
    .preview-ui .chat-page .chat-messages { padding:16px; }
    .preview-ui .message-bubble, .preview-ui .assistant-wrapper { max-width:88%; }
    .preview-ui .assistant-wrapper .message-bubble { max-width:100%; }
    .preview-ui .chat-page .chat-input-area { padding:10px; }
    .preview-ui .legal-footer { margin-top:24px; padding:24px 18px; }
}
@media (max-width:600px) {
    .preview-ui .admin-container { padding:20px 18px; }
    .preview-ui .account-table-scroll { overflow:visible; }
    .preview-ui .account-table-scroll table { display:block; min-width:0; }
    .preview-ui .account-table-scroll thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
    .preview-ui .account-table-scroll tbody { display:block; }
    .preview-ui .account-table-scroll tr { display:block; padding:16px 0; border-bottom:1px solid var(--ui-line); }
    .preview-ui .account-table-scroll td { display:grid; grid-template-columns:92px minmax(0,1fr); gap:10px; padding:5px 0; border:0; max-width:none; font-size:14px; }
    .preview-ui .account-table-scroll td::before { content:attr(data-label); color:#596c5f; font-size:13px; white-space:normal; }
    .preview-ui .account-table-scroll td > a, .preview-ui .account-table-scroll td > button { grid-column:2; justify-self:start; }
    .preview-ui .account-table-scroll td[colspan] { display:block; }
    .preview-ui .account-table-scroll td[colspan]::before { content:none; }
    .preview-ui .account-table-scroll td:empty { display:none; }
    .preview-ui .account-table-scroll td.ui-nowrap { white-space:normal; }
    .preview-ui .ui-id { min-width:0; }
    .preview-ui .ui-id-full { max-width:100%; }
    .preview-ui .ui-record-meta { gap:6px 10px; }
}
