.wsc-front-history{position:relative;min-width:0}
.wsc-front-wait{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:14px;pointer-events:none}
.wsc-front-wait[hidden]{display:none}
.wsc-common-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-block:.5rem}.wsc-common-toolbar .wsc-help{flex-basis:100%;margin:0}.wsc-attachment{display:block;width:auto;height:auto;max-width:min(100%,240px);max-height:240px;object-fit:contain;margin-block:.5rem;cursor:zoom-in}.wsc-attachment:focus-visible{outline:3px solid var(--wsc-primary,#2863e8);outline-offset:3px}.wsc-video{padding:.5rem;border:1px solid var(--wsc-line,#bbb);border-radius:.5rem;margin-block:.5rem}.wsc-video video{width:48%;max-height:16rem;background:#111;object-fit:contain}.wsc-video button{margin:.25rem}.wsc-composer input[type=file]{max-width:100%}[data-wsc-diagnostics]{overflow-wrap:anywhere}

.wsc-image-picker{border:1px dashed var(--wsc-border,#b1c1d4);border-radius:8px;padding:10px;margin-bottom:10px;min-width:0}.wsc-image-picker label{display:grid;gap:6px}.wsc-image-picker.is-dragging{border-color:var(--wsc-primary,#2863e8);background:var(--wsc-soft,#edf4ff)}.wsc-image-preview{display:block;max-width:100%;width:auto;max-height:160px;object-fit:contain;margin:8px 0}.wsc-image-picker [hidden]{display:none}.wsc-image-picker button{margin-top:6px}.wsc-image-picker .wsc-help{overflow-wrap:anywhere}
.wsc-image-picker input[type=file]::file-selector-button{font:inherit;color:var(--wsc-surface,#fff);background:var(--wsc-primary,#2863e8);border:1px solid var(--wsc-primary,#2863e8);border-radius:var(--wsc-radius,8px);padding:8px 12px;margin-inline-end:10px;cursor:pointer}.wsc-image-picker input[type=file]:not(:disabled)::file-selector-button:hover{background:var(--wsc-primary-hover,#1f50bd)}.wsc-image-picker input[type=file]:focus-visible{outline:3px solid var(--wsc-primary,#2863e8);outline-offset:2px}.wsc-image-picker input[type=file]:disabled::file-selector-button{opacity:.5;cursor:not-allowed}[data-wsc-push] [role=status]:empty{display:none}

/* 呼び出し中だけ開く通話パネル。配色は既存の7テーマを引き継ぐ。 */
.wsc-chat{--wsc-call-top:#98bfe9}
.wsc-chat[data-theme="2"]{--wsc-call-top:#97b7de}
.wsc-chat[data-theme="3"]{--wsc-call-top:#9acfc6}
.wsc-chat[data-theme="4"]{--wsc-call-top:#aed2b5}
.wsc-chat[data-theme="5"]{--wsc-call-top:#e8cb97}
.wsc-chat[data-theme="6"]{--wsc-call-top:#e3b2c2}
.wsc-chat[data-theme="7"]{--wsc-call-top:#bbc6d5}
.wsc-call-dialog{padding:0;border:1px solid rgba(255,255,255,.8);border-radius:24px;width:min(420px,calc(100vw - 24px));height:min(680px,calc(100dvh - 32px));max-width:none;max-height:calc(100dvh - 32px);overflow:auto;background:#fff;color:var(--wsc-text,#18304e);box-shadow:0 20px 70px #18304e30;font:inherit}
.wsc-call-dialog::backdrop{background:rgba(18,35,58,.42);backdrop-filter:blur(5px)}
.wsc-call-dialog [hidden]{display:none!important}
.wsc-call-dialog .wsc-call-cover{position:relative;isolation:isolate;height:35%;min-height:150px;overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--wsc-call-top) 82%,white),var(--wsc-call-top));padding:32px 20px;text-align:center}
.wsc-call-dialog .wsc-call-cover::before,.wsc-call-dialog .wsc-call-cover::after{content:"";position:absolute;z-index:-1;width:290px;height:290px;border:1px solid #ffffff75;border-radius:50%;pointer-events:none}
.wsc-call-dialog .wsc-call-cover::before{left:-190px;bottom:-170px;box-shadow:0 0 0 25px #ffffff0a}
.wsc-call-dialog .wsc-call-cover::after{right:-180px;top:-180px;box-shadow:0 0 0 55px #ffffff12}
.wsc-call-dialog [data-call-medium]{font-size:18px;font-weight:650;letter-spacing:.12em}
.wsc-call-dialog .wsc-call-content{position:relative;min-height:65%;display:flex;align-items:center;flex-direction:column;padding:0 24px 24px;text-align:center}
.wsc-call-dialog .wsc-call-avatar{position:relative;flex:none;width:128px;height:128px;margin-top:-64px;border:5px solid #fff;border-radius:50%;background:linear-gradient(145deg,#eef1f5,#dce2e9);box-shadow:0 8px 20px #18304e14;overflow:hidden}
.wsc-call-dialog .wsc-call-avatar svg{width:100%;height:100%;fill:#a4afbd}
.wsc-call-dialog [data-call-peer]{font-size:30px;line-height:1.35;font-weight:700;margin:20px 0 12px;max-width:100%;overflow-wrap:anywhere}
.wsc-call-dialog [data-call-state]{font-size:18px;font-weight:600;color:var(--wsc-muted,#496079)}
.wsc-call-dialog [data-call-hint]{font-size:13px;color:var(--wsc-muted,#496079);min-height:24px;margin-top:6px}
.wsc-call-dialog .wsc-call-dock{display:flex;justify-content:space-evenly;align-items:center;gap:20px;background:var(--wsc-soft,#edf4ff);border-radius:60px;width:100%;padding:14px 18px;margin-top:auto}
.wsc-call-dialog .wsc-call-action,.wsc-call-dialog .wsc-call-action:hover{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:96px;margin:0;padding:0;border:0;background:transparent;color:var(--wsc-text,#18304e);font-size:14px;line-height:1.4;font-weight:600;border-radius:18px}
.wsc-call-dialog .wsc-call-action-icon{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:#ef5260;color:#fff;box-shadow:0 4px 12px #ef52601c;transition:transform .15s}
.wsc-call-dialog .is-answer .wsc-call-action-icon{background:#22b87f;box-shadow:0 4px 12px #22b87f1c}
.wsc-call-dialog .wsc-call-action svg{width:34px;height:34px}
.wsc-call-dialog .is-decline svg{transform:rotate(135deg)}
.wsc-call-dialog .wsc-call-action:not(:disabled):hover .wsc-call-action-icon{transform:scale(1.04)}
.wsc-call-dialog .wsc-call-action:focus-visible{outline:3px solid var(--wsc-primary,#2863e8);outline-offset:5px}
@media(max-width:360px){.wsc-call-dialog .wsc-call-content{padding-inline:16px}.wsc-call-dialog [data-call-peer]{font-size:26px}.wsc-call-dialog .wsc-call-dock{gap:12px;padding-inline:10px}}
@media(max-height:560px){.wsc-call-dialog{width:min(600px,calc(100vw - 24px));height:min(360px,calc(100dvh - 24px));max-height:calc(100dvh - 24px)}.wsc-call-dialog .wsc-call-cover{position:absolute;inset:0 auto 0 0;width:34%;height:100%;min-height:0;padding:24px 12px}.wsc-call-dialog .wsc-call-content{margin-left:34%;height:100%;min-height:260px;padding:20px 18px 18px}.wsc-call-dialog .wsc-call-avatar{position:absolute;width:92px;height:92px;left:0;top:50%;margin:0;transform:translate(-50%,-50%)}.wsc-call-dialog [data-call-peer]{font-size:24px;margin:8px 0 8px;padding-left:30px}.wsc-call-dialog [data-call-state],.wsc-call-dialog [data-call-hint]{padding-left:24px}.wsc-call-dialog .wsc-call-dock{padding:10px;gap:10px}.wsc-call-dialog .wsc-call-action{min-width:74px}.wsc-call-dialog .wsc-call-action-icon{width:58px;height:58px}}
@media(prefers-reduced-motion:reduce){.wsc-call-dialog .wsc-call-action-icon{transition:none}.wsc-call-dialog .wsc-call-action:not(:disabled):hover .wsc-call-action-icon{transform:none}}

.wsc-call-dialog .wsc-call-avatar img{width:100%;height:100%;object-fit:cover}
.wsc-call-dialog [data-call-elapsed]{font-variant-numeric:tabular-nums;font-size:16px;color:var(--wsc-muted,#496079);margin-top:5px}
.wsc-call-dialog .is-control .wsc-call-action-icon{background:#fff;color:var(--wsc-text,#18304e);box-shadow:0 3px 12px #18304e12;border:1px solid var(--wsc-border,#b1c1d4)}
.wsc-call-dialog .is-control[aria-pressed="true"],.wsc-call-dialog .is-control[aria-pressed="true"]:hover{background:transparent;color:var(--wsc-text,#18304e)}
.wsc-call-dialog .is-control[aria-pressed="true"] .wsc-call-action-icon{background:var(--wsc-primary,#2863e8);color:#fff}
.wsc-call-dialog [data-call-back]{position:absolute;z-index:4;top:max(14px,env(safe-area-inset-top));left:16px;background:#ffffffed;color:#18304e;border:1px solid #ffffffb0;border-radius:24px;padding:9px 16px}
.wsc-call-dialog[data-state="active"]{position:fixed;inset:0;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;border-radius:0}
.wsc-call-dialog[data-state="active"] .wsc-call-cover{padding-top:max(68px,calc(env(safe-area-inset-top) + 55px))}
.wsc-call-dialog[data-state="active"] .wsc-call-content{height:65%;padding-bottom:max(24px,env(safe-area-inset-bottom));min-height:0}
.wsc-call-dialog[data-state="active"] .wsc-call-dock{max-width:520px;margin-top:auto}
.wsc-call-dialog .wsc-call-media{display:none}
.wsc-call-dialog[data-state="active"][data-media="video"] .wsc-call-media{display:block;position:absolute;inset:0;background:#0c1728}
.wsc-call-dialog .wsc-call-media [data-call-size="main"]{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:contain}
.wsc-call-dialog .wsc-call-media [data-call-size="preview"]{position:absolute;z-index:2;top:max(70px,calc(env(safe-area-inset-top) + 60px));right:16px;width:clamp(96px,22vw,180px);height:clamp(120px,25dvh,220px);max-height:30dvh;object-fit:cover;border-radius:14px;border:1px solid #ffffffb0;background:#18304e;box-shadow:0 5px 20px #0005;cursor:pointer;touch-action:manipulation}
.wsc-call-dialog .wsc-call-media [data-call-size="preview"]:focus-visible{outline:3px solid var(--wsc-primary,#2863e8);outline-offset:3px}
.wsc-call-dialog[data-state="active"][data-media="video"] .wsc-call-cover{height:0;min-height:0;padding:0;background:none}
.wsc-call-dialog[data-state="active"][data-media="video"] .wsc-call-cover::before,.wsc-call-dialog[data-state="active"][data-media="video"] .wsc-call-cover::after,.wsc-call-dialog[data-state="active"][data-media="video"] [data-call-medium],.wsc-call-dialog[data-state="active"][data-media="video"] .wsc-call-avatar,.wsc-call-dialog[data-state="active"][data-media="video"] [data-call-hint]{display:none}
.wsc-call-dialog[data-state="active"][data-media="video"] .wsc-call-content{position:absolute;inset:0;height:100%;margin:0;padding:70px 16px max(20px,env(safe-area-inset-bottom));pointer-events:none;color:#fff;text-shadow:0 1px 5px #000;align-items:center}
.wsc-call-dialog[data-state="active"][data-media="video"] [data-call-peer]{font-size:23px;max-width:45%;margin:0 auto 5px;padding:0}
.wsc-call-dialog[data-state="active"][data-media="video"] [data-call-state],.wsc-call-dialog[data-state="active"][data-media="video"] [data-call-elapsed]{color:#fff;padding:0}
.wsc-call-dialog[data-state="active"][data-media="video"] .wsc-call-dock{pointer-events:auto;text-shadow:none;background:color-mix(in srgb,var(--wsc-soft,#edf4ff) 94%,transparent);backdrop-filter:blur(12px)}
.wsc-call-resume{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 14px;margin-bottom:10px;border-radius:14px;background:var(--wsc-soft,#edf4ff);border:1px solid var(--wsc-border,#b1c1d4)}
@media(max-height:560px){.wsc-call-dialog[data-state="active"][data-media="audio"] .wsc-call-cover{width:34%;height:100%;padding:70px 12px 12px}.wsc-call-dialog[data-state="active"][data-media="audio"] .wsc-call-content{height:100%;margin-left:34%;padding:20px 18px 16px}.wsc-call-dialog[data-state="active"] .wsc-call-dock{padding:10px 14px;gap:10px}.wsc-call-dialog[data-state="active"] .wsc-call-action-icon{width:54px;height:54px}.wsc-call-dialog[data-state="active"][data-media="video"] .wsc-call-content{padding-top:18px}.wsc-call-dialog[data-state="active"][data-media="video"] [data-call-peer]{font-size:20px}}

/* 発信操作は送信ボタンの左へ配置し、提供SVGを同梱して使う。 */
.wsc-chat .wsc-compose-call-actions{justify-content:flex-end;flex-wrap:nowrap}
.wsc-chat .wsc-call-invite{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;background:var(--wsc-soft,#edf4ff);border-color:var(--wsc-border,#b1c1d4);color:var(--wsc-text,#18304e)}
.wsc-chat .wsc-call-invite::before{content:"";display:block;flex:none;width:20px;height:20px;background:currentColor;mask:url('../../icons/wsc-call.svg') center/contain no-repeat}
.wsc-chat .wsc-call-invite[data-call-invite="video"]::before{mask-image:url('../../icons/wsc-video.svg')}
.wsc-chat[data-theme="1"] .wsc-call-invite,.wsc-chat:not([data-theme]) .wsc-call-invite{background:#b1c1d4;border-color:#b1c1d4}
.wsc-chat .wsc-call-invite:not(:disabled):hover{filter:brightness(.96)}
@media(max-width:600px){.wsc-chat .wsc-compose-call-actions{gap:6px}.wsc-chat .wsc-compose-call-actions button{padding:7px 6px}.wsc-chat .wsc-compose-call-actions [data-send]{min-width:0}.wsc-chat .wsc-call-invite{gap:4px}.wsc-chat .wsc-call-invite::before{width:18px;height:18px}}
/* 添付入口は送信の隣、選択済み画像だけを本文の上へ表示する。 */
.wsc-image-selection{margin-bottom:10px}.wsc-image-selection[hidden],.wsc-attach-modal[aria-hidden="true"]{display:none}
.wsc-chat .wsc-compose-call-actions .wsc-attach-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;min-width:44px;height:44px;padding:10px;color:var(--wsc-text,#18304e);background:var(--wsc-surface,#fff);border:1px solid var(--wsc-border,#b1c1d4);border-radius:var(--wsc-radius,8px)}
.wsc-attach-button::before{content:"";width:22px;height:22px;background:currentColor;mask:url('../../icons/wsc-iconplus.svg') center/contain no-repeat}
.wsc-attach-modal{position:fixed;inset:0;z-index:1000}.wsc-attach-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(18,35,58,.42);padding:16px}
.wsc-attach-panel{width:min(480px,100%);max-height:calc(100dvh - 32px);overflow:auto;background:var(--wsc-surface,#fff);color:var(--wsc-text,#18304e);border:1px solid var(--wsc-border,#b1c1d4);border-radius:var(--wsc-radius,14px);padding:20px;box-shadow:0 20px 70px #18304e30}
.wsc-attach-panel header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.wsc-attach-panel h2{font-size:18px;margin:0}.wsc-attach-panel header button{width:44px;height:44px;font-size:24px;padding:0}
.wsc-attach-panel .wsc-image-picker{margin:0;padding:18px}.wsc-attach-panel .wsc-help:empty{display:none}
@media(max-width:420px){.wsc-chat .wsc-compose-call-actions{gap:4px}.wsc-chat .wsc-compose-call-actions .wsc-call-invite{font-size:11px;padding:8px 5px;gap:3px}.wsc-chat .wsc-call-invite::before{width:16px;height:16px}.wsc-chat .wsc-compose-call-actions [data-send]{font-size:11px;padding:8px 6px}}

/* 画像だけを全画面表示し、添付・地図のモーダル配置は保持する。 */
.wsc-image-modal .wsc-attach-overlay{padding:0;background:#10151c}
.wsc-image-modal .wsc-attach-panel{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;overflow:hidden;background:#10151c;border:0;border-radius:0;padding:0;box-shadow:none}
.wsc-image-modal .wsc-attach-panel header{position:absolute;inset:0 0 auto;z-index:1;justify-content:flex-end;margin:0;padding:calc(12px + env(safe-area-inset-top)) calc(12px + env(safe-area-inset-right)) 12px 12px;pointer-events:none}
.wsc-image-modal h2{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.wsc-image-modal .wsc-attach-panel header button{flex:none;background:#10151ccc;color:#fff;border:1px solid #ffffff80;border-radius:50%;pointer-events:auto}
.wsc-image-full{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;margin:0}

[data-wsc-diagnostics]{flex-basis:100%;min-width:0}[data-wsc-diagnostics] h2{scroll-margin-top:16px}[data-wsc-push] label{display:flex;align-items:center;gap:10px;min-height:44px;box-sizing:border-box;margin:4px 0;padding:4px 0;cursor:pointer}[data-wsc-push] label input{flex:none;margin:0}

.wsc-image-preview-wrap{position:relative;display:inline-block;max-width:100%;margin:8px 0;vertical-align:top}.wsc-image-preview-wrap[hidden]{display:none}.wsc-image-preview-wrap .wsc-image-preview{margin:0}.wsc-chat .wsc-image-remove{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:10px;border:0;border-radius:50%;background:var(--wsc-surface,#fff);color:var(--wsc-text,#18304e);box-shadow:0 1px 4px #18304e40}.wsc-image-remove[hidden]{display:none}.wsc-image-remove::before{content:"";width:24px;height:24px;background:currentColor;mask:url('../../icons/wsc-closebtn2.svg') center/contain no-repeat}.wsc-image-remove:focus-visible{outline:3px solid var(--wsc-primary,#2863e8);outline-offset:2px}

/* 元の操作行で終了は右、通話への復帰は中央。スクロール時だけ上端に留める。 */
.wsc-chat.wsc-front-actions{container-type:normal;min-width:0;max-width:100%}
.wsc-front-actions [data-chat-actions]{position:sticky;top:calc(env(safe-area-inset-top,0px) + var(--wsc-viewport-top,0px));z-index:40;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;min-height:64px;padding:10px 0;background:var(--wsc-surface,#fff)}
.wsc-front-actions [data-chat-actions]:not(:has([data-front-end]:not([hidden]))):not(:has(.wsc-call-resume)):not(:has([data-front-state]:not(:empty))):not(:has([data-front-notices]>:not(:empty):not([hidden]))):not(:has([data-history-retry]:not([hidden]))){display:none}
.wsc-front-actions [data-chat-actions] [data-front-state]{grid-column:1;grid-row:1;min-width:0;overflow-wrap:anywhere}
.wsc-front-actions [data-chat-actions] [data-front-end]{grid-column:3;grid-row:1;justify-self:end;min-height:44px;white-space:nowrap;margin:0}
.wsc-front-actions [data-chat-actions] .wsc-call-resume{grid-column:2;grid-row:1;display:block;padding:0;margin:0;border:0;border-radius:0;background:none}
.wsc-front-actions [data-chat-actions] .wsc-call-resume button{min-height:44px;white-space:nowrap;margin:0}
.wsc-chat .wsc-pane-header .wsc-actions [data-complete]{margin-left:auto;order:1}
.wsc-chat .wsc-composer,.wsc-chat .wsc-composer label,.wsc-chat input,.wsc-chat select,.wsc-chat textarea{min-width:0;max-width:100%}
/* 全入力欄の小さい文字によるフォーカス時拡大を防ぎ、利用者自身の拡大は制限しない。 */
@media(pointer:coarse){.wsc-chat input,.wsc-chat select,.wsc-chat textarea,.wsc-chat .wsc-chat-context-invite input{font-size:max(16px,1em)}}
@media(max-width:420px){.wsc-front-actions [data-chat-actions] button{padding-inline:8px}}

/* 通話中の復帰ボタンはテーマ色で区別し、時刻の桁幅を固定する。 */
.wsc-chat{--wsc-call-resume-bg:#365f87}
.wsc-chat[data-theme="2"]{--wsc-call-resume-bg:#245da5}
.wsc-chat[data-theme="3"]{--wsc-call-resume-bg:#14756b}
.wsc-chat[data-theme="4"]{--wsc-call-resume-bg:#487143}
.wsc-chat[data-theme="5"]{--wsc-call-resume-bg:#865b20}
.wsc-chat[data-theme="6"]{--wsc-call-resume-bg:#9b4764}
.wsc-chat[data-theme="7"]{--wsc-call-resume-bg:#4a5e76}
.wsc-chat .wsc-call-resume button{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--wsc-call-resume-bg);border-color:var(--wsc-call-resume-bg);color:#fff;font-weight:600}
.wsc-chat .wsc-call-resume button:hover{background:var(--wsc-call-resume-bg);border-color:var(--wsc-call-resume-bg);filter:brightness(.92)}
.wsc-call-resume-icon{flex:none;width:20px;height:20px;background:currentColor;-webkit-mask:url('../../icons/wsc-back_call.svg') center/contain no-repeat;mask:url('../../icons/wsc-back_call.svg') center/contain no-repeat}
.wsc-call-resume [data-call-resume-elapsed]{font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace;min-width:5ch;text-align:center}
@media(max-width:360px){.wsc-front-actions [data-chat-actions]{column-gap:4px}.wsc-front-actions [data-chat-actions] .wsc-call-resume button{display:grid;grid-template-columns:14px auto;gap:0 4px;padding-inline:4px;line-height:1.25}.wsc-call-resume-icon{grid-row:1 / span 2;width:14px;height:18px}.wsc-call-resume [data-call-resume-elapsed]{grid-column:2}}

/* サポートの担当操作と終了の間に、同じチャットの通話復帰を置く。 */
.wsc-chat .wsc-pane-header [data-support-actions]{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;min-width:0}
.wsc-chat .wsc-pane-header [data-support-actions]>[data-support-assignment]{grid-column:1;grid-row:1;margin:0;min-width:0}
.wsc-chat .wsc-pane-header [data-support-actions]>[data-support-end]{grid-column:3;grid-row:1;justify-content:flex-end;margin:0;min-width:0}
.wsc-chat .wsc-pane-header [data-support-actions]>.wsc-call-resume{grid-column:2;grid-row:1;display:block;padding:0;margin:0;border:0;background:none;min-width:0}
.wsc-chat .wsc-pane-header [data-support-actions] .wsc-call-resume button{min-height:44px;margin:0;white-space:nowrap}
@container wsc-pane (max-width:420px){.wsc-chat [data-support-actions]{column-gap:4px}.wsc-chat [data-support-actions] button{padding-inline:6px}.wsc-chat [data-support-actions] .wsc-call-resume button{display:grid;grid-template-columns:14px auto;gap:0 4px;padding-inline:4px;line-height:1.25}.wsc-chat [data-support-actions] .wsc-call-resume-icon{grid-row:1 / span 2;width:14px;height:18px}.wsc-chat [data-support-actions] [data-call-resume-elapsed]{grid-column:2}}

/* 添付メニューと位置情報は既存テーマの色を参照する。 */
.wsc-attachment-menu{display:grid;gap:12px}.wsc-chat .wsc-attachment-menu button{display:flex;align-items:center;gap:12px;text-align:left;min-height:58px;background:var(--wsc-soft,#edf4ff);color:var(--wsc-text,#18304e);border-color:var(--wsc-border,#b1c1d4)}
.wsc-attachment-menu button::before{content:"";width:26px;height:26px;flex:none;background:currentColor;mask:url('../../icons/wsc-picture.svg') center/contain no-repeat}.wsc-attachment-menu [data-attach-kind="location"]::before{mask-image:url('../../icons/wsc-location.svg')}
.wsc-location-modal .wsc-attach-panel{width:min(720px,100%)}.wsc-location-map{height:clamp(220px,50dvh,440px);width:100%;border-radius:10px;border:1px solid var(--wsc-border,#b1c1d4)}.wsc-location-map[hidden]{display:none}.wsc-location-actions{display:flex;justify-content:space-between;gap:12px;margin-top:16px;flex-wrap:wrap}
.wsc-location-card{position:relative;width:320px;max-width:100%;overflow:hidden;border:1px solid var(--wsc-border,#b1c1d4);border-radius:10px}.wsc-location-preview{height:200px;width:100%;z-index:0}.wsc-chat .wsc-location-open{display:block;width:100%;border:0;border-radius:0;min-height:44px;background:var(--wsc-soft,#edf4ff);color:var(--wsc-text,#18304e)}
.wsc-chat .leaflet-container{font:12px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#18304e}.wsc-chat .leaflet-container a{color:#145a90}.wsc-chat .leaflet-control-zoom a{width:32px;height:32px;line-height:32px}.wsc-chat .leaflet-control-attribution{font-size:11px;color:#18304e;background:#fffffff0}.wsc-location-pin span{display:block;width:28px;height:28px;background:#e84c67;border:3px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 2px 5px #18304e70}.wsc-location-pin span::after{content:"";display:block;width:8px;height:8px;border-radius:50%;background:#fff;margin:7px}

.wsc-message-media{max-width:100%}.wsc-message-media[data-wsc-media-delete]{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.wsc-media-delete-modal,.wsc-media-delete-modal *{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.wsc-media-delete-actions{display:flex;justify-content:flex-end;gap:12px}.wsc-media-delete-modal [role=alert]:empty{display:none}.wsc-chat .wsc-media-delete-actions [data-media-delete]{background:#c83b4c;border-color:#c83b4c;color:#fff}.wsc-media-deleted{color:var(--wsc-muted,#65758b);font-size:.9em}

/* 利用者PCの注釈: 案内は終了操作と同じ常時エリアへ集約する。 */
.wsc-front-actions [data-chat-actions]{grid-template-columns:minmax(0,1fr) minmax(0,3fr) minmax(max-content,1fr)}
.wsc-front-actions [data-front-notices]{grid-column:2;grid-row:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;text-align:center;overflow-wrap:anywhere}
.wsc-front-pc [data-chat-actions]:has(.wsc-call-resume){grid-template-columns:minmax(0,1fr) auto minmax(max-content,1fr)}
.wsc-front-pc [data-chat-actions]:has(.wsc-call-resume) [data-front-notices]{grid-column:1}
.wsc-front-actions [data-front-notices]>*,.wsc-front-actions [data-front-notices] [data-wsc-archive] p{margin:0}
.wsc-front-actions [data-front-notices]>:empty{display:none}
.wsc-front-actions [data-front-end-actions]{grid-column:3;grid-row:1;display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}
.wsc-front-actions [data-front-end-actions] button{white-space:nowrap}
.wsc-front-actions [data-chat-actions]:has([data-front-notices]>:not(:empty):not([hidden])),.wsc-front-actions [data-chat-actions]:has([data-history-retry]:not([hidden])){display:grid}
.wsc-front-pc [data-wsc-push]>[role=status]{color:#c83b4c}

/* 管理PCではチャット別の案内を対応する枠の操作行へ置く。 */
.wsc-chat.wsc-admin-pc .wsc-pane-header [data-admin-actions]{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:44px}
.wsc-admin-pc [data-admin-actions]>[data-support-assignment]{grid-column:1;grid-row:1}
.wsc-admin-pc [data-admin-actions]>[data-notice-end]{grid-column:3;grid-row:1;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin:0}
.wsc-admin-pc [data-pane-notices]{grid-column:2;grid-row:1;min-width:0;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;overflow-wrap:anywhere}
.wsc-admin-pc [data-pane-notices] p,.wsc-admin-pc [data-pane-notices] [data-empty]{margin:0;padding:0}
.wsc-admin-pc [data-pane-notices] p:empty,.wsc-admin-pc [data-admin-global-notices]:empty{display:none}
.wsc-admin-pc [data-admin-actions] .wsc-call-resume{display:block;background:none;border:0;padding:0;margin:0}
.wsc-admin-pc [data-admin-summary]{margin-right:auto;min-width:0}
.wsc-admin-pc [data-admin-summary] [data-wsc-archive-list]{margin:0;text-align:left}
.wsc-admin-pc [data-admin-summary] p{margin:0}
.wsc-admin-pc [data-list-notices]:empty{display:none}
.wsc-admin-pc [data-common-notice],.wsc-media-delete-modal [role=alert],.wsc-image-picker-notice:not(:empty),.wsc-image-selection>p[role=status]:not(:empty){color:#c83b4c}
.wsc-call-dialog [data-call-hint],.wsc-message:has(.wsc-media-deleted){display:none}

/* 画面共通の案内は枠外の管理操作行、チャット別の案内は各枠内へ分ける。 */
.wsc-chat.wsc-admin-pc .wsc-toolbar{display:grid;grid-template-columns:minmax(0,270px) minmax(0,1fr) auto;align-items:center;gap:16px}
.wsc-admin-pc .wsc-toolbar>[data-admin-summary]{grid-column:1;grid-row:1;margin:0}
.wsc-admin-pc .wsc-toolbar>[data-admin-global-notices]{grid-column:2;grid-row:1;min-width:0;width:min(100%,520px);justify-self:end;text-align:center;overflow-wrap:anywhere}
.wsc-admin-pc .wsc-toolbar>.wsc-actions{grid-column:3;grid-row:1}
.wsc-admin-pc [data-admin-global-notices]>p{margin:0}
.wsc-admin-pc .wsc-pane [data-empty]{display:none}
/* 狭い管理画面では案内を独立した行へ置き、操作ボタンに幅を奪われないようにする。 */
@container (max-width:1050px){
	.wsc-chat.wsc-admin-pc .wsc-toolbar{grid-template-columns:minmax(0,1fr);gap:8px}
	.wsc-admin-pc .wsc-toolbar>[data-admin-summary],.wsc-admin-pc .wsc-toolbar>[data-admin-global-notices],.wsc-admin-pc .wsc-toolbar>.wsc-actions{grid-column:1;grid-row:auto}
	.wsc-admin-pc .wsc-toolbar>[data-admin-summary]:empty,.wsc-admin-pc .wsc-toolbar>[data-admin-global-notices]:not(:has(p:not(:empty):not([hidden]))){display:none}
	.wsc-admin-pc .wsc-toolbar>[data-admin-global-notices]{width:100%;justify-self:stretch}
	.wsc-admin-pc .wsc-toolbar>.wsc-actions{justify-self:end;justify-content:flex-end}
}


/* 招待・未読の案内は関連する入力や選択操作の近くへ置く。 */
.wsc-chat.wsc-front-actions [data-context-note],.wsc-chat.wsc-front-actions [data-share-status],.wsc-chat.wsc-front-actions [data-join-note]{color:#c83b4c}
.wsc-front-pc .wsc-inbox-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr) minmax(0,1fr);align-items:center;gap:16px;min-width:0}.wsc-front-pc .wsc-inbox-heading>[data-inbox-rows]{justify-self:start;min-width:0;max-width:100%}
.wsc-front-pc .wsc-inbox-heading>[data-inbox-error]{grid-column:2;min-width:0;margin:0;text-align:center;overflow-wrap:anywhere}
.wsc-front-pc [data-inbox-unread],.wsc-front-pc [data-inbox-unread-elsewhere]{margin:0}

.wsc-front-actions:not(.wsc-front-pc) [data-front-notices] .wsc-call-resume{align-self:center}.wsc-front-actions:not(.wsc-front-pc) [data-front-notices] .wsc-call-resume button{max-width:100%;white-space:normal;flex-wrap:wrap;justify-content:center}.wsc-attachment-error{color:#c83b4c;margin:0 0 12px}

/* iPhone管理: 全体案内は一覧の上、操作・履歴の案内はチャットの操作行中央。 */
.wsc-admin-mobile [data-admin-global-notices]{margin:0 0 12px;text-align:center;overflow-wrap:anywhere}.wsc-admin-mobile [data-admin-global-notices]>p{margin:0}.wsc-admin-mobile [data-admin-global-notices]>p:empty{display:none}.wsc-admin-mobile [data-admin-global-notices]:not(:has(p:not(:empty):not([hidden]))){display:none}
.wsc-chat.wsc-admin-mobile .wsc-pane-header [data-admin-actions]{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:44px}.wsc-admin-mobile [data-admin-actions]>[data-support-assignment]{grid-column:1;grid-row:1}.wsc-admin-mobile [data-admin-actions]>[data-notice-end]{grid-column:3;grid-row:1;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin:0}
.wsc-admin-mobile [data-pane-notices]{grid-column:2;grid-row:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;overflow-wrap:anywhere}.wsc-admin-mobile [data-pane-notices] p,.wsc-admin-mobile [data-admin-summary],.wsc-admin-mobile [data-admin-summary] [data-wsc-archive-list]{margin:0}.wsc-admin-mobile [data-pane-notices] p:empty,.wsc-admin-mobile [data-pane-notices]>div:empty{display:none}
.wsc-admin-mobile [data-admin-actions] .wsc-call-resume{display:block;background:none;border:0;padding:0;margin:0}.wsc-admin-mobile [data-admin-actions] .wsc-call-resume button{max-width:100%;white-space:normal;flex-wrap:wrap;justify-content:center}.wsc-admin-mobile .wsc-pane:not(:has([data-details]:not([hidden]))) [data-admin-actions]:not(:has(p:not(:empty):not([hidden]))){display:none}
.wsc-admin-mobile .wsc-inline-image-notice{margin:0;padding:8px 14px;background:var(--wsc-surface,#fff);color:#c83b4c}.wsc-admin-mobile .wsc-inline-image-notice:empty,.wsc-admin-mobile .wsc-pane:has(.wsc-composer[hidden])>.wsc-inline-image-notice{display:none}

.wsc-chat .wsc-image-download{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;background:#10151ccc;color:#fff;border:1px solid #ffffff80;border-radius:50%;pointer-events:auto}
.wsc-image-download::before{content:"";width:24px;height:24px;background:currentColor;mask:url('../../icons/wsc-download.svg') center/contain no-repeat}
.wsc-image-full{-webkit-touch-callout:default;user-select:auto;-webkit-user-select:auto}
.wsc-image-save-notice{position:absolute;inset:auto 12px calc(12px + env(safe-area-inset-bottom));margin:0;padding:10px;background:#10151cdd;color:#fff;text-align:center}.wsc-image-save-notice:empty{display:none}

.wsc-message.is-outgoing .wsc-message-media{width:fit-content;max-width:100%;margin-left:auto}
.wsc-message.is-outgoing .wsc-attachment{margin-left:auto}

/* 通知の操作は既存MicroModal内へ移し、現在の設定部品をそのまま使う。 */
.wsc-common-toolbar:empty{display:none}
.wsc-heading-actions,.wsc-notification-actions{display:flex;align-items:center;gap:12px;min-width:0}.wsc-heading-actions{flex-wrap:wrap;margin-block:0 16px}.wsc-heading-actions h1{margin:0;min-width:0;overflow-wrap:anywhere}.wsc-notification-actions{gap:8px}
.wsc-chat .wsc-notification-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;white-space:nowrap}.wsc-setting{display:inline-block;flex:none;width:20px;height:22px;background:currentColor;mask:url('../../icons/wsc-setting.svg?v=22aa3a4f490b') center/contain no-repeat}
.wsc-notification-modal .wsc-attach-panel{width:min(420px,100%)}.wsc-notification-modal [data-wsc-push]{min-width:0;margin:0;padding:0;border:0}.wsc-notification-modal [data-wsc-push] label{justify-content:space-between;min-height:60px;margin:0 0 12px;padding:12px 14px;border-radius:var(--wsc-radius,8px);background:var(--wsc-soft,#edf4ff)}
.wsc-notification-modal input[role=switch]{appearance:none;-webkit-appearance:none;order:1;position:relative;flex:0 0 46px;width:46px;height:28px;min-width:46px;margin:0;padding:0;border:1px solid var(--wsc-border,#b1c1d4);border-radius:18px;background:#8998aa;cursor:pointer}.wsc-notification-modal input[role=switch]::before{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #18304e30}.wsc-notification-modal input[role=switch]:checked{background:var(--wsc-primary,#2863e8);border-color:var(--wsc-primary,#2863e8)}.wsc-notification-modal input[role=switch]:checked::before{left:21px}.wsc-notification-modal input[role=switch]:disabled{opacity:.5;cursor:wait}
.wsc-notification-modal [data-wsc-push]>p{font-size:12px;line-height:1.7;color:var(--wsc-muted,#496079)}.wsc-notification-modal [data-wsc-push]>[role=status]:not(:empty){margin-top:12px;color:#c83b4c}.wsc-notification-modal [data-wsc-push]>div:empty{display:none}

/* 項目ごとに説明をまとめ、見出しはモーダルの1か所にする。 */
.wsc-notification-modal .wsc-notification-item{margin:0 0 12px;padding:12px 14px;border-radius:var(--wsc-radius,8px);background:var(--wsc-soft,#edf4ff)}
.wsc-notification-modal .wsc-notification-item label{min-height:36px;margin:0;padding:0;background:transparent}
.wsc-notification-modal .wsc-notification-item p{margin-top:8px;font-size:12px;line-height:1.7;color:var(--wsc-muted,#496079)}
.wsc-attachment-menu-modal header{justify-content:flex-end}
