.hosoya-chat{border:1px solid var(--brand-border);background:#fff;border-radius:16px;flex-direction:column;gap:16px;padding:20px;display:flex}.ai-count{background:var(--brand-light);color:var(--brand-dark);border-radius:10px;padding:14px 18px}.ai-count p{margin:5px 0 0;font-size:12px}.ai-messages{flex-direction:column;gap:18px;min-height:220px;max-height:520px;display:flex;overflow:auto}.ai-messages article{border-radius:10px;padding:16px}.ai-question{background:var(--brand-light);margin-left:25px}.ai-answer{background:var(--brand-very-light);margin-right:10px}.ai-messages article div{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:8px;line-height:1.8}.hosoya-chat textarea{border:1px solid var(--brand-border);width:100%;font:inherit;box-sizing:border-box;border-radius:8px;margin-top:8px;padding:12px;display:block}.ai-actions{justify-content:space-between;gap:10px;margin-top:10px;display:flex}.ai-actions button{border:1px solid var(--brand-border);color:var(--brand-main);background:#fff;border-radius:8px;padding:10px 20px}.ai-actions button[type=submit]{background:var(--brand-main);color:#fff}.ai-actions button:disabled{opacity:.5}.hosoya-chat small{color:#617287}.ai-error{color:#ad2525;background:#fff1f1;padding:12px}.ai-progress{background:var(--brand-light);border:1px solid var(--brand-border);color:var(--brand-dark);border-radius:12px;align-items:center;gap:12px;padding:16px;display:flex}.ai-progress>div{flex:1;min-width:0}.ai-progress strong{font-size:14px;display:block}.ai-progress p{margin:6px 0 0;font-size:12px;line-height:1.6}.ai-spinner{border:3px solid var(--brand-border);border-top-color:var(--brand-main);border-radius:50%;flex-shrink:0;width:24px;height:24px;animation:1s linear infinite ai-spin}.ai-dots{gap:3px;margin-left:5px;display:inline-flex}.ai-dots i{background:var(--brand-main);border-radius:50%;width:4px;height:4px;animation:1.2s ease-in-out infinite ai-dot}.ai-dots i:nth-child(2){animation-delay:.2s}.ai-dots i:nth-child(3){animation-delay:.4s}@keyframes ai-spin{to{transform:rotate(360deg)}}@keyframes ai-dot{0%,80%,to{opacity:.25}40%{opacity:1}}@media (prefers-reduced-motion:reduce){.ai-spinner,.ai-dots i{animation:none}}.ai-actions button[type=submit]:hover:not(:disabled){background:var(--brand-dark);border-color:var(--brand-dark)}.hosoya-chat textarea:focus-visible{outline:2px solid var(--brand-medium);outline-offset:2px}.ai-count>strong{font-size:20px;line-height:1.5}.ai-count p{font-size:13px;line-height:1.7}.ai-count details{margin-top:8px;font-size:13px;line-height:1.7}.ai-count summary{cursor:pointer}.hosoya-chat .ai-messages{min-height:160px}.hosoya-chat small{font-size:12px;line-height:1.7}.hosoya-chat .ai-messages-empty{min-height:0;overflow:visible}.hosoya-chat .ai-messages-empty>p{margin:0;line-height:1.8}.hosoya-chat textarea{resize:vertical;min-height:180px;line-height:1.7}.hosoya-chat textarea::placeholder{color:#9696a8;opacity:1}.ai-quota-notice{border:1px solid var(--brand-border);background:var(--brand-very-light);border-radius:10px;padding:16px;line-height:1.7}.ai-quota-notice p{margin:8px 0;font-size:14px}.ai-quota-notice button{border:1px solid var(--brand-border);color:#6b6b7a;background:#f3f3f6;border-radius:7px;padding:8px 12px}.hosoya-chat textarea:disabled{color:#6b6b7a;background:#f5f5f8}.ai-quota-notice button:not(:disabled){background:var(--brand-main,#635bff);color:#fff;cursor:pointer}.ai-quota-notice button:disabled{opacity:.65;cursor:not-allowed}.ai-quota-link{box-sizing:border-box;background:var(--brand-main);border-radius:8px;justify-content:center;align-items:center;padding:10px 16px;font-weight:600;line-height:1.6;text-decoration:none;display:inline-flex;color:#fff!important}.ai-quota-link:hover{background:var(--brand-dark)}.ai-quota-link:focus-visible{outline:2px solid var(--brand-dark);outline-offset:3px}.ai-quota-notice .ai-quota-link{font:inherit;border:0;padding:10px 16px;font-weight:600}.ai-quota-notice .ai-quota-link:disabled{cursor:not-allowed;opacity:.6}.hosoya-chat .ai-version{white-space:nowrap;align-self:flex-end;line-height:1.5}.ai-actions{justify-content:flex-end;align-items:center;gap:10px 16px;display:flex}.ai-question-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 14px;display:grid}.ai-question-heading>label{flex-shrink:0}.ai-conversation-notice{min-width:0;color:var(--brand-dark);flex:360px;line-height:1.5}.ai-conversation-notice strong{font-size:14px;font-weight:700;display:block}.ai-conversation-notice p{color:#617287;margin:2px 0 0;font-size:12px}.ai-question-heading .ai-new-conversation{font:inherit;white-space:nowrap;cursor:pointer;background:var(--brand-main);border:1px solid;border-color:var(--brand-main);color:#fff;border-radius:8px;padding:10px 14px;font-size:14px;font-weight:600}.ai-question-heading .ai-new-conversation:hover:not(:disabled){background:var(--brand-dark);border-color:var(--brand-dark)}.ai-question-heading .ai-new-conversation:focus-visible{outline:2px solid var(--brand-dark);outline-offset:3px}.hosoya-chat .ai-save-knowledge{border:1px solid var(--brand-main);color:var(--brand-dark);cursor:pointer;white-space:normal;background:#fff;border-radius:8px;align-items:center;margin-top:16px;padding:10px 16px;font-size:14px;font-weight:600;display:inline-flex}.hosoya-chat .ai-save-knowledge:hover:not(:disabled){background:var(--brand-light)}.hosoya-chat .ai-save-knowledge:disabled{opacity:.5;cursor:not-allowed}.hosoya-chat .ai-save-knowledge:focus-visible{outline:2px solid var(--brand-main);outline-offset:3px}.ai-question-form{scroll-margin-top:104px}.ai-question-form:focus{outline:none}@media (max-width:800px){.ai-question-form{scroll-margin-top:86px}}.ai-question-heading .ai-new-conversation:disabled{opacity:.5;cursor:not-allowed}@media (max-width:600px){.ai-question-heading{grid-template-columns:1fr auto}.ai-question-heading>label{grid-area:1/1}.ai-question-heading .ai-new-conversation{grid-area:1/2}.ai-conversation-notice{grid-area:2/1/auto/-1}}.ai-question-entry-hint{color:#1d4ed8;flex:1;min-width:0;margin:0;font-size:13px;font-weight:600;line-height:1.7}.ai-actions button[type=submit]{flex-shrink:0}
.ai-history h1{margin:0 0 24px;font-size:24px}.history-intro{color:#393275;background:#eeecff;border-radius:12px;padding:22px 24px}.history-intro strong{font-size:18px}.history-intro p{margin:10px 0 0;line-height:1.8}.history-toolbar,.history-pages{justify-content:space-between;align-items:center;gap:16px;margin:20px 0;display:flex}.history-toolbar button,.history-pages button{color:#5141d8;cursor:pointer;background:#fff;border:1px solid #d6d0ff;border-radius:8px;padding:10px 16px}.history-list{gap:12px;padding:0;list-style:none;display:grid}.history-list li .history-open{text-align:left;cursor:pointer;color:#1d2337;background:#fff;border:1px solid #d6d0ff;border-radius:12px;gap:10px;width:100%;padding:20px;display:grid}.history-list li .history-open:hover,.history-list li .history-open[aria-expanded=true]{background:#f3f1ff;border-color:#6954ff}.history-list time{color:#626b80;font-size:13px}.history-list strong{overflow-wrap:anywhere;font-size:16px;line-height:1.7}.history-list li .history-open>span{color:#5141d8;font-size:14px}.history-detail{background:#fff;border:1px solid #d6d0ff;border-radius:12px;margin-top:24px;padding:24px}.history-detail h2{margin-top:24px;font-size:18px}.history-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0 24px;line-height:1.9}.history-detail p{color:#626b80;font-size:14px;line-height:1.8}.history-empty{background:#fff;border-radius:12px;padding:30px;line-height:1.8}.history-pages{justify-content:center}.history-pages button:disabled{opacity:.4;cursor:default}.ai-history button:focus-visible{outline-offset:3px;outline:3px solid #7765ff}@media (max-width:600px){.history-detail,.history-intro,.history-list li .history-open{padding:16px}.history-toolbar{flex-wrap:wrap}}.history-list li{align-items:stretch;gap:10px;display:flex}.history-list li .history-open{flex:1;min-width:0}.history-list .history-delete{color:#a12b2b;cursor:pointer;background:#fff;border:1px solid #e2b4b4;border-radius:8px;flex-shrink:0;align-self:center;padding:10px 14px;font-size:14px}.history-list .history-delete:hover:not(:disabled){background:#fff1f1}.history-list button:disabled{opacity:.5;cursor:not-allowed}
