.ai-fab-container{position:fixed;bottom:calc(env(safe-area-inset-bottom,0px) + 80px);right:16px;display:flex;flex-direction:column;align-items:center;gap:10px;z-index:200}@media(min-width:768px){.ai-fab-container{bottom:24px}}.ai-fab{position:relative;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#2d6a4f,#40916c);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 16px #2d6a4f80,0 0 0 3px #d4a84340;animation:fab-pulse 3s ease-in-out infinite alternate;transition:transform .15s ease;-webkit-tap-highlight-color:transparent}.ai-fab:active{transform:scale(.93)}.ai-fab-text{font-family:Georgia,Times New Roman,serif;font-weight:900;font-size:18px;color:#f5f0e6;text-shadow:0 1px 2px rgba(0,0,0,.3);line-height:1}.ai-fab-caddie{position:absolute;top:-4px;right:-4px;font-size:12px}@keyframes fab-pulse{0%{box-shadow:0 4px 16px #2d6a4f80,0 0 0 3px #d4a84333}to{box-shadow:0 4px 20px #2d6a4fb3,0 0 0 4px #d4a84359}}.scorecard-pill{display:flex;align-items:center;gap:4px;padding:6px 12px;background:#1b4332;border:1.5px solid #2A4A38;border-radius:20px;color:#d4a843;font-family:Georgia,serif;font-size:12px;font-weight:700;text-decoration:none;box-shadow:0 2px 8px #0000004d;transition:transform .15s ease}.scorecard-pill:active{transform:scale(.95)}.ai-sheet{position:fixed;inset:0;z-index:300}.ai-sheet-backdrop{position:absolute;inset:0;background:#0c1a12b3;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fade-in .2s ease-out}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.ai-sheet-content{position:absolute;bottom:0;left:0;right:0;max-height:85vh;min-height:40vh;display:flex;flex-direction:column;background:linear-gradient(160deg,#fdf8f0,#f0e8d8);border-radius:20px 20px 0 0;box-shadow:0 -8px 32px #0000004d;animation:slide-up .3s cubic-bezier(.22,1,.36,1);z-index:310;background-image:repeating-linear-gradient(0deg,transparent,transparent 32px,rgba(180,170,150,.06) 32px,rgba(180,170,150,.06) 33px),linear-gradient(160deg,#fdf8f0,#f0e8d8);padding-bottom:env(safe-area-inset-bottom,0px)}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.ai-sheet-header{flex-shrink:0;padding:8px 16px 0}.ai-sheet-handle{display:flex;justify-content:center;padding:4px 0 8px}.handle-bar{width:40px;height:4px;background:#d4d0c8;border-radius:2px}.ai-sheet-title-row{display:flex;align-items:center;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid rgba(180,170,150,.2)}.ai-sheet-title{font-family:Georgia,Times New Roman,serif;font-weight:700;font-size:18px;color:#2d6a4f}.ai-sheet-header-actions{display:flex;gap:4px}.ai-header-btn{width:36px;height:36px;border-radius:50%;background:none;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#7a7464;transition:background .15s,color .15s}.ai-header-btn:hover{background:#0000000d;color:#3d3929}.ai-conversation{flex:1;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:12px;min-height:0;-webkit-overflow-scrolling:touch}.ai-welcome{text-align:center;padding:16px 0}.ai-welcome-text{font-family:Caveat,cursive;font-size:20px;color:#7a7464;margin:0}.ai-msg{max-width:85%;padding:10px 14px;border-radius:16px;font-family:system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.5;word-break:break-word;overflow-wrap:break-word;animation:msg-appear .2s ease-out}@keyframes msg-appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ai-msg-user{align-self:flex-end;background:#2d6a4f;color:#f5f0e6;border-bottom-right-radius:4px;box-shadow:0 1px 3px #2d6a4f40}.ai-msg-bot{align-self:flex-start;background:#fff;color:#3d3929;border-bottom-left-radius:4px;border:1px solid rgba(180,170,150,.15);box-shadow:0 1px 3px #0000000f}.ai-msg-bot :global(strong){color:#2d6a4f;font-weight:700}.ai-msg-bot :global(a){color:#2d6a4f;text-decoration:underline}.ai-msg-bot-wrapper{align-self:flex-start;display:flex;gap:8px;max-width:88%;animation:msg-appear .2s ease-out}.ai-msg-bot-wrapper .ai-bot-avatar{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#2d6a4f,#40916c);display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-weight:900;font-size:11px;color:#f5f0e6;margin-top:2px}.ai-msg-bot-wrapper .ai-msg-bot{max-width:100%}.ai-feedback-row{display:flex;gap:4px;margin-top:4px;margin-left:36px;opacity:0;transition:opacity .15s ease}.ai-feedback-row.latest,.ai-feedback-row.rated,.ai-msg-bot-wrapper:hover .ai-feedback-row{opacity:1}.ai-feedback-btn{width:28px;height:28px;border-radius:50%;border:1px solid #E6DFD3;background:#ffffff80;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#b0a898;transition:all .15s;padding:0}.ai-feedback-btn:hover{color:#7a7464;border-color:#b0a898;background:#fffc}.ai-feedback-btn.selected-up{color:#2d6a4f;border-color:#2d6a4f;background:#2d6a4f1a}.ai-feedback-btn.selected-down{color:#dc2626;border-color:#dc2626;background:#dc262614}.ai-feedback-row.rated .ai-feedback-btn:not(.selected-up):not(.selected-down){opacity:.3;pointer-events:none}.ai-msg-tool{align-self:flex-start;font-family:Caveat,cursive;font-size:14px;color:#7a7464;font-style:italic;padding:2px 0;max-width:100%}.ai-msg-loading{align-self:flex-start;display:flex;align-items:center;gap:8px;padding:8px 14px;background:#fff6;border-radius:16px 16px 16px 4px}.ai-loading-dots{display:flex;gap:4px}.ai-loading-dots span{width:8px;height:8px;border-radius:50%;background:#2d6a4f;animation:dot-bounce 1.2s ease-in-out infinite}.ai-loading-dots span:nth-child(2){animation-delay:.15s}.ai-loading-dots span:nth-child(3){animation-delay:.3s}@keyframes dot-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.ai-loading-label{font-family:Caveat,cursive;font-size:18px;color:#7a7464;font-style:italic}.ai-chips{flex-shrink:0;display:flex;gap:8px;padding:8px 16px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.ai-chips::-webkit-scrollbar{display:none}.ai-chip{flex-shrink:0;padding:8px 16px;background:#2d6a4f;border:none;border-radius:20px;font-family:system-ui,-apple-system,sans-serif;font-size:13px;font-weight:600;color:#f5f0e6;cursor:pointer;white-space:nowrap;transition:background .15s,transform .1s;-webkit-tap-highlight-color:transparent;box-shadow:0 1px 4px #2d6a4f4d}.ai-chip:hover{background:#40916c}.ai-chip:active{transform:scale(.95);background:#1b4332}.ai-chip-category{background:transparent!important;color:#2d6a4f!important;border:1.5px solid #2D6A4F;box-shadow:none;font-weight:700}.ai-chip-category:after{content:" ›";font-size:16px;margin-left:2px}.ai-chip-category:hover{background:#2d6a4f1a!important}.ai-chip-category:active{background:#2d6a4f33!important}.ai-chip-back{background:transparent!important;color:#7a7464!important;border:1px solid #D4D0C8;box-shadow:none;font-weight:600}.ai-chip-back:hover{background:#0000000d!important}.ai-input-area{flex-shrink:0;padding:8px 16px 12px;border-top:1px solid rgba(180,170,150,.2)}.ai-input-row{display:flex;gap:8px;align-items:center}.ai-input{flex:1;padding:10px 16px;font-family:system-ui,-apple-system,sans-serif;font-size:16px;border:1.5px solid #E6DFD3;border-radius:24px;background:#fff9;color:#3d3929;outline:none;min-height:44px}.ai-input:focus{border-color:#40916c}.ai-input::placeholder{color:#b0a898}.ai-mic-btn{width:40px;height:40px;border-radius:50%;background:none;border:1.5px solid #E6DFD3;color:#2d6a4f;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .15s}.ai-mic-btn:hover{background:#2d6a4f14;border-color:#40916c}.ai-mic-btn.listening{background:#2d6a4f;border-color:#2d6a4f;color:#fff;animation:mic-pulse 1.5s ease-in-out infinite}@keyframes mic-pulse{0%,to{box-shadow:0 0 #2d6a4f4d}50%{box-shadow:0 0 0 8px #2d6a4f00}}.ai-send-btn{width:40px;height:40px;border-radius:50%;background:#2d6a4f;border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s}.ai-send-btn:hover{background:#40916c}.ai-waveform{display:flex;align-items:center;justify-content:center;gap:3px;height:24px}.wave-bar{width:3px;background:#40916c;border-radius:2px;animation:wave .6s ease-in-out infinite alternate}.wave-bar:nth-child(1){height:8px;animation-delay:0s}.wave-bar:nth-child(2){height:16px;animation-delay:.1s}.wave-bar:nth-child(3){height:12px;animation-delay:.2s}.wave-bar:nth-child(4){height:20px;animation-delay:.15s}.wave-bar:nth-child(5){height:10px;animation-delay:.25s}@keyframes wave{0%{height:6px}to{height:22px}}@media(max-width:640px){.ai-sheet-content{max-height:85vh;padding-bottom:env(safe-area-inset-bottom,0px)}}
