:root{--bg: #f4f4f1;--panel: #fafaf8;--card: #ffffff;--line: #e4e4de;--line-soft: #f0f0eb;--line-strong: #1a1a18;--ink: #1a1a18;--ink-2: #55554f;--ink-3: #6a6860;--select-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%236a6860' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--placeholder: #6e6c63;--canvas: #ededea;--hover: #efefea;--gold: #D4A017;--gold-bg: #FFF8E7;--gold-ink: #B8860B;--green-bg: #EDF7EE;--green-ink: #3D8B4F;--red-bg: #FEF2F2;--red-ink: #C0392B;--purple-bg: #F4EDF8;--purple-ink: #7B3F8B;--blue: #4D6CFA;--blue-bg: #E8F0FE;--gen-gold: #8b6b1f;--gen-chip-line: #c9b98e;--gen-chip-bg: #fffaf0;--gen-chip-ink: #6f5619;--gen-hover-ink: #4d3b10;--gen-error: #8b1a1a;--gen-focus: #b88721;--gen-veil: rgba(250, 250, 247, .91);--scroll-thumb: #d6d6ce;--scroll-thumb-hover: #bdbdb4}:root{--sb-bg: #f7f6f2;--sb-card: #ffffff;--sb-panel: #fbfaf6;--sb-ink: #1f1e1a;--sb-ink2: #6e6a60;--sb-ink3: #8a857a;--sb-mute: #b3afa2;--sb-line: #e5e2d9;--sb-line-soft: #e0ddd2;--sb-accent: #c2492f;--sb-accent-dark: #a03823;--sb-canvas: #edebe2;--sb-header-h: 52px;--ada-surface: #fbfaf6;--ada-header-bg: #f5f1e9;--ada-chip-bg: #f1eee6;--ada-brand: #6f7251;--ada-accent: #b95b2b;--ada-danger-bg: #fff9f7;--ada-danger-line: #c97c70;--ada-danger-edge: #ad4439;--ada-danger-ink: #9f392e;--ada-danger-strong: #a9382d;--ada-confirm-bg: #fffaf0;--ada-confirm-line: #d49a4f;--ada-review-bg: #fff9e9;--ada-review-line: #d89c31;--ada-review-ink: #835c13;--ada-review-ink2: #856f47;--ada-approve-line: #ead6b9;--ada-approve-ink: #745a37;--ada-error-bg: #fff0ee;--ada-user-bubble: #efefe9;--ada-structural-line: #c69228;--ada-billable-bg: #fff1cc;--ada-billable-ink: #8a6100;--ada-ok: #5d7a4d;--ada-ink-weak: #6a6860;--ada-shadow: rgba(31,30,26,.1);--ada-shadow-strong: rgba(31,30,26,.12);--ada-figure-blend: multiply;--ada-portrait-bg: #f5f1e9;--ada-launcher-figure-bg: #f4f4f1}:root[data-theme=dark]{--bg: #151412;--panel: #1c1b19;--card: #232120;--line: #343230;--line-soft: #282623;--line-strong: #e6e4dc;--ink: #eceae4;--ink-2: #a8a49a;--ink-3: #77736a;--select-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23a8a49a' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--placeholder: #5b574f;--canvas: #11100e;--hover: #282623;--gold: #e0b45e;--gold-bg: #332a15;--gold-ink: #e0b45e;--green-bg: #202c1d;--green-ink: #8ca173;--red-bg: #2a1f1d;--red-ink: #e58b7c;--purple-bg: #28242e;--purple-ink: #b39bc9;--blue: #93a5ff;--blue-bg: #1f2942;--gen-gold: #d9a44e;--gen-chip-line: #6a5a30;--gen-chip-bg: #2a231a;--gen-chip-ink: #e0b968;--gen-hover-ink: #f0d9a0;--gen-error: #e58b7c;--gen-focus: #d9a44e;--gen-veil: rgba(17, 16, 14, .92);--scroll-thumb: #37322d;--scroll-thumb-hover: #453f39;--sb-bg: #151412;--sb-card: #232120;--sb-panel: #1c1b19;--sb-ink: #eceae4;--sb-ink2: #a8a49a;--sb-ink3: #77736a;--sb-mute: #5b574f;--sb-line: #343230;--sb-line-soft: #282623;--sb-accent: #e06a4c;--sb-accent-dark: #f08264;--sb-canvas: #11100e;--ada-surface: #1c1b19;--ada-header-bg: #232120;--ada-chip-bg: #262321;--ada-brand: #9aa07a;--ada-accent: #d97f4e;--ada-danger-bg: #2a1f1d;--ada-danger-line: #d68b7f;--ada-danger-edge: #d15a4a;--ada-danger-ink: #e58b7c;--ada-danger-strong: #e58b7c;--ada-confirm-bg: #2a231a;--ada-confirm-line: #dca65e;--ada-review-bg: #2a2519;--ada-review-line: #e0a94a;--ada-review-ink: #e0b968;--ada-review-ink2: #c2ab7f;--ada-approve-line: #3d3524;--ada-approve-ink: #c9a97a;--ada-error-bg: #2a1f1d;--ada-user-bubble: #262421;--ada-structural-line: #d9a44e;--ada-billable-bg: #332a15;--ada-billable-ink: #e0b45e;--ada-ok: #8ca173;--ada-ink-weak: #918c82;--ada-shadow: rgba(0,0,0,.45);--ada-shadow-strong: rgba(0,0,0,.55);--ada-figure-blend: normal;--ada-portrait-bg: #f5f1e9;--ada-launcher-figure-bg: #f5f1e9}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;width:100%;min-height:100vh}html,body{height:100%}#root{min-height:100vh;display:flex;flex-direction:column}body{background:var(--bg);color:var(--ink);font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;-webkit-font-smoothing:antialiased}::placeholder{color:var(--placeholder)}textarea:focus,input:focus,button:focus{outline:none}textarea{font-family:inherit}.mono{font-family:IBM Plex Mono,monospace}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--scroll-thumb, #d6d6ce);border-radius:0}::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover, #bdbdb4)}::-webkit-scrollbar-track{background:transparent}.dnd-dragging{opacity:.35}.generation-studio-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:28px;background:#1414129e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:sbModalFade .16s ease-out}.generation-studio{width:min(1040px,calc(100vw - 56px));height:min(780px,calc(100vh - 56px));min-height:620px;display:flex;flex-direction:column;overflow:hidden;background:var(--panel);border:1px solid var(--line-strong);box-shadow:0 30px 90px #00000047;animation:sbModalIn .22s cubic-bezier(.22,1,.36,1)}.generation-studio__header{min-height:76px;display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid var(--line);background:var(--card)}.generation-studio__eyebrow{color:var(--gen-gold);font-size:10px;letter-spacing:.16em}.generation-studio__header h2{margin:4px 0 0;font-size:20px;line-height:1.2;font-weight:650}.generation-studio__close{width:38px;height:38px;border:1px solid var(--line);background:transparent;color:var(--ink-2);font-size:24px;line-height:1;cursor:pointer}.generation-studio__close:hover:not(:disabled){border-color:var(--ink);color:var(--ink)}.generation-studio__body{min-height:0;flex:1;display:grid;grid-template-columns:minmax(0,56fr) minmax(390px,44fr)}.generation-studio__preview-pane,.generation-studio__editor-pane{min-width:0;min-height:0;overflow-y:auto;padding:22px}.generation-studio__preview-pane{border-right:1px solid var(--line);background:var(--canvas)}.generation-studio__editor-pane{display:flex;flex-direction:column;background:var(--card)}.generation-studio__section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}.generation-studio__section-heading>div{min-width:0}.generation-studio__section-heading span{display:block;font-size:13px;font-weight:650}.generation-studio__section-heading small{display:block;margin-top:2px;color:var(--ink-3);font-size:10px;font-weight:400}.generation-studio__section-heading>button{flex:none;border:1px solid var(--line-strong);background:var(--card);color:var(--ink);padding:7px 10px;font-size:11px;cursor:pointer}.generation-studio__style-chip{border:1px solid var(--gen-chip-line);background:var(--gen-chip-bg);color:var(--gen-chip-ink);padding:4px 7px;font-size:10px!important;font-weight:500!important}.generation-studio__preview{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;background:var(--canvas);border:1px solid var(--line)}.generation-studio__preview img{width:100%;height:100%;display:block;object-fit:contain}.generation-studio__empty{height:100%;display:grid;place-items:center;color:var(--ink-3);font-size:13px}.generation-studio__generating{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;background:var(--gen-veil);color:var(--ink);text-align:center}.generation-studio__generating .sb-spin{font-size:28px}.generation-studio__generating strong{font-size:13px}.generation-studio__generating small{color:var(--ink-3);font-size:10px}.generation-studio__provenance{margin-top:22px}.generation-studio__muted{margin:0;padding:20px;border:1px dashed var(--line);color:var(--ink-3);font-size:12px;text-align:center}.generation-studio__reference-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.generation-studio__reference-grid--readonly button{min-width:0;padding:0;border:0;background:transparent;text-align:left;cursor:zoom-in}.generation-studio__reference-grid--readonly button:disabled{cursor:default}.generation-studio__reference-grid--readonly button>span,.generation-studio__ref-preview{width:100%;aspect-ratio:3 / 2;display:grid;place-items:center;overflow:hidden;border:1px solid var(--line);background:var(--canvas);color:var(--ink-3);font-size:9px}.generation-studio__reference-grid img{width:100%;height:100%;object-fit:cover;display:block}.generation-studio__reference-grid--readonly small{display:block;margin-top:5px;overflow:hidden;color:var(--ink-2);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.generation-studio__label{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:13px;font-weight:650}.generation-studio__prompt-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}.generation-studio__prompt-head .generation-studio__label{margin-bottom:0}.generation-studio__label small{color:var(--ink-3);font-size:10px;font-weight:400}.generation-studio__label-actions{display:flex;align-items:center;flex:none;gap:8px}.generation-studio__label-actions .generation-studio__secondary{min-height:26px;padding:0 8px;font-size:11px}.generation-studio__hint{margin:0 0 8px;color:var(--ink-3);font-size:10px;line-height:1.45}.generation-studio__polish{min-height:26px;padding:0 8px;border:1px solid var(--gen-chip-line);background:var(--gen-chip-bg);color:var(--gen-chip-ink);font-size:11px;font-weight:600;cursor:pointer}.generation-studio__polish:hover:not(:disabled){border-color:var(--gen-gold);color:var(--gen-hover-ink)}.generation-studio__polish-preview{margin:10px 0 4px;padding:12px 13px;border:1px solid var(--gen-chip-line);background:var(--gen-chip-bg)}.generation-studio__polish-preview p{margin:0 0 8px;color:var(--ink);font-size:13px;line-height:1.65;white-space:pre-wrap}.generation-studio__polish-preview>small{display:block;margin-bottom:10px;color:var(--gen-chip-ink);font-size:11px}.generation-studio__polish-actions{display:flex;gap:8px}.generation-studio__polish-actions button{min-height:32px;padding:0 12px;font-size:12px;cursor:pointer}.generation-studio__prompt{width:100%;min-height:220px;flex:1;resize:none;padding:14px 15px;border:1px solid var(--line);border-radius:0;background:var(--panel);color:var(--ink);font-size:14px;line-height:1.68}.generation-studio__prompt:focus{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.generation-studio__frame{width:100%;margin-bottom:16px;padding:9px 11px;border:1px solid var(--line);background:var(--card);color:var(--ink);font-size:13px}.generation-studio__frame:focus{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.generation-studio__draft-refs{margin:20px 0}.generation-studio__add-empty{width:100%;padding:18px;border:1px dashed var(--line);background:var(--panel);color:var(--ink-3);font-size:11px;cursor:pointer}.generation-studio__draft-ref{position:relative;min-width:0}.generation-studio__ref-preview{padding:0;cursor:zoom-in}.generation-studio__draft-ref>span{display:block;margin-top:5px;overflow:hidden;color:var(--ink-2);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.generation-studio__role{width:100%;margin-top:4px;padding:3px 18px 3px 4px;border:1px solid var(--line);background-color:var(--card);color:var(--ink-2);font-size:10px}.generation-studio__preflight{padding:10px 22px;border-top:1px solid var(--line);background:var(--bg);color:var(--ink-2);font-size:11px;line-height:1.5}.generation-studio__preflight p,.generation-studio__preflight ul{margin:0}.generation-studio__preflight ul{padding-left:16px}.generation-studio__preflight-error{color:var(--gen-error);font-weight:600}.generation-studio__remove{position:absolute;top:-6px;right:-6px;width:19px;height:19px;padding:0;border:1px solid #fff;border-radius:50%;background:#2a2a27;color:#fff;cursor:pointer}.generation-studio__select{width:100%;padding:10px 26px 10px 11px;border:1px solid var(--line);border-radius:0;background-color:var(--card);color:var(--ink);font-size:12px}.generation-studio__footer{min-height:72px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 20px;padding:14px 22px;border-top:1px solid var(--line);background:var(--card)}.generation-studio__footer>span{flex:1 1 220px;min-width:0;color:var(--ink-3);font-size:11px}.generation-studio__footer>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px}.generation-studio__footer button{min-height:38px;padding:0 16px;font-size:12px;cursor:pointer}.generation-studio__secondary{border:1px solid var(--line);background:var(--card);color:var(--ink)}.generation-studio__primary{min-width:132px;border:1px solid var(--line-strong);background:var(--line-strong);color:var(--bg);font-weight:650}.generation-studio__force{border:1px solid var(--gen-error);background:var(--card);color:var(--gen-error);font-weight:650}.generation-studio button:disabled,.generation-studio select:disabled{cursor:not-allowed;opacity:.45}.generation-studio button:focus-visible,.generation-studio textarea:focus-visible,.generation-studio select:focus-visible{outline:2px solid var(--gen-focus);outline-offset:2px}@media(max-width:760px){.generation-studio-backdrop{padding:0}.generation-studio{width:100vw;height:100dvh;min-height:0;border:0}.generation-studio__header{min-height:64px;padding:12px 15px}.generation-studio__header h2{font-size:17px}.generation-studio__body{display:block;overflow-y:auto}.generation-studio__preview-pane,.generation-studio__editor-pane{overflow:visible;padding:16px}.generation-studio__preview-pane{border-right:0;border-bottom:1px solid var(--line)}.generation-studio__prompt{min-height:240px;flex:none}.generation-studio__reference-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.generation-studio__footer{min-height:70px;padding:10px 14px}.generation-studio__footer>span{display:none}.generation-studio__footer>div{width:100%}.generation-studio__footer button{flex:1}}@keyframes sbModalFade{0%{opacity:0}to{opacity:1}}@keyframes sbModalIn{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes sbToastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){@keyframes sbModalFade{0%{opacity:1}to{opacity:1}}@keyframes sbModalIn{0%{transform:none}to{transform:none}}@keyframes sbToastIn{0%{transform:none}to{transform:none}}}@keyframes sbSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sb-spin{display:inline-block;animation:sbSpin 1.2s linear infinite}.pj-row:hover .delete-btn,.pj-row:hover .duplicate-btn{opacity:.85!important}.pj-row .duplicate-btn:hover,.pj-row .delete-btn:hover{opacity:1!important}.pj-row:hover .pj-shot-count{display:none!important}.scene-row:hover .delete-btn{opacity:1!important}[data-shot-id].is-shot-focused{outline:2px solid rgba(189,145,45,.72);outline-offset:3px}[data-shot-id].agent-highlight{animation:sbAgentHighlight 1.8s ease-out}@keyframes sbAgentHighlight{0%,25%{box-shadow:0 0 0 4px #dca4247a,0 12px 34px #9e70092e}to{box-shadow:0 0 #dca42400}}.agent-app-shell{min-height:calc(100vh - var(--sb-header-h));width:100%;display:flex;background:var(--bg)}.agent-app-main{min-width:0;flex:1;transition:width .18s ease}.agent-drawer{width:0;min-width:0;height:100vh;position:sticky;top:0;overflow:hidden;display:flex;flex-direction:column;border-left:0 solid var(--line);font-family:PingFang SC,Hiragino Sans GB,sans-serif;transition:width .18s ease,border-width .18s ease;z-index:70}.agent-drawer.is-open{width:var(--ada-drawer-width);min-width:var(--ada-drawer-width);border-left-width:1px;box-shadow:-12px 0 32px var(--ada-shadow)}.agent-drawer.is-open>*{animation:agent-drawer-content-in .36s cubic-bezier(.22,1,.36,1) both}@keyframes agent-drawer-content-in{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.agent-drawer-launcher{position:fixed;right:22px;bottom:22px;z-index:75;border-radius:999px;padding:10px 16px;font:600 13px inherit;cursor:pointer}.agent-drawer-header{height:64px;flex:0 0 64px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid var(--line)}.agent-drawer-title strong{display:block;font-size:14px}.agent-drawer-title span{display:block;margin-top:2px;font-size:10px;color:var(--ada-ink-weak)}.agent-drawer-header button{border:0;background:none;color:var(--ada-ink-weak);font-size:24px;cursor:pointer}.agent-conversation-bar{display:flex;gap:8px;padding:12px 14px;border-bottom:1px solid var(--line-soft)}.agent-conversation-bar select{flex:1;min-width:0;border:1px solid var(--line);background-color:var(--card);padding:7px 24px 7px 8px;color:var(--ink);font-size:12px}.agent-conversation-bar button{border:1px solid var(--line);background:transparent;padding:7px 9px;color:var(--ink-2);font-size:11px;cursor:pointer}.agent-context-strip{display:flex;gap:6px;padding:8px 14px;overflow-x:auto}.agent-context-strip span{flex:0 0 auto;border:1px solid var(--line);padding:2px 6px;color:var(--ada-ink-weak);background:var(--card);font:9px IBM Plex Mono,monospace}.agent-presence{--presence: #7d7d74;display:flex;align-items:center;gap:11px;margin:0 14px 4px;padding:10px 12px;border:1px solid var(--line);background:color-mix(in srgb,var(--card) 72%,transparent)}.agent-presence-mark{position:relative;width:42px;height:42px;flex:0 0 42px;overflow:hidden;border:2px solid color-mix(in srgb,var(--presence) 72%,var(--line));border-radius:0;background:var(--ada-chip-bg);box-shadow:0 0 0 2px color-mix(in srgb,var(--card) 80%,transparent)}.agent-presence-mark img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 38%}.agent-presence-mark:before{content:"";position:absolute;right:2px;bottom:2px;width:7px;height:7px;border-radius:50%;background:var(--presence);border:2px solid var(--card);z-index:2}.agent-presence>div:last-child{min-width:0}.agent-presence>div:last-child strong{display:block;color:var(--ink);font-size:12px}.agent-presence>div:last-child span{display:block;margin-top:2px;color:var(--ada-ink-weak);font-size:10px}.agent-presence[data-state=thinking],.agent-presence[data-state=working]{--presence: #a4761c}.agent-presence[data-state=viewing]{--presence: #307b75}.agent-presence[data-state=generating]{--presence: #7655a8}.agent-presence[data-state=awaiting]{--presence: #b06e19;background:var(--ada-review-bg)}.agent-presence[data-state=completed]{--presence: #4c7b55}.agent-presence[data-state=failed]{--presence: #ad4439;background:var(--ada-danger-bg)}.agent-presence[data-state=offline],.agent-presence[data-state=stopped]{--presence: #99998f}.agent-presence[data-state=thinking] .agent-presence-mark,.agent-presence[data-state=working] .agent-presence-mark,.agent-presence[data-state=generating] .agent-presence-mark{animation:sbAgentPresencePulse 1.6s ease-in-out infinite}.agent-presence[data-state=viewing] .agent-presence-mark:after{content:"";position:absolute;left:4px;right:4px;height:1px;background:var(--presence);box-shadow:0 0 8px var(--presence);animation:sbAgentScan 1.6s ease-in-out infinite}@keyframes sbAgentPresencePulse{0%,to{transform:translateY(0);box-shadow:0 0 0 2px color-mix(in srgb,var(--card) 80%,transparent)}50%{transform:translateY(-2px);box-shadow:0 0 0 2px color-mix(in srgb,var(--card) 80%,transparent),0 5px 14px color-mix(in srgb,var(--presence) 24%,transparent)}}@keyframes sbAgentScan{0%,to{top:7px;opacity:.3}50%{top:25px;opacity:.9}}.agent-message-list{flex:1;min-height:0;overflow-y:auto;padding:14px}.agent-empty-state{padding:34px 20px;text-align:center;color:var(--ada-ink-weak);font-size:12px;line-height:1.8}.agent-load-older{display:block;width:100%;margin-bottom:14px;padding:7px 0;border:1px dashed var(--ada-ink-weak);border-radius:6px;background:transparent;color:var(--ada-ink-weak);font-size:11px;cursor:pointer}.agent-load-older:hover:not(:disabled){color:var(--ink);border-color:var(--ink)}.agent-load-older:disabled{cursor:default;opacity:.6}.agent-message{margin-bottom:14px}.agent-message>span{display:block;margin-bottom:4px;color:var(--ada-ink-weak);font-size:10px}.agent-message>div{white-space:pre-wrap;font-size:13px;line-height:1.65;color:var(--ink)}.agent-message.is-user{margin-left:34px;padding:9px 11px;background:var(--ada-user-bubble)}.agent-message.is-user>span{display:none}.agent-continue{display:block;margin-top:9px;border:1px solid var(--ink);padding:6px 10px;background:var(--ink);color:var(--bg);font-size:11px;cursor:pointer}.agent-tool-card{margin:10px 0 14px;padding:10px;border:1px solid var(--line);border-left:3px solid var(--ink-3);background:var(--card)}.agent-tool-card.risk-dangerous{border-left-color:var(--ada-danger-edge);background:var(--ada-danger-bg)}.agent-tool-title strong{flex:1;font:600 11px IBM Plex Mono,monospace}.agent-tool-title span{padding:1px 5px;background:var(--ada-chip-bg);color:var(--ada-ink-weak);font-size:9px}.agent-tool-card details{margin-top:8px;color:var(--ada-ink-weak);font-size:10px}.agent-tool-card>p{margin:8px 0 0;color:var(--ink-2);font-size:10px;white-space:pre-wrap}.agent-tool-activity{margin:0 0 10px;border:1px solid var(--line);background:transparent;overflow:hidden}.agent-tool-activity>summary{display:flex;align-items:center;gap:8px;padding:9px 10px;cursor:pointer;list-style:none;transition:background .2s ease}.agent-tool-activity>summary:hover{background:color-mix(in srgb,var(--ada-brand) 6%,transparent)}.agent-tool-activity>summary:before{content:"›";color:var(--ada-ink-weak);transition:transform .18s ease}.agent-tool-activity>summary strong{font-size:11px}.agent-tool-activity>summary span{margin-left:auto;color:var(--ada-ink-weak);font-size:10px}.agent-tool-activity-list{border-top:1px solid var(--line);padding:4px 10px 8px;animation:agent-fade-in .25s ease both}.agent-tool-row{padding:7px 0;border-bottom:1px solid var(--line)}.agent-tool-row:last-child{border-bottom:0}.agent-tool-row>div strong{flex:1;font-size:11px;font-weight:500}.agent-tool-row>div span{color:var(--ada-ink-weak);font-size:9px}.agent-approval-actions{margin-top:10px;padding-top:9px;border-top:1px solid var(--ada-approve-line)}.agent-approval-actions p{margin:0 0 8px;color:var(--ada-danger-ink);font-size:10px}.agent-approval-actions button,.agent-review-card button{margin-right:7px;border:1px solid var(--line);padding:6px 10px;background:var(--card);font-size:11px;cursor:pointer}.agent-review-card{margin:12px 0;padding:12px;border:1px solid var(--ada-review-line);background:var(--ada-review-bg)}.agent-error{margin:12px 0;padding:9px;background:var(--ada-error-bg);color:var(--ada-danger-strong);font-size:11px}.agent-composer{flex:0 0 auto;padding:11px 12px 12px;border-top:1px solid var(--line);background:var(--card)}.agent-composer textarea{width:100%;resize:none;border:1px solid var(--line);padding:9px 10px;font-size:12px;line-height:1.5}.agent-composer>button:not(.agent-stop){float:right;margin-top:7px;border:0;padding:7px 14px;background:var(--ink);color:var(--bg);font-size:11px;cursor:pointer}.agent-composer>button:disabled{opacity:.4;cursor:default}.agent-stop{width:100%;margin-bottom:8px;border:1px solid var(--ada-danger-line);padding:6px;background:var(--ada-danger-bg);color:var(--ada-danger-ink);font-size:10px;cursor:pointer}.agent-project-picker{padding:22px 16px}.agent-project-picker p{color:var(--ada-ink-weak);font-size:12px;line-height:1.65}.agent-help-entry{margin-top:14px;width:100%;border:1px dashed var(--ada-brand);background:color-mix(in srgb,var(--ada-brand) 6%,transparent);color:var(--ink);padding:10px 12px;font-size:12px;cursor:pointer;border-radius:0;transition:background .2s ease}.agent-help-entry:hover{background:color-mix(in srgb,var(--ada-brand) 14%,transparent)}@media(max-width:760px){.agent-app-shell.is-agent-open,.agent-app-shell.is-agent-open .agent-app-main{height:calc(100vh - var(--sb-header-h));overflow:hidden}.agent-drawer{position:fixed;left:0;right:0;top:0;width:auto;min-width:0;transform:translate(100%);border-left:0;transition:transform .18s ease}.agent-drawer.is-open{width:auto;min-width:0;transform:translate(0)}}@media(prefers-reduced-motion:reduce){.agent-presence-mark,.agent-presence-mark:after{animation:none!important}}.agent-app-shell{--ada-drawer-width: 360px;min-height:calc(100vh - var(--sb-header-h));width:100%;display:flex;background:var(--bg)}.agent-app-main{min-width:0;flex:1;overflow:hidden}.agent-drawer{--ada-state: var(--ada-brand);width:0;min-width:0;height:calc(100vh - var(--sb-header-h));position:sticky;top:var(--sb-header-h);overflow:hidden;display:flex;flex-direction:column;border-left:0 solid var(--line);background:var(--ada-surface);color:var(--ink);font-family:PingFang SC,Hiragino Sans GB,sans-serif;transition:width .32s cubic-bezier(.22,1,.36,1),border-width .32s cubic-bezier(.22,1,.36,1),box-shadow .32s ease;will-change:width;z-index:70}.agent-drawer[data-state=thinking],.agent-drawer[data-state=viewing],.agent-drawer[data-state=working],.agent-drawer[data-state=generating]{--ada-state: var(--ada-accent)}.agent-drawer[data-state=awaiting]{--ada-state: #a6691e}.agent-drawer[data-state=failed]{--ada-state: var(--ada-danger-edge)}.agent-drawer[data-state=stopped],.agent-drawer[data-state=offline]{--ada-state: #99998f}.agent-drawer.is-open{width:var(--ada-drawer-width);min-width:var(--ada-drawer-width);border-left-width:1px}.agent-ada-header{position:relative;flex:0 0 166px;height:166px;overflow:hidden;border-bottom:1px solid var(--line);background:var(--ada-header-bg);transition:flex-basis .24s ease,height .24s ease}.agent-ada-header:after{content:"";position:absolute;left:122px;top:98px;width:2px;height:82px;background:var(--ada-accent)}.agent-ada-portrait{position:absolute;left:9px;bottom:-4px;width:132px;height:132px;transition:width .24s ease,height .24s ease,left .24s ease,bottom .24s ease,border-radius .24s ease;display:block;object-fit:cover;object-position:50% 41%;background:var(--ada-portrait-bg);mix-blend-mode:var(--ada-figure-blend)}.agent-ada-identity{position:absolute;left:150px;right:42px;top:54px;z-index:1;transition:left .24s ease,top .24s ease}.agent-ada-identity>strong{display:block;font-family:"Noto Serif SC",Songti SC,serif;font-size:28px;line-height:1;letter-spacing:-.04em}.agent-ada-identity>span{display:block;margin-top:6px;color:var(--ink-2);font-size:10px}.agent-ada-status{display:flex;align-items:center;gap:6px;margin-top:11px;color:var(--ada-state);font:9px IBM Plex Mono,monospace}.agent-ada-header.is-compact{flex-basis:52px;height:52px}.agent-ada-header.is-compact:after{opacity:0}.agent-ada-header.is-compact .agent-ada-portrait{width:34px;height:34px;left:12px;bottom:9px;border-radius:50%;object-position:50% 30%}.agent-ada-header.is-compact .agent-ada-identity{left:56px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:9px}.agent-ada-header.is-compact .agent-ada-identity>strong{font-size:15px}.agent-ada-header.is-compact .agent-ada-identity>span{display:none}.agent-ada-header.is-compact .agent-ada-status{margin-top:0}.agent-ada-status i{width:5px;height:5px;flex:0 0 5px;border-radius:50%;background:currentColor}.agent-drawer-close{position:absolute;top:11px;right:12px;z-index:3;width:32px;height:32px;border:0;padding:0;background:transparent;color:var(--ada-ink-weak);cursor:pointer;font-size:24px;line-height:1}.agent-session-bar{flex:0 0 auto;display:flex;gap:7px;padding:10px 13px 7px}.agent-session-bar select{min-width:0;flex:1;border:1px solid var(--line);padding:7px 24px 7px 8px;background-color:var(--card);color:var(--ink);font-size:11px}.agent-session-bar button{border:1px solid var(--line);padding:7px 9px;background:transparent;color:var(--ink-2);cursor:pointer;font-size:10px}.agent-context-strip{flex:0 0 auto;display:flex;gap:5px;padding:0 13px 9px;overflow-x:auto}.agent-context-strip span{flex:0 0 auto;border:1px solid var(--line);padding:2px 5px;background:var(--card);color:var(--ada-ink-weak);font:8px IBM Plex Mono,monospace}.agent-workspace-scroll{flex:1;min-height:0;overflow-y:auto;padding:10px 17px 20px}.agent-section-label{display:flex;align-items:center;gap:8px;margin:7px 0 9px;color:var(--ada-ink-weak);font:8px IBM Plex Mono,monospace;letter-spacing:.1em}.agent-section-label:after{content:"";flex:1;height:1px;background:var(--line)}.agent-current-task{position:relative;margin:0 0 14px;border-left:2px solid var(--ada-accent);padding:2px 0 2px 13px;cursor:pointer}.agent-current-task h3{margin:0;font-family:"Noto Serif SC",Songti SC,serif;font-size:17px;font-weight:600;line-height:1.4;padding-right:14px}.agent-current-task h3:after{content:"›";position:absolute;right:0;top:2px;color:var(--ada-ink-weak);transition:transform .15s ease}.agent-current-task.is-collapsed h3:after{transform:rotate(90deg)}.agent-current-task p{margin:7px 0 0;color:var(--ink-2);font-size:11px;line-height:1.7}.agent-task-progress{display:flex;gap:4px;margin-top:13px}.agent-task-progress i{width:28px;height:3px;background:var(--line)}.agent-task-progress i.is-done{background:var(--ada-brand)}.agent-task-progress i.is-active{background:var(--ada-accent)}.agent-message-list{min-height:0;overflow:visible;padding:0}.agent-empty-state{margin-bottom:14px;border:1px solid var(--line);padding:18px 15px;background:color-mix(in srgb,var(--card) 60%,transparent);color:var(--ada-ink-weak);text-align:left;font-size:11px;line-height:1.75}.agent-message{margin:0 0 12px;animation:agent-msg-in .3s cubic-bezier(.22,1,.36,1) both}@keyframes agent-msg-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.agent-message.is-user{margin-left:18px}.agent-msg-avatar{display:none}.agent-msg-meta{display:flex;align-items:baseline;gap:8px;margin-bottom:2px}.agent-msg-meta span{color:var(--ada-ink-weak);font:8px IBM Plex Mono,monospace;letter-spacing:.06em}.agent-msg-meta time{margin-left:auto;color:var(--ada-ink-weak);font:9px IBM Plex Mono,monospace;opacity:.7}.agent-msg-body{color:var(--ink);white-space:pre-wrap;font-size:12px;line-height:1.66;border-left:2px solid var(--ada-brand);padding:1px 0 1px 9px}.agent-message.is-user .agent-msg-body{border-left-color:var(--line-strong);color:var(--ink-2)}.agent-message.is-streaming .agent-msg-body{border-left-color:var(--ada-accent)}.agent-composer-foot{display:flex;align-items:center;justify-content:space-between;margin-top:7px}.agent-mute{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--ada-ink-weak);font:12px/1 IBM Plex Mono,monospace;padding:5px 7px;margin:0 -3px;cursor:pointer;transition:color .12s ease}.agent-mute:hover{color:var(--ink)}.agent-mute.off{text-decoration:line-through;opacity:.55}.agent-effort{display:inline-flex;flex:none;align-items:baseline;gap:1px}.agent-effort>button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-bottom:1px solid transparent;background:transparent;color:var(--ada-ink-weak);font:10px/1.3 IBM Plex Mono,monospace;padding:4px 6px;cursor:pointer;white-space:nowrap;transition:color .12s ease,border-color .12s ease}.agent-effort>button:hover{color:var(--ink)}.agent-effort>button.on{color:var(--ink);border-bottom-color:var(--ada-brand, currentColor)}.agent-reasoning{margin:6px 4px 10px;border-left:2px solid var(--ada-line, rgba(0, 0, 0, .12));padding-left:10px;color:var(--ada-ink-weak);font-size:11px;line-height:1.7}.agent-reasoning>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:7px;-webkit-user-select:none;user-select:none}.agent-reasoning>summary::-webkit-details-marker{display:none}.agent-reasoning>summary:before{content:"▸";font-size:9px;transition:transform .15s}.agent-reasoning[open]>summary:before{transform:rotate(90deg)}.agent-reasoning>summary .n{opacity:.6;font-variant-numeric:tabular-nums}.agent-reasoning-body{padding-top:6px;max-height:150px;overflow-y:auto;overscroll-behavior:contain;white-space:pre-wrap;word-break:break-word}.agent-reasoning-body::-webkit-scrollbar{width:4px}.agent-reasoning-body::-webkit-scrollbar-thumb{background:var(--ada-line, rgba(0, 0, 0, .18))}.agent-reasoning-body::-webkit-scrollbar-track{background:transparent}.agent-reasoning-body p{margin:0 0 8px}.agent-reasoning-body p:last-child{margin-bottom:0}.agent-thinking{display:flex;align-items:center;gap:9px;padding:10px 4px 4px;color:var(--ada-ink-weak);font-size:11px}.agent-thinking-dots{display:inline-flex;gap:4px}.agent-thinking-dots i{width:6px;height:6px;border-radius:50%;background:var(--ada-accent);display:inline-block;animation:agent-blink 1.2s infinite ease-in-out}.agent-thinking-dots i:nth-child(2){animation-delay:.2s}.agent-thinking-dots i:nth-child(3){animation-delay:.4s}@keyframes agent-blink{0%,80%,to{opacity:.25;transform:scale(.85)}40%{opacity:1;transform:scale(1)}}.agent-option-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.agent-option{border:1px solid var(--ada-brand);background:color-mix(in srgb,var(--ada-brand) 8%,transparent);color:var(--ink);font-size:11px;padding:5px 11px;border-radius:0;cursor:pointer;transition:all .15s ease}.agent-option:hover:not(:disabled){background:var(--ada-brand);color:var(--bg)}.agent-option:disabled{opacity:.5;cursor:default}.agent-continue{display:block;margin-top:10px;border:1px solid var(--ink);padding:6px 10px;background:var(--ink);color:var(--bg);cursor:pointer;font-size:10px}.agent-confirmation-stack{margin-bottom:18px}.agent-tool-card{margin:0 0 12px;border:1px solid var(--line);border-left:2px solid var(--ink-3);padding:12px;background:var(--card)}.agent-tool-card.risk-dangerous{border-color:var(--ada-danger-line);border-left-color:var(--ada-danger-edge);background:var(--ada-danger-bg)}.agent-tool-card.risk-structural{border-left-color:var(--ada-structural-line)}.agent-confirmation-card{border-color:var(--ada-confirm-line);border-left-width:1px;background:var(--ada-confirm-bg)}.agent-tool-title{display:flex;align-items:center;gap:6px}.agent-tool-title strong{min-width:0;flex:1;font-family:"Noto Serif SC",Songti SC,serif;font-size:14px;font-weight:600}.agent-tool-title span{padding:2px 5px;background:var(--ada-chip-bg);color:var(--ada-ink-weak);font:8px IBM Plex Mono,monospace}.agent-tool-title .is-billable{background:var(--ada-billable-bg);color:var(--ada-billable-ink)}.agent-tool-card>details{margin-top:9px;color:var(--ada-ink-weak);font-size:9px}.agent-tool-card pre{max-height:180px;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:9px}.agent-approval-actions{display:grid;grid-template-columns:1fr 1.2fr;gap:7px;margin-top:11px;padding-top:10px;border-top:1px solid var(--ada-approve-line)}.agent-approval-actions p{grid-column:1 / -1;margin:0 0 2px;color:var(--ada-approve-ink);font-size:10px;line-height:1.6}.agent-approval-actions button,.agent-review-card button{margin:0;border:1px solid var(--line-strong);padding:8px 7px;background:var(--card);cursor:pointer;font-size:10px}.agent-approval-actions button.primary{border-color:var(--ink);background:var(--ink);color:var(--bg)}.agent-approval-actions button:disabled{opacity:.45;cursor:default}.agent-tool-activity{margin:17px 0 0;border-top:1px solid var(--line);border-right:0;border-bottom:0;border-left:0;background:transparent}.agent-tool-activity>summary{display:flex;align-items:center;gap:8px;padding:10px 1px;list-style:none;cursor:pointer}.agent-tool-activity>summary::-webkit-details-marker{display:none}.agent-tool-activity>summary:before{content:"›";color:var(--ada-ink-weak);transition:transform .15s ease}.agent-tool-activity[open]>summary:before{transform:rotate(90deg)}.agent-tool-activity>summary strong{font-size:10px;font-weight:500}.agent-tool-activity>summary span{margin-left:auto;color:var(--ada-ink-weak);font-size:9px}.agent-tool-activity-list{border-top:1px solid var(--line);padding:3px 0 0}.agent-tool-row{padding:8px 1px;border-bottom:1px solid var(--line)}.agent-tool-row>div{display:flex;align-items:center;gap:8px}.agent-tool-row>div strong{min-width:0;flex:1;font-size:10px;font-weight:500}.agent-tool-row>div span{color:var(--ada-ink-weak);font-size:8px}.agent-tool-row.status-failed>div span{color:var(--ada-danger-strong)}.agent-tool-row details{margin:5px 0 0;color:var(--ada-ink-weak);font-size:9px}.agent-tool-row pre{max-height:160px;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:9px}.agent-tool-badge{flex:0 0 16px;width:16px;height:16px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-style:normal;color:var(--bg)}.agent-tool-row.status-succeeded .agent-tool-badge{background:var(--ada-ok)}.agent-tool-row.status-failed .agent-tool-badge{background:var(--ada-danger-strong)}.agent-tool-row.status-running .agent-tool-badge,.agent-tool-row.status-pending .agent-tool-badge{background:var(--ada-accent)}.agent-tool-row.status-needs_review .agent-tool-badge{background:var(--ada-review-line)}.agent-review-card{margin:14px 0 0;border:1px solid var(--ada-review-line);padding:12px;background:var(--ada-review-bg)}.agent-review-card strong{color:var(--ada-review-ink);font-size:12px}.agent-review-card p{color:var(--ada-review-ink2);font-size:11px;line-height:1.55}.agent-error{margin:14px 0 0;padding:10px;background:var(--ada-error-bg);color:var(--ada-danger-strong);font-size:11px}.agent-composer{flex:0 0 auto;padding:11px 12px 10px;border-top:1px solid var(--line);background:var(--card)}.agent-composer-row{display:flex;align-items:stretch;gap:7px}.agent-composer textarea{min-width:0;flex:1;width:auto;resize:none;border:1px solid var(--line);padding:9px 10px;background:var(--ada-surface);color:var(--ink);font-size:11px;line-height:1.5}.agent-composer-row>button{width:38px;border:0;padding:0;background:var(--ink);color:var(--bg);cursor:pointer;font-size:17px}.agent-composer-row>button:disabled{opacity:.35;cursor:default}.agent-stop{width:100%;margin:0 0 8px;border:1px solid var(--ada-danger-line);padding:6px;background:var(--ada-danger-bg);color:var(--ada-danger-ink);cursor:pointer;font-size:10px}.agent-project-picker{flex:1;overflow-y:auto;padding:22px 16px}.agent-project-picker p{color:var(--ada-ink-weak);font-size:12px;line-height:1.7}.agent-project-picker a{display:flex;justify-content:space-between;padding:11px 4px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:13px}.agent-drawer-launcher{--ada-state: var(--ada-brand);position:fixed;right:18px;bottom:18px;z-index:75;width:126px;height:136px;overflow:visible;border:0;border-radius:0;padding:0;background:transparent;color:var(--ink);cursor:pointer;box-shadow:none;transition:transform .16s ease}.agent-drawer-launcher:hover{transform:translateY(-3px)}.agent-drawer-launcher[data-state=thinking],.agent-drawer-launcher[data-state=viewing],.agent-drawer-launcher[data-state=working],.agent-drawer-launcher[data-state=generating]{--ada-state: var(--ada-accent)}.agent-drawer-launcher[data-state=awaiting]{--ada-state: #a6691e}.agent-drawer-launcher[data-state=failed]{--ada-state: var(--ada-danger-edge)}.agent-drawer-launcher img{position:absolute;left:4px;bottom:0;width:118px;height:118px;display:block;object-fit:cover;object-position:50% 40%;background:var(--ada-launcher-figure-bg);mix-blend-mode:var(--ada-figure-blend)}.agent-drawer-launcher>i{position:absolute;top:18px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--ada-state);box-shadow:0 0 0 4px var(--bg)}.agent-drawer-launcher>span{position:absolute;left:50%;bottom:0;max-width:124px;border:1px solid var(--ink);padding:5px 9px;background:var(--bg);color:var(--ink);white-space:nowrap;transform:translate(-50%);font:9px IBM Plex Mono,monospace}.agent-dock-bubble{position:fixed;right:142px;bottom:53px;z-index:74;width:252px;border:1px solid var(--line-strong);padding:13px 14px;background:var(--panel);box-shadow:0 12px 32px var(--ada-shadow)}.agent-dock-bubble:after{content:"";position:absolute;right:-7px;bottom:22px;width:12px;height:12px;border-top:1px solid var(--line-strong);border-right:1px solid var(--line-strong);background:var(--panel);transform:rotate(45deg)}.agent-dock-bubble p{margin:0;font-size:11px;line-height:1.65;color:var(--ink)}.agent-dock-bubble button{margin-top:9px;border:0;padding:6px 10px;background:var(--ink);color:var(--bg);cursor:pointer;font-size:9px}.agent-dock-bubble--greeting{animation:agent-greeting-in .45s cubic-bezier(.22,1,.36,1) both;width:276px;padding-top:12px;display:flex;gap:10px;align-items:flex-start}.agent-dock-bubble--greeting:after{display:none}.agent-dock-bubble--greeting p{flex:1}.agent-dock-bubble--greeting small{display:inline-block;margin-top:4px;color:var(--ada-ink-weak)}.agent-dock-bubble-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;flex:none;box-shadow:0 0 0 1px var(--line-strong)}@keyframes agent-greeting-in{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.agent-drawer button:focus-visible,.agent-drawer select:focus-visible,.agent-drawer textarea:focus-visible,.agent-drawer-launcher:focus-visible,.agent-dock-bubble button:focus-visible{outline:2px solid var(--sb-accent);outline-offset:2px}@media(max-width:1099px){.agent-app-shell.is-agent-open,.agent-app-shell.is-agent-open .agent-app-main{height:calc(100vh - var(--sb-header-h));overflow:hidden}.agent-drawer{position:fixed;top:var(--sb-header-h);right:0;left:auto;height:calc(100vh - var(--sb-header-h));width:var(--ada-drawer-width);min-width:0;transform:translate(100%);border-left:1px solid var(--line);box-shadow:-18px 0 40px var(--ada-shadow-strong);transition:transform .34s cubic-bezier(.22,1,.36,1),box-shadow .34s ease}.agent-drawer.is-open{width:var(--ada-drawer-width);min-width:0;transform:translate(0)}}@media(max-width:760px){.agent-drawer{top:0;height:100dvh;z-index:96}}@media(max-width:720px){.agent-app-shell{--ada-drawer-width: 100vw}.agent-drawer,.agent-drawer.is-open{width:100vw}.agent-drawer-launcher{right:6px;bottom:11px}.agent-dock-bubble{left:14px;right:124px;bottom:45px;width:auto}}@media(prefers-reduced-motion:reduce){.agent-drawer,.agent-drawer-launcher{transition:none}}.agent-md{font-size:13px;line-height:1.55;color:var(--ink);word-break:break-word}.agent-md>*:first-child{margin-top:0}.agent-md>*:last-child{margin-bottom:0}.agent-md p{margin:0 0 4px}.agent-md p+p{margin-top:2px}.agent-md h4,.agent-md h5{font-size:13px;font-weight:600;margin:8px 0 3px;color:var(--ink)}.agent-md ul,.agent-md ol{margin:0 0 6px;padding-left:18px}.agent-md li{margin:1px 0}.agent-md strong{font-weight:600}.agent-md em{font-style:italic}.agent-md code{font-family:IBM Plex Mono,monospace;font-size:12px;background:var(--activeBg);padding:1px 4px;border-radius:0}.agent-md pre{background:var(--activeBg);padding:8px 10px;border-radius:0;overflow-x:auto;margin:0 0 8px}.agent-md pre code{background:none;padding:0}.agent-md a{color:var(--accent);text-decoration:none}.agent-md a:hover{text-decoration:underline}.agent-md blockquote{border-left:2px solid var(--line);padding-left:10px;margin:0 0 8px;color:var(--ink-2)}.agent-md hr{border:0;border-top:1px solid var(--line);margin:8px 0}.agent-md table{border-collapse:collapse;margin:0 0 10px;width:100%;font-size:11px}.agent-md th,.agent-md td{border:1px solid var(--line);padding:4px 8px;text-align:left}.agent-md th{background:color-mix(in srgb,var(--ada-brand) 8%,transparent);font-weight:600;white-space:nowrap}.agent-md td{vertical-align:top}.agent-md table code{font-size:10px}@keyframes agent-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.agent-current-task{transition:padding .25s ease,margin .25s ease}.agent-current-task h3{transition:font-size .25s ease}.agent-task-progress i{transition:background-color .25s ease,width .25s ease}.agent-message-list{scroll-behavior:smooth}.agent-tool-badge{transition:background-color .2s ease,transform .2s ease}.agent-option{transition:all .2s cubic-bezier(.22,1,.36,1)}.agent-option:hover:not(:disabled){transform:translateY(-1px)}.agent-thinking{animation:agent-fade-in .3s ease both}.agent-app-root{min-height:100vh;width:100%;display:flex;flex-direction:column;background:var(--bg)}.global-header{position:sticky;top:0;z-index:95;height:var(--sb-header-h);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 20px;background:var(--panel);border-bottom:1px solid var(--line);flex:none}.global-header-left{display:flex;align-items:center;gap:10px;min-width:0}.global-header-brand-link{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;padding:6px;margin:-6px}.global-header-brand-link:hover .global-header-brand{color:var(--sb-accent)}.global-header-dot{width:11px;height:11px;background:var(--sb-accent);flex:none}.global-header-brand{font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:500;letter-spacing:3px;color:var(--sb-ink)}.global-header-crumb-sep{color:var(--sb-ink3);font-size:13px}.global-header-crumb{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.global-header-crumb-link{color:var(--sb-ink2);text-decoration:none}.global-header-crumb-link:hover{color:var(--sb-ink)}.global-header-crumb-now{color:var(--sb-ink);font-weight:600}.global-header-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.gh-script-root{position:relative;display:inline-flex;align-items:center;gap:10px;margin-left:10px}.gh-script-anchor{position:relative;display:inline-flex}.gh-script-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--sb-line);border-radius:0;background:var(--sb-card);padding:5px 11px;font:inherit;font-size:13px;font-weight:600;white-space:nowrap;color:var(--sb-ink);cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:border-color .15s,background .15s}.gh-script-trigger:hover{border-color:var(--sb-ink3);background:var(--hover)}.gh-script-trigger.is-open{border-color:var(--sb-ink)}.gh-script-caret{font-style:normal;font-size:9.5px;color:var(--sb-ink2);transition:transform .15s}.gh-script-trigger.is-open .gh-script-caret{transform:rotate(180deg)}.gh-script-menu{position:absolute;left:0;top:calc(100% + 10px);z-index:96;min-width:280px;display:flex;flex-direction:column;gap:1px;padding:8px;background:var(--sb-card);border:1px solid var(--sb-line);box-shadow:0 14px 34px #0000002e}.gh-script-head{display:flex;align-items:center;gap:6px;padding:3px 4px 0 10px}.gh-script-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;font-size:13.5px;color:var(--sb-ink)}.gh-script-edit{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;padding:2px 6px;font-size:12px;color:var(--sb-ink3);cursor:pointer}.gh-script-edit:hover{color:var(--sb-ink)}.gh-script-meta{padding:1px 10px 8px;font:10px IBM Plex Mono,monospace;letter-spacing:.06em;color:var(--sb-ink3)}.gh-script-primary{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--sb-ink);border-radius:0;background:var(--sb-ink);color:var(--sb-card);font:inherit;font-size:12.5px;font-weight:600;letter-spacing:.04em;padding:8px 0;margin:0 2px 2px;cursor:pointer;transition:opacity .15s}.gh-script-primary:hover:not(:disabled){opacity:.85}.gh-script-primary:disabled{opacity:.45;cursor:default}.gh-script-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;text-align:left;border:0;background:none;padding:7px 10px;font:inherit;font-size:12.5px;color:var(--sb-ink2);cursor:pointer}.gh-script-item:hover:not(:disabled){background:var(--hover);color:var(--sb-ink)}.gh-script-item:disabled{opacity:.45;cursor:default}.gh-script-item.is-danger{color:var(--sb-accent)}.gh-script-item.is-danger:hover:not(:disabled){background:color-mix(in srgb,var(--sb-accent) 8%,transparent);color:var(--sb-accent)}.gh-script-rename{width:100%;border:1px solid var(--sb-line);border-radius:0;background:var(--bg);color:var(--ink);font:inherit;font-size:13px;font-weight:600;padding:6px 9px;outline:none}.gh-script-rename:focus{border-color:var(--sb-ink3)}.gh-script-label{padding:9px 10px 3px;margin-top:5px;border-top:1px solid var(--sb-line-soft);font:9px IBM Plex Mono,monospace;letter-spacing:.12em;color:var(--sb-ink3)}.gh-script-ar-row{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:2px 10px 6px}.gh-script-ar{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--sb-line);border-radius:0;background:none;padding:3px 0;text-align:center;font:10.5px IBM Plex Mono,monospace;color:var(--sb-ink2);cursor:pointer}.gh-script-ar:hover{border-color:var(--sb-ink3);color:var(--sb-ink)}.gh-script-ar.is-on{background:var(--sb-ink);border-color:var(--sb-ink);color:var(--sb-card)}.gh-script-seg{display:flex;padding:0 10px 7px}.gh-script-seg button{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;border:1px solid var(--sb-line);border-radius:0;background:none;padding:5px 0;font:inherit;font-size:12px;color:var(--sb-ink2);cursor:pointer}.gh-script-seg button+button{border-left:0}.gh-script-seg button:hover:not(:disabled){color:var(--sb-ink)}.gh-script-seg button.is-on{background:var(--sb-ink);border-color:var(--sb-ink);color:var(--sb-card)}.gh-script-seg.is-disabled button{opacity:.45;cursor:default}.pptx-export-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;align-items:center;justify-content:center;background:#1a1a1852}.pptx-export{display:flex;flex-direction:column;width:460px;max-width:calc(100vw - 48px);background:var(--sb-card);border:1px solid var(--sb-line);box-shadow:0 18px 50px #00000038;padding:16px 18px 14px}.pptx-export-head{display:flex;align-items:center;gap:12px}.pptx-export-cover{width:96px;aspect-ratio:16 / 9;object-fit:cover;border:1px solid var(--sb-line);background:var(--sb-canvas);flex:none}span.pptx-export-cover.is-empty{display:flex;align-items:center;justify-content:center;font:10px IBM Plex Mono,monospace;color:var(--sb-ink3)}.pptx-export-titlebox{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.pptx-export-titlebox b{font-size:15px;color:var(--sb-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pptx-export-meta{font:10.5px IBM Plex Mono,monospace;color:var(--sb-ink3)}.pptx-export-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;align-self:flex-start;font-size:18px;line-height:1;padding:2px 4px;color:var(--sb-ink3);cursor:pointer}.pptx-export-close:hover:not(:disabled){color:var(--sb-ink)}.pptx-export-label{margin-top:14px;font:9px IBM Plex Mono,monospace;letter-spacing:.12em;color:var(--sb-ink3)}.pptx-export-seg{display:flex;margin-top:5px}.pptx-export-seg button{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;border:1px solid var(--sb-line);border-radius:0;background:none;padding:6px 0;font:inherit;font-size:12.5px;color:var(--sb-ink2);cursor:pointer}.pptx-export-seg button+button{border-left:0}.pptx-export-seg button:hover:not(:disabled){color:var(--sb-ink)}.pptx-export-seg button.is-on{background:var(--sb-ink);border-color:var(--sb-ink);color:var(--sb-card)}.pptx-export-seg button:disabled{opacity:.45;cursor:default}.pptx-export-checks{display:flex;gap:16px;margin-top:7px}.pptx-export-checks label{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--sb-ink2);cursor:pointer}.pptx-export-checks label.is-fixed{color:var(--sb-ink3);cursor:default}.pptx-export-checks input{accent-color:var(--sb-ink);margin:0}.pptx-export-name{display:flex;align-items:baseline;margin-top:5px}.pptx-export-name input{flex:1;min-width:0;border:1px solid var(--sb-line);border-radius:0;background:var(--bg);color:var(--ink);font:inherit;font-size:12.5px;padding:6px 9px;outline:none}.pptx-export-name input:focus{border-color:var(--sb-ink3)}.pptx-export-name i{font-style:normal;font:10.5px IBM Plex Mono,monospace;color:var(--sb-ink3);margin-left:7px}.pptx-export-foot{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.pptx-export-ghost{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--sb-line);border-radius:0;background:none;color:var(--sb-ink2);font:inherit;font-size:12.5px;padding:7px 16px;cursor:pointer}.pptx-export-ghost:hover:not(:disabled){color:var(--sb-ink);border-color:var(--sb-ink3)}.pptx-export-primary{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--sb-ink);border-radius:0;background:var(--sb-ink);color:var(--sb-card);font:inherit;font-size:12.5px;font-weight:600;padding:7px 18px;cursor:pointer;transition:opacity .15s}.pptx-export-primary:hover:not(:disabled){opacity:.85}.pptx-export-primary:disabled{opacity:.45;cursor:default}.pj-pencil{font-style:normal;font-size:11px;margin-left:4px;opacity:0;transition:opacity .15s;pointer-events:none}.pj-peditable:hover .pj-pencil{opacity:.85}@media(max-width:768px){.global-header{padding:0 10px;gap:8px}.global-header-right{flex-wrap:nowrap;gap:6px}.header-chip--desk{display:none!important}.header-chip{max-width:96px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(max-width:768px){.agent-drawer-launcher{width:56px;height:56px;right:10px;bottom:10px;border-radius:50%;overflow:hidden}.agent-drawer-launcher img,.agent-drawer-launcher canvas,.agent-drawer-launcher video{width:100%;height:100%;object-fit:cover}.agent-drawer-launcher>span{display:none}.agent-dock-bubble{left:10px;right:76px;bottom:14px;width:auto;max-height:64px;overflow:hidden;font-size:12px}}@media(max-width:768px){.global-header-left{flex:1 1 auto;min-width:0;overflow:hidden}.global-header-brand,.global-header-crumb,.global-header-crumb-sep{display:none}.gh-script-root{flex:1 1 auto;min-width:0;overflow:hidden}.gh-script-anchor{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.agent-dock-bubble-close{position:absolute;top:4px;right:4px;width:22px;height:22px;padding:0;border:0;background:transparent;color:var(--ink-3);font-size:15px;line-height:1;cursor:pointer;opacity:.6}.agent-dock-bubble-close:hover{opacity:1;color:var(--ink)}.admin-grid-2{display:grid;grid-template-columns:1fr 1fr}.admin-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr}.admin-grid-2>*,.admin-grid-3>*{min-width:0}@media(max-width:768px){.admin-grid-2,.admin-grid-3{grid-template-columns:1fr}}.admin-shell-body{width:100%;padding:32px 40px 64px;box-sizing:border-box}.admin-panel-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:16px;margin-bottom:24px}.admin-panel-head>h2,.admin-panel-head>span{flex:0 0 auto;white-space:nowrap}@media(max-width:768px){.admin-shell-body{padding:20px 14px 48px}.admin-panel-head{gap:8px 12px}.admin-panel-head>span{flex:1 1 100%;white-space:normal}}.admin-profile-row{display:flex;align-items:center;gap:14px}.admin-profile-row>div{flex:1 1 auto;min-width:0}@media(max-width:768px){.admin-profile-row{flex-wrap:wrap;gap:8px 10px}.admin-profile-row>div{flex:1 1 calc(100% - 24px)}.admin-profile-row>button{flex:0 0 auto}}.admin-topbar{display:flex;align-items:center;gap:24px;padding:0 40px}.admin-topnav{display:flex;gap:0;flex-wrap:wrap}@media(max-width:768px){.admin-topbar{gap:10px;padding:0 12px}.admin-topnav{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.admin-topnav::-webkit-scrollbar{display:none}.admin-topnav button{flex:0 0 auto;white-space:nowrap;padding:10px 12px}.admin-topbar-user{display:none}.admin-topbar>a,.admin-topbar button{white-space:nowrap}}.admin-table-scroll{overflow-x:auto}@media(max-width:768px){.admin-table-scroll>table{min-width:820px}}.agent-tool-activity.is-empty{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:5px 0 7px;font-size:11px;color:var(--ink-3);font-family:IBM Plex Mono,Menlo,monospace;letter-spacing:.02em}.agent-tool-activity.is-empty button{border:1px solid var(--line);background:transparent;color:var(--ink-2);font-family:inherit;font-size:11px;padding:3px 8px;cursor:pointer}.agent-tool-activity.is-empty button:hover{border-color:var(--ink);color:var(--ink)}.agent-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:32px;background:#141412eb;cursor:zoom-out}.agent-lightbox img{max-width:92%;max-height:80%;display:block;cursor:default;box-shadow:0 8px 40px #00000080}.agent-lightbox-bar{display:flex;align-items:center;gap:14px;cursor:default;font-size:12px;color:#e8e6e0;font-family:IBM Plex Mono,Menlo,monospace}.agent-lightbox-bar button,.agent-lightbox-bar a{border:1px solid rgba(232,230,224,.35);background:transparent;color:#e8e6e0;font-family:inherit;font-size:12px;padding:4px 10px;cursor:pointer;text-decoration:none}.agent-lightbox-bar button:hover,.agent-lightbox-bar a:hover{border-color:#e8e6e0}.agent-generated-images{margin:2px 0 10px}.agent-generated-label{display:block;margin-bottom:4px;font-size:11px;letter-spacing:.06em;color:var(--ink-3);font-family:IBM Plex Mono,Menlo,monospace}.agent-generated-group+.agent-generated-group{margin-top:6px}.agent-generated-target{display:block;margin-bottom:3px;font-size:11px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-generated-strip{display:flex;flex-wrap:wrap;gap:6px}.agent-generated-strip img{display:block;width:108px;height:61px;object-fit:cover;border:1px solid var(--line);background:var(--canvas)}.agent-generated-strip a:hover img{border-color:var(--ink)}.trash-group-head{display:flex;align-items:center;gap:10px}.trash-group-caret{width:10px;flex-shrink:0;font-size:11px}.trash-group-name{flex:1 1 0;min-width:0;margin:0;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-group-meta{display:flex;align-items:center;gap:10px;flex-shrink:0;font-size:11px}@media(max-width:768px){.trash-group-head{flex-wrap:wrap;row-gap:4px}.trash-group-meta{flex:1 1 100%;padding-left:33px}}.trash-row{display:flex;align-items:center;gap:10px;padding:8px 14px}.trash-row-type{flex-shrink:0;font-size:11px;padding:2px 6px}.trash-row-name{flex:1 1 0;min-width:0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-row-meta{display:flex;align-items:center;gap:10px;flex-shrink:0}.trash-row-time{font-size:11px;white-space:nowrap}@media(max-width:768px){.trash-row{display:grid;grid-template-columns:auto auto 1fr;align-items:center;column-gap:10px;row-gap:2px}.trash-row-meta{grid-column:3;justify-content:flex-start}}.trash-type-chips{display:flex;gap:6px;flex-wrap:wrap}@media(max-width:768px){.trash-type-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.trash-type-chips::-webkit-scrollbar{display:none}}:root{--gen-floor-bg: #ffffff;--gen-floor-fog0: rgba(255, 255, 255, 0);--gen-floor-fog1: rgba(255, 255, 255, 1);--gen-floor-chev: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='84'%3E%3Crect width='84' height='84' fill='%23ffffff'/%3E%3Cpath d='M0,42 L21,0 L42,42 L63,0 L84,42 L84,84 L63,42 L42,84 L21,42 L0,84 Z' fill='%231a1a18'/%3E%3C/svg%3E")}:root[data-theme=dark]{--gen-floor-bg: #232120;--gen-floor-fog0: rgba(35, 33, 32, 0);--gen-floor-fog1: rgba(35, 33, 32, 1);--gen-floor-chev: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='84'%3E%3Crect width='84' height='84' fill='%23232120'/%3E%3Cpath d='M0,42 L21,0 L42,42 L63,0 L84,42 L84,84 L63,42 L42,84 L21,42 L0,84 Z' fill='%23ddd8ce'/%3E%3C/svg%3E")}.gen-floor{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:var(--gen-floor-bg);z-index:10;container-type:size}.gen-floor__plane{position:absolute;left:50%;bottom:0;width:900%;margin-left:-450%;height:1200%;transform-origin:50% 100%;transform:perspective(183cqh) rotateX(56deg);background-image:var(--gen-floor-chev);background-size:84px 84px;-webkit-mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,.9) 44%,rgba(0,0,0,.4) 74%,transparent 92%);mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,.9) 44%,rgba(0,0,0,.4) 74%,transparent 92%);animation:gen-floor-flow 7s linear infinite}.gen-floor:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(to top,var(--gen-floor-fog0) 40%,var(--gen-floor-fog1) 73%)}@keyframes gen-floor-flow{to{background-position:0 84px}}.gen-floor--sm .gen-floor__plane{background-size:44px 44px;animation-name:gen-floor-flow-sm}.gen-floor--sm:after{background:linear-gradient(to top,var(--gen-floor-fog0) 48%,var(--gen-floor-fog1) 80%)}@keyframes gen-floor-flow-sm{to{background-position:0 44px}}.gen-floor__label{position:absolute;left:0;right:0;top:6%;z-index:2;text-align:center;padding:0 10px;pointer-events:none}.gen-floor__label .t1{display:block;font-family:var(--font-mono, ui-monospace, monospace);font-size:11px;font-weight:600;letter-spacing:2px;color:var(--ink);opacity:.9}.gen-floor__label .t2{display:block;margin-top:4px;font-size:9px;letter-spacing:.5px;color:var(--ink-3)}.gen-floor--sm .gen-floor__label{top:7%}.gen-floor--sm .gen-floor__label .t2{display:none}.gen-floor--sm .gen-floor__label .t1{font-size:9px;letter-spacing:.6px}.gen-floor--sm .gen-floor__label .t2{font-size:8px;margin-top:2px}@media(prefers-reduced-motion:reduce){.gen-floor__plane{animation:none}}.ppm-page,.ppm-dialog,.ppm-info-panel,.ppm-dock{--bg: #f7f6f2;--side-bg: #efece2;--stage-bg: #f1eee6;--loupe-bg: #e9e6dd;--panel-bg: rgba(251, 250, 246, .94);--surface: #fbfaf6;--surface2: #ffffff;--surface3: #e5e2d9;--line: rgba(31, 30, 26, .1);--line2: rgba(31, 30, 26, .18);--ink: #1f1e1a;--ink-dim: #6e6a60;--ink-faint: #8a857a;--pencil: #e8913a;--pencil-soft: rgba(232, 145, 58, .18);--glass: rgba(255, 255, 255, .72);--glass-btn: rgba(255, 255, 255, .65);--glass-line: rgba(31, 30, 26, .14);--stage-fade: rgba(241, 238, 230, .94);--chip-bg: rgba(31, 30, 26, .06);--chip-ink: #1f1e1a;--hover-fill: rgba(31, 30, 26, .05);--hover-shadow: rgba(31, 30, 26, .18);--scroll-thumb: #cfc9bd;--ppm-tile-ar: 16 / 9.4;--ppm-vtile-ar: 16 / 9;--vtile-min-sm: 240px;--vtile-min-md: 360px;--vtile-min-lg: 520px;--btile-min-sm: 210px;--btile-min-md: 320px;--btile-min-lg: 460px}:root[data-theme=dark] .ppm-page,:root[data-theme=dark] .ppm-dialog,:root[data-theme=dark] .ppm-info-panel,:root[data-theme=dark] .ppm-dock{--bg: #141210;--side-bg: #100e0d;--stage-bg: #0d0b0a;--loupe-bg: #0a0908;--panel-bg: rgba(20, 17, 15, .92);--surface: #1d1a17;--surface2: #262220;--surface3: #322c27;--line: rgba(255, 255, 255, .07);--line2: rgba(255, 255, 255, .13);--ink: #ece7de;--ink-dim: #9c948a;--ink-faint: #6b645c;--pencil: #e8913a;--pencil-soft: rgba(232, 145, 58, .16);--glass: rgba(16, 14, 12, .62);--glass-btn: rgba(16, 14, 12, .55);--glass-line: rgba(255, 255, 255, .14);--stage-fade: rgba(13, 11, 10, .92);--chip-bg: rgba(255, 255, 255, .07);--chip-ink: #ffffff;--hover-fill: rgba(255, 255, 255, .03);--hover-shadow: rgba(0, 0, 0, .5);--scroll-thumb: #37322d}.ppm-page{height:calc(100dvh - var(--sb-header-h));display:flex;color:var(--ink);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}.ppm-page .serif{font-family:Georgia,Songti SC,STSong,serif}.ppm-page{--studio-rail-w: 236px}.ppm-side{width:236px;flex:none;background:var(--side-bg);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:12px 0 16px;overflow-y:auto}.ppm-proj{position:relative;margin:0 8px 10px;padding:9px 11px;border:1px solid transparent;background:none;display:flex;align-items:center;gap:8px;width:calc(100% - 16px);cursor:pointer;font-family:inherit;text-align:left;transition:.16s}.ppm-proj:hover{border-color:var(--line2);background:var(--hover-fill)}.ppm-proj b{font-family:"Noto Serif SC",serif;font-size:15px;font-weight:700;letter-spacing:.04em;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ppm-proj .ar{font-size:10.5px;color:var(--ink-faint);font-family:IBM Plex Mono,monospace}.ppm-proj .caret{margin-left:auto;font-size:9px;color:var(--ink-faint);flex:none}.ppm-proj-menu{position:absolute;left:8px;right:8px;top:100%;z-index:12;background:var(--surface2);border:1px solid var(--line2);box-shadow:0 14px 34px #0000002e;padding:4px}.ppm-proj-menu button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;text-align:left;border:0;background:none;padding:8px 10px;font-size:12.5px;color:var(--ink-dim);cursor:pointer;font-family:inherit}.ppm-proj-menu button:hover{background:var(--hover-fill);color:var(--ink)}.ppm-proj-menu button.danger:hover{color:var(--pencil)}.ppm-proj-menu hr{border:0;border-top:1px solid var(--line);margin:4px 0}.ppm-surface{display:flex;margin:0 8px 4px;border:1px solid var(--line)}.ppm-surface button{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;border:0;border-right:1px solid var(--line);background:none;padding:8px 0;font-size:12px;color:var(--ink-faint);cursor:pointer;font-family:inherit;transition:.16s}.ppm-surface button:last-child{border-right:0}.ppm-surface button:hover:not(.on):not(:disabled){color:var(--ink);background:var(--hover-fill)}.ppm-surface button.on{background:var(--ink);color:var(--bg);font-weight:600}.ppm-surface button:disabled{color:var(--line2);cursor:default}.ppm-side-label{font-size:10.5px;color:var(--ink-faint);letter-spacing:.14em;padding:10px 14px 6px}.ppm-side-nav{padding:12px 10px;display:flex;flex-direction:column;gap:2px;overflow:auto;flex:1;min-height:0}.ppm-cat{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;cursor:pointer;text-align:left;display:block;width:calc(100% - 8px);padding:10px 12px;border-radius:0;color:var(--ink-dim);font-size:13.5px;letter-spacing:.03em;transition:.16s;border:1px solid transparent;font-family:inherit}.ppm-cat:hover{color:var(--ink);background:var(--hover-fill)}.ppm-cat.on{color:var(--ink);background:var(--surface2);border-color:var(--line2)}.ppm-cat-head{display:flex;align-items:center;gap:10px;position:relative}.ppm-cat .swatch{width:9px;height:9px;border-radius:0;background:var(--ink-faint);flex:none;transition:.16s}.ppm-cat.on .swatch{background:var(--pencil);box-shadow:0 0 0 3px var(--pencil-soft)}.ppm-cat .count{margin-left:auto;font-size:11.5px;color:var(--ink-faint);transition:.16s}.ppm-cat:hover .count,.ppm-cat:focus-within .count{opacity:0}.ppm-cat-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ppm-cat-ops{position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;gap:2px;opacity:0;pointer-events:none;transition:.16s}.ppm-cat:hover .ppm-cat-ops,.ppm-cat:focus-within .ppm-cat-ops{opacity:1;pointer-events:auto}.ppm-cat-ops>span{cursor:pointer;padding:4px 8px;font-size:12px;line-height:1.4;color:var(--ink-faint);transition:.16s}.ppm-cat-ops>span:hover{color:var(--pencil)}.ppm-cat-thumbs{display:flex;gap:6px;margin-top:9px}.ppm-cat-thumbs .ct{flex:1;aspect-ratio:16 / 10;border-radius:0;position:relative;overflow:hidden;opacity:.55;transition:.18s;border:1px solid var(--line);background:var(--surface2)}.ppm-cat-thumbs .ct img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.ppm-cat-thumbs .ct.empty{border:1px dashed var(--line2);background:none}.ppm-cat:hover .ct{opacity:.8}.ppm-cat.on .ct{opacity:1;border-color:var(--line2)}.ppm-cat.on .ct.empty{border-color:var(--ink-faint)}.ppm-cat-add{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;width:calc(100% - 8px);margin-top:6px;border:1px dashed var(--line2);background:none;color:var(--ink-faint);font-size:12.5px;padding:9px 12px;border-radius:0;text-align:left;transition:.16s;font-family:inherit}.ppm-cat-add:hover{color:var(--pencil);border-color:#e8913a80}.ppm-cat-input{width:calc(100% - 8px);margin-top:6px;background:var(--surface2);border:1px solid rgba(232,145,58,.5);border-radius:0;color:var(--ink);font:inherit;font-size:13px;padding:10px 12px;outline:none}.ppm-side-foot{margin-top:auto;padding:12px 22px 0;border-top:1px solid var(--line);font-size:11px;color:var(--ink-faint);letter-spacing:.06em}.ppm-main{flex:1;min-width:0;overflow:auto;background:var(--bg)}.ppm-wall-head{position:sticky;top:0;z-index:5;padding:22px 30px 14px;background:linear-gradient(180deg,var(--bg) 78%,transparent);display:flex;align-items:baseline;gap:16px}.ppm-wall-head h1{font-size:22px;font-weight:600;color:var(--ink);margin:0}.ppm-wall-head .hint{font-size:12px;color:var(--ink-faint)}.ppm-wall-head .spacer{flex:1}.ppm-wall{padding:6px 30px 60px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.ppm-tile{position:relative;border-radius:0;overflow:hidden;cursor:pointer;aspect-ratio:var(--ppm-tile-ar);border:1px solid var(--line);transition:.2s;background:var(--surface2);padding:0;text-align:left;font-family:inherit}.ppm-tile:hover{transform:translateY(-3px);border-color:#e8913a80;box-shadow:0 18px 50px var(--hover-shadow)}.ppm-tile img.ppm-img,.ppm-vtile img.ppm-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;background:var(--stage-bg);display:block}.ppm-ph-g1{background:linear-gradient(155deg,#3d2f22,#191512 70%)}.ppm-ph-g2{background:linear-gradient(160deg,#31402e,#171a14 65%)}.ppm-ph-g3{background:linear-gradient(150deg,#26343e,#12161a 70%)}.ppm-ph-g4{background:linear-gradient(155deg,#4a3520,#221a12 55%,#141110)}.ppm-ph-g5{background:linear-gradient(150deg,#3a2a2e,#161213 70%)}.ppm-ph-g6{background:linear-gradient(150deg,#2e2a3a,#141318 70%)}.ppm-tile:before,.ppm-vtile:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;background:radial-gradient(85% 65% at 50% 42%,transparent 52%,rgba(0,0,0,.52) 100%)}.ppm-tile .t-info{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:26px 16px 12px;background:linear-gradient(transparent,#000000b8);display:flex;align-items:baseline;gap:10px}.ppm-tile .t-name{font-size:14.5px;font-weight:600;color:#ece7de;text-shadow:0 1px 8px rgba(0,0,0,.6)}.ppm-tile .t-sub{font-size:11.5px;color:#ffffff9e}.ppm-tile .t-badge{position:absolute;top:11px;left:11px;z-index:2;font-size:11px;padding:3px 10px;border-radius:0;letter-spacing:.05em;background:#e8913aeb;color:#1a1714;font-weight:700}.ppm-tile .t-v{position:absolute;top:11px;right:11px;z-index:2;font-size:11px;color:#fffc;background:#00000073;padding:3px 9px;border-radius:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ppm-tile .t-del{position:absolute;right:8px;top:8px;z-index:4;width:26px;height:26px;display:flex;align-items:center;justify-content:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.22);background:#100e0c99;color:#fffc;font-size:13px;border-radius:0;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:.15s;font-family:inherit}.ppm-tile:hover .t-del,.ppm-tile .t-del:focus-visible{opacity:1}.ppm-tile .t-del:hover{background:#a33a2c;border-color:#a33a2c;color:#fff}.ppm-tile .t-arch{position:absolute;right:40px;top:8px;z-index:4;width:26px;height:26px;display:flex;align-items:center;justify-content:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.22);background:#100e0c99;color:#fffc;font-size:13px;border-radius:0;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:.15s;font-family:inherit}.ppm-tile:hover .t-arch,.ppm-tile .t-arch:focus-visible{opacity:1}.ppm-tile .t-arch:hover{background:#e8913aeb;border-color:#e8913aeb;color:#1a1714}.ppm-tile .bt-restore{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;justify-content:flex-end;padding:20px 8px 8px;background:linear-gradient(transparent,#000000b3)}.ppm-tile .bt-restore .v-restore{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--pencil);background:var(--pencil);color:#1a1714;font-size:12px;font-weight:600;padding:5px 12px;border-radius:0;cursor:pointer;font-family:inherit;white-space:nowrap}.ppm-tile .bt-restore .v-restore:hover{filter:brightness(1.08)}.ppm-arch-note{display:flex;align-items:center;gap:10px;margin:0 22px 10px;padding:9px 12px;border:1px solid var(--line);background:var(--surface2);font-size:12.5px;color:var(--ink-dim)}.ppm-arch-note b{color:var(--ink);font-weight:600}.ppm-arch-note .spacer{flex:1}.ppm-empty-wall{padding:120px 30px;text-align:center;color:var(--ink-faint)}.ppm-empty-wall .big{font-size:44px;margin-bottom:14px;opacity:.5}.ppm-empty-wall p{font-size:13.5px;margin:0}.ppm-float-top{position:sticky;top:0;z-index:8;display:flex;align-items:center;gap:14px;padding:16px 22px;background:linear-gradient(180deg,var(--stage-fade) 70%,transparent)}.ppm-ft-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;border:1px solid var(--glass-line);background:var(--glass-btn);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--ink);border-radius:0;font-size:13px;padding:8px 14px;transition:.16s;font-family:inherit}.ppm-ft-btn:hover{border-color:var(--ink-faint)}a.ppm-ft-btn{text-decoration:none}.ppm-ft-btn.amber{background:var(--pencil);border-color:var(--pencil);color:#1a1714;font-weight:700}.ppm-ft-btn:disabled{opacity:.45;cursor:default}.ppm-back-btn{display:block;width:100%}.ppm-ft-title{font-size:15px;font-weight:600}.ppm-ft-title span{color:var(--ink-faint);font-weight:400;font-size:12.5px;margin-left:9px}.ppm-ft-right{margin-left:auto;display:flex;align-items:center;gap:9px}.ppm-vgrid{padding:8px 22px 130px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(var(--tile-min, 360px),1fr))}.ppm-vtile{position:relative;border-radius:0;overflow:hidden;cursor:pointer;aspect-ratio:var(--ppm-vtile-ar);border:1px solid var(--line);transition:.16s;background:var(--surface2);padding:0}.ppm-vtile:hover{border-color:var(--line2)}.ppm-vtile .vlab{position:absolute;left:10px;top:9px;z-index:2;font-size:11px;color:#ffffffe6;background:#00000080;padding:2px 9px;border-radius:0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ppm-vtile .vtag{font-size:10.5px;padding:2px 9px;border-radius:0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ppm-vtile .vtag.cover{background:var(--pencil);color:#1a1714;font-weight:700}.ppm-vtile .vtag.new{background:#ffffff24;color:#fff}.ppm-vtile.is-cover{border:1.5px solid var(--pencil);box-shadow:0 0 0 4px var(--pencil-soft)}.ppm-vtile.select-mode{cursor:copy}.ppm-vtile .vcheck{position:absolute;left:10px;top:9px;z-index:3;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;border:1.5px solid rgba(255,255,255,.75);background:#0a090873;color:transparent;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ppm-vtile .vcheck.on{background:var(--pencil);border-color:var(--pencil);color:#1a1714}.ppm-vtile.is-picked{border:1.5px solid var(--pencil);box-shadow:0 0 0 4px var(--pencil-soft)}.ppm-vtile.is-picked:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:#e8913a24}.ppm-vtile .v-del{position:absolute;right:8px;top:8px;z-index:4;width:26px;height:26px;display:flex;align-items:center;justify-content:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.22);background:#100e0c99;color:#fffc;font-size:13px;border-radius:0;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:.15s;font-family:inherit}.ppm-vtile:hover .v-del,.ppm-vtile .v-del:focus-visible{opacity:1}.ppm-vtile .v-arch,.ppm-tile .t-arch{position:absolute;right:40px;top:8px;z-index:4;height:26px;padding:0 9px;display:flex;align-items:center;justify-content:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.22);background:#100e0c99;color:#fffc;font-size:11.5px;white-space:nowrap;border-radius:0;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:.15s;font-family:inherit}.ppm-vtile:hover .v-arch,.ppm-vtile .v-arch:focus-visible,.ppm-tile:hover .t-arch,.ppm-tile .t-arch:focus-visible{opacity:1}.ppm-vtile .v-arch:hover,.ppm-tile .t-arch:hover{background:#100e0ce0;border-color:#ffffff73;color:#fff}.ppm-vtile .v-del:hover{background:#a33a2c;border-color:#a33a2c;color:#fff}.ppm-vtile .vfoot{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:20px 10px 9px;background:linear-gradient(transparent,#000000b3)}.ppm-ft-right .vw-filter{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--ink-faint)}.ppm-ft-right .vw-filter b{color:var(--pencil);font-weight:600}.ppm-vtile .v-stars{display:inline-flex;z-index:3;opacity:0;transition:opacity .15s}.ppm-vtile:hover .v-stars,.ppm-vtile:focus-within .v-stars{opacity:1}.ppm-vtile .v-stars:has(.ppm-star.on){opacity:1}.ppm-vtile .v-cover{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.3);background:#100e0c8c;color:#fff;font-size:12px;padding:5px 12px;border-radius:0;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:.15s;font-family:inherit;white-space:nowrap}.ppm-vtile:hover .v-cover,.ppm-vtile .v-cover:focus-visible{opacity:1}.ppm-vtile .v-cover:hover{background:var(--pencil);border-color:var(--pencil);color:#1a1714;font-weight:700}.ppm-vtile .v-restore{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--pencil);background:var(--pencil);color:#1a1714;font-size:12px;font-weight:600;padding:5px 12px;border-radius:0;cursor:pointer;font-family:inherit;white-space:nowrap}.ppm-vtile .v-restore:hover{filter:brightness(1.08)}.ppm-vtile .v-cover-on{font-size:11.5px;color:var(--pencil);font-weight:600;white-space:nowrap}.ppm-batchbar{position:fixed;left:50%;transform:translate(-50%);bottom:20px;z-index:8;display:flex;align-items:center;gap:12px;width:min(680px,86vw);background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--glass-line);border-radius:0;padding:11px 14px;color:var(--ink)}.ppm-batchbar .n{font-size:13.5px;font-weight:600}.ppm-batchbar .tip{font-size:11.5px;color:var(--ink-faint);margin-right:auto}.ppm-batchbar button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0;cursor:pointer;font-family:inherit;font-size:12.5px;padding:8px 16px;transition:.15s}.ppm-batchbar .ghost{border:1px solid var(--line2);background:none;color:var(--ink-dim)}.ppm-batchbar .ghost:hover{color:var(--ink);border-color:var(--ink-faint)}.ppm-batchbar .danger{border:0;background:#a33a2c;color:#fff;font-weight:700}.ppm-batchbar .danger:hover{filter:brightness(1.12)}.ppm-batchbar .danger:disabled{opacity:.45;cursor:default;filter:none}.ppm-dock{position:fixed;left:calc(50% + var(--studio-rail-w, 0px) / 2);transform:translate(-50%);bottom:20px;z-index:7;width:min(680px,86vw);background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--glass-line);border-radius:0;padding:12px 14px;color:var(--ink)}.ppm-dock .layout-toggle{display:flex;align-items:center;gap:6px;margin-bottom:8px;flex-wrap:wrap}.ppm-dock .layout-toggle button{font-size:11px;padding:3px 10px;border:1px solid var(--line);background:transparent;color:var(--ink-dim);cursor:pointer;border-radius:2px}.ppm-dock .layout-toggle button.is-on{color:var(--ink);border-color:var(--ink)}.ppm-dock .layout-toggle span{font-size:10.5px;color:var(--ink-faint)}.ppm-dock .chips{display:flex;gap:6px;margin-bottom:9px;flex-wrap:wrap}.ppm-dock .chip{font-size:10.5px;color:var(--ink-dim);background:var(--chip-bg);padding:3px 9px;border-radius:99px}.ppm-dock .chip b{color:var(--chip-ink);font-weight:600}.ppm-dock .chip.ref b{color:var(--pencil)}.ppm-dock .prompt-row{display:flex;gap:10px;align-items:flex-end}.ppm-dock textarea{flex:1;background:none;border:0;outline:none;resize:none;color:var(--ink);font:inherit;font-size:13.5px;line-height:1.5;height:44px}.ppm-dock textarea::placeholder{color:var(--ink-faint)}.ppm-dock .gen-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;flex:none;background:var(--pencil);color:#1a1714;font-size:14px;font-weight:700;padding:12px 22px;border-radius:0;letter-spacing:.04em;font-family:inherit;transition:.15s}.ppm-dock .gen-btn:hover{filter:brightness(1.12)}.ppm-dock .gen-btn:disabled{opacity:.5;cursor:default}.ppm-dock .gen-btn small{display:block;font-size:10px;font-weight:500;opacity:.7}.ppm-dock .batch-note{font-size:11.5px;color:var(--ink-faint);margin-bottom:6px}.ppm-dock .batch-note.err{color:#c26a2e}.ppm-dock .dock-refs{margin-bottom:8px}.ppm-dock .dock-refs-list{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ppm-dock .dock-ref{display:flex;align-items:center;gap:4px;padding:3px 4px 3px 3px;border:1px solid var(--glass-line);background:var(--glass-btn)}.ppm-dock .dock-ref-thumb{width:34px;height:34px;display:block;overflow:hidden;flex:none;background:var(--chip-bg)}.ppm-dock .dock-ref-thumb img{width:100%;height:100%;object-fit:cover;display:block}.ppm-dock .dock-ref-thumb span{font-size:9px;color:var(--ink-faint);display:flex;align-items:center;justify-content:center;width:100%;height:100%}.ppm-dock .dock-ref-role{font-size:10.5px;border:0;background-color:transparent;color:var(--ink-dim);font-family:inherit;cursor:pointer;max-width:72px;padding-right:14px}.ppm-dock .dock-ref-remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;color:var(--ink-faint);font-size:14px;line-height:1;cursor:pointer;padding:0 2px}.ppm-dock .dock-ref-remove:hover{color:#c26a2e}.ppm-dock .dock-ref-add{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px dashed var(--glass-line);background:transparent;color:var(--ink-dim);font-size:11.5px;padding:8px 12px;cursor:pointer;font-family:inherit;white-space:nowrap}.ppm-dock .dock-ref-add:hover{color:var(--ink);border-color:var(--line2)}.ppm-dock .dock-controls{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.ppm-dock .dock-controls .layout-toggle{margin-bottom:0}.ppm-dock .dock-select{font-size:11.5px;padding:4px 22px 4px 8px;border:1px solid var(--line);background-color:transparent;color:var(--ink-dim);font-family:inherit;cursor:pointer;border-radius:0}.ppm-dock .dock-select:hover{color:var(--ink)}.ppm-dock .dock-hint{font-size:10.5px;color:var(--ink-faint)}.ppm-dock .dock-quote{display:block;width:100%;text-align:left;margin:6px 0 2px;padding:5px 8px;font-size:10.5px;color:var(--ink-faint);font-family:inherit;background:none;border:1px dashed var(--hairline, rgba(128,128,128,.35));border-radius:4px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ppm-dock .dock-quote:hover:not(:disabled){color:var(--ink);border-color:var(--ink-faint)}.ppm-dock .dock-quote:disabled{opacity:.55;cursor:default;border-style:solid}.ppm-tile .t-peek,.ppm-vtile .t-peek{position:absolute;left:8px;top:50%;transform:translateY(-50%);z-index:4;width:26px;height:26px;display:flex;align-items:center;justify-content:center;color:#fff;background:#0000006b;border:1px solid rgba(255,255,255,.16);border-radius:50%;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:.3;transition:opacity .15s;cursor:zoom-in}.ppm-tile:hover .t-peek,.ppm-vtile:hover .t-peek{opacity:.65}.ppm-tile .t-peek:hover,.ppm-vtile .t-peek:hover{opacity:1}@media(hover:none){.ppm-tile .t-peek,.ppm-vtile .t-peek{display:none}}.ppm-dock .refs-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:none;border:1px solid var(--glass-line);background:var(--glass-btn);color:var(--ink-dim);font-size:12px;padding:10px 14px;border-radius:0;cursor:pointer;font-family:inherit;white-space:nowrap;transition:.15s}.ppm-dock .refs-btn:hover{color:var(--ink);border-color:var(--line2)}.ppm-dock .dock-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:none;border:0;background:none;color:var(--ink-dim);font-size:13px;padding:10px 6px;cursor:pointer;line-height:1}.ppm-dock .dock-close:hover{color:var(--ink)}.ppm-info-panel{position:fixed;top:var(--sb-header-h);right:0;bottom:0;width:320px;z-index:65;background:var(--panel-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-left:1px solid var(--line2);padding:66px 22px 24px;transform:translate(105%);transition:transform .28s cubic-bezier(.2,.8,.2,1);overflow:auto;display:flex;flex-direction:column;gap:18px;color:var(--ink)}.ppm-info-panel.open{transform:none}.ppm-info-panel h5{font-size:11px;color:var(--ink-faint);letter-spacing:.12em;margin:0 0 9px}.ppm-round-card{background:var(--surface2);border-radius:0;padding:13px 15px}.ppm-round-card .r-title{font-size:13.5px;font-weight:600;margin-bottom:7px}.ppm-round-card .r-title span{color:var(--pencil)}.ppm-round-card p{font-size:12.5px;color:var(--ink-dim);margin:0}.ppm-round-card p b{color:var(--ink)}.ppm-round-card p+p{margin-top:8px}.ppm-meta-list{font-size:12.5px;color:var(--ink-dim);display:flex;flex-direction:column;gap:7px}.ppm-meta-list div{display:flex;justify-content:space-between;gap:10px}.ppm-meta-list span{color:var(--ink-faint);flex:none}.ppm-meta-list b{color:var(--ink);font-weight:500;text-align:right}.ppm-page ::-webkit-scrollbar{width:9px;height:9px}.ppm-page ::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:0}.ppm-page ::selection{background:#e8913a4d}.ppm-cat.drop-on{background:var(--pencil-soft);border-color:var(--pencil);outline:2px dashed var(--pencil);outline-offset:-3px;color:var(--ink)}.ppm-cat-error{font-size:11px;color:#c26a2e;padding:4px 14px}.ppm-cat-rename{flex:1;min-width:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--pencil);background:var(--surface2);color:var(--ink);font:inherit;font-size:13.5px;border-radius:0;outline:none;padding:1px 6px}.ppm-cat-ops>span[aria-disabled=true]{opacity:.3;pointer-events:none}.ppm-board-section{margin-top:auto;padding-top:10px;border-top:1px dashed rgba(232,145,58,.35);display:flex;flex-direction:column;gap:2px}.ppm-board-label{color:var(--pencil);letter-spacing:.12em}.ppm-cat.board{border-left:2px solid rgba(232,145,58,.55);background:#e8913a0d}.ppm-cat.board .swatch{background:var(--pencil)}.ppm-cat.board:hover{background:#e8913a1a}.ppm-cat.board.on{background:#e8913a24;border-color:#e8913a8c}.ppm-cat-addbox{width:calc(100% - 8px);margin-top:6px}.ppm-cat-addbox .ppm-cat-input{width:100%;margin-top:0}.ppm-cat-kind{display:flex;gap:6px;margin-top:6px}.ppm-cat-kind button{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;border:1px dashed var(--line2);background:none;color:var(--ink-faint);font:inherit;font-size:12px;padding:6px 0;border-radius:0;transition:.16s}.ppm-cat-kind button:hover{color:var(--pencil);border-color:#e8913a80}.ppm-cat-kind button.on{color:var(--pencil);border:1px solid var(--pencil);background:var(--pencil-soft)}.ppm-boardwall{padding:18px 22px 40px}.ppm-boardwall .ppm-wall{padding-left:0;padding-right:0;grid-template-columns:repeat(auto-fill,minmax(var(--tile-min, 320px),1fr))}.ppm-bw-bar{display:flex;align-items:center;gap:14px;margin-bottom:16px}.ppm-bw-bar .bw-title{font-size:16px;font-weight:600;color:var(--ink);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:34%}.ppm-bw-hint{font-size:12px;color:var(--ink-faint)}.ppm-tile.ppm-btile.drop-on{outline:2px dashed var(--pencil);outline-offset:-3px}.ppm-tile .t-ref{position:absolute;left:8px;top:8px;z-index:4;width:26px;height:26px;display:flex;align-items:center;justify-content:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.22);background:#100e0c99;color:#fffc;font-size:14px;cursor:pointer;border-radius:0;opacity:0;transition:.16s}.ppm-tile:hover .t-ref,.ppm-tile .t-ref:focus-visible,.ppm-tile .t-ref.on{opacity:1}.ppm-tile .t-ref.on{color:#ffd98a;border-color:#ffd98a99}.ppm-tile .t-note{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:14px 10px 7px;background:linear-gradient(transparent,#0a0908b8);font-size:11.5px;color:#ffffffd9;cursor:text;display:flex;align-items:center;gap:8px}.ppm-tile .t-note-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ppm-tile .t-note-text.dim{color:#fff6}.ppm-tile:not(:hover) .t-note-text.dim{opacity:0}.ppm-tile .t-note-input{width:100%;background:#100e0cd9;border:1px solid rgba(232,145,58,.6);color:#ece7de;font:inherit;font-size:12px;padding:3px 6px;border-radius:0;outline:none}.ppm-bw-note{position:fixed;left:50%;bottom:26px;transform:translate(-50%);z-index:60;background:#181512eb;border:1px solid var(--line2);color:#ece7de;font-size:12.5px;padding:9px 16px;max-width:70vw}.ppm-bw-note.error{border-color:#a33a2c;color:#f0b9ae}.ppm-bw-note.above-batchbar{bottom:84px}.lb-pull{position:relative;display:inline-flex}.lb-pull-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:5;display:flex;flex-direction:column;min-width:140px;background:var(--surface2, #211e1a);border:1px solid var(--line2);box-shadow:0 8px 24px #00000073}.lb-pull-menu button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;color:var(--ink, #ece7de);font:inherit;font-size:12.5px;text-align:left;padding:8px 12px;cursor:pointer}.lb-pull-menu button:hover{background:var(--pencil-soft);color:var(--pencil)}.ppm-tile.board{border:1px dashed rgba(232,145,58,.55);background:#211a12}.ppm-tile.board:hover{border-color:var(--pencil);box-shadow:0 18px 50px #e8913a2e}.ppm-tile .t-collage{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;gap:2px;background:#2b2114}.ppm-tile .t-collage.n2{grid-template-rows:1fr}.ppm-tile .t-collage img{width:100%;height:100%;object-fit:cover;display:block;min-height:0}.ppm-boardwall{background-color:var(--bg);min-height:100%}.ppm-dialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:24px;background:#080706b8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--ink)}.ppm-dialog .dlg-frame{display:flex;flex-direction:column;width:min(520px,100%);max-height:100%;background:var(--surface);border:1px solid var(--line2);box-shadow:0 30px 90px #00000080}.ppm-dialog .dlg-head{flex:none;display:flex;align-items:baseline;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line)}.ppm-dialog .dlg-head b{font-size:15px}.ppm-dialog .dlg-where{font-size:12px;color:var(--ink-faint)}.ppm-dialog .dlg-head .spacer{flex:1}.ppm-dialog .dlg-body{flex:1;min-height:0;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px}.ppm-dialog .dlg-field{display:flex;flex-direction:column;gap:6px}.ppm-dialog .dlg-label{font-size:12px;color:var(--ink-dim);display:flex;align-items:baseline;gap:8px}.ppm-dialog .dlg-label em{font-style:normal;font-size:11px;color:var(--ink-faint)}.ppm-dialog .dlg-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;box-sizing:border-box;border:1px solid var(--line2);background:var(--surface2);color:var(--ink);font-family:inherit;font-size:13px;padding:9px 11px;border-radius:0;outline:none;transition:border-color .15s}.ppm-dialog .dlg-input:focus{border-color:var(--pencil)}.ppm-dialog .dlg-area{resize:vertical;min-height:52px;line-height:1.55}.ppm-dialog .dlg-chips{display:flex;flex-wrap:wrap;gap:6px}.ppm-dialog .dlg-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line2);background:none;color:var(--ink-dim);font-family:inherit;font-size:12px;padding:6px 12px;border-radius:0;cursor:pointer;transition:.15s}.ppm-dialog .dlg-chip:hover{border-color:var(--ink-faint);color:var(--ink)}.ppm-dialog .dlg-chip.on{background:var(--pencil);border-color:var(--pencil);color:#1a1714;font-weight:700}.ppm-dialog .dlg-file{display:flex;align-items:center;gap:10px}.ppm-dialog .dlg-filename{font-size:12px;color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ppm-dialog .dlg-error{font-size:12px;color:#c2533f;border-left:2px solid #c2533f;padding-left:10px}.mv-list{max-height:320px;overflow-y:auto;border:1px solid var(--line);display:flex;flex-direction:column}.mv-group{position:sticky;top:0;z-index:1;background:var(--surface2);padding:5px 12px;font-size:11px;letter-spacing:.08em;color:var(--ink-faint)}.mv-row{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-top:1px solid var(--line);background:none;display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;text-align:left;font-family:inherit;color:inherit}.mv-row:hover{background:var(--surface2)}.mv-row.on{background:var(--surface3);box-shadow:inset 2px 0 0 var(--pencil)}.mv-thumb{flex:none;width:64px;height:36px;overflow:hidden;background:var(--surface3);display:flex;align-items:center;justify-content:center}.mv-thumb img{width:100%;height:100%;object-fit:cover;display:block}.mv-thumb-empty{width:100%;height:100%;background:var(--surface3)}.mv-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.mv-meta b{font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mv-meta em{font-style:normal;font-size:11.5px;color:var(--ink-faint)}.mv-check{margin-left:auto;color:var(--pencil);font-weight:700}.mv-empty{padding:28px 12px;text-align:center;font-size:12.5px;color:var(--ink-faint)}.mv-confirm{display:flex;flex-direction:column;gap:12px}.mv-path{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--ink-dim);padding:12px 14px;border:1px solid var(--line);background:var(--surface2)}.mv-path b{color:var(--ink)}.mv-arrow{color:var(--pencil);font-weight:700}.mv-note{margin:0;font-size:12.5px;line-height:1.7;color:var(--ink-dim)}.ppm-dialog .dlg-foot{flex:none;display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--line)}.ppm-dialog .dlg-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line2);background:none;color:var(--ink-dim);font-family:inherit;font-size:12px;padding:7px 14px;border-radius:0;cursor:pointer;transition:.15s}.ppm-dialog .dlg-btn:hover{color:var(--ink);border-color:var(--ink-faint)}.ppm-dialog .dlg-btn.ghost{border-color:transparent}.ppm-dialog .dlg-btn.amber{background:var(--pencil);border-color:var(--pencil);color:#1a1714;font-weight:700}.ppm-dialog .dlg-btn:disabled{opacity:.45;cursor:default}.lb-fields{margin-top:10px;display:flex;flex-direction:column;gap:6px;max-height:30vh;overflow-y:auto}.lb-fields .fld{display:flex;align-items:flex-start;gap:8px}.lb-fields .fld-label{flex:none;width:92px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-right:1px solid var(--line);border-radius:0;color:var(--pencil);font-family:inherit;font-size:11.5px;font-weight:600;padding:6px 8px 6px 0;outline:none;text-align:right}.lb-fields .fld-label::placeholder{color:var(--ink-faint);font-weight:400}.lb-fields .fld-label:focus{border-right-color:var(--pencil)}.lb-fields .fld-value{flex:1;min-width:0;border:1px solid transparent;background:none;color:var(--ink);font-family:inherit;font-size:12.5px;line-height:1.6;padding:5px 8px;min-height:30px;max-height:140px;resize:vertical;outline:none;transition:border-color .15s}.lb-fields .fld-value:hover{border-color:var(--line)}.lb-fields .fld-value:focus{border-color:var(--pencil)}.lb-fields .fld-value::placeholder{color:var(--ink-faint)}.lb-fields .fld-btn{flex:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;background:none;color:var(--ink-faint);font-family:inherit;font-size:12px;line-height:1;padding:7px 8px;border-radius:0;cursor:pointer;transition:.15s}.lb-fields .fld-btn:hover{color:var(--ink);border-color:var(--line2)}.lb-fields .fld-btn:disabled{opacity:.3;cursor:default}.lb-fields .fld-btn.del:hover{color:#fff;background:#a33a2c;border-color:#a33a2c}.lb-fields .fld-add{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding-top:2px}.lb-fields .fld-add-label{font-size:11.5px;color:var(--ink-faint);margin-right:2px}.lb-fields .fld-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line2);background:none;color:var(--ink-dim);font-family:inherit;font-size:11.5px;padding:4px 10px;border-radius:99px;cursor:pointer;transition:.15s}.lb-fields .fld-chip:hover{color:var(--ink);border-color:var(--pencil)}.ppm-tile .t-note .t-fld-badge{flex:none;margin-left:auto;font-size:10.5px;color:var(--pencil);background:var(--pencil-soft);padding:2px 7px;border-radius:99px;white-space:nowrap}.ppm-boardview,.ppm-loupeview{--bv-frame-w: calc(70dvh * 16 / 9);display:flex;flex-direction:column}.ppm-boardview .ppm-bv-top,.ppm-loupeview .ppm-bv-top{flex:none;display:flex;align-items:center;gap:10px;padding:10px 0 12px}.ppm-boardview .ppm-bv-top b,.ppm-loupeview .ppm-bv-top b{font-size:14px}.ppm-boardview .ppm-bv-top .pos,.ppm-loupeview .ppm-bv-top .pos{font-size:12px;color:var(--ink-faint)}.ppm-boardview .ppm-bv-top .spacer,.ppm-loupeview .ppm-bv-top .spacer{flex:1}.ppm-boardview .ppm-bv-top .bv-ref-on,.ppm-loupeview .ppm-bv-top .bv-ref-on{font-size:11.5px;color:var(--pencil);font-weight:600}.ppm-boardview .ppm-bv-del:hover,.ppm-loupeview .ppm-bv-del:hover{background:#a33a2c;border-color:#a33a2c;color:#fff}.ppm-boardview .ppm-bv-body{display:flex;flex-direction:column}.ppm-boardview .ppm-bv-stage,.ppm-loupeview .ppm-bv-stage{flex:none;aspect-ratio:16 / 9;max-height:70dvh;max-width:var(--bv-frame-w);margin:0 auto;width:100%;min-height:260px;position:relative;overflow:hidden;background:var(--stage-bg)}.ppm-boardview .ppm-bv-stage img,.ppm-loupeview .ppm-bv-stage img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;display:block}.ppm-boardview .bv-arrow,.ppm-loupeview .bv-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:44px;height:76px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;cursor:pointer;background:var(--glass);color:var(--ink);font-size:26px;line-height:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:.15s;font-family:inherit}.ppm-boardview .bv-arrow,.ppm-loupeview .bv-arrow{border:1px solid var(--glass-line)}.ppm-boardview .bv-arrow:hover,.ppm-loupeview .bv-arrow:hover{background:var(--glass-btn)}.ppm-boardview .bv-arrow.prev,.ppm-loupeview .bv-arrow.prev{left:10px}.ppm-boardview .bv-arrow.next,.ppm-loupeview .bv-arrow.next{right:10px}.lb-info{--fld-label-w: 104px;--fld-gap: 18px;flex:none;width:100%;max-width:var(--bv-frame-w);margin:0 auto;border:1px solid var(--line);border-top:none;background:var(--surface);padding:18px 22px 26px;display:flex;flex-direction:column}.lb-info .info-sec{padding:13px 0 16px;border-top:1px solid var(--line)}.lb-info .info-sec:first-child{border-top:none;padding-top:0}.lb-info .info-add{padding-top:13px;border-top:1px solid var(--line)}.lb-info .info-sec{display:flex;flex-direction:column;gap:7px}.lb-info .info-sec-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:20px}.lb-info .info-sec-label{font-size:10.5px;letter-spacing:.14em;color:var(--ink-faint);font-weight:600}.lb-info .info-text{margin:0;font-size:13px;color:var(--ink);white-space:pre-wrap;word-break:break-word;cursor:text;line-height:1.9}.lb-info .info-empty{color:var(--ink-faint);font-size:12px}.lb-info .lb-finalprompt summary{cursor:pointer;-webkit-user-select:none;user-select:none;font-size:11.5px;color:var(--ink-faint)}.lb-info .lb-finalprompt summary:hover{color:var(--ink)}.lb-info .lb-finalprompt-body{margin-top:6px;max-height:220px;overflow-y:auto}.lb-info .info-mini-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line2);background:none;color:var(--ink-faint);font-size:10.5px;padding:3px 9px;cursor:pointer;font-family:inherit;transition:.15s}.lb-info .info-mini-btn:hover{color:var(--ink);border-color:var(--ink-faint)}.lb-info .info-note-input{width:100%;background:none;border:1px solid var(--pencil);outline:none;color:var(--ink);font:inherit;font-size:13px;padding:7px 9px}.lb-info .info-fld{position:relative;display:grid;grid-template-columns:var(--fld-label-w) minmax(0,1fr);gap:0 var(--fld-gap);align-items:baseline;padding:9px 26px 9px 0;border-bottom:1px dashed var(--line);cursor:text}.lb-info .info-fld:last-of-type{border-bottom:none}.lb-info .info-fld:hover{background:var(--hover-fill)}.lb-info .info-fld-head{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.lb-info .info-fld-label{font-size:10.5px;letter-spacing:.06em;color:var(--pencil);font-weight:600;word-break:break-word}.lb-info .lb-refs{display:flex;flex-direction:column;gap:6px;min-width:0}.lb-info .lb-ref{display:flex;align-items:center;gap:8px;min-width:0;cursor:zoom-in}.lb-info .lb-ref.gone{cursor:default}.lb-info .lb-ref-thumb{flex:none;width:52px;height:32px;overflow:hidden;border:1px solid var(--line);background:var(--surface2);display:flex;align-items:center;justify-content:center;color:var(--ink-faint);font-size:11px}.lb-info .lb-ref-thumb img{width:100%;height:100%;object-fit:cover;display:block}.lb-info .lb-ref-meta{min-width:0;display:flex;flex-direction:column;gap:1px}.lb-info .lb-ref-meta b{font-size:12.5px;font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-info .lb-ref-meta em{font-style:normal;font-size:10.5px;color:var(--ink-faint)}.lb-info .lb-ref.gone .lb-ref-meta b{color:var(--ink-faint)}.lb-info .lb-ref.gone .lb-ref-thumb{border-style:dashed}.lb-info .info-copy{position:absolute;top:5px;right:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;color:var(--ink-faint);font-size:12px;padding:3px 4px;cursor:pointer;opacity:0;transition:opacity .15s}.lb-info .info-fld:hover .info-copy{opacity:1}.lb-info .info-copy:hover{color:var(--ink)}.lb-info .info-copy:disabled{opacity:0;cursor:default}.lb-info .fld.editing{display:flex;flex-direction:column;gap:5px;padding:8px 0;border-bottom:1px dashed var(--line);align-items:stretch}.lb-info .fld-edit-head{display:flex;align-items:center;gap:4px}.lb-info .fld-edit-head .fld-label{flex:1;min-width:0;width:auto;text-align:left;border-right:none;border-bottom:1px dashed var(--line);padding:2px 0}.lb-info .fld.editing .fld-value{flex:none;max-height:none;line-height:1.9;margin-left:calc(var(--fld-label-w) + var(--fld-gap));resize:none}.lb-info .lb-fields{max-height:none;overflow:visible}.lb-info .info-add-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;border:1px dashed var(--line2);background:none;color:var(--ink-faint);font-family:inherit;font-size:12px;padding:8px;cursor:pointer;transition:.15s}.lb-info .info-add-btn:hover:not(:disabled){color:var(--ink);border-color:var(--pencil)}.lb-info .info-add-btn:disabled{opacity:.4;cursor:default}.lb-info .fld-add{padding-top:0}.lb-info .fld-chip.ghost{border-style:dashed;color:var(--ink-faint)}.ppm-stars{display:inline-flex;align-items:center;gap:1px;vertical-align:middle}.ppm-stars .ppm-star{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;padding:4px;margin:-4px -3px;cursor:pointer;font-family:inherit;line-height:1;font-size:15px;color:var(--ink-faint);opacity:.45;transition:color .12s,opacity .12s}.ppm-stars.sm .ppm-star{font-size:12.5px;padding:5px;margin:-5px -4px}.ppm-stars .ppm-star.on{color:var(--pencil);opacity:1}.ppm-stars:hover .ppm-star{opacity:.8}.ppm-stars:hover .ppm-star.on{opacity:1}.ppm-stars .ppm-star:disabled{cursor:default}.ppm-stars.ro:hover .ppm-star{opacity:.45}.ppm-stars.ro:hover .ppm-star.on{opacity:1}.ppm-tile .t-stars{position:absolute;left:6px;bottom:6px;z-index:3;padding:2px 5px;background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;transition:opacity .15s}.ppm-tile:hover .t-stars,.ppm-tile:focus-within .t-stars{opacity:1}.ppm-tile .t-stars:has(.ppm-star.on){opacity:1}.ppm-boardview .bv-stars{display:inline-flex;margin-left:2px}.ppm-bw-bar .bw-filter{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--ink-faint)}.ppm-bw-bar .bw-filter b{color:var(--pencil);font-weight:600}.ppm-bw-bar .bw-sort{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-faint)}.ppm-bw-bar .bw-sort .bw-sort-label{font-size:12px;color:var(--ink-faint)}.ppm-bw-bar .bw-sort .seg,.ppm-seg{display:inline-flex;border:1px solid var(--line2);border-radius:2px;overflow:hidden}.ppm-bw-bar .bw-sort .seg button,.ppm-seg button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-right:1px solid var(--line);background:transparent;color:var(--ink-dim);font-family:inherit;font-size:11.5px;padding:3px 11px;cursor:pointer;transition:color .15s,background .15s}.ppm-bw-bar .bw-sort .seg button:last-child,.ppm-seg button:last-child{border-right:none}.ppm-bw-bar .bw-sort .seg button:hover,.ppm-seg button:hover{color:var(--ink)}.ppm-bw-bar .bw-sort .seg button.on,.ppm-seg button.on{background:var(--pencil-soft);color:var(--ink);font-weight:600}.ppm-zoom{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-faint)}.ppm-zoom-label{font-size:12px;color:var(--ink-faint)}@media(max-width:768px){.ppm-zoom{display:none}}.ppm-bw-bar .ppm-ft-btn{font-size:12px;padding:5px 12px}.ppm-bw-bar .ppm-ft-btn.amber{background:var(--pencil-soft);border-color:var(--pencil);color:var(--ink);font-weight:600;font-size:12px;padding:5px 12px}.ppm-bw-bar .ppm-ft-btn.amber:hover{background:var(--pencil);color:#1a1714}.bw-add-tile{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--surface3);color:var(--ink2);font-family:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;aspect-ratio:var(--ppm-tile-ar, 16 / 9);transition:.15s}.bw-add-tile:hover:not(:disabled){border-color:var(--pencil);color:var(--ink)}.bw-add-tile:disabled{cursor:default;opacity:.6}.bw-add-tile .chip,.ppm-vadd .chip{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--line2);display:flex;align-items:center;justify-content:center;font-size:18px;line-height:1;background:var(--bg);color:var(--ink2);transition:.15s}.bw-add-tile:hover:not(:disabled) .chip,.ppm-vadd:hover:not(:disabled) .chip{border-color:var(--pencil);color:var(--pencil)}.bw-add-tile .t1,.ppm-vadd .t1{font-size:12.5px}.bw-add-tile .t2,.ppm-vadd .t2{font-size:11px;color:var(--ink3)}.ppm-vadd{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--surface3);color:var(--ink2);font-family:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;aspect-ratio:var(--ppm-vtile-ar, 16 / 9);transition:.15s}.ppm-vadd:hover:not(:disabled){border-color:var(--pencil);color:var(--ink)}.ppm-vadd:disabled{cursor:default;opacity:.6}.ppm-vgrid-drop.drop-files{outline:2px dashed var(--pencil);outline-offset:-4px}.ppm-boardwall.drop-files{outline:2px dashed var(--pencil);outline-offset:-6px}.bw-filter-empty{grid-column:1 / -1;margin:0;padding:28px 0;text-align:center;font-size:13px;color:var(--ink-faint)}.ppm-loupeview{--lv-side-w: 400px;--lv-gap: 20px;--lv-max-w: var(--bv-frame-w)}.ppm-loupeview.side-open{--lv-max-w: calc(var(--bv-frame-w) + var(--lv-side-w) + var(--lv-gap))}.ppm-loupeview .ppm-lv-body,.ppm-loupeview .lb-info{width:100%;max-width:var(--lv-max-w);margin:0 auto}.ppm-loupeview .ppm-lv-body{display:flex;align-items:stretch;gap:var(--lv-gap)}.ppm-loupeview .ppm-bv-stage{flex:1 1 auto;margin:0}.ppm-loupeview .ppm-lv-side{flex:none;width:var(--lv-side-w);min-width:0;display:flex;flex-direction:column}.ppm-loupeview .ppm-lv-side .ppm-dock{position:static;width:100%;margin:0;padding:14px 16px 16px;border:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;gap:12px;box-shadow:none;transform:none;left:auto;bottom:auto;flex:1}.ppm-loupeview .ppm-lv-side .dock-controls{flex-wrap:wrap;gap:8px}.ppm-loupeview .ppm-lv-side .dock-select{flex:1 1 120px;min-width:0}.ppm-loupeview .ppm-lv-side .dock-hint{flex-basis:100%}.ppm-loupeview .ppm-lv-side .prompt-row{flex-direction:column;align-items:stretch;gap:10px;flex:1}.ppm-loupeview .ppm-lv-side .prompt-row textarea{width:100%;min-height:130px;flex:1}.ppm-loupeview .ppm-lv-side .gen-btn{width:100%;flex:none}@media(max-width:1200px){.ppm-loupeview .ppm-lv-body{flex-direction:column}.ppm-loupeview .ppm-lv-side{width:100%}.ppm-loupeview.side-open{--lv-max-w: var(--bv-frame-w)}}@media(max-width:640px){.lb-info .info-fld{grid-template-columns:minmax(0,1fr);gap:4px;align-items:stretch}}.ppm-asset-view{min-height:100%}.ppm-asset-view .ppm-float-top{position:static}.ppm-switch-bar{position:sticky;top:0;z-index:9;display:flex;align-items:center;gap:12px;padding:12px 22px 10px;background:linear-gradient(180deg,var(--bg) 82%,transparent)}.ppm-switch-back{flex:none}.ppm-switch-scroll{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:2px;scrollbar-width:thin}.ppm-switch-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:none;border:1px solid var(--line);border-bottom:2px solid transparent;background:var(--surface);cursor:pointer;display:flex;align-items:center;gap:8px;padding:5px 10px 5px 5px;color:var(--ink-dim);font-family:inherit;max-width:220px;transition:.15s}.ppm-switch-item:hover{border-color:var(--line2);color:var(--ink)}.ppm-switch-item.on{border-bottom-color:var(--pencil);background:var(--pencil-soft);color:var(--ink);cursor:default}.ppm-switch-thumb{flex:none;width:44px;height:25px;background:var(--surface3);overflow:hidden;display:block}.ppm-switch-thumb img{width:100%;height:100%;object-fit:cover;display:block}.ppm-switch-ph{display:block;width:100%;height:100%;background:linear-gradient(135deg,var(--surface3),var(--surface2))}.ppm-switch-text{min-width:0;display:flex;flex-direction:column;gap:1px;text-align:left}.ppm-switch-name{font-size:12.5px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:anywhere}.ppm-switch-meta{font-size:10.5px;color:var(--ink-faint);white-space:nowrap}.drop-files{outline:2px dashed var(--pencil);outline-offset:-4px}.ppm-addview-stage{display:flex}.ppm-addview-drop{flex:1;display:grid;place-content:center;justify-items:center;gap:10px;padding:24px;border:2px dashed var(--line2);background:var(--chip-bg);color:var(--ink-dim);font-size:14px;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.ppm-addview-drop:hover,.ppm-addview-drop.on{border-color:var(--pencil);color:var(--ink);background:var(--pencil-soft)}.ppm-addview-drop .big{font-size:34px;line-height:1;color:var(--pencil)}.ppm-addview-drop p{margin:0}.ppm-addview-drop small{color:var(--ink-faint);font-size:11.5px}.ppm-cat.can-drop{border-color:var(--pencil);color:var(--ink)}.ppm-hover-preview{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none;z-index:40;animation:ppm-hp-in .13s ease-out}.ppm-hover-preview img{max-width:min(1180px,86vw);max-height:82vh;min-width:240px;min-height:135px;object-fit:contain;background:var(--stage-bg);border:1px solid var(--line2);box-shadow:0 26px 90px #00000073}@keyframes ppm-hp-in{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.ppm-hover-preview{animation:none}}.ppm-imgid{display:inline-flex;align-items:center;gap:7px;min-width:0}.ppm-imgid-val{font-size:11.5px;color:var(--ink-faint);letter-spacing:.2px;overflow:hidden;text-overflow:ellipsis}.ppm-imgid-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;border:1px solid rgba(127,117,100,.35);background:transparent;color:inherit;font-size:11px;padding:2px 8px;border-radius:6px;white-space:nowrap}.ppm-imgid-btn:hover{border-color:#7f7564b3}.ppm-card-gen{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:color-mix(in srgb,var(--card, #fafaf8) 88%,transparent);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:ppm-gen-breathe 2s infinite ease-in-out}.ppm-card-gen-ring,.ppm-gen-ring{display:inline-block;width:30px;height:30px;border-radius:50%;border:2px solid rgba(127,117,100,.25);border-top-color:var(--pencil, #b4762a);animation:ppm-gen-spin .9s linear infinite}.ppm-card-gen-text{font-size:12px;color:var(--ink-3, #8a8378)}.ppm-gen-chip{display:inline-flex;align-items:center;gap:7px;padding:0 12px;height:34px;font-size:12.5px;color:var(--ink-3, #8a8378);border:1px solid rgba(180,118,42,.45);border-radius:10px;background:color-mix(in srgb,var(--card, #fafaf8) 92%,transparent);cursor:default}.ppm-gen-chip .ppm-gen-ring{width:14px;height:14px;border-width:2px}@keyframes ppm-gen-spin{to{transform:rotate(360deg)}}@keyframes ppm-gen-breathe{0%,to{opacity:.97}50%{opacity:.82}}@media(prefers-reduced-motion:reduce){.ppm-card-gen,.ppm-card-gen-ring,.ppm-gen-ring{animation:none}}@media(max-width:768px){.ppm-side{position:fixed;top:var(--sb-header-h);bottom:0;left:0;width:min(82vw,300px);z-index:60;transform:translate(-100%);transition:transform .22s ease;box-shadow:0 0 0 100vmax #0000}.ppm-page.rail-open .ppm-side{transform:translate(0);box-shadow:2px 0 24px #00000080}.ppm-rail-scrim{position:fixed;inset:var(--sb-header-h) 0 0 0;z-index:55;background:#00000073;border:0;padding:0;cursor:pointer}.ppm-main{min-width:0;padding-top:52px}.ppm-rail-toggle{display:inline-flex}}.ppm-rail-toggle{display:none;position:fixed;top:calc(var(--sb-header-h) + 8px);left:8px;z-index:65;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--line);background:var(--panel);color:var(--ink-2);font-size:16px;line-height:1;cursor:pointer}.ppm-rail-toggle:hover{color:var(--ink)}.ppm-page.rail-open .ppm-rail-toggle{left:calc(min(82vw,300px) + 8px)}@media(max-width:768px){.ppm-rail-toggle{display:inline-flex}}.ppm-sort-select{height:28px;padding:0 22px 0 6px;margin-right:8px;border:1px solid var(--line);background-color:var(--panel);color:var(--ink-2);font-size:12px;cursor:pointer}.ppm-sort-select:hover{color:var(--ink)}@media(max-width:768px){.ppm-wall-head{flex-wrap:wrap;row-gap:10px;padding:18px 14px 12px}.ppm-wall-head h1,.ppm-wall-head .hint{flex:0 0 auto;white-space:nowrap}.ppm-wall-head .spacer{flex-basis:100%;height:0}.ppm-wall-head .ppm-sort-select{flex:1 1 auto;min-width:0}.ppm-wall-head .ppm-ft-btn{flex:0 0 auto;white-space:nowrap}.ppm-wall{padding:6px 14px 60px;grid-template-columns:1fr}}@media(max-width:768px){.ppm-switch-bar{padding:12px 14px 10px}.ppm-float-top{flex-wrap:wrap;row-gap:10px;padding:12px 14px}.ppm-ft-title{flex:1 1 100%}.ppm-ft-right{margin-left:0;width:100%;overflow-x:auto;scrollbar-width:none}.ppm-ft-right::-webkit-scrollbar{display:none}.ppm-float-top .ppm-ft-btn{flex:0 0 auto;white-space:nowrap}.ppm-vgrid{padding:8px 14px 130px;grid-template-columns:1fr}}@media(max-width:768px){.ppm-boardview .ppm-bv-top,.ppm-loupeview .ppm-bv-top{flex-wrap:wrap;gap:8px}.ppm-boardview .ppm-bv-top>*,.ppm-loupeview .ppm-bv-top>*{flex:0 0 auto;white-space:nowrap}.ppm-boardview .ppm-bv-top b,.ppm-loupeview .ppm-bv-top b{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.ppm-boardview .ppm-bv-top .spacer,.ppm-loupeview .ppm-bv-top .spacer{display:none}.lb-info{padding:14px 14px 20px}}@media(max-width:768px){.ppm-boardwall{padding:14px 14px 40px}.ppm-bw-bar{flex-wrap:wrap;gap:10px}.ppm-bw-bar>*{flex:0 0 auto}.ppm-bw-bar .bw-title{flex:1 1 100%;max-width:100%}.ppm-bw-bar .ppm-bw-hint{flex:1 1 100%;line-height:1.6}.ppm-boardwall .ppm-wall{grid-template-columns:1fr}}@media(max-width:768px){.ppm-main{padding-top:0}.ppm-wall-head,.ppm-switch-bar{background:var(--bg)}.ppm-wall-head>:first-child,.ppm-switch-bar>:first-child{margin-left:44px}}.ppm-sort-select,.dock-select,.dock-ref-role,.generation-studio__select,.generation-studio__role,.agent-conversation-bar select,.agent-session-bar select{-moz-appearance:none;appearance:none;-webkit-appearance:none;border-radius:0;background-image:var(--select-arrow);background-repeat:no-repeat;background-position:right 7px center}.ppm-imgid-model{flex:0 0 auto;border:1px solid var(--line2, var(--line));padding:1px 7px;font-size:10.5px;color:var(--ink-2);white-space:nowrap;cursor:help}.ppm-imgid-model.is-fallback{border-color:var(--pencil);color:var(--pencil)}.ppm-imgid-btn{border-radius:0}.ppm-vtile.ppm-vpending{border:1px dashed var(--pencil);background:var(--gen-floor-bg);cursor:default;padding:0}.ppm-vtile.ppm-vpending.is-agent{border-color:var(--line-strong)}.ppm-tile.just-created{outline:2px solid var(--pencil);outline-offset:-2px;animation:ppm-just-created 4s ease-out 1 both}.ppm-tile.just-created:after{content:"刚刚新建";position:absolute;top:8px;left:8px;z-index:4;padding:2px 8px;font-size:10.5px;background:var(--pencil);color:#1a1714;font-weight:600}@keyframes ppm-just-created{0%,60%{box-shadow:0 0 0 4px color-mix(in srgb,var(--pencil) 35%,transparent)}to{box-shadow:0 0 0 0 transparent}}@media(prefers-reduced-motion:reduce){.ppm-tile.just-created{animation:none}}
