/* Dorm Chef helper (help-chat.js). Own tokens so page styles never change it. */
.dc-help{--h-forest:#143d2b;--h-cream:#fff5dd;--h-yolk:#f3bf3d;--h-pale:#dfeacf;--h-tomato:#d95736;--h-font:'Figtree',system-ui,-apple-system,'Segoe UI',sans-serif;
  position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:40;font-family:var(--h-font);color:var(--h-forest);line-height:1.45}
.dc-help *{box-sizing:border-box}
.dc-help-bubble{display:flex;align-items:center;gap:8px;margin-left:auto;height:56px;padding:0 18px 0 4px;border:2px solid var(--h-forest);border-radius:999px;background:var(--h-yolk);color:var(--h-forest);font:700 16px/1 var(--h-font);cursor:pointer;box-shadow:0 6px 18px #143d2b33;transition:transform .18s ease}
.dc-help-bubble:hover{transform:translateY(-2px)}
.dc-help-bubble:focus-visible,.dc-help button:focus-visible,.dc-help a:focus-visible,.dc-help-input:focus-visible{outline:3px solid var(--h-tomato);outline-offset:3px}
.dc-help-face{width:46px;height:46px;border-radius:50%;object-fit:cover;object-position:50% 12%;background:var(--h-pale)}
.dc-help.is-open .dc-help-bubble-label::after{content:' ×'}
.dc-help-panel{position:absolute;right:0;bottom:68px;display:flex;flex-direction:column;width:min(380px,calc(100vw - 32px));height:min(580px,calc(100dvh - 104px));background:var(--h-cream);border:2px solid var(--h-forest);border-radius:20px;box-shadow:0 18px 40px #143d2b40;overflow:hidden;animation:dc-help-in .18s ease}
.dc-help-panel[hidden]{display:none}
.dc-help-panel:focus{outline:none}
@keyframes dc-help-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.dc-help-head{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--h-forest);color:var(--h-cream)}
.dc-help-head h2{margin:0;font:800 18px/1.2 var(--h-font);color:var(--h-cream)}
.dc-help-head p{margin:2px 0 0;font-size:13px;opacity:.85}
.dc-help-head-face{width:42px;height:42px;border-radius:50%;object-fit:cover;object-position:50% 12%;background:var(--h-pale);flex:none}
.dc-help-close{margin-left:auto;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--h-cream);font:400 30px/1 var(--h-font);cursor:pointer}
.dc-help-close:hover{background:#fff5dd1f}
.dc-help-log{flex:1;overflow-y:auto;padding:14px 12px 6px;overscroll-behavior:contain}
.dc-help-msg{max-width:92%;margin:0 0 10px;padding:10px 12px;border-radius:14px;font-size:15px}
.dc-help-msg p{margin:0 0 8px}.dc-help-msg p:last-child{margin-bottom:0}
.dc-help-bot{background:#fff;border:1px solid #143d2b24;border-bottom-left-radius:4px}
.dc-help-bot:has(> .dc-help-chips:only-child){background:transparent;border:0;padding:0}
.dc-help-you{margin-left:auto;background:var(--h-pale);border-bottom-right-radius:4px}
.dc-help-links{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:6px}
.dc-help-links a,.dc-help-recipes a{color:var(--h-forest);font-weight:700;text-decoration:underline;text-underline-offset:3px;min-height:32px;display:inline-flex;align-items:center}
.dc-help-recipes{margin:6px 0 8px;padding:0;list-style:none}
.dc-help-recipes li{margin:0 0 2px}.dc-help-recipes span{font-size:13px;opacity:.75}
.dc-help-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.dc-help-chip{min-height:38px;padding:6px 12px;border:1.5px solid var(--h-forest);border-radius:999px;background:var(--h-cream);color:var(--h-forest);font:600 14px/1.2 var(--h-font);cursor:pointer;text-align:left}
.dc-help-chip:hover{background:var(--h-yolk)}
.dc-help-form{display:flex;gap:8px;padding:10px 12px 6px;border-top:1px solid #143d2b24}
.dc-help-input{flex:1;min-width:0;height:44px;padding:0 12px;border:1.5px solid var(--h-forest);border-radius:12px;background:#fff;color:var(--h-forest);font:16px var(--h-font)}
.dc-help-send{height:44px;padding:0 16px;border:0;border-radius:12px;background:var(--h-forest);color:var(--h-cream);font:700 15px var(--h-font);cursor:pointer}
.dc-help-note{margin:0;padding:0 12px 10px;font-size:12px;opacity:.72}
@media (max-width:560px){
  .dc-help-bubble{height:52px;padding-right:14px}.dc-help-face{width:42px;height:42px}
  .dc-help.is-open{left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom))}
  .dc-help.is-open .dc-help-bubble{display:none}
  .dc-help-panel{position:static;width:100%;height:min(620px,calc(100dvh - 16px))}
}
@media (prefers-reduced-motion:reduce){.dc-help-panel{animation:none}.dc-help-bubble{transition:none}}
@media print{.dc-help{display:none}}
