/* Shared studio surfaces. Opt in with xiaoxiang-studio; does not change content or actions. */
html.xiaoxiang-studio{--studio-panel:#303030;--studio-raised:#383838;--studio-inset:#262626;--studio-line:#505050;--studio-text:#dedede;--studio-muted:#aaa;--studio-active:#445566}
html.xiaoxiang-studio body :is(.cc-node-search,.ca-popover,.ca-manage-dialog,.cc-create-dialog,.xm-browser,#psLibraryPanel,#psInboxPopover){--panel:var(--studio-panel);--raised:var(--studio-raised);--bg:var(--studio-inset);--line:var(--studio-line);--text:var(--studio-text);--muted:var(--studio-muted);--theme-surface:var(--studio-panel);--theme-surface-raised:var(--studio-raised);--theme-text:var(--studio-text);--theme-text-muted:var(--studio-muted);background:var(--studio-panel)!important;color:var(--studio-text)!important;border-color:var(--studio-line)!important;box-shadow:0 12px 36px #0004!important;color-scheme:dark}
html.xiaoxiang-studio body :is(.ca-popover,.ca-manage-dialog,.cc-create-dialog,.xm-browser,#psLibraryPanel,#psInboxPopover) :is(input,textarea,select,button){background:var(--studio-raised)!important;color:var(--studio-text)!important;border-color:var(--studio-line)!important;box-shadow:none!important}
html.xiaoxiang-studio body :is(.cc-node-search,.ca-popover,.xm-browser) :is(header,footer,nav,.cc-node-search-summary,.xm-path){background:transparent!important;color:var(--studio-muted)!important;border-color:var(--studio-line)!important}
html.xiaoxiang-studio body :is(.ca-popover,.xm-browser) button:hover:not(:disabled){background:#454545!important}
html.xiaoxiang-studio body :is(.cc-node-search,.ca-popover,.xm-browser) :is(input,select,textarea):focus-visible{outline:none!important;border-color:#8299ae!important}
html.xiaoxiang-studio body #main .cc :is(.cc-bag-tray,.cc-bag-empty,.cc-history-item,.cc-history-heading,.cc-history-actions){--text:var(--studio-text);--muted:var(--studio-muted);background:var(--studio-panel)!important;color:var(--studio-text)!important;border-color:var(--studio-line)!important;box-shadow:none!important}
html.xiaoxiang-studio body #main .cc :is(.cc-bag-tray,.cc-history-item) :is(button,kbd){background:var(--studio-raised)!important;color:var(--studio-text)!important;border-color:var(--studio-line)!important;box-shadow:none!important}
html.xiaoxiang-studio body #psInboxEntry .ps-source-badge{background:#001e36!important;border-color:#2379b6!important;color:#31a8ff!important;font-weight:600!important}
html.xiaoxiang-studio body #main .cc #ccInspector :is(.cc-history-layout,.cc-history-toolbar,.cc-history-body,.cc-history-pagination,.cc-history-tabs,.cc-generation-tabs){background:var(--studio-panel)!important;color:var(--studio-text)!important;border-color:var(--studio-line)!important}
html.xiaoxiang-studio body #main .cc #ccInspector :is(.cc-history-toolbar,.cc-history-pagination) button{background:var(--studio-raised)!important;color:var(--studio-text)!important;border-color:var(--studio-line)!important;box-shadow:none!important}
html.xiaoxiang-studio body #main .cc #ccInspector :is(.cc-history-toolbar,.cc-history-pagination) button.active{background:var(--studio-active)!important;color:#d8e8f5!important}

/* Search rows are one target; do not paint their inner locate button as a raised card. */
html.xiaoxiang-studio body .cc-node-search .cc-node-search-field{background:var(--studio-inset)!important;border:1px solid var(--studio-line)!important;box-shadow:none!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-field:focus-within{border-color:#8299ae!important;box-shadow:none!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-field input{background:transparent!important;border:0!important;border-radius:0!important;outline:none!important;box-shadow:none!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-row{background:transparent!important;border-color:#ffffff12!important;border-radius:5px!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-row:is(:hover,[aria-selected=true],:focus-within){background:#ffffff06!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-locate,html.xiaoxiang-studio body .cc-node-search .cc-node-search-locate:hover{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-reference{background:transparent!important;color:var(--studio-muted)!important;border:1px solid var(--studio-line)!important;box-shadow:none!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-reference:hover{background:var(--studio-raised)!important;color:var(--studio-text)!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-close{background:transparent!important;border:0!important;box-shadow:none!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-close:hover{background:#ffffff0b!important}

/* Compact search and a single neutral floating selection shelf. */
html.xiaoxiang-studio body .cc-node-search{border-radius:12px!important}
html.xiaoxiang-studio body .cc-node-search header{padding:14px 18px 10px!important;gap:12px!important}
html.xiaoxiang-studio body .cc-node-search header strong{font-size:16px!important;font-weight:550!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-field{margin:0 18px!important;border-radius:7px!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-field input{height:36px!important;font-size:12px!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-summary{padding:9px 18px 7px!important;font-size:11px!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-locate{padding:9px 7px!important;gap:10px!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-thumb{width:44px!important;height:42px!important;border-radius:5px!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-title b{font-size:12px!important;font-weight:500!important}
html.xiaoxiang-studio body .cc-node-search .cc-node-search-reference{padding:4px 7px!important;font-size:10px!important;border-radius:5px!important}
html.xiaoxiang-studio body .cc-node-search footer{margin-top:6px!important;padding:9px 18px!important}
html.xiaoxiang-studio body .cc-node-search footer p:first-child{margin:0!important;font-size:10px!important;line-height:18px!important;white-space:nowrap}
html.xiaoxiang-studio body .cc-node-search #ccNodeSearchReferenceHint{display:none!important}
html.xiaoxiang-studio body #main .cc .cc-bag-tray{background:transparent!important;border:0!important;box-shadow:none!important}
html.xiaoxiang-studio body #main .cc .cc-bag-tray.open::before{background:linear-gradient(180deg,#3c3c3ced,#303030f2)!important;border-color:#ffffff1c!important;box-shadow:0 -6px 22px #0002!important;backdrop-filter:blur(16px)!important}
html.xiaoxiang-studio body #main .cc .cc-bag-tray .cc-bag-empty{background:transparent!important;border:0!important;box-shadow:none!important;padding:12px 16px!important;min-height:42px!important;gap:14px!important;font-size:11px!important;color:#b5b5b5!important}
html.xiaoxiang-studio body #main .cc .cc-bag-tray .cc-bag-tray-head{background:transparent!important;border-color:#ffffff18!important}
html.xiaoxiang-studio body #main .cc .cc-bag-tray [data-cc=bag-close]{background:transparent!important;border:0!important;box-shadow:none!important;color:#bbb!important;padding:3px 6px!important;font-size:10px!important}
html.xiaoxiang-studio body #main .cc .cc-bag-tray [data-cc=bag-close]:hover{background:#ffffff0b!important;color:#eee!important}
html.xiaoxiang-studio body #main .cc .cc-bag-tray kbd{background:transparent!important;border:1px solid #ffffff28!important;color:#aaa!important;border-radius:3px!important;font-size:9px!important}

/* Neutral image preview; no inherited green tint or saturation. */
html.xiaoxiang-studio body #detailDialog:has(.cc-lightbox-stage){background:#262626f5!important;border-color:#505050!important;backdrop-filter:blur(12px)!important;color:#ddd!important}
html.xiaoxiang-studio body #detailDialog:has(.cc-lightbox-stage)::backdrop{background:#151515c9!important;backdrop-filter:blur(8px)!important}
html.xiaoxiang-studio body #detailDialog .cc-lightbox-stage{background:#242424!important;border-radius:9px!important}
html.xiaoxiang-studio body #detailDialog .dialog-heading{color:#ccc!important}
html.xiaoxiang-studio body #detailDialog .cc-lightbox-image{border-color:#ffffff16!important}
html.xiaoxiang-studio body #detailDialog :is(.cc-lightbox-stage small,.cc-lightbox-name){background:#292929d9!important;border-color:#ffffff20!important;color:#aaa!important;backdrop-filter:none!important}
html.xiaoxiang-studio body #detailDialog .cc-original-view{background:#383838!important;border-color:#555!important;color:#ddd!important;box-shadow:none!important}
html.c4d-host body #main .cc #ccLibrary.cc-unified-island{left:12px!important;right:auto!important;margin-left:0!important;transform:translateY(-50%)!important;max-height:calc(100% - 24px);overflow:visible}
html.c4d-host body #main .cc .cc-side-shell:not(.open) .cc-panel-reopen{display:none!important}

/* Image preview toolbar: thin neutral surface, quiet actions, one zoom group. */
html.xiaoxiang-studio body #detailDialog .cc-viewer-toolbar{box-sizing:border-box!important;min-height:44px!important;height:44px!important;padding:7px 14px!important;gap:6px!important;background:#2b2b2beF!important;border-bottom:1px solid #ffffff10!important;color:#c9c9c9!important;backdrop-filter:blur(12px)!important}
html.xiaoxiang-studio body #detailDialog .cc-viewer-info{min-width:0!important;flex:1!important;margin-right:12px!important;font-size:11px!important;font-weight:400!important;line-height:18px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#aaa!important}
html.xiaoxiang-studio body #detailDialog .cc-viewer-toolbar button{height:28px!important;min-height:28px!important;padding:0 9px!important;border:1px solid transparent!important;border-radius:5px!important;background:transparent!important;color:#c4c4c4!important;font:11px/26px 'Segoe UI','Microsoft YaHei',sans-serif!important;box-shadow:none!important;flex:none!important}
html.xiaoxiang-studio body #detailDialog .cc-viewer-toolbar button:hover{background:#ffffff0b!important;color:#f0f0f0!important}
html.xiaoxiang-studio body #detailDialog .cc-viewer-toolbar button:focus-visible{outline:1px solid #92a4b4!important;outline-offset:1px!important}
html.xiaoxiang-studio body #detailDialog .cc-viewer-toolbar :is([data-out],[data-in],output){height:28px!important;min-width:28px!important;margin:0!important;padding:0!important;border:0!important;background:#ffffff07!important;line-height:28px!important;text-align:center!important}
html.xiaoxiang-studio body #detailDialog .cc-viewer-toolbar [data-out]{margin-left:5px!important;margin-right:-6px!important;border-radius:5px 0 0 5px!important;font-size:15px!important}
html.xiaoxiang-studio body #detailDialog .cc-viewer-toolbar output{min-width:44px!important;font-size:10px!important;font-variant-numeric:tabular-nums;color:#aaa!important}
html.xiaoxiang-studio body #detailDialog .cc-viewer-toolbar [data-in]{margin-left:-6px!important;border-radius:0 5px 5px 0!important;font-size:15px!important}
html.xiaoxiang-studio body #detailDialog .cc-viewer-toolbar [data-close]{width:28px!important;margin-left:7px!important;padding:0!important;font-size:19px!important;color:#aaa!important}
@media(max-width:600px){html.xiaoxiang-studio body #detailDialog .cc-viewer-toolbar{padding:6px 8px!important;gap:4px!important}html.xiaoxiang-studio body #detailDialog .cc-viewer-info{font-size:10px!important;margin-right:3px!important}html.xiaoxiang-studio body #detailDialog .cc-viewer-toolbar button{padding:0 6px!important}}

/* Video review and inline video share the image editor's graphite surfaces. */
html.xiaoxiang-studio body .cc-video-player.cc-video-review{display:flex!important;flex-direction:column!important;gap:7px!important;max-width:calc(100vw - 32px)!important;max-height:calc(100dvh - 32px)!important;padding:10px!important;background:#303030f7!important;border:1px solid #ffffff20!important;border-radius:10px!important;color:#d3d3d3!important;box-shadow:0 16px 48px #0005!important;backdrop-filter:blur(12px)!important;overflow:hidden!important}
html.xiaoxiang-studio body .cc-video-review>header{flex:none!important;min-height:28px!important;padding:0 2px 5px!important;border-bottom:1px solid #ffffff0d!important;font-size:11px!important;color:#bbb!important}
html.xiaoxiang-studio body .cc-video-review header>div{gap:4px!important}
html.xiaoxiang-studio body .cc-video-review button{height:27px!important;min-height:27px!important;padding:0 8px!important;background:transparent!important;border:1px solid transparent!important;border-radius:4px!important;color:#ccc!important;box-shadow:none!important;font-size:11px!important}
html.xiaoxiang-studio body .cc-video-review button:hover:not(:disabled){background:#ffffff0c!important;color:#fff!important}
html.xiaoxiang-studio body .cc-video-review button:focus-visible{outline:1px solid #92a4b4!important;outline-offset:1px!important}
html.xiaoxiang-studio body .cc-video-review header button{width:26px!important;padding:0!important;font-size:16px!important}
html.xiaoxiang-studio body .cc-video-player.cc-video-review>video{flex:1 1 auto!important;min-height:0!important;height:auto!important;max-height:calc(100dvh - 215px)!important;width:100%!important;object-fit:contain!important;background:#242424!important;border-radius:6px!important}
html.xiaoxiang-studio body .cc-video-review .cc-track-scroll{flex:none!important;min-width:0!important;max-width:100%!important;overflow-x:auto!important}
html.xiaoxiang-studio body .cc-video-review .cc-video-track{height:67px!important}
html.xiaoxiang-studio body .cc-video-review .cc-time-ruler{height:19px!important;color:#999!important;font-size:9px!important}
html.xiaoxiang-studio body .cc-video-review .cc-filmstrip{height:44px!important;border-color:#ffffff20!important;border-radius:4px!important;background:#262626!important}
html.xiaoxiang-studio body .cc-video-review>footer{flex:none!important;min-height:30px!important;margin:0!important;padding:0 2px!important;background:transparent!important;border:0!important}
html.xiaoxiang-studio body .cc-video-review .cc-transport{gap:4px!important}
html.xiaoxiang-studio body .cc-video-review .cc-transport button{width:28px!important;min-width:28px!important;padding:0!important;font-size:16px!important}
html.xiaoxiang-studio body .cc-video-review [data-play]{background:#ffffff0c!important;border:1px solid #ffffff16!important;color:#eee!important}
html.xiaoxiang-studio body .cc-video-review [data-capture]{border-color:#ffffff20!important;font-size:10px!important}
html.xiaoxiang-studio body .cc-video-review-hint{flex:none!important;justify-content:center!important;padding:0!important;font-size:9px!important;color:#929292!important}
html.xiaoxiang-studio body .cc-video-review-hint>span:not([data-position]){display:none!important}
html.xiaoxiang-studio body .cc-video-review-status{margin:0!important;font-size:10px!important;color:#bbb!important}
html.xiaoxiang-studio body #main .cc .type-video{background:#303030!important;border-color:#ffffff24!important}
html.xiaoxiang-studio body #main .cc .type-video :is(header,.cc-video-controls){background:transparent!important;color:#ccc!important;text-shadow:none!important}
html.xiaoxiang-studio body #main .cc .type-video .cc-inline-video{background:#242424!important;object-fit:contain!important}
html.xiaoxiang-studio body #main .cc .type-video .cc-video-controls{left:10px!important;right:10px!important;bottom:7px!important;gap:5px!important;height:24px!important}
html.xiaoxiang-studio body #main .cc .type-video .cc-video-controls button{width:20px!important;min-width:20px!important;height:20px!important;background:transparent!important;border:0!important;color:#ccc!important}
html.xiaoxiang-studio body #main .cc .type-video .cc-video-controls input[type=range]{accent-color:#c4c4c4!important;min-width:0!important;background:transparent!important}
html.xiaoxiang-studio body #main .cc .type-video .cc-video-seek{flex:1 1 36px!important;width:36px!important}
html.xiaoxiang-studio body #main .cc .type-video .cc-video-volume{flex:0 1 28px!important;width:28px!important}
html.xiaoxiang-studio body #main .cc .type-video .cc-video-controls .cc-video-duration{min-width:52px!important;font-size:8px!important;color:#b0b0b0!important}
html.xiaoxiang-studio body .cc-video-review>video:fullscreen{max-height:100vh!important;height:100vh!important;border-radius:0!important}

html.xiaoxiang-studio body .cc-video-player.cc-video-review .cc-transport>button[data-play]{background:#ffffff0c!important;color:#eee!important;border:1px solid #ffffff16!important;border-radius:4px!important;min-width:28px!important}
html.xiaoxiang-studio body .cc-video-player.cc-video-review .cc-transport>button[data-play]:hover{background:#ffffff16!important}

/* Lock the review geometry before metadata, thumbnail decoding and status updates. */
html.xiaoxiang-studio body .cc-video-player.cc-video-review{width:var(--video-review-width, min(760px,calc(100vw - 32px)))!important;height:var(--video-review-height, min(610px,calc(100dvh - 32px)))!important}
html.xiaoxiang-studio body .cc-video-review>video{flex:1 1 0!important;min-height:0!important;max-height:none!important}
html.xiaoxiang-studio body .cc-video-review .cc-video-review-hint{height:14px!important;min-height:14px!important;margin:0!important}
html.xiaoxiang-studio body .cc-video-review .cc-video-review-status,html.xiaoxiang-studio body .cc-video-review .cc-video-review-status:empty{display:block!important;height:14px!important;min-height:14px!important;flex:none!important;line-height:14px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* One state language across resource groups, filters, history and sorting. */
html.xiaoxiang-studio body #main .cc #ccInspector :is(.cc-asset-tabs,.cc-work-tabs,.cc-generation-tabs,.cc-history-tabs,.cc-asset-sort,.cc-media-tools,.cc-asset-collections)>button{background:transparent!important;border:1px solid transparent!important;border-radius:5px!important;color:#aaa!important;font-weight:400!important;box-shadow:none!important;text-shadow:none!important}
html.xiaoxiang-studio body #main .cc #ccInspector :is(.cc-asset-tabs,.cc-work-tabs,.cc-generation-tabs,.cc-history-tabs,.cc-asset-sort,.cc-media-tools,.cc-asset-collections)>button:is(.active,[aria-pressed=true],[aria-selected=true]){background:#ffffff0d!important;border:1px solid #ffffff20!important;color:#e0e0e0!important;font-weight:500!important}
html.xiaoxiang-studio body #main .cc #ccInspector :is(.cc-asset-tabs,.cc-work-tabs,.cc-generation-tabs,.cc-history-tabs,.cc-asset-sort,.cc-media-tools,.cc-asset-collections)>button:hover:not(:disabled){background:#ffffff09!important;color:#ddd!important}
html.xiaoxiang-studio body #main .cc #ccInspector :is(.cc-asset-tabs,.cc-work-tabs,.cc-generation-tabs,.cc-history-tabs,.cc-asset-sort,.cc-media-tools,.cc-asset-collections)>button:focus-visible{outline:1px solid #92a4b4!important;outline-offset:1px!important}
html.xiaoxiang-studio body #main .cc #ccInspector :is(.cc-asset-tabs,.cc-work-tabs,.cc-generation-tabs,.cc-history-tabs,.cc-asset-sort,.cc-media-tools,.cc-asset-collections)>button:disabled{opacity:.4!important;cursor:default!important}
html.xiaoxiang-studio body #main .cc #ccInspector .cc-asset-grid article.selected{border-color:#999!important;background:#ffffff07!important;box-shadow:none!important}
html.xiaoxiang-studio body #main .cc #ccInspector .cc-asset-grid article.selected .cc-asset-card{background:transparent!important;color:#ddd!important}

html.xiaoxiang-studio body #main .cc #ccInspector .cc-asset-grid article.selected .cc-asset-card em{background:#ddd!important;border-color:#ddd!important;color:#303030!important}
html.xiaoxiang-studio body #main .cc #ccInspector button.cc-asset-layout-toggle:is(.active,[aria-pressed=true]){background:#ffffff0d!important;border-color:#ffffff20!important;color:#ddd!important;box-shadow:none!important}

/* Compact review footer and bounded timeline: the end needle cannot create a scrollbar. */
html.xiaoxiang-studio body .cc-video-player.cc-video-review{gap:5px!important;padding:8px!important;border-color:#ffffff16!important;border-radius:8px!important;box-shadow:0 12px 34px #0004!important}
html.xiaoxiang-studio body .cc-video-review>header{min-height:24px!important;padding:0 2px 4px!important}
html.xiaoxiang-studio body .cc-video-review .cc-track-scroll,html.xiaoxiang-studio body .cc-video-review .cc-video-track{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;overflow:clip!important;scrollbar-width:none!important}
html.xiaoxiang-studio body .cc-video-review .cc-track-scroll::-webkit-scrollbar{display:none!important}
html.xiaoxiang-studio body .cc-video-review .cc-video-track{height:58px!important}
html.xiaoxiang-studio body .cc-video-review .cc-video-track:focus-visible{outline:1px solid #92a4b4!important;outline-offset:-1px!important}
html.xiaoxiang-studio body .cc-video-review .cc-time-ruler{height:17px!important}
html.xiaoxiang-studio body .cc-video-review .cc-filmstrip{height:38px!important;border-color:#ffffff16!important;border-radius:3px!important;box-sizing:border-box!important;overflow:hidden!important}
html.xiaoxiang-studio body .cc-video-review .cc-filmstrip>div{flex:1 1 0!important;min-width:0!important;overflow:hidden!important}
html.xiaoxiang-studio body .cc-video-review>footer{display:grid!important;grid-template-columns:26px minmax(80px,1fr) 90px 70px!important;align-items:center!important;gap:5px!important;height:28px!important;min-height:28px!important;padding:0!important}
html.xiaoxiang-studio body .cc-video-review>footer .cc-player-sound{position:static!important;width:26px!important;padding:0!important}
html.xiaoxiang-studio body .cc-video-review>footer .cc-transport{margin:0!important;justify-self:center!important}
html.xiaoxiang-studio body .cc-video-review>footer [data-position]{width:90px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px!important;line-height:18px!important;font-variant-numeric:tabular-nums;text-align:right!important;color:#999!important}
html.xiaoxiang-studio body .cc-video-review>footer [data-capture]{position:static!important;justify-self:end!important;height:25px!important;min-height:25px!important;padding:0 6px!important;border-color:#ffffff16!important;font-size:10px!important}
html.xiaoxiang-studio body .cc-video-review .cc-video-review-hint{display:none!important}
html.xiaoxiang-studio body .cc-video-review .cc-video-review-status,html.xiaoxiang-studio body .cc-video-review .cc-video-review-status:empty{position:absolute!important;left:12px;right:12px;bottom:43px;height:auto!important;min-height:0!important;max-height:30px;padding:3px 6px!important;background:#262626eb;border-radius:3px;pointer-events:none}
html.xiaoxiang-studio body .cc-video-review .cc-video-review-status:empty{display:none!important;padding:0!important}

/* Equal side columns keep playback on the actual window centre. */
html.xiaoxiang-studio body .cc-video-review>footer{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;gap:0!important;position:relative!important}
html.xiaoxiang-studio body .cc-video-review>footer .cc-transport{grid-column:2!important;grid-row:1!important;justify-self:center!important}
html.xiaoxiang-studio body .cc-video-review>footer [data-position]{grid-column:1!important;grid-row:1!important;justify-self:start!important;text-align:left!important;max-width:100%!important}
html.xiaoxiang-studio body .cc-video-review>footer [data-capture]{grid-column:3!important;grid-row:1!important;justify-self:end!important;margin-right:32px!important}
html.xiaoxiang-studio body .cc-video-review>footer .cc-player-sound{position:absolute!important;left:auto!important;right:0!important;top:50%!important;transform:translateY(-50%)!important;margin:0!important}

/* Light-mode tools keep the same geometry and hierarchy with a light palette. Media viewers stay neutral dark. */
html.xiaoxiang-studio[data-theme=light]{--studio-panel:#f4f6f9;--studio-raised:#fff;--studio-inset:#e9edf2;--studio-line:#d5dce5;--studio-text:#344254;--studio-muted:#748194;--studio-active:#e0e7ee}
html.xiaoxiang-studio[data-theme=light] body :is(.cc-node-search,.ca-popover,.ca-manage-dialog,.cc-create-dialog,.xm-browser,#psLibraryPanel,#psInboxPopover){color-scheme:light}
html.xiaoxiang-studio[data-theme=light] body :is(.cc-node-search,.ca-popover,.ca-manage-dialog,.cc-create-dialog,.xm-browser,#psLibraryPanel,#psInboxPopover) :is(input,textarea,select){color:var(--studio-text)!important;border-color:var(--studio-line)!important}
html.xiaoxiang-studio[data-theme=light] body #main .cc #ccInspector :is(.cc-asset-tabs,.cc-work-tabs,.cc-generation-tabs,.cc-history-tabs,.cc-asset-sort,.cc-media-tools,.cc-asset-collections)>button{color:var(--studio-muted)!important}
html.xiaoxiang-studio[data-theme=light] body #main .cc #ccInspector :is(.cc-asset-tabs,.cc-work-tabs,.cc-generation-tabs,.cc-history-tabs,.cc-asset-sort,.cc-media-tools,.cc-asset-collections)>button:is(.active,[aria-pressed=true],[aria-selected=true]){color:var(--studio-text)!important;background:#dce5ef!important;border-color:#cbd6e3!important}
html.xiaoxiang-studio[data-theme=light] body :is(.cc-node-search,.xm-browser) button:hover:not(:disabled){background:#e3e9f1!important;color:var(--studio-text)!important}
html.xiaoxiang-studio[data-theme=light] body .cc-node-search .cc-node-search-reference{color:var(--studio-muted)!important;border-color:var(--studio-line)!important}
html.xiaoxiang-studio[data-theme=light] body .cc-node-search .cc-node-search-reference:hover{background:var(--studio-raised)!important;color:var(--studio-text)!important}
html.xiaoxiang-studio[data-theme=light] body .cc-node-search .cc-node-search-row:is(:hover,[aria-selected=true],:focus-within){background:#dce5ef66!important}
html.xiaoxiang-studio[data-theme=light] body .voice-row[data-preview-state=playing]{background:#dce5ef66!important;border-color:#92a4b4!important}
html.xiaoxiang-studio[data-theme=light] body .voice-row[data-preview-state=playing] [data-preview-button]{background:#e0e7ee!important;color:#344254!important}

html.xiaoxiang-studio[data-theme=light] body #main .cc .cc-bag-tray.open::before{background:linear-gradient(180deg,#f4f6f9f2,#e9edf2f5)!important;border-color:var(--studio-line)!important;box-shadow:0 -6px 22px #33415512!important}
html.xiaoxiang-studio[data-theme=light] body #main .cc .cc-bag-tray :is(.cc-bag-empty,kbd,[data-cc=bag-close]){color:var(--studio-muted)!important;border-color:var(--studio-line)!important}
html.xiaoxiang-studio[data-theme=light] body #main .cc #ccInspector :is(.cc-history-toolbar,.cc-history-pagination) button.active{color:var(--studio-text)!important}
html.xiaoxiang-studio[data-theme=light] body #main .cc #ccInspector .cc-asset-grid article.selected{background:#dce5ef66!important;border-color:#92a4b4!important}
html.xiaoxiang-studio[data-theme=light] body #main .cc #ccInspector .cc-asset-grid article.selected .cc-asset-card{color:var(--studio-text)!important}
html.xiaoxiang-studio[data-theme=light] body #main .cc #ccInspector button.cc-asset-layout-toggle:is(.active,[aria-pressed=true]){background:#dce5ef!important;border-color:#cbd6e3!important;color:var(--studio-text)!important}

/* Common selection toggle and circular Photoshop receiver. */
 html.xiaoxiang-studio .cc :is(.cc-bag-tray,.cc-bag-empty,[data-cc=bag-toggle],[data-cc=bag-close]){--accent:#aeb5bb;--blue:#aeb5bb}
 html.xiaoxiang-studio .cc :is([data-cc=bag-toggle],[data-cc=bag-close],.cc-bag-toggle,.cc-bag-empty){background:#383838!important;border-color:#565656!important;color:#d1d1d1!important;box-shadow:none!important}
 html.xiaoxiang-studio #psInboxEntry{--receiver-blue:#bdc3c8!important;--accent:#bdc3c8!important;background:transparent!important;border:0!important;border-radius:50%!important;width:52px!important;min-width:52px!important;height:52px!important;min-height:52px!important;box-shadow:none!important;opacity:1!important}
 html.xiaoxiang-studio #psInboxEntry.dock-left{transform:translateX(-29px)!important}
 html.xiaoxiang-studio #psInboxEntry.dock-left:is(:hover,:focus-within){transform:translateX(0)!important}
 html.xiaoxiang-studio #psInboxEntry .ps-receiver-mark{stroke:#bdc3c8!important}
 html.xiaoxiang-studio #psInboxEntry .ps-ring-note{color:#bfc3c7!important}
 html.xiaoxiang-studio #psInboxEntry .ps-source-badge{background:#001e36!important;border-color:#2379b6!important;color:#31a8ff!important}
 html.xiaoxiang-studio #psInboxEntry::before{content:none!important}
 html.xiaoxiang-studio #psInboxEntry::after{background:#b8bec3!important;color:#282828!important}
 html.xiaoxiang-studio #psInboxPopover,html.xiaoxiang-studio #psLibraryPanel,html.xiaoxiang-studio .ps-inbox-panel,html.xiaoxiang-studio #psInboxPanel{background:#303030!important;border-color:#565656!important;color:#ddd!important}
html.xiaoxiang-studio[data-theme=light] .cc :is([data-cc=bag-toggle],[data-cc=bag-close],.cc-bag-toggle,.cc-bag-empty){background:var(--studio-raised)!important;border-color:var(--studio-line)!important;color:var(--studio-text)!important}
html.xiaoxiang-studio[data-theme=light] :is(#psInboxPopover,#psLibraryPanel,.ps-inbox-panel,#psInboxPanel){background:var(--studio-panel)!important;border-color:var(--studio-line)!important;color:var(--studio-text)!important}

/* The compose field shares its surrounding panel; no second dark inset. */
html.xiaoxiang-studio body #main .cc #ccInspector#ccInspector #ccAssistantHost .ca-compose,
html.xiaoxiang-studio body #main .cc #ccInspector#ccInspector #ccAssistantHost .ca-input-shell,
html.xiaoxiang-studio body #main .cc #ccInspector#ccInspector #ccAssistantHost .ca-compose textarea{background:transparent!important;background-image:none!important;color:var(--studio-text)!important;box-shadow:none!important}

/* Seek across the node width, independent of transport, time and volume. */
html.xiaoxiang-studio body #main .cc .type-video .cc-video-controls{display:grid!important;grid-template-columns:20px minmax(0,1fr) 20px 38px auto!important;grid-template-rows:10px 20px!important;column-gap:5px!important;row-gap:2px!important;height:32px!important;left:10px!important;right:10px!important;bottom:5px!important}
html.xiaoxiang-studio body #main .cc .type-video .cc-video-controls .cc-video-seek{grid-column:1/-1!important;grid-row:1!important;width:100%!important;min-width:0!important;height:10px!important;margin:0!important;padding:0!important;box-sizing:border-box!important}
html.xiaoxiang-studio body #main .cc .type-video .cc-video-controls .cc-video-toggle{grid-row:2!important;grid-column:1!important}
html.xiaoxiang-studio body #main .cc .type-video .cc-video-controls .cc-video-duration{grid-row:2!important;grid-column:2!important;justify-self:start!important;font-size:9px!important;white-space:nowrap!important}
html.xiaoxiang-studio body #main .cc .type-video .cc-video-controls .cc-video-mute{grid-row:2!important;grid-column:3!important}
html.xiaoxiang-studio body #main .cc .type-video .cc-video-controls .cc-video-volume{grid-row:2!important;grid-column:4!important;width:38px!important}
html.xiaoxiang-studio body #main .cc .type-video .cc-video-controls .cc-node-number{grid-row:2!important;grid-column:5!important;position:static!important;margin:0!important}

/* Stable picker header: search never moves when the breadcrumb appears. */
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>header{order:0!important;flex:none!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>.agent-cloud-search{order:1!important;flex:none!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>.xm-path{order:2!important;flex:none!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>.xm-files{order:3!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>p[role=status]{order:4!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>footer{order:5!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser .xm-back{width:26px!important;height:26px!important;min-height:26px!important;padding:0!important;border-color:transparent!important;background:transparent!important;font-size:22px!important;line-height:1!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser .xm-back:disabled{opacity:.3!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser :is(.xm-drive-icon,.xm-drive-art){display:grid!important;place-items:center!important;width:58px!important;height:51px!important;transform:none!important;background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser :is(.xm-drive-icon,.xm-drive-art)::before,
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser :is(.xm-drive-icon,.xm-drive-art)::after{display:none!important;content:none!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser :is(.xm-drive-icon,.xm-drive-art) svg{display:block!important;width:58px!important;height:51px!important;max-width:none!important;filter:none!important}

/* Lighter material cards; preview artwork stays separate from the type badge. */
html.xiaoxiang-studio body dialog.xm-browser .xm-files{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;padding:2px!important}
html.xiaoxiang-studio body dialog.xm-browser .xm-files>button{display:flex!important;flex-direction:column!important;align-items:stretch!important;min-width:0!important;width:100%!important;min-height:0!important;padding:8px!important;gap:6px!important;border-radius:9px!important;box-shadow:none!important;border:1px solid var(--studio-line)!important;overflow:hidden!important}
html.xiaoxiang-studio body dialog.xm-browser .xm-folder{height:104px!important;align-items:center!important;justify-content:center!important}
html.xiaoxiang-studio body dialog.xm-browser .xm-folder strong{font-size:12px!important;font-weight:500!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html.xiaoxiang-studio body dialog.xm-browser .xm-drive-art svg{width:48px!important;height:42px!important}
html.xiaoxiang-studio body dialog.xm-browser .xm-file>span:last-child{font-size:11px!important;font-weight:400!important;line-height:18px!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html.xiaoxiang-studio body dialog.xm-browser .xm-file-cover{display:block!important;flex:none!important;position:relative!important;width:100%!important;height:auto!important;aspect-ratio:16/9!important;border-radius:6px!important;overflow:hidden!important;background:var(--studio-inset)!important}
html.xiaoxiang-studio body dialog.xm-browser .xm-file-cover::before{display:none!important;content:none!important}
html.xiaoxiang-studio body dialog.xm-browser .xm-file-cover img{width:100%!important;height:100%!important;object-fit:contain!important;position:absolute!important;inset:0}
html.xiaoxiang-studio body dialog.xm-browser .xm-preview-fallback{position:absolute;inset:0;display:grid;place-items:center;color:var(--studio-muted);font-size:22px}
html.xiaoxiang-studio body dialog.xm-browser .xm-file-cover:has(.xm-loaded) .xm-preview-fallback{visibility:hidden}
html.xiaoxiang-studio body dialog.xm-browser .xm-video-badge{position:absolute;right:5px;top:5px;z-index:3;width:20px;height:20px;border-radius:5px;display:grid;place-items:center;background:#202020b8;color:#fff;pointer-events:none}
html.xiaoxiang-studio body dialog.xm-browser .xm-video-badge svg{width:15px;height:15px;fill:currentColor;stroke:none}

html.xiaoxiang-studio body dialog.xm-browser .agent-cloud-search input{border:1px solid var(--studio-line)!important;outline:none!important;box-shadow:none!important;border-radius:7px!important}
html.xiaoxiang-studio body dialog.xm-browser .agent-cloud-search button{border:1px solid var(--studio-line)!important;box-shadow:none!important;border-radius:7px!important}

/* Implicit rows must fit cards, never divide the scroll viewport's height. */
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>.xm-files{grid-template-rows:none!important;grid-auto-rows:max-content!important;align-content:start!important;align-items:start!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>.xm-files>button{box-sizing:border-box!important;height:auto!important;flex-shrink:0!important;align-self:start!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>.xm-files>button.xm-folder{min-height:104px!important;height:auto!important;align-self:stretch!important;align-items:center!important;justify-content:center!important;text-align:center!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>.xm-files>button.xm-folder :is(.xm-folder-icon,.xm-drive-art,strong){flex:none!important;align-self:center!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>.xm-files>button>span:last-child{flex:none!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>footer{box-sizing:border-box!important;flex:0 0 26px!important;min-height:26px!important;height:26px!important;max-height:26px!important;padding:2px 0 0!important;gap:10px!important;font-size:11px!important;line-height:20px!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>footer>button{box-sizing:border-box!important;min-width:54px!important;min-height:22px!important;height:22px!important;max-height:22px!important;padding:0 8px!important;line-height:20px!important;font-size:11px!important;border-radius:6px!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>footer[hidden],
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>p[role=status]:empty{display:none!important}

html.xiaoxiang-studio body #detailDialog .cc-preview-load-state{position:absolute;inset:42px 0 0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;background:#242424a8;color:#ccc;text-align:center;font-size:12px}
html.xiaoxiang-studio body #detailDialog .cc-original-loading{cursor:progress}
html.xiaoxiang-studio body #detailDialog .cc-original-loading .cc-lightbox-image{max-width:90%!important;max-height:82%!important;width:auto!important;height:auto!important;opacity:.45}
html.xiaoxiang-studio body #detailDialog .cc-original-spinner{width:20px;height:20px;border:2px solid #ffffff24;border-top-color:#bac4cf;border-radius:50%;animation:cc-original-spin .8s linear infinite}
html.xiaoxiang-studio body #detailDialog .cc-original-spinner[hidden]{display:none}
html.xiaoxiang-studio body #detailDialog [data-loading-retry]{padding:5px 14px;border:1px solid #ffffff30;border-radius:6px;background:#383838;color:#ddd;cursor:pointer}
@keyframes cc-original-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){html.xiaoxiang-studio body #detailDialog .cc-original-spinner{animation:none}}

/* Tab focus: keep host identity/actions in DOM, slide the shared header away. */
html:is(.c4d-host,.blender-host) body:has(.cc) .workspace>.topbar{
  transition:transform .16s ease,opacity .16s ease,margin-bottom .16s ease,visibility 0s;
}
html:is(.c4d-host,.blender-host) body:has(.cc.clean-view) .workspace>.topbar{
  transform:translateY(-100%)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;margin-bottom:-48px!important;transition-delay:0s,0s,0s,.16s;
}
@media(prefers-reduced-motion:reduce){
 html:is(.c4d-host,.blender-host) body:has(.cc) .workspace>.topbar{transition:none!important;}
}

/* Shared window chrome: reference is the timeline editor's 13px / 44px header. */
html.xiaoxiang-studio{--studio-window-title-size:13px;--studio-window-title-weight:600;--studio-window-header-height:44px}
html.xiaoxiang-studio body :is(.cte,.ciw.cc-image-workbench,.cc-node-search,dialog.xm-browser,dialog.voice-workbench,.cc-video-review,#psLibraryPanel,#psInboxPopover)>header{
 box-sizing:border-box!important;display:flex!important;align-items:center!important;min-height:var(--studio-window-header-height)!important;height:var(--studio-window-header-height)!important;max-height:var(--studio-window-header-height)!important;flex:0 0 var(--studio-window-header-height)!important;padding:0 14px!important;margin:0!important;gap:10px!important;
}
html.xiaoxiang-studio body :is(.cte,.ciw.cc-image-workbench,.cc-node-search,dialog.xm-browser,dialog.voice-workbench,.cc-video-review,#psLibraryPanel,#psInboxPopover)>header :is(strong,h2,h3){
 font:var(--studio-window-title-weight) var(--studio-window-title-size)/1.5 system-ui,sans-serif!important;letter-spacing:0!important;margin:0!important;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
html.xiaoxiang-studio body .cc-node-search>header>div{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important;overflow:hidden!important}
html.xiaoxiang-studio body .cc-node-search>header strong{flex:none!important}
html.xiaoxiang-studio body .cc-node-search>header p{margin:0!important;font-size:11px!important;line-height:1.5!important;min-width:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser[open]{padding-top:0!important}
html.xiaoxiang-studio body dialog.agent-cloud-picker.xm-browser>header{padding:0!important}
html.xiaoxiang-studio body :is(.cc-node-search,dialog.xm-browser,dialog.voice-workbench,.ciw.cc-image-workbench,.cc-video-review)>header>button[aria-label^="关闭"]{box-sizing:border-box!important;flex:0 0 28px!important;min-width:28px!important;width:28px!important;min-height:28px!important;height:28px!important;padding:0!important;line-height:1!important;font-size:18px!important}

/* Voice uses an important cascade layer; opt-in shared chrome must join it. */
@layer voice-studio-theme{
 html.xiaoxiang-studio body dialog.voice-workbench>header{height:var(--studio-window-header-height)!important;min-height:var(--studio-window-header-height)!important;max-height:var(--studio-window-header-height)!important;padding:0 14px!important;box-sizing:border-box!important}
 html.xiaoxiang-studio body dialog.voice-workbench>header strong{font:var(--studio-window-title-weight) var(--studio-window-title-size)/1.5 system-ui,sans-serif!important;letter-spacing:0!important;margin:0!important}
 html.xiaoxiang-studio body dialog.voice-workbench>header>button[aria-label^="关闭"]{width:28px!important;height:28px!important;min-height:28px!important;padding:0!important}
}

/* Tab layout stability: animate chrome without moving the canvas viewport. */
html:is(.c4d-host,.blender-host) body:has(.cc) .workspace>.topbar{margin-bottom:0!important;transition:transform .18s ease,opacity .18s ease,visibility 0s!important}
html:is(.c4d-host,.blender-host) body:has(.cc.clean-view) .workspace>.topbar{margin-bottom:0!important;transition-delay:0s,0s,.18s!important}
html.xiaoxiang-studio body #main .cc .cc-tool-island{transition:transform .18s ease,opacity .18s ease,visibility 0s!important}
html.xiaoxiang-studio body #main .cc.clean-view .cc-tool-island{display:grid!important;transform:translate(calc(-100% - 24px),-50%)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition-delay:0s,0s,.18s!important}
html.xiaoxiang-studio body #main .cc.clean-view #ccLibrary.cc-unified-island{transform:translate(calc(-100% - 24px),-50%)!important}
html.xiaoxiang-studio body #main .cc.clean-view .cc-side-shell{display:flex!important}
@media(prefers-reduced-motion:reduce){html.xiaoxiang-studio body #main .cc .cc-tool-island,html:is(.c4d-host,.blender-host) body:has(.cc) .workspace>.topbar{transition:none!important;transition-delay:0s!important}}

/* Focus inspector fills the hidden host header without shifting the canvas. */
html:is(.c4d-host,.blender-host) body #main:has(.cc.clean-view){overflow:visible!important}
html:is(.c4d-host,.blender-host) body #main .cc.clean-view{overflow:visible!important}
html:is(.c4d-host,.blender-host) body #main .cc.clean-view .cc-side-shell{margin-top:-48px!important;height:calc(100% + 48px)!important;max-height:none!important;align-self:flex-start}
