.natural-chat{--natural-header:100px;box-sizing:border-box;width:min(800px,calc(100% - 40px));margin:0 auto;padding:clamp(30px,15vh,140px) 0 60px;color:var(--acc-text);font-family:var(--acc-font)}
.natural-chat *{box-sizing:border-box}
.natural-chat .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.natural-chat [hidden]{display:none!important}
.natural-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.natural-heading h1{font-size:clamp(28px,3.4vw,44px);font-weight:600;line-height:1.2;letter-spacing:-.01em;text-align:center;text-wrap:balance;margin:0 auto 18px;max-width:720px;color:#111}
.natural-intro{font-size:15px;text-align:center;line-height:1.6;color:var(--acc-text-muted);margin:0 0 26px}
.natural-offer{font-size:13px;text-align:center;line-height:1.5;color:var(--acc-text-muted);margin:-12px 0 22px}
.natural-link{border:0;padding:7px 0;min-height:40px;background:transparent;color:var(--acc-primary);font:600 14px/1.4 var(--acc-font);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.natural-link:disabled{opacity:.55;cursor:wait}
.natural-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;border:1px solid var(--acc-border);border-radius:var(--acc-radius-sm);background:#fff;padding:8px;gap:4px}
.natural-composer:focus-within{border-color:var(--acc-primary);box-shadow:0 0 0 2px rgb(0 103 184 / 14%)}
.natural-composer textarea{grid-column:1 / -1;display:block;resize:none;width:100%;height:112px;min-height:44px;max-height:220px;padding:12px 10px;border:0;background:transparent;color:var(--acc-text);font:400 16px/24px var(--acc-font);outline:none;box-shadow:none;overflow-y:hidden;border-radius:0}
.natural-composer textarea::placeholder{color:var(--acc-text-muted);opacity:1}
.natural-composer button[type=submit]{grid-column:2;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 15px;border:0;border-radius:var(--acc-radius-sm);background:#0078d4;color:#fff;font:600 14px/1.4 var(--acc-font);cursor:pointer}
.natural-composer button svg{width:20px;height:20px}
.natural-composer button:disabled{background:#e5eef4;color:#657987;cursor:default}
.natural-composer textarea:disabled{color:var(--acc-text-muted)}
.natural-meta{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:3px 12px;margin-top:5px}
.natural-meta p{font-size:11px;color:var(--acc-text-muted);line-height:1.5;margin:2px 0;flex:1 1 330px;text-align:right}
.natural-meta a{color:var(--acc-primary);text-decoration:underline}
.natural-keyboard{font-size:11px;color:var(--acc-text-muted);margin:2px 0}
.natural-chat:not(.is-started) .natural-keyboard{display:none}
.natural-limit{font-size:12px;color:#a4262c;margin:5px 0}
.natural-resources{display:flex;align-items:center;gap:20px;border-top:1px solid var(--acc-border);margin-top:26px;padding-top:10px;font-size:14px}
.natural-resources a{color:var(--acc-primary);text-decoration:underline;text-underline-offset:3px;min-height:40px;display:flex;align-items:center}
.natural-messages{display:flex;flex-direction:column;gap:24px;overflow-wrap:anywhere}
.natural-messages:empty{display:none}
.natural-chat.is-started{padding-top:20px;min-height:calc(100dvh - var(--natural-header));display:flex;flex-direction:column}
.is-started .natural-heading h1{margin:0;max-width:none;font-size:25px;text-align:left;line-height:1.3}
.is-started .natural-intro{display:none}
.is-started .natural-offer{display:none}
.is-started .natural-messages{padding:24px 0 40px;flex:1}
.natural-message{font-size:15px;line-height:1.65;white-space:pre-wrap;max-width:100%;margin:0;scroll-margin-top:calc(var(--natural-header) + 20px)}
.natural-message.user{align-self:flex-end;max-width:85%;background:var(--acc-primary-soft);padding:10px 14px;border-radius:var(--acc-radius-sm)}
.natural-message.assistant{align-self:flex-start;padding:3px 0;max-width:72ch}
.natural-package{margin:12px 0 0;color:var(--acc-primary);font-size:13px;font-weight:600}
.is-started .natural-footer{position:sticky;bottom:var(--natural-bottom,0px);z-index:3;padding:8px 0 max(8px,env(safe-area-inset-bottom));background:#fcfdff;box-shadow:0 -8px 12px #fcfdff;margin-top:auto}
.is-started .natural-composer textarea{grid-column:1;height:44px;padding:10px 8px}
.is-started .natural-composer.is-multiline textarea{grid-column:1 / -1;grid-row:1}
.is-started .natural-composer.is-multiline button{grid-row:2}
.is-started .natural-resources{margin-top:12px}
.natural-loading{font-size:13px;color:var(--acc-text-muted);padding:8px 0;display:flex;gap:8px;align-items:center}
.natural-loading::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--acc-primary);animation:natural-pulse 1s ease-in-out infinite alternate}
@keyframes natural-pulse{to{opacity:.3}}
@media(prefers-reduced-motion:reduce){.natural-loading::before{animation:none}}
.natural-error{padding:12px 14px;border:1px solid #f3caca;background:#fff5f5;border-radius:var(--acc-radius-sm);color:#7f1d1d;font-size:14px;line-height:1.5}
.natural-error p{margin:0 0 8px}.natural-error button{min-height:40px;padding:8px 12px;font:600 14px var(--acc-font);border:1px solid #c48e8e;background:#fff;color:#7f1d1d;border-radius:var(--acc-radius-sm);cursor:pointer}
.natural-packages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch}
.natural-prices-panel{width:min(1050px,calc(100vw - 40px));position:relative;left:50%;transform:translateX(-50%);margin-top:18px;flex-shrink:0;scroll-margin-top:calc(var(--natural-header) + 16px)}
.natural-prices-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.natural-prices-heading h2{font:600 24px/1.3 var(--acc-font);margin:0;color:var(--acc-text)}
.natural-chat.prices-open .natural-footer{position:static;box-shadow:none}
#chat-prices::after{content:'⌄';display:inline-block;margin-left:8px;text-decoration:none}
#chat-prices[aria-expanded=true]::after{transform:rotate(180deg)}
.natural-package-card.is-selected{border-color:var(--acc-primary);box-shadow:0 0 0 1px var(--acc-primary);background:var(--acc-primary-soft)}
.natural-package-selected{font-size:12px;font-weight:600;color:var(--acc-primary)}
.natural-package-card{border:1px solid var(--acc-border);border-radius:var(--acc-radius-sm);padding:18px 16px;display:flex;flex-direction:column;gap:10px;background:#fff;min-width:0}
.natural-package-card h3{font-size:21px;font-weight:600;margin:0}.natural-package-card p{font-size:14px;line-height:1.6;margin:0}.natural-package-card .natural-price{font-size:20px;font-weight:600;margin-top:auto}
.natural-package-card small{font-size:11px;color:var(--acc-text-muted);line-height:1.5}
.natural-package-card button,.natural-review button{min-height:44px;border:1px solid var(--acc-primary);background:#fff;color:var(--acc-primary);border-radius:var(--acc-radius-sm);font:600 14px/1.4 var(--acc-font);padding:9px 12px;cursor:pointer}
.natural-package-card button:disabled,.natural-review button:disabled{opacity:.5;cursor:default}
.natural-package-card a{font-size:13px;line-height:1.5;text-decoration:underline;color:var(--acc-primary)}
.natural-package-footnote{font-size:12px;color:var(--acc-text-muted);line-height:1.5;margin:10px 0 0}
.natural-review{background:#fff;border:1px solid var(--acc-border);border-radius:var(--acc-radius-sm);padding:20px;scroll-margin-top:calc(var(--natural-header) + 16px)}
.natural-review h2{font-size:22px;font-weight:600;line-height:1.3;margin:0 0 10px}.natural-review>p{font-size:14px;line-height:1.6;color:var(--acc-text-muted);margin:10px 0}
.natural-review dl{display:grid;grid-template-columns:150px minmax(0,1fr);gap:10px 15px;margin:20px 0}.natural-review dt{font-size:13px;color:var(--acc-text-muted)}.natural-review dd{font-size:14px;white-space:pre-wrap;margin:0;overflow-wrap:anywhere}
.natural-review-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.natural-review-actions button:last-child{background:var(--acc-primary);color:#fff}
.natural-review .natural-complete{font-weight:600;color:#13673c;background:#eaf7ee;padding:12px;border-radius:var(--acc-radius-sm)}
.natural-order-review{margin:0}
.natural-order-review .review-content{overflow:visible}
.natural-order-review .review-title,.natural-order-review .checkout-price{scroll-margin-top:calc(var(--natural-header) + 16px)}
.natural-order-review .review-note,.natural-order-review .review-privacy{font-size:13px;line-height:1.6;color:var(--acc-text-muted)}
.natural-order-review .review-actions{border-top:1px solid var(--acc-border);padding-top:16px;margin-top:18px}
.natural-order-review .review-primary-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.natural-order-review .confirm-btn-submit{flex:1;background:var(--acc-primary);color:#fff;min-height:46px}
.natural-chat.order-completed .natural-footer,.natural-chat.order-completed .natural-resources,.natural-chat.order-completed .natural-prices-panel,.natural-chat.order-completed #chat-new-research{display:none}
@media(max-width:640px){.natural-chat{width:calc(100% - 28px);padding:28px 0 38px}.natural-heading h1{text-align:left;font-size:29px}.natural-intro{text-align:left;font-size:14px;margin-bottom:20px}.natural-composer textarea{height:112px;padding:10px 7px}.natural-meta p{text-align:left;flex-basis:100%;font-size:11px}.natural-keyboard{display:none}.natural-chat.is-started{padding-top:12px}.is-started .natural-heading h1{font-size:21px}.natural-heading{gap:0 12px}.natural-message{font-size:15px}.is-started .natural-messages{gap:20px;padding:20px 0 24px}.natural-packages{grid-template-columns:1fr}.natural-package-card{padding:16px}.natural-package-card h3{font-size:20px}.natural-review{padding:16px}.natural-review dl{grid-template-columns:1fr;gap:3px}.natural-review dd{margin-bottom:10px}.natural-review-actions button{flex:1 1 auto}.natural-message.user{max-width:90%}}
@media(max-height:550px) and (max-width:700px){.is-started .natural-footer{padding-block:4px}.natural-meta p{font-size:10px}.natural-chat.is-started{min-height:240px}}
@media(max-width:640px){.natural-prices-panel{width:100%}.natural-prices-heading h2{font-size:21px}}
