:root{color-scheme:light;--page:#f5f3ed;--paper:#fffdf8;--panel:#15382f;--panel-2:#1f4a40;--ink:#17211d;--muted:#6b746f;--line:#ded8ca;--gold:#a57a24;--gold-soft:#efe2bd;--wine:#8d363c;--blue:#2d6687;--green:#2f6f55;--shadow:0 18px 45px rgba(21,56,47,0.12)}*{box-sizing:border-box}body,html{margin:0;height:100%;min-height:100%;background:linear-gradient(90deg,rgba(21,56,47,.05),transparent 34%),var(--page);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{overflow:hidden;font-size:15px;letter-spacing:0}body.lp-body{overflow-x:hidden;overflow-y:auto;background:#090d0b}body:has(.checkout-success-page),body:has(.join-page),body:has(.legal-page),body:has(.support-page){overflow:auto}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}.checkout-success-page{min-height:100vh;display:grid;place-items:center;padding:clamp(22px,5vw,48px);background:linear-gradient(180deg,rgba(255,253,248,.84),rgba(245,243,237,.94)),radial-gradient(circle at 50% 0,rgba(239,226,189,.7),transparent 46%),var(--page)}.checkout-success-card{width:min(100%,560px);display:grid;grid-gap:16px;gap:16px;border:1px solid rgba(165,122,36,.26);border-radius:8px;background:rgba(255,253,248,.96);box-shadow:var(--shadow);padding:clamp(24px,5vw,42px);text-align:center}.checkout-success-icon{width:58px;height:58px;display:inline-grid;place-items:center;justify-self:center;border-radius:8px;background:var(--panel);color:var(--gold-soft);font-size:30px;font-weight:900}.checkout-success-eyebrow{margin:4px 0 0;color:var(--gold);font-size:13px;font-weight:900;text-transform:uppercase}.checkout-success-card h1{margin:0;color:var(--ink);font-size:clamp(30px,6vw,46px);line-height:.98}.checkout-success-card p{margin:0;color:var(--muted);font-size:17px;line-height:1.55}.checkout-success-card span{color:var(--muted);font-size:13px;line-height:1.45}.checkout-success-button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;justify-self:center;border-radius:8px;background:var(--panel);color:#fffdf8;font-weight:900;text-decoration:none;padding:0 24px;box-shadow:0 18px 38px rgba(21,56,47,.18)}.checkout-success-button:hover{background:var(--panel-2)}.legal-page{min-height:100vh;overflow:auto;padding:clamp(18px,4vw,46px);background:linear-gradient(180deg,rgba(255,253,248,.9),rgba(245,243,237,.96)),radial-gradient(circle at 82% 0,rgba(239,226,189,.72),transparent 42%),var(--page)}.legal-card{width:min(100%,920px);margin:0 auto;display:grid;grid-gap:22px;gap:22px;border:1px solid rgba(165,122,36,.22);border-radius:8px;background:rgba(255,253,248,.96);box-shadow:var(--shadow);padding:clamp(20px,4vw,42px)}.auth-legal-links,.legal-footer,.legal-language-links,.legal-link-row,.legal-switch,.legal-topbar{display:flex;align-items:center}.legal-topbar{justify-content:space-between;gap:12px;flex-wrap:wrap}.auth-legal-links a,.legal-back,.legal-language-links a,.legal-language-links button,.legal-link-row a,.legal-switch a{border:1px solid rgba(165,122,36,.24);border-radius:8px;color:var(--panel);font-weight:900;text-decoration:none}.legal-back,.legal-language-links a,.legal-language-links button,.legal-switch a{background:rgba(239,226,189,.28)}.legal-back{padding:8px 12px;font-size:13px}.legal-language-links{gap:6px}.legal-language-links a,.legal-language-links button{min-width:38px;padding:7px 8px;text-align:center;font-size:12px;cursor:pointer}.legal-language-links a.active,.legal-language-links button.active,.legal-switch a.active{background:var(--panel);color:#fffdf8;border-color:var(--panel)}.legal-header{display:grid;grid-gap:8px;gap:8px}.legal-footer strong,.legal-header h1,.legal-header p,.legal-header span,.legal-intro,.legal-sections h2,.legal-sections p{margin:0}.legal-header p{color:var(--gold);font-size:13px;font-weight:900;text-transform:uppercase}.legal-header h1{color:var(--ink);font-size:clamp(34px,7vw,62px);line-height:.96}.legal-footer,.legal-header span,.legal-intro,.legal-sections p{color:var(--muted)}.legal-intro{max-width:760px;font-size:17px;line-height:1.58}.legal-switch{gap:8px;flex-wrap:wrap}.legal-switch a{padding:9px 12px;font-size:13px}.legal-sections{display:grid;grid-gap:22px;gap:22px}.legal-sections section{display:grid;grid-gap:9px;gap:9px;border-top:1px solid var(--line);padding-top:18px}.legal-sections h2{color:var(--panel);font-size:clamp(20px,3vw,25px)}.legal-sections p{font-size:15px;line-height:1.64}.legal-footer{justify-content:space-between;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:18px}.legal-footer a,.legal-footer strong{color:var(--panel)}.legal-footer a{font-weight:900}.support-page{background:linear-gradient(180deg,rgba(255,253,248,.9),rgba(245,243,237,.96)),radial-gradient(circle at 82% 0,rgba(239,226,189,.72),transparent 42%),var(--page)}.join-page,.support-page{min-height:100vh;overflow:auto;padding:clamp(18px,4vw,46px)}.join-page{background:linear-gradient(180deg,rgba(255,253,248,.9),rgba(245,243,237,.96)),radial-gradient(circle at 82% 0,rgba(239,226,189,.72),transparent 42%),url(/lp/hero-vitral.webp) 50% /cover fixed,var(--page)}.support-card{width:min(100%,760px);grid-gap:24px;gap:24px}.join-card,.support-card{margin:0 auto;display:grid;border:1px solid rgba(165,122,36,.22);border-radius:8px;background:rgba(255,253,248,.96);box-shadow:var(--shadow);padding:clamp(20px,4vw,42px)}.join-card{width:min(100%,660px);grid-gap:20px;gap:20px}.join-payment-box{display:grid;grid-gap:6px;gap:6px;border:1px solid rgba(165,122,36,.22);border-radius:8px;background:rgba(239,226,189,.22);padding:13px 14px}.join-payment-box strong{color:var(--panel);font-size:13px;text-transform:uppercase}.join-payment-box small,.join-payment-box span{color:var(--muted);line-height:1.45}.join-payment-box small{font-size:12px}.support-header{display:grid;grid-gap:10px;gap:10px}.support-header p{margin:0;color:var(--gold);font-size:13px;font-weight:900;text-transform:uppercase}.support-header h1{margin:0;color:var(--ink);font-size:clamp(34px,7vw,62px);line-height:.96}.support-header span{color:rgba(19,34,29,.7);font-size:17px;line-height:1.55}.support-form{display:grid;grid-gap:16px;gap:16px}.support-form label{display:grid;grid-gap:8px;gap:8px;color:var(--panel);font-weight:900}.support-form input,.support-form select,.support-form textarea{width:100%;border:1px solid rgba(165,122,36,.22);border-radius:8px;background:#fffdf8;color:var(--ink);outline:none;padding:13px 14px}.support-form textarea{min-height:180px;resize:vertical;line-height:1.45}.support-form input:focus,.support-form select:focus,.support-form textarea:focus{border-color:rgba(165,122,36,.62);box-shadow:0 0 0 3px rgba(165,122,36,.12)}.join-phone-fields{display:grid;grid-gap:10px;gap:10px}.join-phone-help{color:var(--muted);font-size:13px;line-height:1.45}.join-phone-grid{display:grid;grid-template-columns:minmax(160px,1.2fr) minmax(84px,.55fr) minmax(150px,1fr);grid-gap:10px;gap:10px}.support-form button[type=submit]{min-height:48px;border:0;border-radius:8px;background:var(--panel);color:#fffdf8;font-weight:900;cursor:pointer}.support-form button[type=submit]:disabled{cursor:not-allowed;opacity:.58}.support-status{margin:0;border-radius:8px;padding:12px 14px;font-weight:800}.support-status.success{border:1px solid rgba(27,112,79,.22);background:rgba(27,112,79,.1);color:#1b704f}.support-status.error{border:1px solid rgba(163,65,54,.24);background:rgba(163,65,54,.08);color:#8a2f25}.support-status.pending{border:1px solid rgba(165,122,36,.24);background:rgba(239,226,189,.2);color:#765818}.auth-overlay{position:fixed;z-index:80;inset:0;display:grid;place-items:center;overflow-y:auto;background:linear-gradient(180deg,rgba(7,24,20,.56),rgba(7,24,20,.72)),rgba(7,24,20,.62);-webkit-backdrop-filter:blur(10px) saturate(1.08);backdrop-filter:blur(10px) saturate(1.08);padding:22px}.auth-card{display:grid;grid-gap:18px;gap:18px;width:min(100%,520px);border:1px solid rgba(245,233,210,.34);border-radius:8px;background:linear-gradient(180deg,rgba(255,253,248,.98),rgba(250,246,236,.95)),var(--paper);box-shadow:0 34px 110px rgba(0,0,0,.34);padding:clamp(22px,4vw,34px)}.auth-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:8px;background:var(--panel);color:var(--gold-soft)}.auth-heading{display:grid;grid-gap:6px;gap:6px}.auth-heading h1,.auth-heading h2,.auth-heading p,.auth-heading span{margin:0}.auth-heading p{color:var(--gold);font-size:13px;font-weight:900;text-transform:uppercase}.auth-heading h1,.auth-heading h2{color:var(--ink);font-size:clamp(28px,4vw,38px);line-height:1}.auth-heading span{color:var(--muted);line-height:1.5}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;border:1px solid var(--line);border-radius:8px;background:rgba(239,226,189,.36);padding:6px}.auth-tabs button{min-height:42px;border:0;border-radius:8px;background:transparent;color:var(--panel);font-weight:900}.auth-tabs button.active{background:var(--panel);color:#fffdf8;box-shadow:0 12px 28px rgba(21,56,47,.16)}.auth-form{display:grid;grid-gap:10px;gap:10px}.auth-subheading{display:grid;grid-gap:6px;gap:6px;border:1px solid rgba(47,111,85,.16);border-radius:8px;background:rgba(47,111,85,.06);padding:12px}.auth-subheading strong{color:var(--panel);font-size:17px;line-height:1.2}.auth-subheading span{color:var(--muted);line-height:1.45}.auth-form label{color:var(--panel);font-size:13px;font-weight:900}.auth-form input,.auth-form select{width:100%;min-height:46px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.88);color:var(--ink);outline:none;padding:11px 12px;font-size:16px}.auth-form input:focus,.auth-form select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(165,122,36,.16)}.auth-phone-grid{grid-template-columns:minmax(140px,1.1fr) minmax(72px,.5fr) minmax(130px,1fr)}.auth-phone-grid,.auth-phone-grid div{display:grid;grid-gap:10px;gap:10px}.auth-form button[type=submit]{min-height:48px;border:0;border-radius:8px;background:linear-gradient(135deg,var(--panel),var(--panel-2));color:#fffdf8;font-weight:900;margin-top:6px;padding:12px 16px}.auth-link-button{justify-self:center;min-height:38px;border:0;background:transparent;color:var(--panel);font-weight:900;text-decoration:underline;text-underline-offset:4px;padding:8px 10px}.auth-link-button:hover:not(:disabled){color:var(--gold)}.auth-error,.auth-status{margin:0;border-radius:8px;padding:11px 12px;line-height:1.45}.auth-error{border:1px solid rgba(141,54,60,.22);background:rgba(141,54,60,.08);color:#6f2b30}.auth-status{border:1px solid rgba(47,111,85,.2);background:rgba(47,111,85,.08);color:var(--panel)}.chat-shell{position:relative;isolation:isolate;display:grid;grid-template-columns:292px minmax(0,1fr);height:100dvh;min-height:0;overflow:hidden;background:var(--page);transition:grid-template-columns .18s ease}.chat-shell:after,.chat-shell:before{position:fixed;inset:0;content:"";pointer-events:none}.chat-shell:before{z-index:0;background-image:url(/lp/hero-vitral.webp);background-position:50%;background-size:cover;filter:saturate(1.08) contrast(.96);transform:scale(1.02)}.chat-shell:after{z-index:0;background:radial-gradient(circle at 72% 12%,rgba(255,239,190,.34),transparent 34%),linear-gradient(90deg,rgba(8,39,32,.1),rgba(255,253,248,.78) 30%,rgba(255,253,248,.72)),linear-gradient(180deg,rgba(255,255,255,.7),rgba(245,243,237,.46));-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.chat-shell.sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}.sidebar{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-gap:24px;gap:24px;width:292px;height:100dvh;min-height:0;overflow:hidden;border-right:1px solid rgba(245,233,210,.16);background:linear-gradient(180deg,rgba(255,253,248,.08),rgba(255,253,248,0)),linear-gradient(180deg,rgba(12,50,42,.94),rgba(9,56,47,.88)),var(--panel);-webkit-backdrop-filter:blur(18px) saturate(1.08);backdrop-filter:blur(18px) saturate(1.08);box-shadow:inset -1px 0 0 rgba(255,253,248,.05);color:#fffdf8;padding:22px;transition:width .18s ease,padding .18s ease,transform .18s ease;z-index:1}.sidebar.closed{width:0;padding-right:0;padding-left:0;overflow:hidden}.sidebar-close,.sidebar-scrim{display:none}.sidebar-close{align-items:center;justify-content:center;border:1px solid rgba(245,233,210,.2);border-radius:8px;background:rgba(255,253,248,.1);color:#fffdf8}.brand-block{display:grid;grid-gap:16px;gap:16px}.sacred-window{width:100%;height:188px;border:1px solid rgba(245,233,210,.22);border-radius:8px;object-fit:cover;background:#102821}.brand-title{display:flex;align-items:center;gap:12px}.avatar,.brand-mark{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.brand-mark{width:38px;height:38px;border-radius:8px;background:var(--gold-soft);color:var(--panel)}.brand-title strong{display:block;font-size:17px}.brand-title span{display:block;margin-top:2px;color:rgba(255,253,248,.72);font-size:13px}.trust-list{display:grid;align-content:start;grid-gap:10px;gap:10px;min-height:0}.trust-list div{display:flex;align-items:center;gap:10px;min-height:42px;border:1px solid rgba(245,233,210,.15);border-radius:8px;background:rgba(255,253,248,.07);color:rgba(255,253,248,.84);padding:10px 12px}.language-panel{display:grid;grid-gap:8px;gap:8px;border-top:1px solid rgba(245,233,210,.14);padding-top:16px}.language-panel label{color:rgba(255,253,248,.72);font-size:12px;font-weight:800}.language-panel select{width:100%;min-height:42px;border:1px solid rgba(245,233,210,.2);border-radius:8px;background:rgba(255,253,248,.1);color:#fffdf8;outline:none;padding:9px 10px}.language-panel select:disabled{cursor:not-allowed;opacity:.58}.language-panel option{color:var(--ink)}.support-action-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;border:1px solid rgba(245,233,210,.24);border-radius:8px;background:rgba(239,226,189,.16);color:#fffdf8;font-size:13px;font-weight:900;text-decoration:none;padding:10px 12px;transition:background .16s ease,border-color .16s ease,transform .16s ease}.support-action-button:hover{border-color:rgba(239,226,189,.42);background:rgba(239,226,189,.24);transform:translateY(-1px)}.legal-link-row{gap:8px;flex-wrap:wrap;border-top:1px solid rgba(245,233,210,.14);padding-top:12px}.legal-link-row a{min-height:30px;display:inline-flex;align-items:center;background:rgba(255,253,248,.08);color:rgba(255,253,248,.84);font-size:11px;padding:6px 9px}.legal-link-row a:hover{background:rgba(239,226,189,.18);color:#fffdf8}.auth-legal-links{justify-content:center;gap:8px;flex-wrap:wrap;margin-top:-4px}.auth-legal-links a{background:rgba(239,226,189,.24);font-size:11px;padding:6px 9px}.auth-danger-link{border:1px solid rgba(174,75,75,.28);border-radius:8px;background:rgba(174,75,75,.08);color:#9a3f47;font-size:11px;font-weight:900;padding:6px 9px}.manage-subscription-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid rgba(239,226,189,.34);border-radius:8px;background:rgba(239,226,189,.16);color:#fffdf8;font-weight:900;padding:9px 12px}.manage-subscription-button:hover:not(:disabled){background:rgba(239,226,189,.24);border-color:rgba(239,226,189,.58)}.manage-subscription-button.danger{border-color:rgba(174,75,75,.42);background:rgba(174,75,75,.16);color:#ffd8d8}.ai-consent-card{max-width:620px}.primary-consent-button{min-height:48px;border:0;border-radius:8px;background:linear-gradient(135deg,var(--panel),var(--panel-2));color:#fffdf8;font-weight:900;padding:12px 16px}.conversation{position:relative;z-index:1;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;min-width:0;height:100dvh;min-height:0;overflow:hidden;background:radial-gradient(circle at 88% 8%,rgba(255,237,185,.22),transparent 30%),linear-gradient(180deg,rgba(255,253,248,.56),rgba(245,243,237,.42));-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.chat-header{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(180px,260px);grid-gap:14px;gap:14px;align-items:center;border-bottom:1px solid rgba(222,216,202,.72);background:rgba(255,253,248,.74);padding:18px 22px;-webkit-backdrop-filter:blur(18px) saturate(1.08);backdrop-filter:blur(18px) saturate(1.08);box-shadow:0 14px 40px rgba(21,56,47,.08)}.chat-header h1,.chat-header p{margin:0}.chat-header p{color:var(--gold);font-size:13px;font-weight:800}.chat-header h1{margin-top:2px;font-size:20px;line-height:1.2}.icon-button,.send-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px}.icon-button{width:42px;height:42px;background:var(--panel);color:#fffdf8}.name-field{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:5px;gap:5px}.name-field label{grid-column:1/-1;color:var(--muted);font-size:12px;font-weight:700}.name-field input{width:100%;background:rgba(255,255,255,.82);color:var(--ink);outline:none;padding:9px 11px}.logout-button,.name-field input{min-height:40px;border:1px solid var(--line);border-radius:8px}.logout-button{background:rgba(255,253,248,.84);color:var(--panel);font-size:13px;font-weight:900;padding:8px 11px}.logout-button:hover{border-color:var(--gold);background:var(--gold-soft)}.composer textarea,.name-field input{font-size:16px}.composer textarea:focus,.name-field input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(165,122,36,.16)}.flow-bar{display:flex;gap:9px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-padding-inline:22px;border-bottom:1px solid rgba(222,216,202,.72);background:rgba(245,243,237,.68);-webkit-backdrop-filter:blur(18px) saturate(1.08);backdrop-filter:blur(18px) saturate(1.08);padding:12px 22px}.flow-bar::-webkit-scrollbar{display:none}.flow-bar button{flex:0 0 auto;min-height:38px;border:1px solid #d8ccae;border-radius:8px;background:rgba(255,253,248,.84);color:var(--panel);padding:8px 14px;font-size:13px;font-weight:800;transition:background .16s ease,border-color .16s ease,color .16s ease}.flow-bar button.locked{display:inline-flex;align-items:center;gap:6px;color:rgba(21,56,47,.76)}.flow-bar button.flow-tab{display:inline-flex;align-items:center;gap:7px}.flow-bar button:hover{border-color:var(--gold);background:var(--gold-soft)}.flow-bar button.active{border-color:var(--panel);background:var(--panel);color:#fffdf8}.flow-bar button.active.locked{border-color:#b89b4a;background:linear-gradient(135deg,rgba(239,226,189,.96),rgba(255,253,248,.9));color:var(--panel)}.message-list{align-content:start;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable both-edges;-webkit-overflow-scrolling:touch;background:linear-gradient(180deg,rgba(255,253,248,.08),rgba(245,243,237,.14)),radial-gradient(circle at 74% 0,rgba(255,238,190,.16),transparent 34%);padding:28px 22px 32px}.message-list,.shop-panel{display:grid;grid-gap:18px;gap:18px}.shop-panel{width:min(980px,100%);margin:0 auto}.shop-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.shop-eyebrow{margin:0 0 4px;color:var(--gold);font-size:12px;font-weight:900;text-transform:uppercase}.shop-detail-copy h2,.shop-header h2{margin:0;color:var(--panel)}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:14px;gap:14px}.shop-card{overflow:hidden;border:1px solid rgba(216,204,174,.86);border-radius:8px;background:rgba(255,253,248,.94);box-shadow:0 16px 36px rgba(35,45,39,.08)}.shop-card img,.shop-image-placeholder{width:100%;aspect-ratio:1;background:rgba(239,226,189,.34);object-fit:cover}.shop-card-body{display:grid;grid-gap:13px;gap:13px;padding:14px}.shop-card-body h3{margin:0;color:var(--panel);font-size:16px}.shop-card-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.shop-back-button,.shop-buy-link,.shop-card-actions a,.shop-card-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:900;text-decoration:none}.shop-back-button,.shop-card-actions button{border:1px solid #d8ccae;background:#fffdf8;color:var(--panel)}.shop-buy-link,.shop-card-actions a{border:1px solid var(--panel);background:var(--panel);color:#fffdf8}.shop-detail{display:grid;grid-template-columns:minmax(280px,1.1fr) minmax(260px,.9fr);grid-gap:18px;gap:18px;align-items:start}.shop-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:10px;gap:10px}.shop-gallery img{width:100%;aspect-ratio:1;background:#fffdf8;object-fit:cover}.shop-detail-copy,.shop-gallery img{border:1px solid rgba(216,204,174,.86);border-radius:8px}.shop-detail-copy{display:grid;grid-gap:14px;gap:14px;background:rgba(255,253,248,.94);padding:18px}.shop-detail-copy p{margin:0;color:rgba(21,56,47,.82);line-height:1.6;white-space:pre-wrap}.shop-muted{border:1px solid rgba(216,204,174,.86);border-radius:8px;background:rgba(255,253,248,.88);color:rgba(21,56,47,.72);padding:16px;font-weight:800}.subscription-paywall{display:grid;grid-gap:12px;gap:12px;width:min(100%,720px);margin:0 auto;border:1px solid rgba(184,155,74,.42);border-radius:8px;background:rgba(255,253,248,.94);box-shadow:0 24px 64px rgba(21,56,47,.16);-webkit-backdrop-filter:blur(14px) saturate(1.08);backdrop-filter:blur(14px) saturate(1.08);padding:22px}.subscription-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:8px;background:var(--panel);color:#fffdf8}.subscription-eyebrow{margin:0;color:var(--gold);font-size:12px;font-weight:900;text-transform:uppercase}.subscription-paywall h2{max-width:620px;margin:0;color:var(--ink);font-size:clamp(24px,4vw,42px);line-height:1.05}.subscription-paywall p{max-width:640px;margin:0;color:var(--muted);line-height:1.58}.subscription-flow-name,.subscription-note{border:1px solid var(--line);border-radius:8px;background:rgba(239,226,189,.35);padding:12px 14px}.subscription-flow-name{color:var(--panel);font-weight:900}.subscription-error{color:#8a3438!important;font-weight:800}.image-pack-provider-grid,.subscription-provider-grid{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.image-pack-provider-grid span,.subscription-provider-grid p{flex:1 0 100%;margin:0;color:var(--panel);font-weight:900}.subscription-paywall button{display:inline-flex;align-items:center;justify-content:center;gap:8px;justify-self:start;min-height:48px;border:0;border-radius:8px;background:var(--panel);color:#fffdf8;padding:12px 18px;font-weight:900}.subscription-paywall button:hover:not(:disabled){background:#0f2e27}.message{display:grid;grid-template-columns:36px minmax(0,720px);grid-gap:12px;gap:12px;width:min(100%,880px);margin:0 auto}.message.user{grid-template-columns:minmax(0,720px) 36px;justify-content:end}.message.user .avatar{grid-column:2;grid-row:1}.message.user .bubble{grid-column:1;grid-row:1;justify-self:end;background:var(--panel);color:#fffdf8}.avatar{width:36px;height:36px;border:1px solid var(--line);border-radius:8px;background:#fffdf8;color:var(--green)}.message.user .avatar{background:var(--gold-soft);color:var(--panel)}.bubble{width:-moz-fit-content;width:fit-content;max-width:100%;overflow-wrap:anywhere;border:1px solid rgba(222,216,202,.82);border-radius:8px;background:rgba(255,253,248,.9);box-shadow:0 20px 48px rgba(21,56,47,.12);-webkit-backdrop-filter:blur(12px) saturate(1.04);backdrop-filter:blur(12px) saturate(1.04);padding:15px 16px}.bubble p{margin:0;color:inherit;line-height:1.58}.bubble p+p{margin-top:8px}.generated-image-block{display:grid;grid-gap:10px;gap:10px;margin-top:14px}.generated-image-block img{display:block;width:min(100%,420px);aspect-ratio:1/1;border:1px solid var(--line);border-radius:8px;background:#f0eadc;object-fit:cover}.generated-image-actions{display:flex;flex-wrap:wrap;gap:8px}.generated-image-actions a{display:inline-flex;align-items:center;gap:7px;min-height:38px;border:1px solid #d8ccae;border-radius:8px;background:#fffdf8;color:var(--panel);padding:8px 11px;font-size:13px;font-weight:800;text-decoration:none}.image-tool{display:grid;grid-gap:14px;gap:14px;width:min(100%,720px);margin:0 auto 6px;border:1px solid var(--line);border-radius:8px;background:rgba(255,253,248,.92);box-shadow:var(--shadow);padding:16px}.image-tool-intro{margin:0;color:var(--muted);line-height:1.5}.image-tool-actions,.image-tool-grid{display:grid;grid-gap:10px;gap:10px}.image-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.image-pack-button,.image-tool-actions button,.image-tool-back,.image-tool-card,.image-tool-form button{border:1px solid #d8ccae;border-radius:8px;background:#fffdf8;color:var(--panel);font-weight:800}.image-tool-card{display:grid;grid-gap:8px;gap:8px;min-height:132px;padding:16px;text-align:left}.image-tool-card strong{font-size:18px;line-height:1.2}.image-tool-card span{color:var(--muted);font-size:14px;font-weight:600;line-height:1.45}.image-tool-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.image-pack-button,.image-tool-actions button,.image-tool-form button{min-height:46px;padding:10px 12px}.generated-image-actions a:hover,.image-pack-button:hover:not(:disabled),.image-tool-actions button:hover:not(:disabled),.image-tool-back:hover:not(:disabled),.image-tool-card:hover:not(:disabled),.image-tool-form button:hover:not(:disabled){border-color:var(--gold);background:var(--gold-soft)}.image-tool-form{display:grid;grid-gap:10px;gap:10px}.image-tool-form label:not(.upload-control){color:var(--panel);font-size:14px;font-weight:800}.image-tool-form input,.image-tool-form textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:#fffdf8;color:var(--ink);outline:none;padding:12px;font-size:16px}.image-tool-form textarea{min-height:110px;resize:vertical}.image-tool-form input:focus,.image-tool-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(165,122,36,.16)}.image-tool-form button{justify-self:start;background:var(--panel);color:#fffdf8}.image-pack-button{justify-self:start;background:rgba(239,226,189,.55)}.image-tool-back{display:inline-flex;align-items:center;justify-self:start;gap:6px;min-height:38px;padding:8px 11px}.upload-control{display:flex;align-items:center;gap:10px;min-height:78px;border:1px dashed #c9b881;border-radius:8px;background:rgba(239,226,189,.42);color:var(--panel);padding:16px;font-weight:800;cursor:pointer}.upload-control span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-tool-form input[type=file]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.evolution-panel{width:min(100%,960px);display:grid;grid-gap:16px;gap:16px;margin:0 auto 24px;color:var(--ink)}.evolution-card,.evolution-form,.evolution-hero,.evolution-top{border:1px solid rgba(165,122,36,.24);border-radius:8px;background:rgba(255,253,248,.94);box-shadow:0 14px 40px rgba(21,56,47,.08)}.evolution-hero{display:flex;align-items:center;gap:14px;padding:18px}.evolution-hero>span{width:54px;height:54px;display:grid;place-items:center;border-radius:8px;background:var(--panel);font-size:28px}.evolution-card h3,.evolution-card p,.evolution-card ul,.evolution-hero h2,.evolution-hero p,.evolution-top h2,.evolution-top p,.evolution-top span{margin:0}.evolution-hero h2,.evolution-top h2{color:var(--panel);line-height:1}.evolution-card li,.evolution-card p,.evolution-hero p,.evolution-journal,.evolution-top span{color:rgba(23,33,29,.76);line-height:1.55}.evolution-form{display:grid;grid-gap:14px;gap:14px;padding:18px}.evolution-form label,.evolution-journal{display:grid;grid-gap:8px;gap:8px;color:var(--panel);font-weight:900}.evolution-form textarea,.evolution-journal textarea{width:100%;border:1px solid rgba(165,122,36,.24);border-radius:8px;background:#fffdf8;color:var(--ink);line-height:1.48;resize:vertical;outline:none;padding:12px 13px}.evolution-form textarea:focus,.evolution-journal textarea:focus{border-color:rgba(165,122,36,.68);box-shadow:0 0 0 3px rgba(165,122,36,.12)}.evolution-card,.evolution-duration,.evolution-tasks{display:grid;grid-gap:10px;gap:10px}.evolution-card h3,.evolution-duration strong{color:var(--panel)}.evolution-days,.evolution-duration div,.evolution-moods{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.evolution-card button,.evolution-duration button,.evolution-moods button,.evolution-primary{border:1px solid rgba(165,122,36,.26);border-radius:8px;background:rgba(239,226,189,.34);color:var(--panel);font-weight:900}.evolution-duration button,.evolution-moods button{min-height:42px;white-space:nowrap;padding:0 14px}.evolution-card button:hover:not(:disabled),.evolution-duration button.active,.evolution-moods button.active,.evolution-primary{background:var(--panel);border-color:var(--panel);color:#fffdf8}.evolution-primary{min-height:50px;padding:0 18px}.evolution-error,.evolution-status{margin:0;border-radius:8px;padding:12px 14px;font-weight:850}.evolution-status{border:1px solid rgba(165,122,36,.24);background:rgba(239,226,189,.28);color:var(--panel)}.evolution-error{border:1px solid rgba(141,54,60,.26);background:rgba(141,54,60,.08);color:#8d363c}.evolution-top{display:flex;justify-content:space-between;gap:16px;padding:18px}.evolution-top p{color:var(--gold);font-size:12px;font-weight:950;text-transform:uppercase}.evolution-top strong{color:var(--panel);font-size:34px;line-height:1}.evolution-progress-bar{height:8px;overflow:hidden;border-radius:999px;background:rgba(21,56,47,.16)}.evolution-progress-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold),#d8bc6b)}.evolution-days>div{min-width:82px;border:1px solid rgba(165,122,36,.22);border-radius:8px;background:rgba(255,253,248,.8);padding:10px;text-align:center}.evolution-days>div.current,.evolution-days>div.done{background:var(--panel);color:#fffdf8}.evolution-days>div.locked{opacity:.55}.evolution-days span,.evolution-days strong{display:block}.evolution-card{padding:18px}.evolution-card ul{padding-left:20px}.evolution-card button{min-height:44px;justify-self:start;padding:0 14px}.evolution-reference{color:var(--gold)!important;font-weight:900}.evolution-tasks label{display:flex;gap:10px;align-items:flex-start;border:1px solid rgba(165,122,36,.2);border-radius:8px;background:rgba(239,226,189,.18);padding:12px}.evolution-tasks label.checked{border-color:rgba(47,111,85,.38);background:rgba(47,111,85,.12)}.evolution-tasks input{margin-top:3px}.evolution-tasks span{display:grid;grid-gap:4px;gap:4px;color:var(--muted);line-height:1.45}.evolution-tasks strong{color:var(--panel)}.evolution-analysis{border-color:rgba(47,111,85,.28);background:rgba(255,253,248,.98)}.evolution-analysis small{color:var(--gold);font-weight:900}.composer{display:grid;grid-template-columns:minmax(0,1fr) 44px;grid-gap:10px;gap:10px;width:min(100% - 44px,880px);margin:0 auto;border-top:1px solid rgba(222,216,202,.76);background:rgba(245,243,237,.72);-webkit-backdrop-filter:blur(18px) saturate(1.08);backdrop-filter:blur(18px) saturate(1.08);box-shadow:0 -18px 44px rgba(21,56,47,.08);padding:16px 0 max(22px,env(safe-area-inset-bottom))}.composer textarea{min-height:48px;max-height:160px;overflow-y:auto;resize:none;border:1px solid var(--line);border-radius:8px;background:rgba(255,253,248,.92);color:var(--ink);outline:none;padding:13px 14px;line-height:1.4}.send-button{width:44px;height:48px;background:var(--wine);color:#fffdf8}.send-button:hover:not(:disabled){background:#772d32}@media (max-width:920px){.chat-shell:before{background-position:62%}.chat-shell:after{background:radial-gradient(circle at 68% 8%,rgba(255,239,190,.28),transparent 34%),linear-gradient(180deg,rgba(255,253,248,.84),rgba(245,243,237,.7)),linear-gradient(90deg,rgba(255,253,248,.72),rgba(255,253,248,.84))}.conversation{background:radial-gradient(circle at 82% 4%,rgba(255,237,185,.18),transparent 32%),linear-gradient(180deg,rgba(255,253,248,.66),rgba(245,243,237,.56))}.chat-shell,.chat-shell.sidebar-collapsed,.chat-shell.sidebar-expanded{grid-template-columns:1fr}.sidebar-scrim{position:fixed;z-index:15;inset:0;display:block;border:0;background:rgba(15,27,23,.42);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sidebar{position:fixed;z-index:20;inset:0 auto 0 0;box-shadow:18px 0 40px rgba(0,0,0,.2)}.sidebar,.sidebar.closed{width:min(86vw,320px);padding:calc(18px + env(safe-area-inset-top)) 18px 18px}.sidebar.closed{transform:translateX(-100%);visibility:hidden}.sidebar-close{position:absolute;top:calc(14px + env(safe-area-inset-top));right:14px;display:inline-flex;width:38px;height:38px}.brand-block{padding-top:36px}}@media (max-width:680px){.auth-overlay{align-items:start;padding:max(14px,env(safe-area-inset-top)) 12px 14px}.auth-card{gap:14px;padding:18px}.auth-phone-grid,.join-phone-grid{grid-template-columns:1fr}.chat-header{grid-template-columns:auto minmax(0,1fr);gap:10px;padding:calc(12px + env(safe-area-inset-top)) 14px 12px}.chat-header p{font-size:12px}.chat-header h1{overflow:hidden;font-size:18px;text-overflow:ellipsis;white-space:nowrap}.name-field{grid-column:1/-1;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:8px}.name-field label{grid-column:auto}.name-field input{min-height:42px}.flow-bar{gap:8px;padding:10px 14px;scroll-padding-inline:14px}.flow-bar button{min-height:40px;padding:9px 12px}.message-list{gap:14px;padding:18px 12px}.shop-card-actions,.shop-detail{grid-template-columns:1fr}.message{grid-template-columns:32px minmax(0,1fr);width:100%;gap:9px}.message.user{grid-template-columns:minmax(0,1fr) 32px;width:100%;gap:9px}.message.user .avatar{grid-column:2}.message.user .bubble{grid-column:1;justify-self:end}.avatar{width:32px;height:32px}.bubble{background:rgba(255,253,248,.94);padding:12px}.bubble p{line-height:1.5}.generated-image-block img{width:100%}.generated-image-actions a{flex:1 1 150px;justify-content:center}.image-tool{gap:12px;padding:12px}.image-tool-actions,.image-tool-grid{grid-template-columns:1fr}.image-tool-card{min-height:108px}.composer,.image-tool-form button{width:100%}.composer{grid-template-columns:minmax(0,1fr) 46px;gap:8px;box-shadow:0 -14px 30px rgba(21,56,47,.08);padding:10px 12px calc(10px + env(safe-area-inset-bottom))}.composer textarea{min-height:46px;max-height:118px;padding:12px}.send-button{width:46px;height:46px}}@media (max-width:420px){.sidebar,.sidebar.closed{width:min(88vw,304px)}.sacred-window{height:148px}.chat-header,.flow-bar{padding-right:12px;padding-left:12px}.message-list{padding-right:10px;padding-left:10px}.message,.message.user{gap:8px}}@media (max-width:920px) and (max-height:560px){.sacred-window{display:none}.sidebar{gap:14px}.brand-block{gap:12px}.trust-list{gap:8px}.chat-header{padding-top:calc(8px + env(safe-area-inset-top));padding-bottom:8px}.flow-bar{padding-top:8px;padding-bottom:8px}.message-list{padding-top:12px;padding-bottom:12px}}