.kl-chat-entry{background:#fff;border:1px solid #dce7f0;border-radius:14px;padding:17px;text-align:left;font-family:inherit;font-weight:600;font-size:15px;line-height:1.5;color:#302c39;cursor:pointer;min-height:52px}
.kl-chat-entry::after{content:' →';float:right;color:#6c97c1}
.kl-chat{width:min(600px,calc(100% - 24px));max-height:90dvh;box-sizing:border-box;padding:0;border:1px solid #e1e3ed;border-radius:22px;color:#302c39;background:#f8faff;box-shadow:0 20px 90px #25305040;font-family:system-ui,sans-serif}
.kl-chat::backdrop{background:#25273877}
.kl-chat header{display:flex;align-items:center;gap:10px;padding:14px;background:#fff;position:sticky;top:0;z-index:2;border-bottom:1px solid #e4e7ef}
.kl-chat header img{width:40px;height:40px;border-radius:50%;object-fit:cover;object-position:75% 18%}
.kl-chat header h2{font-size:17px;flex:1;margin:0}
.kl-chat button,.kl-chat a{font:inherit;cursor:pointer;touch-action:manipulation}
.kl-chat button{padding:12px;border:1px solid #d0ddea;background:#fff;color:#302c39;border-radius:12px;min-height:44px}
.kl-chat button:disabled{opacity:.55;cursor:default}
.kl-chat-disclosure{font-size:11px;line-height:1.6;color:#666;padding:0 18px}
.kl-chat-log{padding:0 18px;line-height:1.7;font-size:14px}
.kl-chat-log p,.kl-chat-log h3,.kl-chat-products{scroll-margin-top:90px}
.kl-chat-bot,.kl-chat-user{white-space:pre-line;border-radius:16px;padding:12px 15px;max-width:88%;margin:12px 0;background:#fff;border:1px solid #e3e8ed}
.kl-chat-user{margin-left:auto;background:#e8f1ff;border-color:#d9e6fa}
.kl-chat-controls{display:grid;gap:9px;padding:16px 18px 24px}
.kl-chat-controls a{display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:52px;padding:14px;border:1px solid #c4d4e5;border-radius:12px;background:linear-gradient(110deg,#fff0f5,#edf5ff);text-decoration:none;text-align:center;font-weight:700;line-height:1.5;color:#302c39;box-shadow:0 4px 12px #536c8712}
.kl-ranking-article-entry__actions a{display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:56px;padding:16px;border:1px solid #c4d4e5;border-radius:14px;text-decoration:none;text-align:center;font-weight:700;line-height:1.5;color:#315f8c;background:#fff;box-shadow:0 4px 12px #536c8712}
.kl-ranking-article-entry__actions .kl-ranking-article-entry__consult{color:#302c39;background:linear-gradient(110deg,#ffe3df,#e4eeff)}
.kl-ranking-article-entry__actions a:focus-visible{outline:3px solid #568bbb;outline-offset:3px}
.kl-chat-controls small{font-size:11px;color:#666}
.kl-chat-history{margin:12px 0;color:#626775}.kl-chat summary{cursor:pointer;padding:10px 0;min-height:24px}.kl-chat-result small{font-size:11px;color:#666}.kl-chat-result{scroll-margin-top:90px}.kl-chat-conclusion{font-size:19px;line-height:1.6;padding:12px;background:linear-gradient(110deg,#fff0f5,#edf5ff);border-radius:12px}
.kl-chat-controls .kl-chat-primary{background:linear-gradient(110deg,#fff0f5,#edf5ff);font-weight:700;border-color:#b9cce0}
.kl-chat-result,.kl-chat-products{background:#fff;border-radius:16px;padding:16px;margin-top:14px}
.kl-chat h3{font-size:17px;margin:12px 0}.kl-chat h4{font-size:15px;margin:14px 0 6px}.kl-chat ul,.kl-chat ol{padding-left:20px}
.kl-chat-conclusion{font-weight:700}.kl-chat-products[hidden]{display:none}.kl-chat-products article{border-top:1px solid #e3e7ef;padding-bottom:12px}
.kl-chat-update{border-left:3px solid #8da2cb;padding:8px 12px;background:#f4f7fc;border-radius:0 8px 8px 0;font-size:13px;line-height:1.7}
.kl-chat-evidence{border-block:1px solid #e3e8ef;margin-block:12px}.kl-chat-result li+li{margin-top:10px}
.kl-chat :is(h2,h3,h4){font-family:system-ui,-apple-system,"Hiragino Sans","Yu Gothic",sans-serif}
.kl-chat-next{display:grid;gap:10px;padding:14px 0;border-block:1px solid #e3e8ef;margin-block:14px}
.kl-chat-next p{margin:0;font-size:13px}.kl-chat-next small{font-size:11px;color:#626775;line-height:1.6}
.kl-chat-next .kl-chat-primary{display:flex;align-items:center;justify-content:center;min-height:52px;box-sizing:border-box;padding:12px;border:1px solid #b9cce0;border-radius:12px;text-align:center;line-height:1.5;font-weight:700;color:#302c39;text-decoration:none;background:linear-gradient(110deg,#fff0f5,#edf5ff)}
.kl-chat-next button{width:100%;line-height:1.5;font-size:14px}.kl-chat-type{font-size:13px;font-weight:600}.kl-chat-explanation{margin-bottom:14px}
.kl-chat :focus-visible,.kl-chat-entry:focus-visible{outline:3px solid #568bbb;outline-offset:3px}
.kl-iron-product{background:#fff;border:1px solid #dce7f0;border-radius:16px;padding:14px;margin:14px 0}
.kl-iron-product .kl-chat-primary{display:block;padding:14px;border:1px solid #c4d4e5;border-radius:12px;background:linear-gradient(110deg,#fff0f5,#edf5ff);text-decoration:none;text-align:center;font-weight:700;color:#302c39;min-height:44px;box-sizing:border-box}
.kl-iron-product .kl-chat-disclosure{padding:0}
.kl-chat-controls.kl-iron-device-options{grid-template-columns:repeat(2,minmax(0,1fr))}
.kl-iron-device-options button{font-size:14px;line-height:1.5;min-height:64px;overflow-wrap:anywhere}
@media(max-width:340px){.kl-chat-controls.kl-iron-device-options{grid-template-columns:1fr}}
@media(max-width:600px){.kl-chat{width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0}.kl-chat header{padding-top:max(12px,env(safe-area-inset-top))}.kl-chat-controls{padding-bottom:max(24px,env(safe-area-inset-bottom))}}
