/*! AI相談チャット（クラウド版） Copyright (c) 2026 株式会社REPRESENT. All rights reserved. 利用規約に基づき、提供元のサービスの一部として配信しています。複製・解析・流用を禁じます。 */
@keyframes aicc-typing{0%,60%,to{transform:translateY(0);opacity:.35}30%{transform:translateY(-4px);opacity:1}}:host{all:initial;color-scheme:light}.aicc{--ink:#26323d;--head:#2f4f6f;--accent:#3d6f9a;--accent-strong:#2f4f6f;--paper:#f8f9fa;--surface:#fff;--line:#dde2e7;--line-strong:#b9c1c9;--muted:#66717c;--link:#235a8c;--bubble:#edf1f5;--bubble-user:#f3f0ea;--soft-accent:#eef4fa;--soft-line:#bfd1e2;--status:#2b4660;--eyebrow:#d5e0ea;--code-bg:#1f2421;--code-ink:#e8ece6;--aicc-bottom:24px;--aicc-keyboard:0px;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;font-size:14px;line-height:1.65;text-align:left}.aicc *,.aicc ::after,.aicc ::before{box-sizing:border-box}.aicc [hidden]{display:none!important}.aicc .bubble pre code,.aicc button,.aicc input,.aicc textarea{font:inherit}.aicc button{cursor:pointer;border:0;line-height:1.5}.aicc button:disabled{cursor:default;opacity:.55}.aicc a:focus-visible,.aicc button:focus-visible,.aicc input:focus-visible,.aicc textarea:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.aicc a{color:var(--link);text-underline-offset:3px;cursor:pointer}.aicc .launcher,.aicc h2{font-weight:700;color:#fff}.aicc .launcher{position:fixed;z-index:2147483000;right:24px;bottom:calc(var(--aicc-bottom) + env(safe-area-inset-bottom,0));display:flex;gap:10px;align-items:center;min-height:56px;max-width:calc(100vw - 48px);padding:8px 20px 8px 8px;border-radius:40px;background:var(--head);box-shadow:0 6px 24px #152c4033;font-size:14px}.aicc .avatar,.aicc .paw{background:#fff;border-radius:50%;flex-shrink:0}.aicc .paw{display:grid;place-items:center;width:44px;height:44px;overflow:hidden}.aicc .avatar{display:block;width:100%;height:100%;object-fit:cover}.aicc .identity,.aicc header{display:flex;align-items:center}.aicc .identity{gap:10px;min-width:0}.aicc .header-avatar{width:40px;height:40px}.aicc .message-identity{display:flex;align-items:center;gap:6px;margin-bottom:6px}.aicc .message-avatar{width:24px;height:24px}.aicc .message-identity .message-label{margin:0}.aicc .mobile-label{display:none}.aicc .panel{position:fixed;z-index:2147483001;right:24px;bottom:calc(var(--aicc-bottom) + 76px + var(--aicc-keyboard) + env(safe-area-inset-bottom,0));display:flex;flex-direction:column;width:420px;max-width:calc(100vw - 48px);height:650px;max-height:calc(var(--aicc-vh,100dvh) - var(--aicc-bottom) - 116px - env(safe-area-inset-bottom,0));background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 16px 70px #162f4033;overflow:hidden}.aicc header{flex-shrink:0;justify-content:space-between;gap:8px;padding:17px 20px;background:var(--head);color:#fff}.aicc .eyebrow{display:block;font-size:9px;letter-spacing:1.8px;color:var(--eyebrow)}.aicc h2{font-size:17px;line-height:1.5;margin:4px 0 0}.aicc .icon{min-width:36px;min-height:36px;border-radius:50%;color:#fff;background:#ffffff14;font-size:26px}.aicc .intro{padding:14px 20px 12px;border-bottom:1px solid var(--line);flex-shrink:0}.aicc p{margin:0 0 10px}.aicc .intro p{margin-bottom:5px;font-size:13px}.aicc small{display:block;font-size:10px;color:var(--muted)}.aicc .consent{overflow:auto;padding:18px 20px;font-size:12px}.aicc .consent label{display:flex;align-items:flex-start;gap:8px;padding:12px 0 16px;font-weight:600}.aicc .agree{margin-top:5px;flex-shrink:0;accent-color:var(--accent);width:16px;height:16px}.aicc .primary{padding:10px 18px;border-radius:10px;background:var(--accent-strong);color:#fff;font-weight:700}.aicc .start{width:100%}.aicc .conversation{display:flex;flex-direction:column;min-height:0;flex:1;overflow:auto}.aicc .messages{overflow:auto;flex:1;min-height:90px;padding:16px;overscroll-behavior:contain}.aicc .message{margin-bottom:22px;max-width:96%}.aicc .message-label{display:block;font-size:11px;color:var(--muted);margin-bottom:5px}.aicc .message .bubble{white-space:pre-wrap;overflow-wrap:anywhere;padding:14px 16px;border-radius:3px 13px 13px;background:var(--bubble);font-size:15px;line-height:1.9;margin:0}.aicc .message.user{margin-left:auto}.aicc .message.user .bubble{border-radius:13px 3px 13px 13px;background:var(--bubble-user)}.aicc .message.user .message-label{text-align:right}.aicc .suggestions{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 12px;flex-shrink:0}.aicc .suggestions button,.aicc textarea{border:1px solid var(--line);border-radius:20px;color:var(--ink);background:var(--surface);font-size:11px;padding:7px 10px}.aicc form{margin:0;padding:12px 16px;border-top:1px solid var(--line);flex-shrink:0}.aicc textarea{display:block;resize:vertical;width:100%;min-height:65px;max-height:120px;padding:10px;border:1px solid var(--line-strong);border-radius:10px;font-size:16px;line-height:1.5}.aicc .send-row{display:flex;gap:8px;justify-content:space-between;align-items:center;margin-top:8px}.aicc .send-row small{font-size:9px}.aicc .retry{background:var(--soft-accent);color:var(--link);padding:10px;margin:0 16px 8px;border:1px solid var(--soft-line);border-radius:8px}.aicc .status{font-size:11px;padding:0 16px;margin:4px 0 8px;color:var(--status);flex-shrink:0}.aicc .status:empty{display:none}.aicc footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 16px;border-top:1px solid var(--line);flex-shrink:0;font-size:11px}.aicc footer button{padding:5px 8px;background:0 0;color:var(--ink);text-decoration:underline;text-underline-offset:3px}.aicc .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:520px){.aicc .launcher{right:12px;min-height:50px;padding:8px 13px 8px 8px;gap:6px;font-size:12px}.aicc .launcher-label{display:none}.aicc .mobile-label{display:inline}.aicc .paw{width:34px;height:34px}.aicc .panel{right:12px;width:calc(100vw - 24px);max-width:none;bottom:calc(var(--aicc-bottom) + 64px + var(--aicc-keyboard) + env(safe-area-inset-bottom,0));max-height:calc(var(--aicc-vh,100dvh) - var(--aicc-bottom) - 84px - env(safe-area-inset-bottom,0));border-radius:16px}.aicc .intro{padding:10px 16px}.aicc header{padding:12px 16px}}@media (max-height:530px){.aicc .intro{display:none}.aicc .panel{max-height:calc(var(--aicc-vh,100dvh) - 20px);bottom:calc(10px + var(--aicc-keyboard))}}.aicc .typing .bubble{display:flex;align-items:center;gap:12px;width:fit-content;min-height:44px;padding:12px 16px}.aicc .typing-label{font-size:12px;color:var(--muted)}.aicc .typing-dots{display:inline-flex;align-items:center;gap:5px;height:16px}.aicc .typing-dots span{display:block;width:6px;height:6px;border-radius:50%;background:var(--accent);opacity:.35;animation:aicc-typing 1.2s ease-in-out infinite}.aicc .typing-dots span:nth-child(2){animation-delay:.16s}.aicc .typing-dots span:nth-child(3){animation-delay:.32s}@media (prefers-reduced-motion:reduce){.aicc .typing-dots span{animation:none;opacity:.7}}.aicc .message .bubble a{color:var(--link);word-break:break-all}.aicc .feedback{display:flex;align-items:center;gap:6px;margin-top:6px;min-height:28px}.aicc .feedback button{min-width:36px;min-height:30px;padding:2px 8px;border:1px solid var(--line);border-radius:16px;background:var(--surface);font-size:14px;line-height:1;opacity:.75}.aicc .feedback button:hover{opacity:1}.aicc .feedback button[aria-pressed=true]{opacity:1;border-color:var(--accent);background:var(--soft-accent)}.aicc .feedback-note{font-size:11px;color:var(--muted)}.aicc .handoff{margin-top:10px;padding:12px 14px;border:1px solid var(--soft-line);border-radius:12px;background:var(--soft-accent)}.aicc .handoff p{padding:0;background:0 0;font-size:13px;line-height:1.7;margin:0 0 8px;border-radius:0}.aicc .handoff-button{display:inline-block;padding:9px 14px;border-radius:10px;background:var(--accent-strong);color:#fff!important;font-weight:700;font-size:13px;text-decoration:none}.aicc .suggestions button{cursor:pointer}.aicc .suggestions button:hover{border-color:var(--accent);color:var(--link)}.aicc .bot-check{margin:0 0 14px;min-height:65px}.aicc .bot-check ::slotted(*){display:block;width:100%}.aicc .message.model{max-width:100%}.aicc .bubble .code{margin:10px 0;border-radius:10px;overflow:hidden;background:var(--code-bg);white-space:normal}.aicc .code-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px 6px 12px;background:#00000033;color:#c9d1cb;font:600 11px/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.5px}.aicc .code-head .copy{padding:4px 10px;border-radius:6px;background:#ffffff1a;color:#fff;font-size:11px}.aicc .code-head .copy:hover{background:#ffffff33}.aicc .bubble pre{margin:0;padding:12px 14px;overflow:auto;max-height:340px;background:var(--code-bg);color:var(--code-ink);font:13px/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,"Courier New",monospace;white-space:pre;tab-size:2}.aicc.dark{--ink:#e8eee9;--head:#0f2b25;--accent:#f3ac67;--accent-strong:#1f7f6b;--paper:#101a18;--surface:#192521;--line:#2c3d38;--line-strong:#4a5f58;--muted:#a9b8b1;--link:#91d6ba;--bubble:#1d2d28;--bubble-user:#3a2c1d;--soft-accent:#2a2418;--soft-line:#6b4f2b;--status:#91d6ba;--code-bg:#0b1311}.aicc.dark .panel{box-shadow:0 16px 70px #0009}.aicc.dark .launcher{box-shadow:0 6px 24px #0008;border:1px solid #3b4840}.aicc .support{margin-top:10px;padding:14px 16px;border:1px solid #cfd8e0;border-left:4px solid var(--head);border-radius:10px;background:#f4f7fa;color:var(--ink)}.aicc .support p,.aicc .support ul{margin:0 0 8px;font-size:13px;line-height:1.8}.aicc .support ul{padding-left:1.2em;line-height:1.9}.aicc .support a{color:var(--link);font-weight:700}.aicc .support .support-urgent{font-weight:700}
.aicc .consent-copy{white-space:pre-wrap;overflow-wrap:anywhere}

.aicc .test-banner{margin:0;padding:8px 16px;background:#fff0cf;color:#573900;font-size:11px;flex-shrink:0}

.aicc .answer-sources{margin-top:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:12px}.aicc .answer-sources p{margin:0 0 4px;font-weight:600}.aicc .answer-sources ul{padding-left:18px;margin:0}.aicc .answer-sources a{overflow-wrap:anywhere}.aicc .answer-state{margin:6px 0;color:var(--muted);font-size:11px}.aicc .handoff-review{flex:1;min-height:0;overflow:auto;padding:16px}.aicc .handoff-review h3{font-size:17px;margin:0 0 10px}.aicc .handoff-review p{font-size:12px}.aicc .handoff-review label{display:block;font-size:12px;font-weight:600;margin-bottom:6px}.aicc .handoff-review textarea{max-height:320px;min-height:160px}.aicc .handoff-actions{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.aicc .handoff-actions button{padding:8px 12px;border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink)}

.aicc.reviewing footer{display:none}.aicc .handoff-actions{position:sticky;bottom:0;background:var(--paper);padding:10px 0;margin-bottom:0}.aicc .handoff-review textarea{height:170px;min-height:150px;max-height:220px}
