.pp-chat-launcher,.pp-chat{--chat-action: var(--pp-action, #247599);--chat-action-strong: var(--pp-action-strong, #1f6584);--chat-deep: var(--pp-deep, #003d55);--chat-ink: var(--pp-ink, #002c3d);--chat-night: var(--pp-night, #082f46);--chat-text: var(--pp-text, #18313b);--chat-muted: var(--pp-muted, #5e7078);--chat-border: var(--pp-border, #cfe4ef);--chat-control: var(--pp-control-border, #78909c);--chat-primary: var(--pp-primary, #54b2dc);--chat-soft: var(--pp-surface-soft, #eef7fc);--chat-surface: var(--pp-surface, #ffffff);--chat-bg: var(--pp-bg, #f7fbfe);--chat-red: var(--pp-required-red, #b43b32);--chat-shadow: var(--pp-shadow-raised, 0 12px 28px rgba(0, 61, 85, .18));--chat-card-shadow: var(--pp-card-shadow, 0 26px 70px rgba(0, 35, 58, .25));--chat-quick: var(--pp-duration-quick, .18s);--chat-font: var(--pp-font-body, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Yu Gothic", "Meiryo", system-ui, sans-serif);--chat-font-display: var(--pp-font-display, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Yu Gothic UI", "Meiryo", system-ui, sans-serif);--chat-gap: 24px}.pp-chat__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.pp-chat-launcher{position:fixed;right:var(--chat-gap);bottom:calc(var(--chat-gap) + env(safe-area-inset-bottom));z-index:var(--pp-z-popover, 10);display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 20px 0 16px;border:0;border-radius:var(--pp-radius-pill, 999px);color:#fff;background:var(--chat-action);box-shadow:var(--chat-shadow);font:800 14px/1.2 var(--chat-font-display);letter-spacing:.04em;cursor:pointer;transition:background-color var(--chat-quick),transform var(--chat-quick),opacity var(--chat-quick),visibility 0s}.pp-chat-launcher svg{width:20px;height:20px;flex:none}.pp-chat-launcher:hover{background:var(--chat-action-strong);transform:translateY(-1px)}.pp-chat-launcher:focus-visible{outline:3px solid #fff;outline-offset:0;box-shadow:0 0 0 6px var(--chat-action),var(--chat-shadow)}.pp-chat-launcher.is-covered{opacity:0;visibility:hidden;transition:opacity var(--chat-quick),visibility 0s linear var(--chat-quick)}.pp-chat-launcher[hidden],body.nav-open .pp-chat-launcher,body.field-gallery-open .pp-chat-launcher{display:none}.pp-chat{position:fixed;inset:auto var(--chat-gap) calc(var(--chat-gap) + env(safe-area-inset-bottom)) auto;z-index:var(--pp-z-popover, 10);box-sizing:border-box;width:min(400px,calc(100vw - var(--chat-gap) * 2));height:min(640px,calc(100dvh - var(--pp-header-height, 76px) - var(--chat-gap) - 8px));max-width:none;max-height:none;margin:0;padding:0;border:1px solid var(--chat-border);border-radius:0;color:var(--chat-text);background:var(--chat-surface);box-shadow:var(--chat-card-shadow);font:400 14px/1.8 var(--chat-font)}.pp-chat[open]{display:flex;flex-direction:column}.pp-chat *,.pp-chat *:before,.pp-chat *:after{box-sizing:border-box}.pp-chat__head{display:flex;align-items:center;gap:8px;padding:10px 10px 10px 16px;color:#fff;background:var(--chat-night)}.pp-chat__title{flex:1;min-width:0;margin:0;font:700 18px/1.35 var(--chat-font-display);letter-spacing:.02em;color:#fff}.pp-chat__title small{display:block;font-size:12px;font-weight:400;letter-spacing:0}.pp-chat__reset,.pp-chat__close{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.55);border-radius:0;color:#fff;background:transparent;font:700 13px/1 var(--chat-font-display);cursor:pointer;transition:background-color var(--chat-quick)}.pp-chat__reset{padding:0 10px}.pp-chat__reset svg{width:16px;height:16px}.pp-chat__close svg{width:18px;height:18px}.pp-chat__reset:hover,.pp-chat__close:hover{background:#ffffff24}.pp-chat__reset:disabled{cursor:not-allowed;opacity:.45}.pp-chat__reset:focus-visible,.pp-chat__close:focus-visible{outline:3px solid #fff;outline-offset:3px}.pp-chat__log{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px;padding:16px;overflow-y:auto;overscroll-behavior:contain;background:var(--chat-bg)}.pp-chat__log:focus:not(:focus-visible){outline:none}.pp-chat__log:focus-visible{outline:3px solid var(--chat-action);outline-offset:-3px}.pp-chat__notice{display:grid;grid-template-columns:16px minmax(0,1fr);gap:8px;padding:8px 12px;color:var(--chat-text);background:var(--chat-soft);font-size:13px;line-height:1.6}.pp-chat__notice>svg{width:16px;height:16px;margin-top:3px;color:var(--chat-action)}.pp-chat__notice p{margin:0;text-wrap:pretty}.pp-chat__notice details{margin-top:0}.pp-chat__notice summary{display:inline-flex;align-items:center;min-height:28px;color:var(--chat-deep);font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.pp-chat__notice summary:focus-visible{outline:3px solid var(--chat-action);outline-offset:3px}.pp-chat__notice a{color:var(--chat-deep);text-decoration:underline;text-underline-offset:2px}.pp-chat__notice a:hover,.pp-chat__notice summary:hover{color:var(--chat-action)}.pp-chat__msg{max-width:min(88%,40em);padding:10px 14px;border:1px solid var(--chat-border);overflow-wrap:anywhere}.pp-chat__msg--ai{align-self:flex-start;background:var(--chat-surface)}.pp-chat__msg--user{align-self:flex-end;background:var(--chat-soft)}.pp-chat__msg--error{align-self:stretch;max-width:none;border:0;border-left:3px solid var(--chat-red);color:var(--chat-text);background:color-mix(in srgb,var(--chat-red) 7%,var(--chat-surface))}.pp-chat__msg--error .pp-chat__who{display:inline-flex;align-items:center;gap:4px;color:var(--chat-red)}.pp-chat__msg--error .pp-chat__who svg{width:14px;height:14px}.pp-chat__msg--error .pp-chat__links{border-top-color:color-mix(in srgb,var(--chat-red) 25%,var(--chat-surface))}.pp-chat__body{margin:0;white-space:pre-wrap}.pp-chat__body a{color:var(--chat-deep);font-weight:700;text-decoration:underline;text-underline-offset:3px}.pp-chat__body a:hover{color:var(--chat-action)}.pp-chat__who{display:block;margin-bottom:2px;color:var(--chat-muted);font:700 12px/1.4 var(--chat-font);letter-spacing:.04em}.pp-chat__links{margin:10px -14px -10px;border-top:1px solid var(--chat-border)}.pp-chat__links-label{display:block;padding:8px 14px 0;color:var(--chat-muted);font-size:12px;font-weight:700}.pp-chat__link{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:6px 14px;color:var(--chat-deep);font-weight:800;line-height:1.5;text-decoration:underline;text-decoration-color:var(--chat-primary);text-decoration-thickness:2px;text-underline-offset:5px}.pp-chat__link+.pp-chat__link{border-top:1px solid var(--chat-border)}.pp-chat__link:after{content:"→";flex:none;text-decoration:none;transition:transform var(--chat-quick)}.pp-chat__link.is-outside:after{content:"↗"}.pp-chat__link:hover{color:var(--chat-action);background:var(--chat-soft)}.pp-chat__link:hover:after{transform:translate(3px)}.pp-chat__link:focus-visible,.pp-chat__body a:focus-visible,.pp-chat__notice a:focus-visible{outline:3px solid var(--chat-action);outline-offset:3px}.pp-chat__typing{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--chat-border);color:var(--chat-muted);background:var(--chat-surface);font-size:13px}.pp-chat__dots{display:inline-flex;gap:5px}.pp-chat__dots i{width:7px;height:7px;border-radius:var(--pp-radius-circle, 50%);background:var(--chat-action);animation:pp-chat-dot 1.2s infinite ease-in-out}.pp-chat__dots i:nth-child(2){animation-delay:.15s}.pp-chat__dots i:nth-child(3){animation-delay:.3s}@keyframes pp-chat-dot{0%,80%,to{opacity:.25}40%{opacity:1}}.pp-chat__retry{display:inline-flex;align-items:center;min-height:44px;margin:8px 0 4px;padding:0 16px;border:1px solid var(--chat-border);border-radius:0;color:var(--chat-deep);background:var(--chat-surface);font:800 14px/1 var(--chat-font-display);cursor:pointer}.pp-chat__retry:hover{border-color:var(--chat-action)}.pp-chat__retry:focus-visible{outline:3px solid var(--chat-action);outline-offset:3px}.pp-chat__start{display:grid;gap:8px}.pp-chat__start p{margin:0;color:var(--chat-text);font-size:14px;line-height:1.7}.pp-chat__suggest{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.pp-chat__suggest button{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:6px 14px;border:1px solid var(--chat-control);border-radius:var(--pp-radius-pill, 999px);color:var(--chat-deep);background:var(--chat-surface);font:700 13px/1.4 var(--chat-font);text-align:left;cursor:pointer;transition:background-color var(--chat-quick),border-color var(--chat-quick)}.pp-chat__suggest button svg{width:16px;height:16px;flex:none;color:var(--chat-action)}.pp-chat__suggest button:hover{border-color:var(--chat-action);background:var(--chat-soft)}.pp-chat__suggest button:focus-visible{outline:3px solid var(--chat-action);outline-offset:3px}.pp-chat__form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px 12px 2px;border-top:1px solid var(--chat-border);background:var(--chat-surface)}.pp-chat__input{width:100%;min-height:48px;max-height:140px;padding:11px 12px;border:1px solid var(--chat-control);border-radius:0;color:var(--chat-text);background:var(--chat-surface);font:400 16px/1.5 var(--chat-font);resize:none}.pp-chat__input::placeholder{color:var(--chat-muted);opacity:1}.pp-chat__input:focus-visible{outline:3px solid var(--chat-action);outline-offset:3px}.pp-chat__send{min-width:72px;min-height:48px;padding:0 16px;border:0;border-radius:0;color:#fff;background:var(--chat-deep);font:800 14px/1 var(--chat-font-display);letter-spacing:.04em;cursor:pointer;transition:background-color var(--chat-quick)}.pp-chat__send:after{content:"→";margin-left:6px}.pp-chat__send:hover{background:var(--chat-ink)}.pp-chat__send:focus-visible{outline:3px solid var(--chat-action);outline-offset:3px}.pp-chat__send:disabled{cursor:not-allowed;opacity:.45}.pp-chat__foot{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:0 16px;margin:0;font-size:13px}.pp-chat__foot a{display:inline-flex;align-items:center;min-height:44px;color:var(--chat-deep);font-weight:700;text-decoration:underline;text-underline-offset:3px}.pp-chat__foot a:hover{color:var(--chat-action)}.pp-chat__foot a:focus-visible{outline:3px solid var(--chat-action);outline-offset:3px}.pp-chat__count{margin-left:auto;color:var(--chat-muted);font-size:12px}.rail-inner.pp-chat-rail-more{-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 64px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 64px),transparent)}@media(max-width:780px){.pp-chat-launcher,.pp-chat{--chat-gap: 16px}.pp-chat:modal{inset:0;width:100%;height:100dvh;border:0;box-shadow:none}.pp-chat:modal .pp-chat__form{padding-bottom:env(safe-area-inset-bottom)}}@media(max-height:700px){.pp-chat__head{padding-top:6px;padding-bottom:6px}.pp-chat__log{gap:10px;padding:12px}.pp-chat__notice{padding:6px 10px;font-size:12px}}.pp-chat::backdrop{background:#00233294;backdrop-filter:blur(3px)}@media(prefers-reduced-motion:reduce){.pp-chat-launcher,.pp-chat__link:after{transition:none}.pp-chat-launcher:hover{transform:none}.pp-chat__link:hover:after{transform:none}.pp-chat__dots i{animation:none;opacity:.7}}@media print{.pp-chat-launcher,.pp-chat{display:none!important}}
