.ai-chat-bubble{position:fixed;bottom:24px;right:24px;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000026,0 2px 4px #0000001a;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:10050}.ai-chat-bubble:hover{transform:scale(1.1);box-shadow:0 8px 20px #667eea66,0 4px 8px #0000001a}.ai-chat-bubble:active{transform:scale(.95)}.ai-bubble-icon{width:40px;height:30px;object-fit:contain;display:block;pointer-events:none}.ai-chat-bubble.ai-chat-bubble--suppressed{display:none}@media(min-width:48rem){.ai-chat-bubble.ai-chat-bubble--footer{position:absolute;top:5px;right:15px;bottom:auto;width:calc(var(--footer-height) - 10px);height:calc(var(--footer-height) - 10px)}body:has(.ai-chat-bubble--footer) .ai-chat-panel{right:5px;bottom:calc(var(--footer-height) + 12px)}}.ai-chat-panel{position:fixed;bottom:100px;right:24px;width:478.8px;height:600px;max-height:calc(100vh - 140px);background:#fff;border-radius:16px;box-shadow:0 -10px 24px #0003,-10px 0 24px #0000002e,10px 0 24px #0000002e;display:flex;flex-direction:column;z-index:10051;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.ai-chat-panel.hidden{opacity:0;visibility:hidden;transform:translateY(20px) scale(.95);pointer-events:none}.ai-chat-panel.visible{opacity:1;visibility:visible;transform:translateY(0) scale(1);pointer-events:all}.ai-chat-header{display:flex;align-items:center;justify-content:space-between;padding:16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:16px 16px 0 0;flex-shrink:0}.ai-chat-header-content{display:flex;align-items:center;gap:12px;flex:1}.ai-chat-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:inset 0 0 0 1px #ffffff47}.ai-chat-logo{width:30px;height:22px;object-fit:contain;display:block}.ai-chat-header-text{flex:1}.ai-chat-title{font-size:16px;font-weight:600;margin:0}.ai-chat-subtitle{font-size:13px;opacity:.9;margin:2px 0 0}.ai-chat-close{width:32px;height:32px;border-radius:8px;background:#fff3;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0}.ai-chat-close:hover{background:#ffffff4d}.ai-chat-close svg{width:18px;height:18px}.ai-chat-close svg,.ai-chat-close svg path{stroke:#fff}.ai-chat-messages{flex:1;min-height:0;overflow-anchor:none;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;background:#f9fafb}.ai-chat-messages::-webkit-scrollbar{width:6px}.ai-chat-messages::-webkit-scrollbar-track{background:transparent}.ai-chat-messages::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.ai-chat-messages::-webkit-scrollbar-thumb:hover{background:#9ca3af}.ai-message{display:flex;gap:8px;animation:messageSlideIn .3s ease-out}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ai-message-user{justify-content:flex-end}.ai-message-assistant{justify-content:flex-start}.ai-message-content{max-width:80%;padding:12px 16px;border-radius:16px;font-size:14px;line-height:1.5;word-wrap:break-word;word-break:break-word;overflow-wrap:break-word}.ai-message-user .ai-message-content{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom-right-radius:4px}.ai-message-assistant .ai-message-content{background:#fff;color:#1f2937;border-bottom-left-radius:4px;box-shadow:0 1px 2px #0000000d}.ai-message-assistant .ai-message-content:has(.ai-chat-card),.ai-message-assistant .ai-message-content:has(.ai-jd-upload),.ai-message-assistant .ai-message-content:has(.ai-question-list){max-width:100%}.ai-message-text{white-space:normal}.ai-message-text p{margin:0}.ai-message-text ul{margin:8px 0;padding-left:1.15em}.ai-message-text li{margin:2px 0}.ai-message-text a{color:#667eea;text-decoration:underline;word-break:break-all;cursor:pointer}.ai-message-user .ai-message-text a{color:#e0e7ff}.ai-message-text a:hover{opacity:.8}.ai-chat-card{display:flex;flex-direction:column;gap:12px;margin:12px 0 2px;padding:12px;border:1px solid #e7e5e4;border-radius:14px;background:#fafaf9;text-align:left}.ai-chat-card-top{display:flex;gap:10px;align-items:flex-start}.ai-chat-card-mark{width:36px;height:36px;border-radius:10px;background:#eef2ff;color:#4338ca;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ai-chat-card-mark svg{width:18px;height:18px}.ai-chat-card-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.ai-chat-card-title{font-size:13px;font-weight:650;line-height:1.3;color:#111827}.ai-chat-card-detail{font-size:12px;font-weight:400;line-height:1.4;color:#6b7280}.ai-chat-card-actions{display:grid;grid-template-columns:1fr auto;gap:8px}.ai-chat-card-primary,.ai-chat-card-secondary{appearance:none;margin:0;border-radius:10px;font:inherit;font-size:12px;font-weight:650;line-height:1.2;cursor:pointer}.ai-chat-card-primary{padding:9px 12px;border:none;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.ai-chat-card-primary:hover{filter:brightness(1.05)}.ai-chat-card-secondary{padding:9px 12px;border:1px solid #d6d3d1;background:#fff;color:#44403c}.ai-chat-card-secondary:hover{border-color:#667eea;color:#4338ca}.ai-jd-upload{display:flex;flex-direction:column;gap:8px;margin-top:12px}.ai-jd-attach{appearance:none;width:100%;font:inherit;color:inherit;cursor:pointer;text-align:left}.ai-jd-attach:hover{border-color:#667eea}.ai-jd-drop{display:flex;flex-direction:column;align-items:center;gap:4px;padding:18px 12px;border-style:dashed;border-color:#c4b5fd;text-align:center}.ai-jd-drop.drag-over{background:#eef2ff;border-color:#667eea;border-style:dashed}.ai-jd-drop-title{font-size:13px;font-weight:650;color:#111827}.ai-jd-drop-detail{font-size:12px;color:#6b7280}.ai-jd-browse{margin-top:8px;appearance:none;border:1px solid #d6d3d1;background:#fff;color:#111827;border-radius:8px;padding:6px 14px;font:inherit;font-size:13px;font-weight:650;cursor:pointer}.ai-jd-browse:hover{border-color:#667eea;color:#4338ca}.ai-jd-choice{width:100%;text-align:left;cursor:pointer;font:inherit}.ai-jd-choice.is-selected{border-color:#111827;background:#f5f5f4}.ai-role-fields{display:flex;flex-direction:column;gap:14px;margin-top:12px}.ai-jd-paste{margin:4px 0 0;font-size:13px;line-height:1.45}.ai-choice-list,.ai-question-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.ai-question-list-label{font-size:12px;font-weight:650;letter-spacing:.01em;color:#6b7280}.ai-question-list-hint{margin:0;font-size:13px;line-height:1.4;color:#4b5563}.ai-question-card{appearance:none;display:flex;align-items:flex-start;gap:10px;width:100%;margin:0;padding:10px 12px;border:1px solid #e7e5e4;border-radius:14px;background:#fafaf9;color:#111827;font:inherit;text-align:left;cursor:pointer}.ai-question-card:hover{border-color:#667eea;background:#f5f3ff}.ai-question-card.is-active{border-color:#667eea;background:#eef2ff}.ai-question-index{flex-shrink:0;width:22px;height:22px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:12px;font-weight:700;line-height:22px;text-align:center}.ai-question-card.is-active .ai-question-index{background:#667eea;color:#fff}.ai-question-text{font-size:13px;line-height:1.45}.ai-typing-indicator .ai-message-content{display:flex;align-items:center;gap:10px;padding:12px 16px}.ai-typing-status{font-size:14px;line-height:1.3}.ai-typing-dots{display:flex;gap:4px;align-items:center;height:20px}.ai-typing-dots span{width:8px;height:8px;border-radius:50%;background:#9ca3af;animation:typingBounce 1.4s infinite ease-in-out}.ai-typing-dots span:nth-child(1){animation-delay:0s}.ai-typing-dots span:nth-child(2){animation-delay:.2s}.ai-typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-8px)}}.ai-chat-suggestions{display:flex;flex-wrap:wrap;flex-shrink:0;gap:8px;padding:12px 16px;background:#fff;border-top:1px solid #e5e7eb}.ai-suggestion-chip{padding:8px 14px;border-radius:20px;background:#f3f4f6;border:1px solid #e5e7eb;color:#4b5563;font-size:13px;cursor:pointer;transition:all .2s;white-space:nowrap}.ai-suggestion-chip:hover{background:#667eea;color:#fff;border-color:#667eea}.ai-chat-file-preview{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;padding:12px 16px;background:#f3f4f6;border-top:1px solid #e5e7eb;gap:12px}.ai-file-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.ai-file-icon{width:24px;height:24px;stroke:#667eea;flex-shrink:0}.ai-file-name{font-size:13px;color:#4b5563;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-file-remove{width:28px;height:28px;border-radius:8px;background:#fff;border:1px solid #e5e7eb;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.ai-file-remove:hover{background:#fee2e2;border-color:#fecaca}.ai-file-remove svg{width:14px;height:14px;stroke:#6b7280}.ai-file-remove:hover svg{stroke:#ef4444}.ai-chat-input-container{display:flex;flex-shrink:0;gap:8px;padding:16px;background:#fff;border-top:1px solid #e5e7eb;align-items:flex-end}.ai-chat-input{flex:1;min-height:20px;max-height:100px;padding:10px 14px;border-radius:12px;background:#f9fafb;border:2px solid #e5e7eb;font-size:14px;line-height:1.5;color:#1f2937;overflow-y:auto;transition:all .2s;outline:none}.ai-chat-input.drag-over{background:#ede9fe;border-color:#667eea;border-style:dashed}.ai-chat-input:empty:before{content:attr(data-placeholder);color:#9ca3af;pointer-events:none}.ai-chat-input.focused,.ai-chat-input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.ai-chat-send{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.ai-chat-send:hover{transform:scale(1.05);box-shadow:0 4px 12px #667eea4d}.ai-chat-send:active{transform:scale(.95)}.ai-chat-send svg{width:20px;height:20px}.ai-chat-send svg,.ai-chat-send svg path{stroke:#fff}.ai-chat-here-hint{--ai-hint-arrow: 8px;position:fixed;z-index:10049;display:flex;align-items:center;box-sizing:border-box;background:#fff;color:#000;border-radius:12px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.35));font-family:Biennale,sans-serif;font-size:13px;font-weight:500;line-height:1.25;opacity:0;cursor:pointer;pointer-events:auto;transition:opacity .3s ease}.ai-chat-here-hint.is-in{opacity:1}.ai-chat-here-hint--invite{z-index:10060;width:max-content;max-width:min(380px,calc(100vw - 24px));height:auto;padding:12px 14px;right:auto;bottom:auto;text-align:center;justify-content:center}.ai-chat-here-hint--invite:after{content:"";position:absolute;left:50%;bottom:calc(var(--ai-hint-arrow) * -1);transform:translate(-50%);border-style:solid;border-width:var(--ai-hint-arrow) 7px 0 7px;border-color:#fff transparent transparent transparent}.ai-chat-here-hint--invite.ai-chat-here-hint--below:after{bottom:auto;top:calc(var(--ai-hint-arrow) * -1);border-width:0 7px var(--ai-hint-arrow) 7px;border-color:transparent transparent #fff transparent}.ai-chat-here-hint--invite.ai-chat-here-hint--beside{--ai-hint-arrow-y: 50%;width:auto;max-width:none}.ai-chat-here-hint--invite.ai-chat-here-hint--beside:after{left:calc(var(--ai-hint-arrow) * -1);bottom:auto;top:var(--ai-hint-arrow-y);transform:translateY(-50%);border-width:7px var(--ai-hint-arrow) 7px 0;border-color:transparent #fff transparent transparent}@media(max-width:768px){.ai-chat-bubble{bottom:20px;right:20px;width:56px;height:56px}.ai-bubble-icon{width:36px;height:27px}.ai-chat-here-hint:not(.ai-chat-here-hint--invite){--ai-hint-gap: 12px;left:20px;bottom:20px;height:56px;right:calc(20px + 56px + var(--ai-hint-gap) + var(--ai-hint-arrow));padding:0 14px}.ai-chat-here-hint-text{min-width:0}.ai-chat-here-hint:not(.ai-chat-here-hint--invite):after{content:"";position:absolute;right:calc(var(--ai-hint-arrow) * -1);top:50%;transform:translateY(-50%);border-style:solid;border-width:7px 0 7px var(--ai-hint-arrow);border-color:transparent transparent transparent #fff}.ai-chat-panel{--ai-chat-edge: 20px;--ai-chat-bubble-size: 56px;--ai-chat-bubble-bottom: 20px;--ai-chat-gap: 20px;--ai-chat-bottom: calc(var(--ai-chat-bubble-bottom) + var(--ai-chat-bubble-size) + var(--ai-chat-gap));top:var(--ai-chat-edge);right:var(--ai-chat-edge);bottom:var(--ai-chat-bottom);left:var(--ai-chat-edge);width:auto;height:auto;max-height:none;border-radius:16px}.ai-chat-header{border-radius:16px 16px 0 0}.ai-chat-messages{padding:12px;gap:10px}.ai-message-content{max-width:85%;padding:10px 12px;font-size:14px}.ai-message-assistant .ai-message-content:has(.ai-chat-card),.ai-message-assistant .ai-message-content:has(.ai-jd-upload),.ai-message-assistant .ai-message-content:has(.ai-question-list){max-width:85%}.ai-chat-input-container{padding:12px}.ai-chat-input{font-size:16px}}@media(prefers-color-scheme:dark){.ai-chat-panel{background:#1f2937}.ai-chat-messages{background:#111827}.ai-message-assistant .ai-message-content{background:#374151;color:#f3f4f6}.ai-chat-suggestions{background:#1f2937;border-top-color:#374151}.ai-suggestion-chip{background:#374151;border-color:#4b5563;color:#e5e7eb}.ai-suggestion-chip:hover{background:#667eea;color:#fff;border-color:#667eea}.ai-chat-file-preview{background:#374151;border-top-color:#4b5563}.ai-file-name{color:#e5e7eb}.ai-file-remove{background:#1f2937;border-color:#4b5563}.ai-file-remove:hover{background:#7f1d1d;border-color:#991b1b}.ai-chat-input-container{background:#1f2937;border-top-color:#374151}.ai-chat-input{background:#111827;border-color:#374151;color:#f3f4f6}.ai-chat-input.drag-over{background:#312e81;border-color:#667eea}.ai-chat-input.focused,.ai-chat-input:focus{background:#1f2937;border-color:#667eea}.ai-chat-card{background:#111827;border-color:#374151}.ai-chat-card-mark{background:#312e81;color:#c7d2fe}.ai-chat-card-title{color:#f9fafb}.ai-chat-card-detail{color:#9ca3af}.ai-chat-card-secondary{background:#1f2937;border-color:#4b5563;color:#e5e7eb}.ai-chat-card-secondary:hover{border-color:#818cf8;color:#c7d2fe}.ai-jd-drop{border-color:#6366f1}.ai-jd-drop.drag-over{background:#312e81;border-color:#818cf8}.ai-jd-drop-title{color:#f9fafb}.ai-jd-drop-detail{color:#9ca3af}.ai-jd-browse{background:#1f2937;border-color:#4b5563;color:#f9fafb}.ai-question-list-label{color:#9ca3af}.ai-question-list-hint{color:#d1d5db}.ai-question-card{background:#111827;border-color:#374151;color:#f3f4f6}.ai-question-card:hover,.ai-question-card.is-active{background:#1e1b4b;border-color:#818cf8}.ai-question-index{background:#312e81;color:#c7d2fe}.ai-question-card.is-active .ai-question-index{background:#667eea;color:#fff}}.ai-chat-backdrop{position:fixed;inset:0;background:#080a108c;z-index:10050;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease}.ai-chat-backdrop.visible{opacity:1;visibility:visible;pointer-events:auto}.ai-chat-panel.ai-chat-panel--popup{top:5.5875dvh;left:0;right:0;bottom:auto;width:min(88.825vw,1200px);max-width:1200px;margin-inline:auto;height:88.825dvh;max-height:88.825dvh;border-radius:16px}.ai-chat-panel--popup .ai-chat-header{background:#000;border-bottom:1px solid #ff2d01}.ai-chat-panel--popup .ai-chat-avatar{background:#ff2d01}.ai-chat-panel--popup .ai-message-assistant{flex-direction:column;align-items:flex-start;align-self:stretch;width:100%}.ai-chat-panel--popup .ai-message-user .ai-message-content,.ai-chat-panel--popup .ai-message-assistant .ai-message-content{max-width:min(420px,62%)}.ai-chat-panel--popup .ai-message-user .ai-message-content,.ai-chat-panel--popup .ai-message-assistant .ai-message-content{background:#1f2937;color:#e5e7eb;border:none}.ai-chat-panel--popup .ai-message-assistant .ai-message-content:not(.ai-message-content--plain){font-size:15.4px;box-shadow:0 0 4px #ff2d0180}.ai-chat-panel--popup .ai-message-user .ai-message-content{box-shadow:0 0 4px #8b5cf699}.ai-chat-panel--popup .ai-message-assistant .ai-message-text a{color:#93c5fd}.ai-chat-panel--popup .ai-message-assistant .ai-message-content--plain{background:transparent;color:inherit;box-shadow:none;border:none;padding:0;max-width:min(420px,62%);width:min(420px,62%)}.ai-chat-panel--popup .ai-chat-send{background:#ff2d01}.ai-chat-panel--popup .ai-chat-send:hover{box-shadow:0 4px 12px #ff2d0159}.ai-chat-panel--popup .ai-message-content--user-actions{align-self:flex-end}.ai-chat-panel--popup .ai-message-assistant .ai-message-content--questions{align-self:stretch;width:100%;max-width:100%}.ai-chat-panel--popup .ai-typing-dots span{background:#9ca3af}
