.project-buddy[hidden],.project-buddy [hidden] { display:none!important; }
.project-buddy { position:fixed;right:20px;bottom:max(16px,env(safe-area-inset-bottom));z-index:1040;max-width:calc(100vw - 24px);font-family:inherit;color:#222; }
.project-buddy-launcher { display:flex;align-items:center;gap:8px;margin-left:auto;padding:4px 14px 4px 4px;background:#fcfaf7;color:#262320;border:1px solid #c17b59;border-radius:18px;box-shadow:0 6px 24px #0002;font-size:13px;font-weight:650;cursor:pointer;min-height:52px; }
.project-buddy-launcher svg { width:44px;height:48px;flex-shrink:0; }
.buddy-shell { fill:#c87850; }.buddy-face { fill:#282623; }.buddy-eyes { fill:#fff8ef; }.buddy-detail { fill:#e8bd9e; }.buddy-mark { fill:#282623; }.buddy-happy { fill:#fff8ef;opacity:0; }
.project-buddy-launcher:hover .buddy-eyes { opacity:0; }.project-buddy-launcher:hover .buddy-happy { opacity:1; }
.buddy-character { animation:companion-bob 5s ease-in-out infinite;transform-origin:center; }.buddy-arm-right { animation:companion-wave 5s ease-in-out infinite;transform-origin:60px 64px; }
.project-buddy.motion-paused svg * { animation:none!important; }
@keyframes companion-bob { 0%,100% {transform:translateY(0);} 50% {transform:translateY(-2px);} }
@keyframes companion-wave { 0%,70%,100%{transform:rotate(0);}80%{transform:rotate(-12deg);}90%{transform:rotate(8deg);} }
.project-buddy-panel { width:380px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 160px);overflow:auto;overscroll-behavior:contain;margin-bottom:10px;padding:20px;background:#fcfaf7;border:1px solid #d6c5b5;border-radius:18px;box-shadow:0 12px 36px #0003; }
.buddy-heading { display:flex;align-items:flex-start;gap:12px;justify-content:space-between; }.buddy-heading h2 {font-size:19px;line-height:1.3;margin:5px 0 12px;}.buddy-eyebrow {font-size:11px;letter-spacing:.06em;color:#84442b;font-weight:650;}
.buddy-heading>button {width:36px;height:36px;flex-shrink:0;border:1px solid #d6c5b5;border-radius:9px;font-size:24px;background:transparent;color:#222;cursor:pointer;}
.project-buddy-panel p {font-size:13px;line-height:1.55;margin:0 0 12px;color:#555;}.project-buddy-panel label {display:block;font-size:13px;font-weight:600;margin:12px 0 6px;}.project-buddy-panel label span {font-weight:400;}
.project-buddy-panel select,.project-buddy-panel textarea,.project-buddy-panel input:not([type="hidden"]) {display:block;width:100%;min-height:44px;border:1px solid #b9aea2;background:white;color:#222;border-radius:8px;padding:10px;font:inherit;font-size:14px;}
.buddy-recommendation {padding:12px;margin:14px 0;background:#f1e8df;border-radius:10px;font-size:13px;}.buddy-recommendation h3 {font-size:15px;margin:0 0 7px;}.project-buddy a {color:#88452e;}.buddy-recommendation a {font-weight:600;}.buddy-recommendation ul {padding-left:18px;margin:8px 0;}
.project-buddy-panel details {border-bottom:1px solid #dfd5cc;padding:9px 0;font-size:13px;}.project-buddy-panel summary {cursor:pointer;font-weight:600;min-height:28px;}.project-buddy-panel details p {margin:8px 0;}
.project-buddy-panel .buddy-privacy {font-size:11px;margin:8px 0 12px;}.project-buddy-panel .buddy-primary {display:block;padding:11px 12px;border-radius:9px;background:#c87850;color:#211b17;text-align:center;font-weight:650;text-decoration:none;font-size:14px;}
.buddy-secondary {display:flex;flex-direction:column;gap:8px;margin-top:12px;font-size:12px;}.buddy-settings {display:flex;justify-content:space-between;gap:8px;margin-top:14px;}.buddy-settings button {border:0;padding:5px 0;background:transparent;color:#555;text-decoration:underline;font-size:11px;min-height:32px;cursor:pointer;}
body:has(#acadify-cookie-banner) .project-buddy {display:none!important;}.buddy-nojs {position:fixed;bottom:16px;right:16px;background:#111;color:#fff;padding:10px;border-radius:12px;z-index:1040;}
@media(max-width:575px){.project-buddy{right:12px;}.project-buddy-panel{padding:16px;}.project-buddy-launcher span{font-size:12px;}}
@media(prefers-reduced-motion:reduce){.project-buddy svg *{animation:none!important;}}

.project-buddy-panel button.buddy-primary {width:100%;border:0;cursor:pointer;margin-top:14px;min-height:44px;}
.project-buddy-panel button.buddy-primary:disabled {opacity:.65;cursor:default;}
#helper-status {font-size:13px;margin-top:10px;}
