:root{--plyrum-canvas:#faf8f2;--plyrum-surface:#fffefa;--plyrum-surface-soft:#f7f5ef;--plyrum-border:#ecece7;--plyrum-border-strong:#d9ddd5;--plyrum-ink:#1b2839;--plyrum-text:#6a786f;--plyrum-text-muted:#8c968f;--plyrum-primary:#0e1e16;--plyrum-primary-hover:#183126;--plyrum-primary-pressed:#09150f;--plyrum-on-primary:#f6faf2;--plyrum-success:#356b49;--plyrum-success-bg:#eaf4ec;--plyrum-success-border:#bfdac6;--plyrum-info:#4d718b;--plyrum-info-bg:#eef5f8;--plyrum-info-border:#c8dce7;--plyrum-warning:#a8641d;--plyrum-warning-bg:#fff4e5;--plyrum-warning-border:#f0d09e;--plyrum-danger:#a84d57;--plyrum-danger-bg:#fcecef;--plyrum-danger-border:#eabcc3;--botanical-moss:#64721f;--botanical-leaf:#92a83f;--botanical-lilac:#9277ab;--botanical-violet:#766794;--botanical-pink:#e48db3;--botanical-rose:#c96686;--botanical-orange:#d98537;--botanical-yellow:#d9b448;--botanical-sky:#79a8b7}.pchat{--bg:var(--plyrum-canvas);--bg-2:var(--plyrum-surface-soft);--bg-soft:rgba(27,40,57,0.05);--surface:var(--plyrum-surface);--surface-strong:#ffffff;--surface-sunken:var(--plyrum-surface-soft);--surface-tint:rgba(27,40,57,0.04);--surface-user:#eef4ea;--surface-user-border:#dfe9da;--ink:var(--plyrum-ink);--ink-2:color-mix(in srgb,var(--plyrum-ink) 72%,var(--plyrum-text));--muted:color-mix(in srgb,var(--plyrum-text) 82%,var(--plyrum-ink));--muted-2:var(--plyrum-text-muted);--line:var(--plyrum-border);--line-strong:var(--plyrum-border-strong);--accent:var(--plyrum-success);--accent-2:color-mix(in srgb,var(--plyrum-success) 86%,var(--plyrum-ink));--accent-soft:var(--plyrum-success-bg);--accent-border:var(--plyrum-success-border);--accent-glow:rgba(53,107,73,0.22);--grad-forest:linear-gradient(135deg,#2a5540 0%,var(--plyrum-primary) 100%);--cta:var(--plyrum-primary);--cta-hover:var(--plyrum-primary-hover);--cta-pressed:var(--plyrum-primary-pressed);--on-cta:var(--plyrum-on-primary);--danger:var(--plyrum-danger);--danger-soft:var(--plyrum-danger-bg);--danger-border:var(--plyrum-danger-border);--success:var(--plyrum-success);--warning:color-mix(in srgb,var(--plyrum-warning) 85%,var(--plyrum-ink));--warning-soft:var(--plyrum-warning-bg);--warning-border:var(--plyrum-warning-border);--info:var(--plyrum-info);--info-soft:var(--plyrum-info-bg);--text:var(--ink);--code-bg:#15231c;--code-ink:#f1f5ef;--shadow-card:0 1px 2px rgba(23,42,28,0.05),0 10px 28px rgba(23,42,28,0.07);--shadow-pop:0 2px 6px rgba(23,42,28,0.07),0 22px 48px rgba(23,42,28,0.13);--glass-blur:blur(14px) saturate(120%);--metal-hi:#f7f9f6;--metal-mid:#aab4af;--metal-lo:#78837d;--metal-glint:var(--botanical-leaf);--radius-pill:999px;--radius-lg:18px;--radius-md:12px;--radius-sm:8px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--font:"Onest",system-ui,-apple-system,"Segoe UI",sans-serif;--display:"Fraunces",Georgia,"Times New Roman",serif;--mono:"IBM Plex Mono",ui-monospace,monospace;--ease-out-soft:cubic-bezier(0.22,1,0.36,1);--ease-spring:cubic-bezier(0.34,1.4,0.5,1);position:relative;min-height:100vh;height:100vh;min-height:100svh;height:100dvh;height:var(--pchat-vvh,100dvh);display:grid;grid-template-columns:272px minmax(0,1fr);color:var(--ink);background:radial-gradient(ellipse 90% 60% at 50% -25%,rgba(158,203,99,.14) 0,transparent 60%),radial-gradient(ellipse 70% 50% at 90% 110%,rgba(109,139,43,.07) 0,transparent 55%),var(--bg);font-family:var(--font);overflow:hidden}@media (prefers-color-scheme:dark){.pchat{color-scheme:dark;--bg:#121711;--bg-2:#171d16;--bg-soft:rgba(231,236,231,0.07);--surface:#1a211a;--surface-strong:#1f271f;--surface-sunken:#151b15;--surface-tint:rgba(231,236,231,0.05);--surface-user:#21301f;--surface-user-border:#2d3f2b;--ink:#e7ece6;--ink-2:#c3ccc4;--muted:#9fab9f;--muted-2:#76816f;--line:rgba(231,236,231,0.1);--line-strong:rgba(231,236,231,0.19);--accent:#7fb894;--accent-2:#97c9ab;--accent-soft:rgba(127,184,148,0.14);--accent-border:rgba(127,184,148,0.34);--accent-glow:rgba(127,184,148,0.3);--grad-forest:linear-gradient(135deg,#40775a,#1d3b2b);--cta:#dfe9e2;--cta-hover:#eef4ef;--cta-pressed:#c9d8cf;--on-cta:#122019;--danger:#e08e97;--danger-soft:rgba(224,142,151,0.13);--danger-border:rgba(224,142,151,0.36);--success:#7fb894;--warning:#d9a86a;--warning-soft:rgba(217,168,106,0.13);--warning-border:rgba(217,168,106,0.36);--info:#8fb7cd;--info-soft:rgba(143,183,205,0.13);--shadow-card:0 1px 2px rgba(0,0,0,0.3),0 10px 28px rgba(0,0,0,0.32);--shadow-pop:0 2px 6px rgba(0,0,0,0.35),0 22px 48px rgba(0,0,0,0.5);--metal-hi:#e9f2ec;--metal-mid:#566058;--metal-lo:#242b25;--metal-glint:#8fd0a8;background:radial-gradient(ellipse 90% 60% at 50% -25%,rgba(158,203,99,.07) 0,transparent 60%),radial-gradient(ellipse 70% 50% at 90% 110%,rgba(109,139,43,.05) 0,transparent 55%),var(--bg)}}.pchat-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}.pchat button,.pchat input,.pchat select,.pchat textarea{font:inherit;color:inherit}.pchat h1,.pchat h2,.pchat h3,.pchat h4,.pchat h5,.pchat h6{font-family:var(--display);letter-spacing:-.02em}.pchat a,.pchat button{-webkit-tap-highlight-color:transparent}.pchat :focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.pchat :focus:not(:focus-visible){outline:none}.pchat-sidebar{position:relative;z-index:1;min-height:100%;padding:18px 12px 16px;border-right:1px solid var(--line);background:var(--surface-sunken);overflow:hidden}.pchat-sidebar,.pchat-sidebar-head{display:flex;flex-direction:column;gap:14px}.pchat-brand,.pchat-mobile-brand{display:flex;align-items:center;gap:10px;padding:2px 6px 6px}.pchat-brand-name,.pchat-mobile-brand strong{font-family:var(--display);font-size:18px;font-weight:600;letter-spacing:-.02em}.pchat-brand-mark,.pchat-facet-mark,.pchat-run-spark{position:relative;width:26px;height:26px;border-radius:9px;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.5) 0,transparent 42%),linear-gradient(135deg,var(--botanical-leaf) 0,var(--botanical-moss) 100%);box-shadow:0 4px 12px rgba(100,114,31,.26),inset 0 0 0 1px rgba(255,255,255,.35);flex:0 0 auto}.pchat-facet-mark{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;color:#fff;font-size:26px;line-height:1}.pchat-run-spark{width:34px;height:34px;border-radius:13px}.pchat-new-btn{height:42px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);display:flex;align-items:center;gap:10px;padding:0 12px;font-weight:600;font-size:13.5px;letter-spacing:-.01em;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .12s ease}.pchat-new-btn:hover:not(:disabled){border-color:var(--accent-border);background:var(--surface-strong);box-shadow:var(--shadow-card)}.pchat-new-btn:active:not(:disabled){transform:scale(.98)}.pchat-new-btn:disabled{opacity:.55;cursor:wait}.pchat-new-icon{width:22px;height:22px;border-radius:7px;display:inline-grid;place-items:center;background:var(--cta);color:var(--on-cta);font-size:15px;font-weight:600;line-height:1}.pchat-list{flex:1;min-height:0;overflow-y:auto;padding:2px 0 10px}.pchat-list::-webkit-scrollbar,.pchat-messages::-webkit-scrollbar,.pchat-model-dropdown::-webkit-scrollbar{width:8px}.pchat-list::-webkit-scrollbar-thumb,.pchat-messages::-webkit-scrollbar-thumb,.pchat-model-dropdown::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px}.pchat-group{margin-bottom:10px}.pchat .pchat-group-label{margin:12px 10px 6px;color:var(--muted);font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.pchat-list-empty{margin:12px 12px 0;color:var(--muted);font-size:13px}.pchat-item{position:relative;width:100%;min-height:36px;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;padding:0 8px 0 12px;color:var(--ink-2);font-size:13px;cursor:pointer;transition:background .12s ease,color .12s ease}.pchat-item.is-active,.pchat-item:hover{background:var(--surface-strong);color:var(--ink)}.pchat-item.is-active{border-color:var(--line)}.pchat-item.is-active:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--botanical-moss)}.pchat-item-select{min-width:0;border:none;background:transparent;color:inherit;display:flex;align-items:center;gap:6px;padding:6px 0;font:inherit;text-align:left;cursor:pointer}.pchat-item.is-active .pchat-item-select{font-weight:600}.pchat-item-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pchat-active-dot{display:none}.pchat-item-delete{width:24px;height:24px;display:grid;place-items:center;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.pchat-item-delete:hover{border-color:var(--danger-border);background:var(--danger-soft);color:var(--danger)}.pchat-item-actions{display:inline-flex;align-items:center;gap:2px;flex-shrink:0;opacity:0;transition:opacity .12s ease}.pchat-item:focus-within .pchat-item-actions,.pchat-item:hover .pchat-item-actions{opacity:1}@media (hover:none){.pchat-item-actions{opacity:1}}@media (prefers-reduced-motion:reduce){.pchat-item-actions{transition:none}}.pchat-item-rename{width:24px;height:24px;display:grid;place-items:center;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;font-size:12px}.pchat-item-rename:hover{border-color:var(--line);background:var(--surface-sunken,rgba(0,0,0,.04));color:var(--ink,inherit)}.pchat-item-rename-input{flex:1;min-width:0;font:inherit;color:inherit;background:var(--surface,#fff);border:1px solid var(--line);border-radius:8px;padding:2px 8px}.pchat-nav{border-top:1px solid var(--line);padding-top:8px;display:flex;flex-direction:column;gap:2px}.pchat-nav-link{min-height:36px;border-radius:var(--radius-md);display:flex;align-items:center;gap:11px;padding:0 12px;color:var(--muted);font-size:13px;font-weight:500;text-decoration:none;transition:background .12s ease,color .12s ease}.pchat-nav-link:hover{background:var(--surface-strong);color:var(--ink)}.pchat-nav-icon{width:16px;color:var(--muted-2);text-align:center;font-size:12px}.pchat-main{position:relative;z-index:1;min-width:0;height:100%;padding:16px 28px 22px;display:grid;grid-template-rows:auto 1fr auto;gap:14px;overflow:hidden}.pchat-topbar{min-height:44px;display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.pchat-topbar-title{min-width:0;display:flex;flex-direction:column;gap:1px;margin-right:auto}.pchat-topbar-title strong{font-size:15px;font-weight:600;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:52ch}.pchat-topbar-title span{color:var(--muted);font-size:11px;font-family:var(--mono);letter-spacing:.02em}.pchat-mobile-brand{display:none}.pchat-drawer-toggle{width:38px;height:38px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink-2);display:none;place-items:center;cursor:pointer;font-size:18px;line-height:1;flex:0 0 auto}.pchat-drawer-toggle:hover{border-color:var(--line-strong);background:var(--surface-strong)}.pchat-backdrop{display:none;position:fixed;inset:0;z-index:8;border:none;padding:0;background:rgba(14,30,22,.32);backdrop-filter:blur(2px);cursor:pointer}.pchat-status-pill{color:var(--muted);display:inline-flex;align-items:center;gap:8px;padding:0 14px 0 11px;font-weight:500;white-space:nowrap}.pchat-persona-select,.pchat-status-pill{flex:0 0 auto;min-height:30px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);font-size:12px}.pchat-persona-select{max-width:180px;color:var(--ink-2);padding:0 10px;cursor:pointer;outline:none}.pchat-persona-select:hover{border-color:var(--line-strong);color:var(--ink)}.pchat-private-toggle{flex:0 0 auto;min-height:30px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);color:var(--muted);padding:0 12px;font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:border-color .15s ease,color .15s ease,background .15s ease}.pchat-private-toggle:hover{border-color:var(--line-strong);color:var(--ink)}.pchat-private-toggle[data-on=true]{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent-2)}.pchat-status-dot{width:7px;height:7px;border-radius:50%;background:var(--muted-2);flex:0 0 auto}.pchat-status-pill[data-tone=ready] .pchat-status-dot{background:var(--success)}.pchat-status-pill[data-tone=active]{color:var(--accent-2);border-color:var(--accent-border);background:var(--accent-soft)}.pchat-status-pill[data-tone=active] .pchat-status-dot{background:var(--accent);box-shadow:0 0 0 0 var(--accent-glow);animation:pchat-tl-pulse 1.5s ease-out infinite}.pchat-status-pill[data-tone=error]{color:var(--danger);border-color:var(--danger-border);background:var(--danger-soft)}.pchat-status-pill[data-tone=error] .pchat-status-dot{background:var(--danger)}.pchat-status-retry{margin-left:8px;padding:2px 10px;border-radius:var(--radius-pill);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.pchat-status-retry:hover{border-color:var(--accent-border);color:var(--accent-2)}@media (prefers-reduced-motion:reduce){.pchat-status-pill[data-tone=active] .pchat-status-dot{animation:none}.pchat-drawer-toggle,.pchat-private-toggle,.pchat-status-retry{transition:none}}.pchat-messages{min-height:0;overflow-y:auto;padding:4px 4px 16px}.pchat-message-column{width:min(768px,100%);min-height:100%;margin:0 auto;display:flex;flex-direction:column;gap:18px}.pchat-empty{min-height:64vh;display:grid;place-items:center;align-content:center;gap:18px;text-align:center;color:var(--ink)}.pchat-empty h1{margin:4px 0 0;font-family:var(--display);font-size:clamp(32px,5vw,52px);line-height:1.04;letter-spacing:-.03em;font-weight:550;color:var(--ink)}.pchat-empty p{width:min(520px,100%);margin:0;color:var(--muted);font-size:14.5px;line-height:1.6}.pchat-starters{margin-top:8px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;width:min(620px,100%)}.pchat-starter{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink-2);padding:8px 14px;font-size:12.5px;text-align:left;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease,transform .12s ease}.pchat-starter:hover{border-color:var(--accent-border);background:var(--accent-soft);color:var(--ink);transform:translateY(-1px)}.pchat-login-link{min-height:44px;border-radius:var(--radius-pill);background:var(--cta);color:var(--on-cta);display:inline-flex;align-items:center;justify-content:center;padding:0 22px;font-size:14px;font-weight:600;text-decoration:none;box-shadow:0 10px 24px rgba(14,30,22,.18);transition:background .15s ease,transform .12s ease,box-shadow .15s ease}.pchat-login-link:hover{background:var(--cta-hover);transform:translateY(-1px);box-shadow:0 12px 28px rgba(14,30,22,.22)}.pchat-login-link:active{background:var(--cta-pressed);transform:scale(.98)}.pchat-loading{align-self:center;min-height:44px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);display:inline-flex;align-items:center;gap:10px;padding:0 16px;color:var(--muted);font-size:13px;box-shadow:var(--shadow-card)}.pchat-spinner{width:14px;height:14px;border:2px solid var(--line-strong);border-top-color:var(--accent);border-radius:50%;animation:pchat-spin .8s linear infinite}@keyframes pchat-spin{to{transform:rotate(1turn)}}.pchat-bubble{width:100%;display:flex;align-items:flex-start;gap:12px;animation:pchat-card-in .24s var(--ease-out-soft) both}.pchat-bubble.is-user{transform-origin:bottom right;animation:pchat-card-in-user .42s var(--ease-spring) both}@keyframes pchat-card-in{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}@keyframes pchat-card-in-user{0%{opacity:0;transform:translateY(18px) translateX(8px) scale(.94)}55%{opacity:1}to{opacity:1;transform:none}}.pchat-bubble.is-user{justify-content:flex-end}.pchat-bubble-avatar{flex:0 0 auto;width:30px;height:30px;margin-top:2px;border-radius:50%;display:grid;place-items:center;font-size:14px;color:var(--on-cta);background:var(--grad-forest);box-shadow:0 4px 10px rgba(14,30,22,.2),inset 0 0 0 1px rgba(255,255,255,.18)}.pchat-bubble-content{width:min(680px,100%);min-width:0;max-width:100%;border:1px solid var(--line);border-radius:22px 22px 22px 6px;background:var(--surface);box-shadow:var(--shadow-card);padding:14px 18px}.pchat-bubble.is-user .pchat-bubble-content{width:min(620px,92%);border-radius:24px 24px 6px 24px;background:var(--surface-user);border-color:var(--surface-user-border);box-shadow:none}.pchat-bubble.is-streaming .pchat-bubble-content{border-color:var(--accent-border);animation:pchat-stream-breathe 2.6s ease-in-out infinite}@keyframes pchat-stream-breathe{0%,to{box-shadow:var(--shadow-card),0 0 0 3px rgba(53,107,73,.05)}50%{box-shadow:var(--shadow-card),0 0 0 6px rgba(53,107,73,.1)}}.pchat-bubble-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:9px}.pchat-bubble-head strong{color:var(--ink);font-family:var(--display);font-size:13.5px;letter-spacing:-.01em}.pchat-bubble-time{margin-left:auto;color:var(--muted);font-size:11px;font-family:var(--mono)}.pchat-bubble-live{color:var(--accent-2);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.pchat-bubble-cost,.pchat-bubble-model{min-height:21px;border-radius:var(--radius-pill);background:var(--accent-soft);border:1px solid var(--accent-border);color:var(--accent-2);display:inline-flex;align-items:center;padding:0 9px;font-family:var(--mono);font-size:11px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pchat-bubble-cost{background:var(--surface-sunken);border-color:var(--line-strong);color:var(--ink-2)}.pchat-bubble-grounded{min-height:21px;border-radius:var(--radius-pill);display:inline-flex;align-items:center;padding:0 9px;font-family:var(--mono);font-size:11px;cursor:default}.pchat-bubble-grounded[data-tone=ok]{background:var(--accent-soft);border:1px solid var(--accent-border);color:var(--success)}.pchat-bubble-grounded[data-tone=partial]{background:var(--warning-soft);border:1px solid var(--warning-border);color:var(--warning)}.pchat-bubble-text{color:var(--ink);font-size:14.5px;line-height:1.65;overflow-wrap:anywhere}.pchat-bubble-text p{margin:0 0 12px}.pchat-bubble-text p:last-child{margin-bottom:0}.pchat-bubble-text a{color:var(--accent);font-weight:600;text-decoration-color:rgba(53,107,73,.35);text-underline-offset:3px}.pchat-bubble-text a:hover{text-decoration-color:currentColor}.pchat-bubble-text h1,.pchat-bubble-text h2,.pchat-bubble-text h3{margin:18px 0 8px;color:var(--ink);line-height:1.25;letter-spacing:0}.pchat-bubble-text h1:first-child,.pchat-bubble-text h2:first-child,.pchat-bubble-text h3:first-child{margin-top:0}.pchat-bubble-text h1{font-size:22px}.pchat-bubble-text h2{font-size:18px}.pchat-bubble-text h3{font-size:15.5px}.pchat-bubble-text ol,.pchat-bubble-text ul{margin:0 0 12px;padding-left:22px}.pchat-bubble-text li{margin:4px 0}.pchat-bubble-text blockquote{margin:12px 0;border-left:3px solid var(--botanical-leaf);background:color-mix(in srgb,var(--botanical-leaf) 8%,transparent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:8px 12px;color:var(--ink-2)}.pchat-bubble-text code{font-family:var(--mono);font-size:13px;padding:2px 6px;background:var(--bg-soft);border:1px solid var(--line);border-radius:6px;color:var(--ink-2)}.pchat-bubble-text pre{margin:12px 0;border:1px solid var(--code-bg);border-radius:var(--radius-md);overflow-x:auto;overflow-y:hidden;max-width:100%;-webkit-overflow-scrolling:touch;background:var(--code-bg)!important}.pchat-bubble-text pre code{border:none;background:transparent;padding:0;color:var(--code-ink)!important;white-space:pre;word-break:normal}.pchat-bubble-text .pchat-code-block,.pchat-bubble-text pre>div{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}.pchat-markdown-table-wrap{width:100%;margin:14px 0;border:1px solid var(--line);border-radius:var(--radius-md);overflow-x:auto;background:var(--surface-strong)}.pchat-markdown-table-wrap table{width:100%;min-width:520px;border-collapse:collapse;font-size:13px;line-height:1.45}.pchat-markdown-table-wrap td,.pchat-markdown-table-wrap th{border-bottom:1px solid var(--line);padding:9px 11px;text-align:left;vertical-align:top}.pchat-markdown-table-wrap th{position:sticky;top:0;background:var(--surface-sunken);color:var(--ink);font-weight:700;white-space:nowrap}.pchat-markdown-table-wrap tr:last-child td{border-bottom:none}.pchat-markdown-table-wrap tbody tr:nth-child(2n){background:var(--surface-tint)}.pchat-message-attachments{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}.pchat-message-attachment{min-width:0;max-width:min(100%,320px);min-height:32px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);display:inline-flex;align-items:center;gap:8px;padding:3px 10px 3px 4px;color:var(--ink-2);font-size:12px}.pchat-file-icon,.pchat-message-attachment-kind{width:26px;height:26px;border-radius:999px;background:var(--surface);color:var(--muted);display:inline-grid;place-items:center;flex:0 0 auto;font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:0}.pchat-file-icon[data-kind=image],.pchat-message-attachment-kind[data-kind=image]{background:var(--accent-soft);color:var(--success)}.pchat-file-icon[data-kind=video],.pchat-message-attachment-kind[data-kind=video]{background:color-mix(in srgb,var(--botanical-orange) 12%,transparent);color:var(--warning)}.pchat-file-icon[data-kind=audio],.pchat-message-attachment-kind[data-kind=audio]{background:var(--info-soft);color:var(--info)}.pchat-file-icon[data-kind=pdf],.pchat-message-attachment-kind[data-kind=pdf]{background:var(--danger-soft);color:var(--danger)}.pchat-message-attachment-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.pchat-message-attachment-size{color:var(--muted);white-space:nowrap}.pchat-cursor{display:inline-block;width:7px;height:1em;margin-left:4px;border-radius:2px;background:var(--accent);vertical-align:text-bottom;transform-origin:center bottom;animation:pchat-cursor-pulse 1.05s var(--ease-out-soft) infinite}@keyframes pchat-cursor-pulse{0%,to{opacity:.28;transform:scaleY(.8)}50%{opacity:1;transform:scaleY(1)}}.pchat-typing-bubble .pchat-bubble-content{width:auto;padding:13px 17px}.pchat-typing{display:inline-flex;align-items:center;gap:6px}.pchat-typing-dot{width:7px;height:7px;border-radius:50%;background:var(--accent-2);opacity:.45;animation:pchat-typing-bounce 1.25s ease-in-out infinite}.pchat-typing-dot:nth-child(2){animation-delay:.16s}.pchat-typing-dot:nth-child(3){animation-delay:.32s}@keyframes pchat-typing-bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-5px);opacity:1}}@media (prefers-reduced-motion:reduce){.pchat-typing-dot{animation:pchat-typing-fade 1.4s ease-in-out infinite}@keyframes pchat-typing-fade{0%,to{opacity:.35}50%{opacity:.9}}}.pchat-stream{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card);padding:14px 16px;display:flex;flex-direction:column;gap:14px}section.pchat-stream{border-color:var(--accent-border);box-shadow:var(--shadow-card),0 0 0 3px rgba(53,107,73,.06)}.pchat-stream-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center}.pchat-stream-mark{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--surface-strong);border:1px solid var(--line-strong);color:var(--ink-2);font-size:15px;line-height:1}.pchat-stream-mark[data-live=true],.pchat-stream-mark[data-tone=done]{background:var(--grad-forest);border-color:transparent;color:var(--on-cta);box-shadow:0 4px 12px rgba(14,30,22,.22)}.pchat-stream-mark[data-tone=failed]{background:var(--danger-soft);border-color:var(--danger-border);color:var(--danger)}.pchat-stream-headings strong{display:block;font-size:14.5px;font-weight:600;letter-spacing:-.01em}.pchat-stream-headings span{display:block;color:var(--muted);font-size:12px;margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pchat-stream-meta{display:inline-flex;align-items:center;gap:8px}.pchat-stream-cost{color:var(--ink-2);font-family:var(--mono);font-size:11.5px;white-space:nowrap}.pchat-stream-cancel{min-height:28px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:transparent;color:var(--ink-2);padding:0 12px;font-size:12px;font-weight:600;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.pchat-stream-cancel:hover{border-color:var(--danger-border);background:var(--danger-soft);color:var(--danger)}.pchat-stream-track{height:4px;border-radius:var(--radius-pill);background:var(--surface-sunken);overflow:hidden}.pchat-stream-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--botanical-leaf),var(--accent));transition:width .32s ease}.pchat-stream-track>span[data-tone=done]{background:var(--success)}.pchat-stream-track>span[data-tone=failed]{background:var(--danger);box-shadow:none}.pchat-stream.is-terminal{padding:0;gap:0;background:var(--surface);box-shadow:none}.pchat-stream-summary{display:flex;align-items:center;gap:12px;padding:11px 14px;cursor:pointer;list-style:none;border-radius:var(--radius-lg)}.pchat-stream-summary::-webkit-details-marker{display:none}.pchat-stream-summary:hover{background:var(--surface-tint)}.pchat-stream-summary-text{min-width:0;flex:1;display:flex;flex-direction:column;gap:1px}.pchat-stream-summary-text strong{font-size:13.5px;font-weight:600}.pchat-stream-summary-text span{color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pchat-stream-summary-meta{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-family:var(--mono);font-size:11px;white-space:nowrap}.pchat-stream-caret{font-family:var(--font);font-size:14px;color:var(--muted-2);transition:transform .2s ease}.pchat-stream.is-terminal[open] .pchat-stream-caret{transform:rotate(180deg)}.pchat-stream-body{display:flex;flex-direction:column;gap:14px;padding:4px 16px 16px}.pchat-timeline{position:relative;list-style:none;margin:0;padding:2px 0 0;display:flex;flex-direction:column}.pchat-timeline:before{content:"";position:absolute;left:6px;top:10px;bottom:14px;width:2px;background:var(--line-strong);border-radius:2px}.pchat-tl{position:relative;padding:0 0 16px 28px}.pchat-tl:last-child{padding-bottom:2px}.pchat-tl-dot{position:absolute;left:0;top:16px;width:14px;height:14px;border-radius:50%;background:var(--muted-2);border:2px solid var(--surface);z-index:1}.pchat-tl[data-tone=done] .pchat-tl-dot{background:var(--success);box-shadow:0 0 0 3px var(--accent-soft)}.pchat-tl[data-tone=active] .pchat-tl-dot{background:var(--accent);box-shadow:0 0 0 0 var(--accent-glow);animation:pchat-tl-pulse 1.5s ease-out infinite}.pchat-tl[data-tone=failed] .pchat-tl-dot{background:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}@keyframes pchat-tl-pulse{0%{box-shadow:0 0 0 0 var(--accent-glow)}70%{box-shadow:0 0 0 7px transparent}to{box-shadow:0 0 0 0 transparent}}.pchat-tl-eyebrow{margin-bottom:6px;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.pchat-tl[data-tone=idle]{opacity:.62}.pchat-tl-card{border:1px solid var(--line);border-radius:14px;background:var(--surface-sunken);padding:11px 13px;display:flex;flex-direction:column;gap:9px}.pchat-tl[data-tone=active] .pchat-tl-card{border-color:var(--accent-border)}.pchat-tl-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.pchat-tl-title{font-size:13.5px;font-weight:600;color:var(--ink)}.pchat-tl-badge{min-height:20px;border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--line);padding:0 8px;font-family:var(--mono);font-size:10.5px;max-width:220px;overflow:hidden;text-overflow:ellipsis}.pchat-tl-badge,.pchat-tl-state{color:var(--muted);display:inline-flex;align-items:center;white-space:nowrap}.pchat-tl-state{margin-left:auto;gap:6px;font-size:11.5px;font-weight:500}.pchat-tl-state[data-tone=active]{color:var(--accent-2)}.pchat-tl-state[data-tone=done]{color:var(--success)}.pchat-tl-state[data-tone=failed]{color:var(--danger)}.pchat-tl-ic{display:inline-grid;place-items:center;width:14px;height:14px;font-size:11px;line-height:1}.pchat-tl-spin{width:13px;height:13px;border:2px solid rgba(53,107,73,.28);border-top:2px solid var(--accent);border-radius:50%;animation:pchat-spin .7s linear infinite}.pchat-tl-bar{height:4px;border-radius:var(--radius-pill);background:var(--bg-soft);overflow:hidden}.pchat-tl-bar>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--botanical-leaf),var(--accent));transition:width .32s ease}.pchat-tl[data-tone=done] .pchat-tl-bar>span{background:var(--success)}.pchat-tl[data-tone=failed] .pchat-tl-bar>span{background:var(--danger)}.pchat-tl-bar[data-indeterminate=true]>span{width:40%;animation:pchat-tl-sweep 1.25s ease-in-out infinite}@keyframes pchat-tl-sweep{0%{transform:translateX(-110%)}to{transform:translateX(280%)}}@media (prefers-reduced-motion:reduce){.pchat-tl-bar[data-indeterminate=true]>span,.pchat-tl-spin,.pchat-tl[data-tone=active] .pchat-tl-dot{animation:none}.pchat-tl-bar[data-indeterminate=true]>span{width:100%}}.pchat-route-map{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-sunken);padding:12px;display:grid;gap:10px}.pchat-route-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.pchat-route-head span,.pchat-route-head strong,.pchat-route-kicker{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pchat-route-head strong{display:block;font-size:13.5px;line-height:1.35}.pchat-route-head p{margin:3px 0 0;color:var(--ink-2);font-size:12.5px;line-height:1.45}.pchat-route-head>span,.pchat-route-kicker{color:var(--muted);font-size:11.5px}.pchat-route-kicker{display:block;margin-bottom:3px;text-transform:uppercase;letter-spacing:.04em}.pchat-route-chips,.pchat-route-foot{display:flex;flex-wrap:wrap;gap:6px;max-height:92px;overflow-y:auto;padding-right:2px}.pchat-route-chips span,.pchat-route-foot span{min-height:24px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);color:var(--muted);display:inline-flex;align-items:center;padding:0 8px;font-size:11px;white-space:nowrap}.pchat-route-chips span[data-on=true]{border-color:var(--accent-border);background:var(--accent-soft);color:var(--success)}.pchat-route-chips span[data-on=false]{opacity:.62}.pchat-route-details,.pchat-tool-details{min-width:0}.pchat-route-details>summary,.pchat-tool-details>summary{cursor:pointer;color:var(--muted);font-size:11.5px;line-height:1.4;list-style-position:inside}.pchat-route-details[open]>summary,.pchat-tool-details[open]>summary{color:var(--ink-2)}.pchat-route-details[open]{display:grid;gap:10px}.pchat-route-dag{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:220px;overflow-y:auto;padding-right:2px}.pchat-route-node{min-width:0;min-height:58px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);padding:8px;display:grid;grid-template-columns:auto minmax(0,1fr);-moz-column-gap:7px;column-gap:7px;align-content:start}.pchat-route-node-dot{width:8px;height:8px;border-radius:50%;background:var(--muted-2);margin-top:4px}.pchat-route-node[data-tone=active] .pchat-route-node-dot{background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.pchat-route-node[data-tone=done] .pchat-route-node-dot{background:var(--success)}.pchat-route-node[data-tone=failed] .pchat-route-node-dot{background:var(--danger)}.pchat-route-node span:last-child,.pchat-route-node strong{grid-column:2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pchat-route-node strong{font-size:11.5px}.pchat-route-node span:last-child{color:var(--muted);font-size:11px;line-height:1.35}.pchat-route-candidates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:184px;overflow-y:auto;padding-right:2px}.pchat-route-candidate{min-width:0;min-height:30px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 9px}.pchat-route-candidate span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--mono);font-size:11px;color:var(--ink-2)}.pchat-route-candidate strong{font-family:var(--mono);font-size:11px;color:var(--accent)}.pchat-tool-timeline{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-sunken);padding:12px;display:grid;gap:10px;min-width:0}.pchat-tool-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.pchat-tool-head strong{font-size:12.5px}.pchat-tool-head span{color:var(--muted);font-size:11.5px;white-space:nowrap}.pchat-tool-list{position:relative;display:grid;gap:8px;min-width:0;max-height:260px;overflow-y:auto;padding:1px 2px 1px 0}.pchat-tool-list:before{content:"";position:absolute;left:8px;top:8px;bottom:8px;width:1px;background:var(--line-strong)}.pchat-tool-step{position:relative;min-width:0;display:grid;grid-template-columns:17px minmax(0,1fr);gap:9px;align-items:start}.pchat-tool-dot{position:relative;z-index:1;width:9px;height:9px;border-radius:50%;background:var(--muted-2);margin:8px 0 0 4px}.pchat-tool-step[data-tone=active] .pchat-tool-dot{background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.pchat-tool-step[data-tone=done] .pchat-tool-dot{background:var(--success)}.pchat-tool-step[data-tone=failed] .pchat-tool-dot{background:var(--danger)}.pchat-tool-body{min-width:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);padding:8px 9px}.pchat-tool-line{min-width:0;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pchat-tool-line span,.pchat-tool-line strong,.pchat-tool-open{min-height:21px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);display:inline-flex;align-items:center;padding:0 7px;font-size:10.5px;line-height:1;white-space:nowrap}.pchat-tool-line strong{border-color:var(--accent-border);background:var(--accent-soft);color:var(--accent);font-weight:700;max-width:100%;overflow:hidden;text-overflow:ellipsis}.pchat-tool-line span{color:var(--muted)}.pchat-tool-open{margin-left:auto;color:var(--ink-2);text-decoration:none;font-weight:600}.pchat-tool-open:hover{border-color:var(--line-strong);background:var(--bg-soft)}.pchat-tool-body p{margin:7px 0 0;color:var(--ink-2);font-size:12.5px;line-height:1.45;overflow-wrap:anywhere}.pchat-tool-details{margin-top:7px}.pchat-tool-meta{display:flex;flex-wrap:wrap;gap:5px;min-width:0;margin-top:7px}.pchat-tool-meta span{min-width:0;max-width:100%;min-height:20px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface-sunken);color:var(--muted);display:inline-flex;align-items:center;padding:0 7px;font-family:var(--mono);font-size:10.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pchat-agent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:260px;overflow-y:auto;padding-right:2px}.pchat-agent{min-width:0;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-sunken);padding:10px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:start}.pchat-agent-dot{width:9px;height:9px;border-radius:50%;background:var(--muted-2);margin-top:5px}.pchat-agent[data-tone=active] .pchat-agent-dot{background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.pchat-agent[data-tone=done] .pchat-agent-dot{background:var(--success)}.pchat-agent[data-tone=failed] .pchat-agent-dot{background:var(--danger)}.pchat-agent strong{display:block;font-size:12.5px}.pchat-agent small,.pchat-agent span{display:block;color:var(--muted);font-size:11.5px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pchat-agent small{grid-column:2;font-family:var(--mono)}.pchat-agent-details{grid-column:2;min-width:0}.pchat-agent-details summary{cursor:pointer;color:var(--muted);font-size:11px;line-height:1.35;list-style-position:inside}.pchat-agent-details small{margin-top:3px}.pchat-run-events{display:flex;flex-wrap:wrap;gap:6px}.pchat-run-events span{min-height:24px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);color:var(--muted);display:inline-flex;align-items:center;padding:0 9px;font-size:11.5px}.pchat-artifacts{display:flex;flex-direction:column;gap:12px}.pchat-sources{margin-top:10px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);padding:8px 12px;font-size:12.5px}.pchat-sources>summary{cursor:pointer;font-family:var(--mono);font-size:11px;color:var(--muted);list-style:none}.pchat-sources>summary::-webkit-details-marker{display:none}.pchat-sources ul{margin:8px 0 2px;padding-left:18px;display:flex;flex-direction:column;gap:4px}.pchat-sources a{color:var(--accent);text-decoration:none;word-break:break-all}.pchat-sources a:hover{text-decoration:underline}.pchat-artifact-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card);overflow:hidden;animation:pchat-card-in .28s var(--ease-out-soft) both}.pchat-artifact-head{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}.pchat-artifact-head strong{font-size:13px}.pchat-artifact-head span:last-child{margin-left:auto;color:var(--muted);font-size:12px}.pchat-artifact-kind{min-height:22px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);display:inline-flex;align-items:center;padding:0 8px;font-family:var(--mono);font-size:11px;font-weight:700}.pchat-artifact-frame{width:100%;height:min(560px,58vh);border:none;display:block;background:#fff}.pchat-artifact-frame-wrap{position:relative}.pchat-artifact-preview-note{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:8px 12px;font-size:13px;line-height:1.4;color:var(--ink-soft,#5b5648);background:var(--surface-sunken,#f4f1ea);border-top:1px solid var(--line,#e4ded2)}.pchat-artifact-preview-note a{font-weight:600;text-decoration:underline;color:inherit}.pchat-validation{margin-bottom:8px;border-radius:10px;font-size:13px;overflow:hidden;border:1px solid var(--line,#e4ded2)}.pchat-validation-summary{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px;background:transparent;border:none;cursor:pointer;font:inherit;color:inherit;text-align:left}.pchat-validation-mark{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}.pchat-validation-pass .pchat-validation-mark{background:#2f8f4e}.pchat-validation-warn .pchat-validation-mark{background:#b8860b}.pchat-validation-fail .pchat-validation-mark{background:#c0392b}.pchat-validation-pass{border-color:rgba(47,143,78,.35)}.pchat-validation-warn{border-color:rgba(184,134,11,.35)}.pchat-validation-fail{border-color:rgba(192,57,43,.35)}.pchat-validation-chevron{margin-left:auto;opacity:.6}.pchat-validation-gates{list-style:none;margin:0;padding:4px 10px 8px 36px;display:grid;gap:4px}.pchat-validation-gate{display:flex;flex-direction:column;gap:1px}.pchat-validation-gate-name{font-weight:600}.pchat-validation-gate-detail{opacity:.75}.pchat-validation-gate-fail .pchat-validation-gate-name{color:#c0392b}.pchat-validation-gate-warn .pchat-validation-gate-name{color:#b8860b}.pchat-doc-thumb{display:block;width:100%;aspect-ratio:16/9;border:1px solid var(--line,#e4ded2);border-radius:10px;overflow:hidden;background:#eef0f4;padding:0;cursor:pointer;position:relative}.pchat-doc-thumb:disabled{cursor:default;opacity:.7}.pchat-doc-thumb-frame{width:200%;height:200%;border:0;transform:scale(.5);transform-origin:top left;pointer-events:none}.pchat-doc-thumb-fallback{position:absolute;inset:0;display:grid;place-items:center;font-size:42px}.pchat-artifact-view{font-weight:600;padding:6px 14px;border-radius:9px;border:1px solid var(--line,#d9d3c7);background:var(--surface,#fff);cursor:pointer}.pchat-artifact-download{font-weight:700;padding:6px 14px;border-radius:9px;border:1px solid transparent;background:var(--botanical-moss,#4a7c59);color:#fff;cursor:pointer;text-decoration:none}.pchat-artifact-download:disabled,.pchat-artifact-view:disabled{opacity:.55;cursor:default}.pchat-preview-overlay{position:fixed;inset:0;z-index:1000;background:rgba(12,14,20,.92);display:flex;flex-direction:column;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);max-width:100vw;max-height:100dvh;overflow:hidden}.pchat-preview-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;color:#fff}.pchat-preview-close{flex:0 0 auto;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.1);color:#fff;font-size:16px;cursor:pointer}.pchat-preview-frame{flex:1;width:100%;border:0;background:#eef0f4}.pchat-artifact-image-link{position:relative;display:block;background:var(--surface-sunken)}.pchat-artifact-image-link[data-loaded=false]{min-height:240px}.pchat-artifact-image-skeleton{position:absolute;inset:0;background:linear-gradient(110deg,transparent 18%,rgba(146,168,63,.08) 40%,rgba(146,168,63,.16) 50%,rgba(146,168,63,.08) 60%,transparent 82%),radial-gradient(120% 90% at 50% 28%,rgba(146,168,63,.06),transparent 70%),var(--surface-sunken);background-size:220% 100%,auto,auto;animation:pchat-shimmer 1.5s linear infinite;transition:opacity .5s ease}.pchat-artifact-image-link[data-loaded=true] .pchat-artifact-image-skeleton{opacity:0;pointer-events:none}@keyframes pchat-shimmer{0%{background-position:140% 0,0 0,0 0}to{background-position:-40% 0,0 0,0 0}}.pchat-artifact-image{position:relative;width:100%;max-height:min(620px,64vh);-o-object-fit:contain;object-fit:contain;display:block;background:var(--surface-sunken);transition:opacity .6s var(--ease-out-soft),filter .6s var(--ease-out-soft),transform .6s var(--ease-out-soft)}.pchat-artifact-image-link[data-loaded=false] .pchat-artifact-image{opacity:0;filter:blur(16px) saturate(1.35);transform:scale(1.04)}.pchat-artifact-image-link[data-loaded=true] .pchat-artifact-image{opacity:1;filter:none;transform:none}.pchat-image-forge{position:relative;overflow:hidden;min-height:220px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-sunken);box-shadow:var(--shadow-card);display:grid;place-items:center;gap:12px;padding:24px;animation:pchat-card-in .28s var(--ease-out-soft) both}.pchat-image-forge:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 18%,rgba(146,168,63,.07) 42%,rgba(146,168,63,.14) 50%,rgba(146,168,63,.07) 58%,transparent 82%);background-size:220% 100%;animation:pchat-shimmer 1.7s linear infinite;pointer-events:none}.pchat-image-forge-orb{position:relative;width:46px;height:46px;border-radius:50%;background:var(--grad-forest);box-shadow:0 0 0 0 var(--accent-glow),0 8px 20px rgba(14,30,22,.25);animation:pchat-forge-pulse 1.6s ease-out infinite}@keyframes pchat-forge-pulse{0%{box-shadow:0 0 0 0 var(--accent-glow),0 8px 20px rgba(14,30,22,.25)}70%{box-shadow:0 0 0 16px transparent,0 8px 20px rgba(14,30,22,.15)}to{box-shadow:0 0 0 0 transparent,0 8px 20px rgba(14,30,22,.25)}}.pchat-image-forge-label{position:relative;color:var(--ink-2);font-family:var(--mono);font-size:12px;letter-spacing:.02em}.pchat-jump{position:sticky;bottom:16px;z-index:5;display:flex;align-items:center;gap:6px;width:-moz-fit-content;width:fit-content;margin:-44px auto 2px;min-height:34px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:rgba(255,255,255,.82);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-pop);color:var(--ink);padding:0 14px;font-size:12.5px;font-weight:600;cursor:pointer;opacity:0;transform:translateY(10px) scale(.95);pointer-events:none;transition:opacity .22s var(--ease-out-soft),transform .22s var(--ease-out-soft),border-color .15s ease,background .15s ease}.pchat-jump[data-show=true]{opacity:1;transform:none;pointer-events:auto}@media (prefers-color-scheme:dark){.pchat-jump{background:rgba(26,33,26,.82)}}.pchat-jump:hover{border-color:var(--accent-border);background:var(--accent-soft);color:var(--ink)}.pchat-jump-ic{font-size:13px;line-height:1}.pchat-artifact-video{width:100%;max-height:min(620px,64vh);aspect-ratio:16/9;display:block;background:var(--code-bg)}.pchat-artifact-placeholder{min-height:180px;display:grid;place-items:center;background:var(--surface-sunken);color:var(--muted);font-family:var(--mono);font-size:12px}.pchat-artifact-marking{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:9px 14px;border-top:1px solid var(--line);color:var(--muted);font-size:11px;line-height:1.4}.pchat-artifact-marking-schema{border-radius:var(--radius-pill);background:var(--surface-sunken);padding:1px 5px;font-family:var(--mono)}.pchat-artifact-marking-manifest{flex-basis:100%}.pchat-artifact-marking-manifest code{overflow-wrap:anywhere;font-size:inherit}.pchat-artifact-actions{display:flex;flex-wrap:wrap;gap:8px;padding:12px 14px}.pchat-artifact-actions,.pchat-artifact-state{border-top:1px solid var(--line);background:var(--surface-sunken)}.pchat-artifact-state{margin:0;padding:8px 12px;color:var(--muted);font-size:12.5px;line-height:1.4;overflow-wrap:anywhere}.pchat-artifact-path,.pchat-artifact-title,.pchat-preview-title{min-width:0;overflow-wrap:anywhere}.pchat-artifact-file-name{max-width:100%;overflow-wrap:anywhere}.pchat-preview-title{flex:1 1 auto;overflow:hidden}.pchat-artifact-actions a{min-height:34px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink-2);display:inline-flex;align-items:center;justify-content:center;padding:0 12px;font-size:13px;font-weight:600;text-decoration:none}.pchat-artifact-actions a:hover{border-color:var(--line-strong)}@media (prefers-reduced-motion:reduce){.pchat-artifact-card,.pchat-artifact-image-skeleton,.pchat-bubble,.pchat-bubble.is-streaming .pchat-bubble-content,.pchat-bubble.is-user,.pchat-cursor,.pchat-image-forge,.pchat-image-forge-orb,.pchat-image-forge:before{animation:none}.pchat-artifact-image{transition:opacity .2s ease}.pchat-artifact-image-link[data-loaded=false] .pchat-artifact-image{filter:none;transform:none}.pchat-jump{transition:opacity .2s ease;transform:none}}.pchat-verify-caveat{display:flex;align-items:flex-start;gap:8px;margin:6px 0;padding:8px 10px;border-radius:10px;font-size:13px;line-height:1.35;max-width:100%}.pchat-verify-caveat-text{overflow-wrap:anywhere}.pchat-verify-caveat-warn{background:#fff5e6;color:#7a4b00;border:1px solid #f0c98a}.pchat-verify-caveat-fail{background:#fdecec;color:#7a1f1f;border:1px solid #efb3b3}.pchat-verify-caveat-mark{font-weight:700;flex:0 0 auto}.pchat-verify-caveat-info{background:#eef4ff;color:#1c3d7a;border:1px solid #b7ccf0}.pchat-input-wrap{position:relative;width:min(768px,100%);border:1px solid transparent;border-radius:22px;background:var(--surface-strong);box-shadow:var(--shadow-pop);padding:14px 12px 10px 16px;margin:0 auto env(safe-area-inset-bottom,0);transition:box-shadow .18s ease}.pchat-input-wrap:focus-within{box-shadow:var(--shadow-pop),0 0 0 4px color-mix(in srgb,var(--botanical-leaf) 14%,transparent)}.pchat-metal{position:absolute;inset:-1.5px;border-radius:23.5px;padding:1.5px;background:conic-gradient(from var(--pchat-metal-a,135deg),var(--metal-mid) 0,var(--metal-hi) 9%,var(--metal-lo) 20%,var(--metal-hi) 33%,var(--metal-mid) 44%,var(--metal-glint) 52%,var(--metal-hi) 60%,var(--metal-lo) 72%,var(--metal-hi) 85%,var(--metal-mid) 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.75;pointer-events:none}.pchat-attachment-list,.pchat-image-settings{display:flex;flex-wrap:wrap;gap:8px;padding:0 0 10px}.pchat-image-setting{min-height:34px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-sunken);display:inline-flex;align-items:center;gap:8px;padding:4px 6px 4px 10px;color:var(--ink-2);font-size:12px;font-weight:600}.pchat-image-setting span{color:var(--muted);white-space:nowrap}.pchat-image-setting select{min-width:112px;height:26px;border:1px solid var(--line);border-radius:8px;background:var(--surface-strong);color:var(--ink);font:inherit;outline:none}.pchat-image-setting select:focus{border-color:var(--accent)}.pchat-input-bar{display:flex;flex-direction:column;gap:8px}.pchat-textarea{width:100%;min-height:48px;max-height:140px;resize:none;border:none;outline:none;background:transparent;color:var(--ink);font-size:15.5px;line-height:24px;padding:2px 6px 0 2px}.pchat-textarea::-moz-placeholder{color:var(--muted)}.pchat-textarea::placeholder{color:var(--muted)}.pchat-textarea:focus-visible{outline:none}.pchat-input-tools{display:flex;align-items:center;gap:6px}.pchat-attach-btn{position:relative;width:34px;height:34px;border:1px solid transparent;border-radius:var(--radius-pill);background:transparent;color:var(--muted);display:inline-grid;place-items:center;font-size:19px;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease,transform .12s ease}.pchat-attach-btn:hover{background:var(--bg-soft);color:var(--ink)}.pchat-attach-btn:active:not(:has(input:disabled)){transform:scale(.94)}.pchat-attach-btn:has(input:disabled){opacity:.45;cursor:not-allowed}.pchat-attach-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:inherit}.pchat-attach-btn:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px;background:var(--bg-soft);color:var(--ink)}.pchat-input-hint{margin-left:auto;padding-right:10px;color:var(--muted-2);font-size:11.5px;white-space:nowrap;opacity:0;transition:opacity .25s ease}.pchat-input-wrap:focus-within .pchat-input-hint{opacity:1}.pchat-send-btn{width:38px;height:38px;flex:0 0 auto;border:none;border-radius:var(--radius-pill);background:var(--cta);color:var(--on-cta);display:inline-grid;place-items:center;font-size:17px;font-weight:600;cursor:pointer;box-shadow:0 5px 14px rgba(14,30,22,.22);transition:background .15s ease,box-shadow .15s ease,transform .12s ease,color .15s ease}.pchat-send-btn:hover:not(:disabled){background:var(--cta-hover);box-shadow:0 7px 18px rgba(14,30,22,.26);transform:translateY(-1px)}.pchat-send-btn:active:not(:disabled){background:var(--cta-pressed);transform:scale(.94);box-shadow:0 3px 8px rgba(14,30,22,.2)}.pchat-send-btn:disabled{background:var(--surface-sunken);color:var(--muted-2);box-shadow:inset 0 0 0 1px var(--line);cursor:not-allowed}.pchat-send-ic{display:inline-grid;place-items:center;transition:transform .18s var(--ease-spring)}.pchat-send-btn:hover:not(:disabled) .pchat-send-ic{transform:translate(2px,-1px) rotate(-8deg)}.pchat-send-spin{width:16px;height:16px;border:2px solid rgba(246,250,242,.4);border-top:2px solid var(--on-cta);border-radius:50%;animation:pchat-spin .7s linear infinite}@media (prefers-color-scheme:dark){.pchat-send-spin{border-color:rgba(18,32,25,.28);border-top-color:var(--on-cta)}}@media (prefers-reduced-motion:reduce){.pchat-send-btn:hover:not(:disabled) .pchat-send-ic{transform:none}.pchat-send-spin{animation-duration:1.2s}.pchat-input-hint{transition:none}}.pchat-model-selector{position:relative}.pchat-model-btn{height:34px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);display:flex;align-items:center;gap:7px;padding:0 10px;cursor:pointer;font-size:13px;font-weight:500;max-width:220px;transition:background .15s ease,color .15s ease,border-color .15s ease}.pchat-model-btn:hover:not(:disabled){background:var(--bg-soft);color:var(--ink)}.pchat-model-btn[aria-expanded=true]{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent-2)}.pchat-model-btn:disabled{opacity:.48;cursor:not-allowed}.pchat-model-logo{width:15px;height:15px;display:block;-o-object-fit:contain;object-fit:contain}.pchat-model-leaf{width:14px;height:14px;border-radius:5px;display:block;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.5) 0,transparent 42%),linear-gradient(135deg,var(--botanical-leaf) 0,var(--botanical-moss) 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}.pchat-model-monogram{min-width:15px;display:grid;place-items:center;color:var(--muted);font-family:var(--mono);font-size:10px;font-weight:700;line-height:1}.pchat-model-label{min-width:0;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pchat-model-arrow{color:var(--muted);font-size:11px;line-height:1;transition:transform .16s var(--ease-out-soft)}.pchat-model-btn[aria-expanded=true] .pchat-model-arrow{transform:rotate(180deg);color:var(--accent-2)}.pchat-model-dropdown{position:absolute;left:0;bottom:calc(100% + 10px);width:min(300px,82vw);max-height:min(380px,45dvh);overflow-y:auto;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface-strong);box-shadow:var(--shadow-pop);padding:6px;z-index:20;transform-origin:bottom left;animation:pchat-pop-in .16s var(--ease-out-soft) both}@keyframes pchat-pop-in{0%{opacity:0;transform:translateY(4px) scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.pchat-model-dropdown{animation:none}}.pchat-model-dropdown-head{padding:8px 10px 6px;color:var(--muted);font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.pchat-model-list{display:flex;flex-direction:column;gap:2px}.pchat-model-option{width:100%;min-height:38px;border:none;border-radius:10px;background:transparent;display:flex;align-items:center;gap:10px;padding:0 10px 0 6px;color:var(--ink-2);text-align:left;cursor:pointer;font-size:13px;transition:background .12s ease}.pchat-model-option:hover{background:var(--bg-soft)}.pchat-model-option-ic{flex:0 0 auto;width:26px;height:26px;border-radius:8px;background:var(--surface-sunken);display:inline-grid;place-items:center;font-size:13px;line-height:1}.pchat-model-option.is-selected{background:var(--accent-soft);color:var(--accent-2)}.pchat-model-option.is-selected .pchat-model-option-ic{background:var(--surface-strong)}.pchat-model-check{margin-left:auto;color:var(--accent);font-size:13px;font-weight:700}.pchat-file-preview{min-height:34px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);display:inline-flex;align-items:center;gap:8px;padding:4px 6px 4px 4px}.pchat-file-preview-img{width:26px;height:26px;border-radius:999px;-o-object-fit:cover;object-fit:cover}.pchat-file-info{min-width:0}.pchat-file-name{max-width:160px;color:var(--ink-2);font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pchat-file-size{display:none}.pchat-file-remove{width:24px;height:24px;border:none;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font-size:16px;line-height:1}.pchat-file-remove:hover,.pchat-upload-error{background:var(--danger-soft);color:var(--danger)}.pchat-upload-error{margin:0 0 8px;border:1px solid var(--danger-border);border-radius:var(--radius-md);padding:8px 10px;font-size:12px;overflow-wrap:anywhere}@media (max-width:860px){.pchat{grid-template-columns:1fr}.pchat-sidebar{position:fixed;top:0;bottom:0;left:0;z-index:9;width:min(300px,86vw);min-height:0;transform:translateX(-100%);transition:transform .22s ease;box-shadow:var(--shadow-pop);padding-top:calc(18px + env(safe-area-inset-top, 0px));padding-bottom:calc(22px + env(safe-area-inset-bottom, 0px))}.pchat-sidebar.is-open{transform:translateX(0)}.pchat[data-drawer-open=true] .pchat-backdrop{display:block}.pchat-drawer-toggle{display:inline-grid}.pchat-main{padding:calc(14px + env(safe-area-inset-top, 0px)) calc(14px + env(safe-area-inset-right, 0px)) calc(14px + env(safe-area-inset-bottom, 0px)) calc(14px + env(safe-area-inset-left, 0px));gap:12px}.pchat-topbar{justify-content:space-between}.pchat-mobile-brand{display:flex;align-items:center;gap:11px;padding:0}.pchat-input-wrap,.pchat-message-column{width:100%}.pchat-input-wrap{margin-bottom:0;padding-bottom:0}.pchat-input-hint{display:none}.pchat-input-tools .pchat-send-btn{margin-left:auto}.pchat-image-settings{display:grid;grid-template-columns:1fr}.pchat-image-setting{width:100%;justify-content:space-between}.pchat-agent-grid,.pchat-route-candidates,.pchat-route-dag,.pchat-route-head{grid-template-columns:1fr}.pchat-run-main{grid-template-columns:auto minmax(0,1fr)}.pchat-run-meta{grid-column:2;align-items:flex-start}.pchat-artifact-frame{height:min(420px,55dvh)}.pchat-status-pill{min-width:0;max-width:100%;white-space:normal}.pchat-topbar{flex-wrap:wrap;row-gap:8px}.pchat-persona-select{max-width:46vw}.pchat-bubble-content,.pchat-markdown-table-wrap{max-width:100%}}@media (max-width:480px){.pchat-main{padding:calc(12px + env(safe-area-inset-top, 0px)) calc(12px + env(safe-area-inset-right, 0px)) calc(12px + env(safe-area-inset-bottom, 0px)) calc(12px + env(safe-area-inset-left, 0px));gap:10px}.pchat-message-column{gap:14px}.pchat-bubble{gap:8px}.pchat-bubble-avatar{width:26px;height:26px}.pchat-bubble-content{padding:12px 14px;border-radius:16px 16px 16px 6px}.pchat-bubble.is-user .pchat-bubble-content{border-radius:18px 18px 6px 18px}.pchat-topbar-title strong{max-width:42vw}.pchat-task-card{padding:14px}.pchat-task-stage{-moz-column-gap:8px;column-gap:8px}}@media (pointer:coarse){.pchat-attach-btn,.pchat-drawer-toggle,.pchat-preview-close,.pchat-send-btn{min-width:44px;min-height:44px}.pchat-artifact-download,.pchat-artifact-view,.pchat-item-select,.pchat-model-btn,.pchat-nav-link,.pchat-new-btn,.pchat-persona-select,.pchat-private-toggle,.pchat-stream-cancel{min-height:44px}.pchat-file-remove,.pchat-item-delete,.pchat-item-rename{min-width:44px;min-height:44px}.pchat-item{min-height:48px}}@media (prefers-reduced-motion:reduce){.pchat-sidebar{transition:none}}@media (min-width:861px) and (max-width:1024px){.pchat{grid-template-columns:232px minmax(0,1fr)}.pchat-main{padding:16px 18px 20px}.pchat-topbar-title strong{max-width:34ch}}@media (max-width:390px){.pchat-model-dropdown{left:0;right:auto;width:auto;min-width:0;max-width:calc(100vw - 28px)}.pchat-model-btn{min-width:0;max-width:44vw}.pchat-item-title,.pchat-model-label,.pchat-topbar-title strong{max-width:100%}.pchat-image-setting select{max-width:100%;min-width:0}.pchat-artifact-actions a,.pchat-artifact-actions button{flex:1 1 auto}.pchat-message-column{max-width:100%;overflow-x:hidden}.pchat-input-wrap{max-width:100%}}