/* Shared by the questionnaire, floating guide and checkout assistant in both designs. */
:root{--assistant-text:#29231e;--assistant-halo:none}
html[data-design=zamm]{--assistant-text:#292929}
html[data-design]{--assistant-surface:#f4eee3;--assistant-border:#775b48}
html[data-design=zamm]{--assistant-surface:#fff;--assistant-border:#ddd}
html[data-design] :is(#desk-assistant,.assistant-master-floating,.checkout-assistant){background:var(--assistant-surface);backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid var(--assistant-border);border-radius:12px;box-shadow:0 8px 28px rgba(35,28,20,.16)}
html[data-design] #desk-assistant .assistant-heading{background:var(--assistant-surface);border-bottom:1px solid var(--assistant-border)}
html[data-design] #desk-assistant :is(.assistant-message,.assistant-library-answer,.seo-advice p){font-size:16px;line-height:1.5}
html[data-design] :is(#desk-assistant,.assistant-master-floating,.checkout-assistant){color:var(--assistant-text);font-weight:600;text-shadow:var(--assistant-halo)}
html[data-design] :is(#desk-assistant,.assistant-master-floating,.checkout-assistant) :is(p,small,label,span,a,button,select,textarea,.master-message){color:var(--assistant-text);font-weight:600;text-shadow:var(--assistant-halo)}
html[data-design] :is(#desk-assistant,.assistant-master-floating,.checkout-assistant) :is(b,strong,h2,h3,summary){color:var(--assistant-text);font-weight:800}
html[data-design] :is(#desk-assistant,.assistant-master-floating,.checkout-assistant) :is(p,small,.master-message){line-height:1.45}
html[data-design] :is(#desk-assistant,.checkout-assistant) :is(select,textarea,input){text-shadow:none}
html[data-design] #desk-assistant :is(.assistant-message,.assistant-library,.assistant-quiz,.assistant-library-answer,.assistant-proposal){text-shadow:none}
html[data-design] #desk-assistant :is(.assistant-message,.assistant-library,.assistant-quiz,.assistant-library-answer,.assistant-proposal) :is(p,small,label,summary,span,b,strong,a,button,select,textarea){text-shadow:none}
html[data-design] #desk-assistant :is(.assistant-message a,.assistant-proposal a,.assistant-quiz a){text-decoration:underline;text-underline-offset:2px;font-weight:700}
html[data-design] :is(#assistant-close,.checkout-assistant-handle button){font-weight:700}
/* Action buttons need their own foreground; the panel's dark text must not override it. */
html[data-design] #desk-assistant :is(.assistant-quiz button,.assistant-message button,.assistant-proposal button,#assistant-send){background:#71351f;color:#fff;font-weight:700;text-shadow:none}
html[data-design] #desk-assistant :is(.assistant-quiz button,.assistant-message button,.assistant-proposal button,#assistant-send) :is(span,b,strong,small){color:#fff;text-shadow:none}
html[data-design] #desk-assistant :is(.assistant-quiz button,.assistant-message button,.assistant-proposal button,#assistant-send):hover{background:#542616;color:#fff}

/* Only the content scrolls; headings and close controls remain in the first row. */
#desk-assistant:not([hidden]){display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;max-height:min(680px,calc(100dvh - 120px))}
#desk-assistant .assistant-heading{position:relative;top:auto;margin:0;padding:0 0 9px;z-index:2}
#desk-assistant .assistant-scroll-body{min-height:0;overflow:auto;overscroll-behavior:contain}
#assistant-close{flex:0 0 auto;min-width:44px;min-height:44px}
#about{padding:0;overflow:hidden;max-height:calc(100dvh - 40px)}
#about[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}
#about .about-heading{position:relative;padding:24px 64px 20px 28px;border-bottom:1px solid var(--line);background:inherit}
#about .about-heading h2{margin:8px 0 0}
#about .about-heading #close-dialog{top:10px;right:10px;min-width:44px;min-height:44px}
#about .about-scroll-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 28px 20px}
@media(max-width:760px){#desk-assistant:not([hidden]){max-height:calc(100dvh - 24px)}#about{max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);margin:auto}#about .about-heading{padding-left:20px}#about .about-scroll-body{padding:0 20px 16px}}
 .config .source-details>.source-heading{font-size:16px;font-weight:800;line-height:1.5;color:#282924;background:#f8dd48;border:1px solid #b69b20;border-radius:7px;padding:12px 14px;margin-bottom:10px;min-height:48px}
 .config .source-details>.source-heading:hover{background:#f2d131}
 .config .source-details>.source-heading:focus-visible{outline:3px solid #282924;outline-offset:3px}
html[data-design=bureau] .config .source-details>.source-heading{color:#fff;background:#71351f;border-color:#71351f;text-shadow:none}
html[data-design=bureau] .config .source-details>.source-heading:hover{color:#fff;background:#542616;border-color:#542616}

/* Slightly larger assistant copy in both themes. */
html[data-design] #desk-assistant :is(.assistant-message,.assistant-library-answer,.seo-advice p,.assistant-scroll-body p){font-size:17px;line-height:1.55}
html[data-design] #desk-assistant :is(.assistant-scroll-body button,.assistant-scroll-body summary,.assistant-scroll-body label,.assistant-scroll-body a,.assistant-scroll-body select){font-size:15px;line-height:1.45}


html[data-design] .assistant-master .master-message{font-size:16px;line-height:1.5;font-weight:500;max-height:none;overflow:visible}
html[data-design] .assistant-master b{font-size:17px}

html[data-design] .assistant-master-floating>div{display:block;min-width:0}
html[data-design] .assistant-master-floating{box-sizing:border-box;max-width:calc(100vw - 24px)}
