:root{--ink:#222;--orange:#f7931e;--green:#1e5b3a;--paper:#fff8ef;--line:#e1d8cd;--muted:#6e6a64}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 10% 10%,rgba(247,147,30,.25),transparent 32%),linear-gradient(145deg,#171717,#263129);font-family:"Open Sans",sans-serif;color:var(--ink);padding:24px}
.assistant-shell{min-height:calc(100vh - 48px);display:grid;place-items:center}
.assistant-card{width:min(1120px,100%);background:#fff;border:1px solid rgba(255,255,255,.25);border-radius:28px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.assistant-head{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.brand img{width:48px;height:48px;object-fit:contain;border-radius:50%;background:#222}
.brand span{display:grid}.brand strong{font-family:Montserrat,sans-serif;letter-spacing:.13em}.brand small{color:var(--orange);font-weight:700;margin-top:2px}
.status{font-size:.78rem;color:var(--green);font-weight:700}.status i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#37a96b;margin-right:6px}
.status[data-state="working"] i{background:var(--orange);animation:pulse 1s infinite}.status[data-state="offline"]{color:#9b3d2e}.status[data-state="offline"] i{background:#c74832}
@keyframes pulse{50%{opacity:.35}}
.intro{padding:36px 26px 20px;text-align:center;background:linear-gradient(180deg,#fff,#faf8f5)}
.eyebrow{font:700 .72rem/1 Montserrat,sans-serif;color:var(--orange);letter-spacing:.15em;text-transform:uppercase}
h1{font:800 clamp(1.7rem,5vw,3.1rem)/1.08 Montserrat,sans-serif;margin:12px auto;color:var(--ink);max-width:700px}
.intro p{margin:0 auto;max-width:680px;color:var(--muted);line-height:1.65}
.quick-asks{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;padding:0 24px 22px;background:#faf8f5}
.quick-asks button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px;color:var(--green);font:700 .78rem "Open Sans",sans-serif;cursor:pointer}
.quick-asks button:hover{border-color:var(--orange);color:#d96a00}
.chat{height:min(560px,58vh);min-height:390px;overflow:auto;padding:22px 24px;display:flex;flex-direction:column;gap:14px;background:linear-gradient(180deg,#fffaf3,#f4efe8)}
.message{max-width:82%}.message small{display:block;margin:0 0 5px 4px;color:var(--muted);font-size:.7rem;font-weight:700}.message>div{padding:13px 15px;border-radius:16px;background:#fff;border:1px solid var(--line);line-height:1.55;font-size:.9rem}
.message.user{align-self:flex-end}.message.user>div{background:var(--green);border-color:var(--green);color:#fff}.message nav{display:flex;gap:7px;flex-wrap:wrap;margin-top:7px}.message nav a{font-size:.76rem;font-weight:700;text-decoration:none;color:var(--green);background:#fff;border:1px solid var(--line);padding:7px 10px;border-radius:999px}
.message.assistant{width:min(100%,920px);max-width:100%}.message.assistant>div.answer-card{padding:0;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 12px 28px rgba(30,91,58,.08)}
.answer-brand{display:flex;align-items:center;gap:12px;padding:18px 20px;background:linear-gradient(120deg,#123d29,#1e5b3a);color:#fff;border-bottom:4px solid var(--orange)}
.answer-monogram{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--green);font:800 22px Montserrat,sans-serif;box-shadow:inset 0 -3px 0 var(--orange)}
.answer-brand small{display:block;color:#ffd39f;letter-spacing:.14em;font:700 10px Montserrat,sans-serif}.answer-brand h3{margin:3px 0 0;font:800 clamp(17px,3vw,23px)/1.2 Montserrat,sans-serif}
.answer-summary{margin:0;padding:19px 20px 10px;font-size:15px;line-height:1.65;color:#2f3933}.answer-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:8px 20px 18px}
.answer-section{background:#f5f8f6;border:1px solid #dbe5df;border-radius:13px;padding:14px}.answer-section h4{margin:0 0 7px;color:var(--green);font:800 14px Montserrat,sans-serif}.answer-section p{margin:0;color:#536058;font-size:13px;line-height:1.5}.answer-section ul{margin:9px 0 0;padding-left:18px;color:#39443e;font-size:12.5px}.answer-section li+li{margin-top:5px}
.answer-products{padding:17px 20px 20px;background:#fbf7f0;border-top:1px solid var(--line)}.answer-section-head{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:12px}.answer-section-head span{font:800 15px Montserrat,sans-serif;color:var(--green)}.answer-section-head small{color:var(--muted)}
.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.product-card{display:grid;grid-template-columns:72px 1fr;gap:12px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;min-width:0}.product-card>img,.product-cover-fallback{width:72px;height:96px;border-radius:8px;object-fit:cover;background:linear-gradient(145deg,#123d29,#1e5b3a);color:#fff;display:grid;place-items:center;font:800 30px Montserrat,sans-serif}.product-copy{min-width:0}.product-copy h4{margin:6px 0 4px;font:800 13px/1.3 Montserrat,sans-serif;color:#1d2822}.product-copy>p{margin:0;color:var(--muted);font-size:11.5px}.product-meta{display:flex;gap:4px;flex-wrap:wrap}.product-meta span{padding:3px 6px;border-radius:999px;background:#edf5f0;color:var(--green);font-size:9px;font-weight:800}.product-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.product-actions a,.product-actions button{border:1px solid var(--green);border-radius:8px;background:#fff;color:var(--green);padding:7px 8px;text-decoration:none;font:800 10.5px "Open Sans",sans-serif;cursor:pointer}.product-actions button,.product-actions .primary-product{background:var(--orange);border-color:var(--orange);color:#251608}.product-actions button:disabled{opacity:.6;cursor:wait}
.catalogue-proof{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 20px 12px;padding:10px 12px;border-radius:10px;background:#e9f5ed;color:var(--green);font-size:11px}.answer-notice{margin:0;padding:0 20px 18px;color:var(--muted);font-size:11.5px}.answer-notice::before{content:"ⓘ ";color:var(--orange);font-weight:800}
.composer{display:flex;gap:10px;padding:16px 20px 8px;border-top:1px solid var(--line)}
.composer input{flex:1;min-width:0;border:1px solid var(--line);border-radius:13px;padding:13px 15px;font:inherit;outline:none}.composer input:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(247,147,30,.18)}
.composer button{border:0;border-radius:13px;padding:0 22px;background:var(--green);color:#fff;font-weight:800;cursor:pointer}.composer button:disabled,.composer input:disabled{opacity:.5;cursor:not-allowed}
.usage-row{display:flex;justify-content:space-between;gap:12px;padding:4px 22px 15px;color:var(--muted);font-size:.72rem}
.access-gate{margin:0 20px 18px;padding:18px;border-radius:16px;background:#fff5e8;border:1px solid rgba(247,147,30,.38);text-align:center}.access-gate strong{display:block;font-family:Montserrat,sans-serif}.access-gate p{font-size:.84rem;color:var(--muted);line-height:1.5}.access-gate a{display:inline-flex;text-decoration:none;color:var(--green);font-weight:800;border:1px solid var(--green);border-radius:10px;padding:9px 13px;margin:3px}.access-gate a.primary{background:var(--orange);border-color:var(--orange);color:#211305}.access-gate p a{display:inline;border:0;padding:0;margin:0;color:var(--green)}
footer{display:flex;gap:14px;flex-wrap:wrap;align-items:center;padding:14px 22px;background:#222;color:#aaa;font-size:.72rem}footer a{color:var(--orange);text-decoration:none}footer span{margin-left:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){body{padding:0}.assistant-shell{min-height:100vh}.assistant-card{border-radius:0;min-height:100vh}.assistant-head{padding:14px 16px}.intro{padding:28px 18px 18px}.quick-asks{justify-content:center;overflow:visible;flex-wrap:wrap;padding:0 16px 18px}.quick-asks button{white-space:normal}.chat{height:52vh;min-height:390px;padding:18px 12px}.message{max-width:92%}.message.assistant{max-width:100%}.answer-sections,.product-grid{grid-template-columns:1fr}.product-card{grid-template-columns:62px 1fr}.product-card>img,.product-cover-fallback{width:62px;height:84px}.answer-section-head{align-items:flex-start;flex-direction:column}.composer{padding:13px 14px 6px}.composer button{padding:0 16px}.usage-row{padding:4px 15px 13px}.access-gate{margin:0 14px 14px}footer{padding:13px 15px}footer span{width:100%;margin:0}}
