:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--white:#fff;--primary:#f8f7ff;--secondary:rgba(248,247,255,.66);--divider:rgba(255,255,255,.24);--glass:rgba(236,229,246,.18);--glass-strong:rgba(59,50,82,.62);--hover:rgba(255,255,255,.16);--accent:#f3eaff;--warning:#defb47;--success:#bff3cb;--shadow:0 24px 64px rgba(21,20,55,.26);--spring:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;color:var(--primary)}body{min-height:100vh;overflow-x:hidden;background:#6079ad}button,input{font:inherit}button{cursor:pointer}.pickart{position:relative;isolation:isolate;min-height:100vh;overflow:hidden;background:radial-gradient(circle at 50% 4%,rgba(255,203,224,.9),transparent 36%),radial-gradient(circle at 78% 44%,rgba(205,148,191,.58),transparent 38%),radial-gradient(circle at 20% 72%,rgba(80,76,139,.72),transparent 44%),linear-gradient(180deg,#7289c5 0%,#815f98 55%,#365b80 100%)}.pickart:before{content:"";position:absolute;z-index:-1;inset:-32px;background:inherit;filter:blur(22px)}
.brandbar{position:relative;z-index:8;display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6)}.brand{display:flex;align-items:center;gap:var(--space-3);border:0;background:none;color:var(--primary);text-align:left}.brand-mark{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--divider);border-radius:16px;background:var(--glass);backdrop-filter:blur(18px);font-weight:800;font-size:20px}.brand strong,.brand small{display:block}.brand strong{font-size:18px;line-height:24px}.brand small{font-size:14px;line-height:20px;color:var(--secondary)}.new-project,.glass-button{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--divider);border-radius:50%;background:var(--glass);color:var(--primary);backdrop-filter:blur(18px);font-size:28px}
.home-view{position:relative;z-index:2;min-height:calc(100vh - 96px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 var(--space-5) var(--space-8);transition:filter .32s ease}.coverflow{position:relative;width:min(1180px,94vw);height:560px;min-height:400px;perspective:1400px;touch-action:pan-y}.cover-card{position:absolute;left:50%;top:50%;width:320px;height:456px;margin:-228px 0 0 -160px;padding:12px 12px 16px;border:1px solid rgba(255,255,255,.5);border-radius:32px;background:linear-gradient(155deg,rgba(239,231,245,.46),rgba(119,94,139,.42));box-shadow:var(--shadow),inset 0 1px rgba(255,255,255,.62);backdrop-filter:blur(24px) saturate(130%);transform:translateX(calc(var(--offset)*218px)) rotateY(calc(var(--offset)*-10deg)) scale(calc(1 - min(abs(var(--offset))*.11,.32)));z-index:calc(20 - abs(var(--offset)));opacity:calc(1 - min(abs(var(--offset))*.12,.48));overflow:hidden;transition:transform .52s var(--spring),opacity .32s ease,filter .32s ease}.cover-card:not(.active){filter:blur(calc(min(abs(var(--offset))*1px,3px)));cursor:grab}.cover-card.active{cursor:pointer}.cover-card img{display:block;width:100%;height:360px;object-fit:cover;border-radius:22px;box-shadow:0 12px 24px rgba(24,22,55,.24)}.cover-copy{display:block;padding:14px 12px 0;text-align:center}.cover-copy strong,.cover-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cover-copy strong{font-size:24px;line-height:28px}.cover-copy span{margin-top:var(--space-1);font-size:14px;line-height:20px;color:rgba(33,26,42,.66)}.flow-hint{margin:0 0 var(--space-3);font-size:14px;color:rgba(255,255,255,.72)}
/* Fixed-grid Bottom Dock */
.glass-dock{display:grid;grid-template-columns:320px 720px 320px;grid-template-rows:88px;align-items:center;justify-content:center;width:1360px;height:112px;margin:0;padding:12px;border:1px solid var(--divider);border-radius:56px;background:linear-gradient(135deg,rgba(237,229,246,.3),rgba(111,94,140,.28));box-shadow:var(--shadow),inset 0 1px rgba(255,255,255,.48);backdrop-filter:blur(28px) saturate(130%)}.dock-region{display:grid;grid-template-columns:repeat(3,80px);grid-template-rows:80px;place-content:center;width:320px;height:88px}.dock-icon{position:relative;isolation:isolate;display:grid;place-items:center;width:80px;height:80px;margin:0;padding:0;border:0;background:transparent;color:var(--primary)}.toolbar-glyph{position:relative;z-index:1;display:grid;place-items:center;width:24px;height:24px;font-size:24px;line-height:1}.toolbar-expand{font-size:34px;letter-spacing:-7px;transform:translateX(-3px)}.hover-halo{position:absolute;z-index:0;inset:0;width:52px;height:52px;margin:auto;border:1px solid rgba(255,255,255,.26);border-radius:50%;background:var(--hover);box-shadow:0 8px 20px rgba(30,26,56,.18),inset 0 1px rgba(255,255,255,.34);backdrop-filter:blur(10px);opacity:0;transform:scale(1);transition:opacity .22s var(--spring),transform .22s var(--spring)}.dock-icon:hover .hover-halo,.dock-icon:focus-visible .hover-halo{opacity:1;transform:scale(1.06)}.dock-icon:focus-visible{outline:0}.now-card{display:grid;grid-template-columns:72px minmax(0,1fr) 48px;align-items:center;column-gap:16px;width:720px;height:88px;margin:0;padding:8px 16px;border:0;border-radius:20px;background:rgba(45,38,67,.38);color:var(--primary);text-align:left;overflow:hidden}.now-thumb{display:block;width:72px;height:72px;border-radius:14px;background-position:center;background-size:cover}.now-copy{display:grid;grid-template-rows:24px 18px 8px;row-gap:4px;min-width:0;align-content:center}.now-copy strong,.now-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.now-copy strong{font-size:18px;line-height:24px}.now-copy small{font-size:14px;line-height:18px;color:var(--secondary)}.now-progress{display:block;width:360px;height:4px;margin:0;border-radius:999px;background:rgba(255,255,255,.2);overflow:hidden}.now-progress i{display:block;width:var(--dock-progress,180px);height:100%;border-radius:inherit;background:rgba(255,255,255,.9);box-shadow:0 0 12px rgba(255,255,255,.24);transition:width .42s var(--spring)}.more{display:grid;place-items:center;width:48px;height:72px;justify-self:end;letter-spacing:2px}
/* Bottom Sheet stays in the Home Workspace. */
.bottom-sheet{position:fixed;z-index:16;left:50%;bottom:0;width:min(960px,calc(100vw - 48px));padding:var(--space-3) var(--space-6) var(--space-6);border:1px solid var(--divider);border-bottom:0;border-radius:32px 32px 0 0;background:rgba(43,37,62,.72);box-shadow:0 -20px 64px rgba(20,18,42,.28),inset 0 1px rgba(255,255,255,.34);backdrop-filter:blur(0) saturate(130%);opacity:0;pointer-events:none;transform:translateX(-50%) translateY(100%);transition:transform .45s var(--spring),opacity .45s var(--spring),backdrop-filter .45s var(--spring)}.bottom-sheet.open{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0);backdrop-filter:blur(20px) saturate(130%)}.sheet-handle{width:48px;height:4px;margin:0 auto var(--space-4);border-radius:999px;background:rgba(255,255,255,.48)}.sheet-head{display:flex;align-items:start;justify-content:space-between;gap:var(--space-4)}.sheet-kicker,.sheet-label{margin:0;color:var(--secondary);font-size:14px;line-height:20px}.sheet-head h2{margin:var(--space-1) 0 0;font-size:28px;line-height:32px}.sheet-close{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--divider);border-radius:50%;background:rgba(255,255,255,.08);color:var(--primary);font-size:28px}.sheet-description{margin:var(--space-4) 0;color:var(--primary);font-size:18px;line-height:24px}.sheet-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2);margin-bottom:var(--space-4)}.sheet-stat{padding:var(--space-3);border:1px solid rgba(255,255,255,.16);border-radius:16px;background:rgba(255,255,255,.07)}.sheet-stat strong,.sheet-stat span{display:block}.sheet-stat strong{font-size:18px;line-height:24px}.sheet-stat span{font-size:14px;color:var(--secondary)}.sheet-tools,.sheet-capsules{display:flex;gap:var(--space-2);overflow-x:auto;padding:var(--space-2) 0}.sheet-tool,.sheet-capsules button{height:40px;padding:0 var(--space-4);border:1px solid rgba(255,255,255,.24);border-radius:20px;background:rgba(255,255,255,.08);color:var(--primary);white-space:nowrap}.sheet-capsules button.active{background:var(--accent);color:#423553;border-color:transparent}
/* Detail Layer */
.detail-panel{position:fixed;z-index:20;top:var(--space-3);right:var(--space-3);bottom:var(--space-3);width:min(640px,48vw);padding:var(--space-4);overflow-y:auto;border:1px solid var(--divider);border-radius:32px;background:linear-gradient(145deg,rgba(64,53,87,.78),rgba(35,31,51,.74));box-shadow:-24px 0 64px rgba(16,15,40,.28),inset 0 1px rgba(255,255,255,.34);backdrop-filter:blur(30px) saturate(135%);opacity:0;pointer-events:none;transform:translateX(calc(100% + 32px));transition:transform .42s var(--spring),opacity .25s ease}.detail-panel.open{opacity:1;pointer-events:auto;transform:none}.detail-panel .library-head{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;gap:var(--space-3);align-items:start;margin-bottom:var(--space-4)}.detail-panel .glass-button{width:48px;height:48px}.detail-panel h1{margin:0;font-size:28px;line-height:32px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library-head small,.library-count{color:var(--secondary)}.library-count{margin:var(--space-1) 0 0;font-size:14px}.detail-toolbar{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.detail-tab,.detail-ai-button,.subcategory{height:40px;padding:0 var(--space-4);border:1px solid rgba(255,255,255,.24);border-radius:20px;background:rgba(255,255,255,.08);color:var(--primary);font-size:14px}.detail-tab.active,.subcategory.active{background:var(--accent);color:#423553;border-color:transparent}.detail-ai-button{margin-left:auto;width:48px;padding:0;font-weight:700}.subcategories{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-3)}.subcategory{white-space:nowrap}.pin{display:inline-block;width:100%;margin:0 0 var(--space-2);padding:0;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(255,255,255,.06);overflow:hidden;break-inside:avoid}.pin img{display:block;width:100%;height:auto;min-height:0}.pin span{display:none}.moodboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.moodboard img{display:block;width:100%;height:160px;object-fit:cover;border:1px solid rgba(255,255,255,.2);border-radius:12px}.masonry[hidden],.moodboard[hidden]{display:none}
/* AI, preview, and create surfaces */
.ai-panel{position:fixed;z-index:30;right:var(--space-5);bottom:var(--space-5);width:min(416px,calc(100vw - 48px));height:520px;display:flex;flex-direction:column;padding:var(--space-4);border:1px solid var(--divider);border-radius:24px;background:rgba(42,36,58,.82);box-shadow:var(--shadow);backdrop-filter:blur(30px);opacity:0;pointer-events:none;transform:translateY(32px);transition:transform .42s var(--spring),opacity .25s ease}.ai-panel.open{opacity:1;pointer-events:auto;transform:none}.ai-head,.ai-input{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.ai-head button,.ai-input button{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.16);color:var(--primary)}.ai-thread{flex:1;overflow:auto;padding:var(--space-4) 0;font-size:14px;line-height:20px}.ai-input input{flex:1;height:48px;padding:0 var(--space-4);border:1px solid var(--divider);border-radius:24px;background:rgba(255,255,255,.1);color:var(--primary)}.preview{position:fixed;z-index:40;inset:0;display:grid;place-items:center;padding:var(--space-5);background:rgba(22,20,40,.56);backdrop-filter:blur(18px);opacity:0;pointer-events:none;transition:opacity .25s ease}.preview.open{opacity:1;pointer-events:auto}.preview img{max-width:90vw;max-height:90vh;border-radius:24px;box-shadow:var(--shadow)}dialog{width:min(440px,calc(100vw - 32px));border:1px solid var(--divider);border-radius:28px;background:rgba(73,64,94,.84);color:var(--primary);box-shadow:var(--shadow);backdrop-filter:blur(30px)}dialog::backdrop{background:rgba(23,21,43,.44);backdrop-filter:blur(10px)}dialog form{position:relative;display:grid;gap:var(--space-3);padding:var(--space-4)}dialog h2{margin:0;font-size:28px}.dialog-close{position:absolute;right:var(--space-2);top:var(--space-2);width:40px;height:40px;border:0;border-radius:50%}dialog input{height:48px;padding:0 var(--space-4);border:1px solid var(--divider);border-radius:24px;background:rgba(255,255,255,.14);color:var(--primary)}.project-upload{display:grid;grid-template-columns:48px 1fr;gap:var(--space-2);align-items:center;padding:var(--space-3);border:1px dashed var(--divider);border-radius:16px;background:rgba(255,255,255,.08)}.upload-plus{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--divider);border-radius:50%;font-size:28px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.project-grid button,.create-project{height:40px;border:1px solid var(--divider);border-radius:16px;background:rgba(255,255,255,.1);color:var(--primary)}.project-grid button.selected,.create-project{background:var(--accent);color:#423553;border-color:transparent;font-weight:700}
@media(max-width:900px){.detail-panel{top:0;right:0;bottom:0;width:100%;border-radius:0;transform:translateY(100%)}.detail-panel.open{transform:none}.bottom-sheet{width:calc(100vw - 32px)}}@media(max-width:760px){.brandbar{padding:var(--space-4)}.home-view{padding:0 var(--space-2) var(--space-7)}.coverflow{height:420px;min-height:420px;transform-origin:center}.bottom-sheet{width:100%;padding:var(--space-3) var(--space-4) max(var(--space-5),env(safe-area-inset-bottom));border-radius:28px 28px 0 0}.sheet-stats{grid-template-columns:1fr}.detail-panel{padding:var(--space-4)}.moodboard img{height:120px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Wide collection sheet: the Mini Player expands upward into this Workspace layer. */
.bottom-sheet{left:50%!important;bottom:24px!important;width:min(1400px,calc(100vw - 96px))!important;min-height:560px!important;padding:24px 64px 32px!important;border:1px solid rgba(255,255,255,.32)!important;border-radius:32px!important;background:linear-gradient(145deg,rgba(55,46,78,.62),rgba(38,34,61,.5))!important;box-shadow:0 -24px 72px rgba(19,18,43,.24),inset 0 1px rgba(255,255,255,.3)!important;backdrop-filter:blur(0) saturate(135%)!important;transform-origin:var(--sheet-origin-x,50%) var(--sheet-origin-y,100%);transform:translateX(-50%) translateY(calc(100% + 24px)) scale(.92)!important;transition:transform .45s var(--spring),opacity .45s var(--spring),backdrop-filter .45s var(--spring)!important}.bottom-sheet.open{transform:translateX(-50%) translateY(0) scale(1)!important;backdrop-filter:blur(20px) saturate(135%)!important}.bottom-sheet .sheet-head{align-items:center}.bottom-sheet .sheet-head h2{font-size:48px;line-height:56px}.bottom-sheet .sheet-close{width:80px;height:80px;background:rgba(255,255,255,.06);font-size:40px}.bottom-sheet .sheet-description{max-width:920px;margin:24px 0 32px;font-size:28px;line-height:36px}.bottom-sheet .sheet-stats{gap:16px;margin-bottom:32px}.bottom-sheet .sheet-stat{min-height:128px;padding:24px;border-radius:24px;background:rgba(255,255,255,.07)}.bottom-sheet .sheet-stat strong{font-size:36px;line-height:40px}.bottom-sheet .sheet-stat span{margin-top:8px;font-size:18px}.bottom-sheet .sheet-tools{gap:16px;padding:0 0 24px}.bottom-sheet .sheet-tool{height:56px;padding:0 24px;border-radius:28px;font-size:18px}.bottom-sheet .sheet-label{font-size:18px;line-height:24px}.bottom-sheet .sheet-capsules{gap:16px;padding:16px 0}.bottom-sheet .sheet-capsules button{height:64px;padding:0 32px;border-radius:32px;font-size:20px}
/* Transparent black VisionOS glass; Home remains visibly present behind AI Studio. */
.ai-studio{background:linear-gradient(145deg,rgba(20,20,30,.42),rgba(56,44,75,.3))!important;border-color:rgba(255,255,255,.34)!important;box-shadow:0 32px 96px rgba(7,7,15,.26),inset 0 1px rgba(255,255,255,.34)!important;backdrop-filter:blur(32px) saturate(150%)!important}.ai-studio:before{content:"";position:absolute;z-index:-1;inset:0;border-radius:inherit;background:rgba(255,255,255,.025);pointer-events:none}.ai-studio .glass-button{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.32)!important;box-shadow:inset 0 1px rgba(255,255,255,.22)}
@media(max-width:900px){.bottom-sheet{bottom:0!important;width:100%!important;min-height:0!important;padding:16px 24px max(24px,env(safe-area-inset-bottom))!important;border-radius:28px 28px 0 0!important}.bottom-sheet .sheet-head h2{font-size:36px;line-height:40px}.bottom-sheet .sheet-description{font-size:18px;line-height:24px}.bottom-sheet .sheet-stat{min-height:96px;padding:16px}.bottom-sheet .sheet-stat strong{font-size:28px;line-height:32px}.bottom-sheet .sheet-capsules button{height:48px;padding:0 20px;font-size:16px}}
.bottom-sheet .sheet-stat,.bottom-sheet .sheet-tool,.bottom-sheet .sheet-capsules button{background:rgba(255,255,255,.055)!important}.bottom-sheet .sheet-stat{border-color:rgba(255,255,255,.22)!important}
/* Brand asset and dock feedback preserve all fixed cell geometry. */
.brand-mark{overflow:hidden!important;background:#050505!important}.brand-mark img{display:block;width:100%;height:100%;object-fit:cover}.dock-icon .toolbar-glyph{transition:transform .18s var(--spring),filter .18s ease}.dock-icon:hover .toolbar-glyph{transform:scale(1.08);filter:brightness(1.08)}.dock-icon:active .toolbar-glyph{transform:scale(.9)}.dock-icon:active .hover-halo{opacity:1;transform:scale(.98)}
/* Mini Player morph: a low dock-shaped surface expands into the collection sheet. */
.sheet-open .home-view{filter:blur(3px) brightness(.82);transition:filter .45s var(--spring)}.bottom-sheet{will-change:transform,opacity,backdrop-filter,border-radius;transform-origin:center bottom!important;border-radius:56px 56px 0 0!important;clip-path:inset(0 round 56px 56px 0 0)}.bottom-sheet.open{border-radius:32px!important;clip-path:inset(0 round 32px)}.bottom-sheet.open .sheet-handle{animation:sheetHandleIn .45s var(--spring) both}.bottom-sheet.open .sheet-head,.bottom-sheet.open .sheet-description,.bottom-sheet.open .sheet-stats,.bottom-sheet.open .sheet-tools,.bottom-sheet.open .sheet-label,.bottom-sheet.open .sheet-capsules{animation:sheetContentIn .45s var(--spring) both}.bottom-sheet.open .sheet-description{animation-delay:.03s}.bottom-sheet.open .sheet-stats{animation-delay:.06s}.bottom-sheet.open .sheet-tools{animation-delay:.09s}.bottom-sheet.open .sheet-label,.bottom-sheet.open .sheet-capsules{animation-delay:.12s}@keyframes sheetHandleIn{from{opacity:0;transform:scaleX(.4)}to{opacity:1;transform:scaleX(1)}}@keyframes sheetContentIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
/* AI Studio: fixed glass frame, contained scroll layer, and fixed input action cell. */
.ai-studio{display:block!important;overflow:hidden!important;padding:0!important}.studio-scroll{width:100%;height:100%;padding:32px 48px 32px 32px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.34) transparent}.studio-scroll::-webkit-scrollbar{width:12px}.studio-scroll::-webkit-scrollbar-track{margin:24px 0;background:transparent}.studio-scroll::-webkit-scrollbar-thumb{border:4px solid transparent;border-radius:999px;background:rgba(255,255,255,.32);background-clip:padding-box;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}.ai-studio::-webkit-scrollbar{display:none}.studio-head{position:relative;min-height:80px;padding-right:80px}.studio-head .glass-button{position:absolute;right:0;top:0;width:80px!important;height:80px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important}.studio-head .glass-button:before{content:"";position:absolute;inset:0;width:52px;height:52px;margin:auto;border:1px solid rgba(255,255,255,.32);border-radius:50%;background:rgba(255,255,255,.08)}.studio-head .glass-button{font-size:28px!important}.studio-prompt,.studio-chat,.studio-generate{max-width:100%;overflow:hidden}.studio-inputs{position:sticky;bottom:0;z-index:2;padding-top:16px;padding-bottom:4px;background:linear-gradient(180deg,transparent,rgba(34,29,52,.6) 32%)}.studio-inputs #studio-send{display:grid!important;place-items:center!important;flex:0 0 48px!important;width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;margin-left:auto!important;padding:0!important;border-radius:50%!important;transform:none!important;overflow:hidden}
/* Keep the collection scrollbar as an inset glass layer, never a browser-white edge. */
.detail-panel,.ai-studio{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.34) transparent;scrollbar-gutter:stable}.detail-panel::-webkit-scrollbar,.ai-studio::-webkit-scrollbar{width:12px}.detail-panel::-webkit-scrollbar-track,.ai-studio::-webkit-scrollbar-track{margin:24px 0;background:transparent}.detail-panel::-webkit-scrollbar-thumb,.ai-studio::-webkit-scrollbar-thumb{border:4px solid transparent;border-radius:999px;background:rgba(255,255,255,.32);background-clip:padding-box;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}.detail-panel::-webkit-scrollbar-thumb:hover,.ai-studio::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.48);background-clip:padding-box}
/* Outer frame clips every child; only the inset content layer is allowed to scroll. */
/* The image wall has its own compact canvas. The reserved right zone belongs only to the scroll indicator. */
.detail-panel{display:block!important;overflow:hidden!important;padding:0!important}.detail-scroll{width:100%;height:100%;padding:16px 32px 16px 16px!important;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:none!important;scrollbar-gutter:auto!important}.detail-scroll::-webkit-scrollbar{display:none!important;width:0!important}.detail-panel::-webkit-scrollbar{display:none}.detail-panel .library-head{margin-top:0}.detail-panel .glass-button{max-width:48px;max-height:48px}.detail-panel .detail-close{max-width:80px!important;max-height:80px!important}
/* Horizontal capsule scroller is inset glass, never the browser-white scrollbar. */
.sheet-capsules,.sheet-tools,.subcategories{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.34) transparent;scrollbar-gutter:stable}.sheet-capsules::-webkit-scrollbar,.sheet-tools::-webkit-scrollbar,.subcategories::-webkit-scrollbar{height:10px}.sheet-capsules::-webkit-scrollbar-track,.sheet-tools::-webkit-scrollbar-track,.subcategories::-webkit-scrollbar-track{margin:0 16px;background:transparent}.sheet-capsules::-webkit-scrollbar-thumb,.sheet-tools::-webkit-scrollbar-thumb,.subcategories::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background:rgba(255,255,255,.32);background-clip:padding-box;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}.sheet-capsules::-webkit-scrollbar-thumb:hover,.sheet-tools::-webkit-scrollbar-thumb:hover,.subcategories::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.48);background-clip:padding-box}.bottom-sheet{overflow:hidden}.bottom-sheet .sheet-capsules{padding-bottom:8px;margin-bottom:0}
/* Stable icon geometry and a single scaled Dock stage prevent crop-driven misalignment. */
.dock-stage{--dock-scale:1;position:relative;display:flex;justify-content:center;align-items:flex-start;width:100%;height:112px;overflow:visible}.dock-stage .glass-dock{position:absolute;left:50%;top:0;transform:translateX(-50%) scale(var(--dock-scale));transform-origin:center top}.toolbar-glyph{display:block!important;width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;overflow:visible}.toolbar-expand{font-size:0!important;letter-spacing:0!important;transform:none!important}.dock-icon svg{display:block;width:24px;height:24px}.detail-close{position:relative;isolation:isolate;width:80px!important;height:80px!important;margin:-16px 0 0 -16px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}.detail-close svg{position:relative;z-index:1;display:block;width:24px;height:24px}.detail-close:before{content:"";position:absolute;inset:0;width:52px;height:52px;margin:auto;border:1px solid rgba(255,255,255,.32);border-radius:50%;background:rgba(255,255,255,.08);box-shadow:inset 0 1px rgba(255,255,255,.24)}
@media(max-width:1450px){.dock-stage{--dock-scale:.82;height:92px}.glass-dock{margin:0!important}}@media(max-width:1120px){.dock-stage{--dock-scale:.68;height:78px}.coverflow{transform:scale(.88)!important}}@media(max-width:760px){.dock-stage{--dock-scale:.46;height:54px}.glass-dock{margin:0!important}.coverflow{transform:scale(.8)!important}}
/* AI Studio is a contextual Workspace layer, not a chat modal. */
.ai-studio{position:fixed;z-index:32;left:50%;top:50%;width:min(880px,calc(100vw - 48px));max-height:calc(100vh - 64px);padding:var(--space-5);overflow-y:auto;border:1px solid rgba(255,255,255,.28);border-radius:32px;background:linear-gradient(145deg,rgba(25,24,35,.92),rgba(43,35,57,.82));box-shadow:0 32px 96px rgba(7,7,15,.48),inset 0 1px rgba(255,255,255,.2);backdrop-filter:blur(32px) saturate(140%);opacity:0;pointer-events:none;transform:translate(-50%,-44%) scale(.96);transition:transform .42s var(--spring),opacity .25s ease}.ai-studio.open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.studio-head{display:flex;align-items:start;justify-content:space-between;gap:var(--space-4)}.studio-head p,.studio-generate>p{margin:0;color:var(--secondary);font-size:14px;line-height:20px}.studio-head h2{margin:var(--space-1) 0 0;font-size:36px;line-height:40px}.studio-prompt{display:grid;gap:var(--space-2);margin:var(--space-5) 0}.studio-prompt span{font-size:18px;line-height:24px}.studio-prompt textarea,.studio-generate input{width:100%;min-height:112px;padding:var(--space-4);border:1px solid rgba(255,255,255,.2);border-radius:20px;background:rgba(255,255,255,.08);color:var(--primary);resize:vertical}.studio-segmented{display:grid;grid-template-columns:1fr 1fr;width:280px;padding:var(--space-1);border:1px solid rgba(255,255,255,.18);border-radius:20px;background:rgba(255,255,255,.08)}.studio-mode{height:36px;border:0;border-radius:16px;background:transparent;color:var(--secondary)}.studio-mode.active{background:rgba(255,255,255,.86);color:#302842}.studio-chat,.studio-generate{margin-top:var(--space-4);padding:var(--space-4);border:1px solid rgba(255,255,255,.14);border-radius:20px;background:rgba(255,255,255,.05)}.studio-message{padding:var(--space-3);border-radius:16px;background:rgba(255,255,255,.06);font-size:14px;line-height:20px}.studio-message+ .studio-message{margin-top:var(--space-2)}.studio-message.user{background:rgba(227,215,247,.16)}.studio-message p{margin:var(--space-1) 0 0}.studio-actions,.studio-inputs,.studio-options,.studio-styles{display:flex;flex-wrap:wrap;gap:var(--space-2)}.studio-actions{margin-top:var(--space-3)}.studio-actions button,.studio-inputs button,.studio-options button,.studio-styles button{height:36px;padding:0 var(--space-3);border:1px solid rgba(255,255,255,.2);border-radius:18px;background:rgba(255,255,255,.08);color:var(--primary)}.studio-generate{display:grid;gap:var(--space-3)}.studio-generate label{display:grid;gap:var(--space-2);font-size:14px}.studio-generate input{min-height:48px;resize:none}.studio-styles button.active{background:var(--accent);color:#423553;border-color:transparent}.studio-generate-button{height:48px;border:0;border-radius:24px;background:var(--accent);color:#423553;font-weight:700}.studio-inputs{align-items:center;margin-top:var(--space-4)}.studio-inputs #studio-send{margin-left:auto;width:48px;padding:0;border-radius:50%;background:var(--accent);color:#423553}@media(max-width:760px){.ai-studio{width:100%;max-height:100%;height:100%;padding:var(--space-5) var(--space-4);border-radius:0}.studio-head h2{font-size:28px;line-height:32px}.studio-segmented{width:100%}}

/* Clear Cover Flow and a single predictable right-edge collection transition. */
.cover-card,.cover-card:not(.active){filter:none!important;opacity:1!important}
.detail-panel{transform-origin:right center!important;transform:translateX(calc(100% + 32px))!important;clip-path:inset(0 round 32px);opacity:0;transition:transform .32s var(--spring),opacity .25s ease!important;will-change:transform,opacity}
.detail-panel.open{transform:translateX(0)!important;opacity:1;transition-duration:.42s,.25s!important}
.detail-panel.open .library-head,.detail-panel.open .detail-toolbar,.detail-panel.open .subcategories{animation:detailHeaderIn .42s var(--spring) both}
.detail-panel.open .detail-toolbar{animation-delay:.04s}.detail-panel.open .subcategories{animation-delay:.08s}
@keyframes detailHeaderIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}

/* Contextual AI remains a compact bottom-right glass window. */
.ai-panel{background:rgba(35,31,51,.54);border-color:rgba(255,255,255,.32);box-shadow:0 24px 64px rgba(16,15,40,.28),inset 0 1px rgba(255,255,255,.3);backdrop-filter:blur(30px) saturate(140%);transform:translateY(24px) scale(.96);transform-origin:right bottom}
.ai-panel.open{transform:translateY(0) scale(1)}

/* Brand artwork keeps a 4px optical safe area inside its fixed cell. */
.brand-mark{background:transparent!important;border-color:rgba(255,255,255,.28)}.brand-mark img{width:40px!important;height:40px!important;object-fit:contain!important}
@media(max-width:900px){.detail-panel{transform:translateX(100%)!important}.detail-panel.open{transform:translateX(0)!important}}

/* The Workspace itself never scrolls; only contained panels own scroll state. */
html,body{width:100%;height:100%;overflow:hidden}.pickart{width:100%;height:100vh;min-height:0}.brandbar{flex:0 0 96px}

/* Keep the AI Studio footer visually continuous with the glass surface. */
.studio-inputs{background:transparent!important}

/* Workspace layers never alter or re-composite the persistent Home Cover Flow. */
.home-view,.sheet-open .home-view{filter:none!important;opacity:1!important;transition:none!important}

/* Mini Player expands in place into a compact Dock-anchored collection surface. */
.bottom-sheet{
  left:var(--sheet-anchor-x,50%)!important;
  right:auto!important;
  bottom:var(--sheet-anchor-bottom,136px)!important;
  width:min(880px,calc(100vw - 48px))!important;
  min-height:0!important;
  max-height:calc(100vh - var(--sheet-anchor-bottom,136px) - 24px)!important;
  padding:12px 40px 24px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.32)!important;
  border-radius:24px!important;
  background:rgba(47,40,72,.72)!important;
  box-shadow:0 24px 64px rgba(18,16,42,.3),inset 0 1px rgba(255,255,255,.3)!important;
  clip-path:none!important;
  transform-origin:center bottom!important;
  transform:none!important;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  backdrop-filter:blur(0) saturate(135%)!important;
  transition:none!important;
}
.bottom-sheet.morphing,.bottom-sheet.open{visibility:visible}
.bottom-sheet.open{transform:none!important;opacity:1;pointer-events:auto;backdrop-filter:blur(20px) saturate(135%)!important}
.bottom-sheet.closing{opacity:1!important;pointer-events:none!important}
.bottom-sheet .sheet-handle{margin-bottom:12px!important}
.bottom-sheet .sheet-head{align-items:center!important}.bottom-sheet .sheet-head h2{font-size:28px!important;line-height:32px!important}
.bottom-sheet .sheet-close{width:48px!important;height:48px!important;font-size:28px!important}
.bottom-sheet .sheet-description{max-width:none!important;margin:12px 0 16px!important;font-size:18px!important;line-height:24px!important}
.bottom-sheet .sheet-stats{gap:8px!important;margin-bottom:12px!important}.bottom-sheet .sheet-stat{min-height:72px!important;padding:12px!important;border-radius:16px!important}
.bottom-sheet .sheet-stat strong{font-size:28px!important;line-height:32px!important}.bottom-sheet .sheet-stat span{margin-top:4px!important;font-size:14px!important}
.bottom-sheet .sheet-tools{gap:8px!important;padding:8px 0 12px!important}.bottom-sheet .sheet-tool{height:40px!important;padding:0 16px!important;border-radius:20px!important;font-size:14px!important}
.bottom-sheet .sheet-label{font-size:14px!important;line-height:20px!important}.bottom-sheet .sheet-capsules{gap:8px!important;padding:8px 0 0!important}
.bottom-sheet .sheet-capsules button{height:40px!important;padding:0 16px!important;border-radius:20px!important;font-size:14px!important}
@media(max-width:900px){.bottom-sheet{left:50%!important;bottom:max(72px,env(safe-area-inset-bottom))!important;width:calc(100vw - 32px)!important;max-height:calc(100vh - 96px)!important;padding:12px 16px 24px!important;border-radius:24px!important}.bottom-sheet .sheet-stats{grid-template-columns:repeat(3,1fr)!important}.bottom-sheet .sheet-description{font-size:14px!important;line-height:20px!important}}

/* Shared-element handoff: the Mini Player surface becomes the expanded panel. */
.now-card{outline:none!important}.now-card:focus,.now-card:focus-visible{outline:none!important;box-shadow:none!important}
.bottom-sheet .sheet-handle,.bottom-sheet .sheet-head,.bottom-sheet .sheet-description,.bottom-sheet .sheet-stats,.bottom-sheet .sheet-tools,.bottom-sheet .sheet-label,.bottom-sheet .sheet-capsules{opacity:0!important;transform:translateY(24px)!important;animation:none!important;transition:opacity .18s ease,transform .32s var(--spring)!important}
.bottom-sheet.open .sheet-handle,.bottom-sheet.open .sheet-head,.bottom-sheet.open .sheet-description,.bottom-sheet.open .sheet-stats,.bottom-sheet.open .sheet-tools,.bottom-sheet.open .sheet-label,.bottom-sheet.open .sheet-capsules{opacity:1!important;transform:translateY(0)!important;transition-delay:.16s!important}
.bottom-sheet.open .sheet-description{transition-delay:.18s!important}.bottom-sheet.open .sheet-stats{transition-delay:.2s!important}.bottom-sheet.open .sheet-tools{transition-delay:.22s!important}.bottom-sheet.open .sheet-label,.bottom-sheet.open .sheet-capsules{transition-delay:.24s!important}

/* AI modes are mutually exclusive and scroll clear of the attachment controls. */
.studio-chat[hidden],.studio-generate[hidden]{display:none!important}
.studio-generate:not([hidden]){display:grid!important}
.studio-scroll{padding-bottom:96px!important;scroll-padding-bottom:96px}
.studio-inputs{position:relative!important;bottom:auto!important;margin-top:24px!important;padding:0!important;background:transparent!important}
.studio-generate{margin-bottom:0!important}.studio-generate-button{flex:0 0 auto!important;min-height:48px!important}
.ai-thinking{color:var(--secondary)}.ai-error,.studio-message.error{color:var(--warning)}.ai-input button:disabled,.studio-inputs button:disabled{cursor:wait;opacity:.58}
.studio-options button.active{background:var(--accent);color:#423553;border-color:transparent}.studio-results{display:grid;gap:12px}.studio-results:empty{display:none}.generated-image{display:grid;gap:8px}.generated-image img{display:block;width:100%;max-height:520px;object-fit:contain;border-radius:16px;background:rgba(0,0,0,.18)}.generated-image button{height:40px;border:1px solid rgba(255,255,255,.24);border-radius:20px;background:rgba(255,255,255,.08);color:var(--primary)}

/* One Hero surface owns the complete Dock-to-panel geometry transition. */
.bottom-sheet.hero-active{position:fixed!important;z-index:24!important;bottom:auto!important;right:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:12px 40px 24px!important;display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;overflow:hidden!important;clip-path:none!important;background:rgba(47,40,72,.72)!important;transform:none!important;transition:none!important;will-change:transform!important}
.bottom-sheet.hero-active .sheet-handle,.bottom-sheet.hero-active .sheet-head,.bottom-sheet.hero-active .sheet-description,.bottom-sheet.hero-active .sheet-stats,.bottom-sheet.hero-active .sheet-tools,.bottom-sheet.hero-active .sheet-label,.bottom-sheet.hero-active .sheet-capsules{opacity:0!important;transform:translateY(16px)!important;animation:none!important;transition:opacity .135s ease,transform .135s var(--spring)!important;transition-delay:0s!important}
.bottom-sheet.hero-active.hero-content-visible .sheet-handle,.bottom-sheet.hero-active.hero-content-visible .sheet-head,.bottom-sheet.hero-active.hero-content-visible .sheet-description,.bottom-sheet.hero-active.hero-content-visible .sheet-stats,.bottom-sheet.hero-active.hero-content-visible .sheet-tools,.bottom-sheet.hero-active.hero-content-visible .sheet-label,.bottom-sheet.hero-active.hero-content-visible .sheet-capsules{opacity:1!important;transform:translateY(0)!important}
.bottom-sheet.hero-active.closing .sheet-handle,.bottom-sheet.hero-active.closing .sheet-head,.bottom-sheet.hero-active.closing .sheet-description,.bottom-sheet.hero-active.closing .sheet-stats,.bottom-sheet.hero-active.closing .sheet-tools,.bottom-sheet.hero-active.closing .sheet-label,.bottom-sheet.hero-active.closing .sheet-capsules{opacity:0!important;transform:translateY(16px)!important;transition-duration:.12s!important}

/* Moodboard Detail is a layered workspace surface with image-first hierarchy. */
.moodboard button{display:block;width:100%;padding:0;border:0;border-radius:12px;background:transparent;overflow:hidden}.moodboard button img{width:100%}
.moodboard-detail{position:fixed;z-index:28;inset:24px;width:min(1040px,calc(100vw - 48px));margin-left:auto;border:1px solid rgba(255,255,255,.3);border-radius:32px;background:rgba(39,34,57,.76);box-shadow:-24px 24px 72px rgba(16,15,40,.3),inset 0 1px rgba(255,255,255,.3);backdrop-filter:blur(32px) saturate(140%);opacity:0;pointer-events:none;transform:translateX(32px);transition:opacity .25s ease,transform .42s var(--spring);overflow:hidden}.moodboard-detail.open{opacity:1;pointer-events:auto;transform:translateX(0)}
.moodboard-detail-scroll{height:100%;padding:24px 32px 32px;overflow:auto}.moodboard-detail-head{display:grid;grid-template-columns:80px minmax(0,1fr) auto;align-items:center;gap:16px;margin-bottom:24px}.moodboard-detail-head small,.moodboard-notes-label,.moodboard-note-meta{color:var(--secondary);font-size:14px;line-height:20px}.moodboard-detail-head h2{margin:4px 0 0;font-size:28px;line-height:32px}.moodboard-detail-close{position:relative;display:grid;place-items:center;width:80px;height:80px;padding:0;border:0;background:transparent;color:var(--primary)}.moodboard-detail-close:before{content:"";position:absolute;width:52px;height:52px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(255,255,255,.08)}.moodboard-detail-close svg{position:relative;width:24px;height:24px}.moodboard-analyze{height:48px;padding:0 24px;border:1px solid rgba(255,255,255,.28);border-radius:24px;background:rgba(255,255,255,.08);color:var(--primary)}
.moodboard-detail-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:24px}.moodboard-visuals{min-width:0}.moodboard-hero{display:block;width:100%;height:min(56vh,560px);object-fit:cover;border-radius:24px;background:rgba(0,0,0,.12);box-shadow:0 24px 48px rgba(15,13,34,.24)}.moodboard-thumbs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:12px}.moodboard-thumbs button{height:80px;padding:0;border:2px solid transparent;border-radius:12px;background:transparent;overflow:hidden;opacity:.68;transition:opacity .18s ease,border-color .18s ease,transform .18s var(--spring)}.moodboard-thumbs button:hover,.moodboard-thumbs button.active{opacity:1;border-color:rgba(255,255,255,.72);transform:translateY(-4px)}.moodboard-thumbs img{display:block;width:100%;height:100%;object-fit:cover}.moodboard-notes{display:flex;flex-direction:column;min-height:400px;padding:24px;border:1px solid rgba(255,255,255,.2);border-radius:24px;background:rgba(255,255,255,.055)}.moodboard-notes-label{margin:0 0 12px}.moodboard-notes textarea{flex:1;width:100%;min-height:320px;padding:0;border:0;background:transparent;color:var(--primary);font-family:inherit;font-size:18px;line-height:1.65;resize:none;outline:none}.moodboard-note-meta{display:flex;justify-content:space-between;gap:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.14)}
@media(max-width:900px){.moodboard-detail{inset:0;width:100%;border-radius:0}.moodboard-detail-scroll{padding:16px}.moodboard-detail-layout{grid-template-columns:1fr}.moodboard-hero{height:48vh}.moodboard-notes textarea{min-height:240px}}

/* Moodboard text stays inside its glass panel; only the content regions may scroll. */
.moodboard-detail{display:grid;grid-template-rows:minmax(0,1fr) 104px;overflow:hidden!important}.moodboard-detail-scroll{min-height:0;height:auto!important;padding:24px 32px!important;overflow:hidden!important}.moodboard-detail-layout{height:calc(100% - 104px);min-height:0}.moodboard-visuals,.moodboard-notes{min-height:0;overflow:hidden}.moodboard-visuals{overflow-y:auto;padding-right:12px}.moodboard-notes{padding-right:12px}.moodboard-notes textarea{min-height:0!important;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.34) transparent}.moodboard-visuals::-webkit-scrollbar,.moodboard-notes textarea::-webkit-scrollbar,.ai-thread::-webkit-scrollbar,.writer-stream::-webkit-scrollbar,.moodboard-writer::-webkit-scrollbar{width:10px}.moodboard-visuals::-webkit-scrollbar-track,.moodboard-notes textarea::-webkit-scrollbar-track,.ai-thread::-webkit-scrollbar-track,.writer-stream::-webkit-scrollbar-track,.moodboard-writer::-webkit-scrollbar-track{background:transparent}.moodboard-visuals::-webkit-scrollbar-thumb,.moodboard-notes textarea::-webkit-scrollbar-thumb,.ai-thread::-webkit-scrollbar-thumb,.writer-stream::-webkit-scrollbar-thumb,.moodboard-writer::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background:rgba(255,255,255,.32);background-clip:padding-box;box-shadow:inset 0 0 0 1px rgba(255,255,255,.15)}.moodboard-visuals::-webkit-scrollbar-thumb:hover,.moodboard-notes textarea::-webkit-scrollbar-thumb:hover,.ai-thread::-webkit-scrollbar-thumb:hover,.writer-stream::-webkit-scrollbar-thumb:hover,.moodboard-writer::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.48);background-clip:padding-box}.ai-thread,.writer-stream,.moodboard-writer{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.34) transparent}
@media(max-width:900px){.moodboard-detail{grid-template-rows:minmax(0,1fr) 96px}.moodboard-detail-scroll{padding:16px!important}.moodboard-detail-layout{height:calc(100% - 88px);grid-template-columns:1fr}.moodboard-visuals{display:none}.moodboard-notes{min-height:0}.moodboard-writer-dock{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;margin:0 16px 16px}}

/* File import remains inside the category-creation surface during drag feedback. */
.project-upload.drop-ready{border-color:rgba(255,255,255,.72)!important;background:rgba(255,255,255,.16)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.24);transform:scale(1.01)}
.project-upload{grid-template-columns:48px minmax(0,1fr)!important}.project-upload-preview{grid-column:1/-1;display:grid;grid-template-columns:repeat(6,48px);gap:8px;max-width:100%;overflow-x:auto;padding-top:8px}.project-upload-preview:empty{display:none}.project-upload-preview img{display:block;width:48px;height:48px;border:1px solid rgba(255,255,255,.24);border-radius:8px;object-fit:cover;box-shadow:0 8px 16px rgba(15,13,34,.16)}

/* AI inputs and send feedback remain clean inside their glass controls. */
.ai-input input,.studio-prompt textarea{caret-color:#fff!important;outline:none!important;text-decoration:none!important;text-decoration-color:transparent!important;-webkit-text-fill-color:var(--primary)}.ai-input input:focus,.studio-prompt textarea:focus{border-color:rgba(255,255,255,.48)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}#ai-send,#studio-send{transform:scale(1);transition:transform .18s var(--spring),background .18s ease,opacity .18s ease!important}#ai-send:hover,#studio-send:hover{transform:scale(1.06)}#ai-send:active,#studio-send:active{transform:scale(.9)}#ai-send.sending,#studio-send.sending{animation:aiSendPulse .9s ease-in-out infinite}@keyframes aiSendPulse{50%{transform:scale(.84);opacity:.62}}

/* AI Writer is a contextual glass workspace with streaming structured output. */
.moodboard-detail-scroll{padding-bottom:120px}.doubao-autowrite{display:grid;grid-template-columns:40px auto;align-items:center;gap:12px;min-width:152px;height:56px;padding:8px 16px 8px 8px;border:1px solid rgba(255,255,255,.3);border-radius:28px;background:rgba(255,255,255,.1);color:var(--primary);text-align:left;box-shadow:inset 0 1px rgba(255,255,255,.24);backdrop-filter:blur(18px);transition:background .18s ease,box-shadow .18s ease}.doubao-autowrite:hover{background:rgba(255,255,255,.18);box-shadow:0 12px 28px rgba(14,12,32,.18),inset 0 1px rgba(255,255,255,.28)}.doubao-autowrite-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.16);font-size:14px;font-weight:700}.doubao-autowrite small,.doubao-autowrite strong{display:block}.doubao-autowrite small{color:var(--secondary);font-size:14px;line-height:16px}.doubao-autowrite strong{font-size:18px;line-height:24px}.doubao-autowrite.analyzing .doubao-autowrite-mark{animation:none}.doubao-autowrite:disabled{cursor:wait;opacity:.68}.moodboard-writer-dock{position:absolute;z-index:3;left:32px;right:32px;bottom:24px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:24px;height:80px;padding:0 16px 0 24px;border:1px solid rgba(255,255,255,.28);border-radius:40px;background:rgba(35,31,51,.58);box-shadow:0 20px 48px rgba(14,12,32,.24),inset 0 1px rgba(255,255,255,.28);backdrop-filter:blur(28px) saturate(145%)}.moodboard-writer-dock small,.moodboard-writer-dock strong{display:block}.moodboard-writer-dock small{color:var(--secondary);font-size:14px;line-height:20px}.moodboard-writer-dock strong{font-size:18px;line-height:24px}.layout-format{display:grid;grid-template-columns:64px 64px;padding:4px;border:1px solid rgba(255,255,255,.22);border-radius:24px;background:rgba(255,255,255,.06)}.layout-format button{height:40px;border:0;border-radius:20px;background:transparent;color:var(--secondary)}.layout-format button.active{background:rgba(255,255,255,.86);color:#302842}.moodboard-analyze{min-width:120px;background:rgba(255,255,255,.14)}.moodboard-analyze:disabled{cursor:wait;opacity:.62}
.moodboard-ai-actions{display:flex;align-items:center;gap:10px}.moodboard-enhance{min-width:138px}.moodboard-enhance .doubao-autowrite-mark{background:rgba(210,194,255,.24)}
.moodboard-writer{position:fixed;z-index:31;top:24px;right:24px;bottom:24px;width:min(760px,calc(100vw - 48px));padding:24px 32px 32px;border:1px solid rgba(255,255,255,.3);border-radius:32px;background:rgba(27,25,39,.82);box-shadow:-32px 24px 96px rgba(10,9,24,.36),inset 0 1px rgba(255,255,255,.26);backdrop-filter:blur(36px) saturate(145%);opacity:0;pointer-events:none;transform:translateX(48px);transition:opacity .25s ease,transform .42s var(--spring);overflow:auto}.moodboard-writer.open{opacity:1;pointer-events:auto;transform:translateX(0)}.writer-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px}.writer-head small{color:var(--secondary);font-size:14px}.writer-head h2{margin:4px 0 0;font-size:36px;line-height:40px}.writer-head-actions{display:flex;align-items:center;gap:8px}.writer-head-actions button{height:40px;padding:0 16px;border:1px solid rgba(255,255,255,.22);border-radius:20px;background:rgba(255,255,255,.08);color:var(--primary)}.writer-head-actions .writer-close{width:48px;height:48px;padding:0;border-radius:50%;font-size:28px}.writer-status{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:14px;margin:24px 0;padding:14px 16px;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:rgba(255,255,255,.055)}.writer-status-copy{min-width:0}.writer-status strong,.writer-status small{display:block}.writer-status small{margin-top:4px;color:var(--secondary);font-size:14px;line-height:20px}.moodboard-visual-core-orb{width:56px;height:56px}.writer-stream{max-height:320px;margin:0;padding:16px;border-radius:16px;background:rgba(0,0,0,.16);color:rgba(255,255,255,.76);font:14px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap;overflow:auto}.writer-stream[hidden]{display:none}.writer-sections{display:grid;gap:8px}.writer-sections details{border-bottom:1px solid rgba(255,255,255,.14)}.writer-sections summary{display:flex;align-items:center;justify-content:space-between;min-height:64px;cursor:pointer;font-size:18px;font-weight:700;list-style:none}.writer-sections summary::-webkit-details-marker{display:none}.writer-sections details[open] summary span:last-child{transform:rotate(45deg)}.writer-sections summary span:last-child{font-size:28px;font-weight:400;transition:transform .18s var(--spring)}.writer-sections details p{margin:0;padding:0 0 24px;color:rgba(255,255,255,.82);font-size:18px;line-height:1.65}.writer-keywords{display:flex;flex-wrap:wrap;gap:8px;padding-top:16px}.writer-keywords span{padding:8px 12px;border:1px solid rgba(255,255,255,.2);border-radius:16px;background:rgba(255,255,255,.06);font-size:14px}
@media(max-width:900px){.moodboard-writer-dock{left:16px;right:16px;bottom:16px;grid-template-columns:1fr auto}.moodboard-writer-dock>span{display:none}.moodboard-writer{inset:0;width:100%;border-radius:0;padding:16px}.writer-head{grid-template-columns:1fr}.writer-head-actions{overflow-x:auto}.writer-head h2{font-size:28px;line-height:32px}}
.print-layout{display:none}.print-layout *{box-sizing:border-box}.print-header p{margin:0 0 16px;font-size:14px;font-weight:700}.print-header h1{margin:0;font-size:44px;line-height:1.1}.print-header span{display:block;margin-top:12px;color:#666;font-size:14px}.print-images{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(180px,.8fr);gap:16px;margin:32px 0}.print-hero{display:block;width:100%;height:660px;object-fit:cover}.print-thumbnails{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;align-content:start}.print-thumbnails img{display:block;width:100%;height:200px;object-fit:cover}.print-brief{margin:32px 0}.print-brief h2,.print-section h2{margin:0 0 8px}.print-brief p,.print-section p{margin:0;color:#333;font-size:16px;line-height:1.6}.print-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px}.print-section{break-inside:avoid}.print-section h2{font-size:18px}.print-keywords{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}.print-keywords span{padding:6px 10px;border:1px solid #ccc;border-radius:14px;font-size:12px}.print-layout footer{margin-top:32px;color:#888;font-size:12px}
@media print{@page{size:A4 portrait;margin:14mm}body.printing-layout{background:#fff!important}.printing-layout .pickart>*{display:none!important}.printing-layout #print-layout{display:block!important;position:static!important;width:auto!important;height:auto!important;color:#111!important;background:#fff!important}.printing-layout .print-images,.printing-layout .print-hero,.printing-layout .print-thumbnails img{-webkit-print-color-adjust:exact;print-color-adjust:exact}.printing-layout .print-section{display:block!important}.printing-layout .print-sections{display:grid!important}}

/* Category metadata tools stay contained within the shared-element Bottom Sheet. */
.sheet-date-trigger{max-width:100%;padding:0;border:0;background:transparent;color:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;text-align:left;white-space:nowrap}.sheet-date-trigger:after{content:"";display:inline-block;width:8px;height:8px;margin-left:12px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-4px) rotate(45deg);opacity:.64}.sheet-date-trigger:hover{color:#fff}
.sheet-tags-area{display:grid;grid-template-rows:40px minmax(0,104px);gap:12px;max-height:156px}.sheet-tag-editor{display:grid;grid-template-columns:minmax(160px,320px) 96px;gap:8px}.sheet-tag-editor input,.sheet-tag-editor button{height:40px;border:1px solid rgba(255,255,255,.24);border-radius:20px;color:var(--primary)}.sheet-tag-editor input{min-width:0;padding:0 16px;background:rgba(255,255,255,.055);outline:none}.sheet-tag-editor input::placeholder{color:var(--secondary)}.sheet-tag-editor input:focus{border-color:rgba(255,255,255,.56);background:rgba(255,255,255,.1)}.sheet-tag-editor button{padding:0 16px;background:rgba(255,255,255,.1);white-space:nowrap}.sheet-tag-editor button:hover{background:rgba(255,255,255,.18)}.sheet-tags-area .sheet-capsules{display:flex;align-content:flex-start;flex-wrap:wrap;max-height:104px;padding:0 8px 0 0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.42) transparent}.sheet-tags-area .sheet-capsules::-webkit-scrollbar{width:12px;height:auto}.sheet-tags-area .sheet-capsules::-webkit-scrollbar-track{background:transparent}.sheet-tags-area .sheet-capsules::-webkit-scrollbar-thumb{border:4px solid transparent;border-radius:999px;background:rgba(255,255,255,.36);background-clip:padding-box}.sheet-tags-area .sheet-capsules::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.56);background-clip:padding-box}
.sheet-capsules button{display:inline-grid!important;grid-template-columns:auto 20px;align-items:center;gap:8px}.sheet-capsules button i{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;font-style:normal;font-size:18px;line-height:20px;opacity:.54;transition:opacity .18s ease,background .18s ease}.sheet-capsules button i:hover{background:rgba(255,255,255,.18);opacity:1}.sheet-capsules button.active i{background:rgba(66,53,83,.1)}
.sheet-date-browser{position:absolute;z-index:30;left:var(--date-popover-left,24px);top:var(--date-popover-top,24px);width:min(272px,calc(100% - 48px));max-height:336px;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:8px;padding:12px;border:1px solid rgba(255,255,255,.28);border-radius:16px;background:rgba(52,45,74,.48);box-shadow:0 16px 40px rgba(20,18,42,.28),inset 0 1px rgba(255,255,255,.36);backdrop-filter:blur(32px) saturate(145%);opacity:0;pointer-events:none;transform:translateY(-8px) scale(.98);transition:opacity .25s ease,transform .32s var(--spring)}.sheet-date-browser.open{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.sheet-date-browser header{display:flex;align-items:center;justify-content:space-between;gap:8px}.sheet-date-browser header strong{font-size:16px;line-height:20px}.sheet-date-browser header button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:rgba(255,255,255,.08);color:var(--primary);font-size:20px}.sheet-calendar{padding:8px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.055)}.sheet-calendar-head{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;text-align:center}.sheet-calendar-head button,.sheet-calendar-today{height:28px;padding:0;border:0;border-radius:14px;background:transparent;color:var(--primary);font-size:20px}.sheet-calendar-head strong{font-size:14px}.sheet-calendar-week,.sheet-calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-top:4px;text-align:center}.sheet-calendar-week span{color:var(--secondary);font-size:11px}.sheet-calendar-days button{height:22px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--primary);font-size:12px}.sheet-calendar-days button:hover,.sheet-calendar-days button.selected{background:rgba(255,255,255,.22)}.sheet-calendar-days button.today{box-shadow:inset 0 0 0 1px rgba(255,255,255,.56)}.sheet-calendar-today{display:block;width:52px;margin:4px 0 0 auto;color:var(--primary);font-size:12px;background:rgba(255,255,255,.1)}.sheet-date-results{display:grid;align-content:start;gap:4px;max-height:48px;overflow:auto}.sheet-date-results>button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:40px;padding:6px 8px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.065);color:var(--primary);text-align:left;transition:background .18s ease,transform .18s var(--spring)}.sheet-date-results>button:hover{background:rgba(255,255,255,.14);transform:translateY(-4px)}.sheet-date-results strong{font-size:14px}.sheet-date-results span{color:var(--secondary);font-size:12px}.sheet-date-results p{margin:0;color:var(--secondary);font-size:12px}
.bottom-sheet.hero-active .sheet-tags-area{opacity:0;transform:translateY(16px);transition:opacity .135s ease,transform .135s var(--spring)}.bottom-sheet.hero-active.hero-content-visible .sheet-tags-area{opacity:1;transform:translateY(0)}.bottom-sheet.hero-active.closing .sheet-tags-area{opacity:0;transform:translateY(16px)}
@media(max-width:900px){.sheet-tags-area{grid-template-rows:40px minmax(0,88px);max-height:140px}.sheet-tags-area .sheet-capsules{max-height:88px}.sheet-tag-editor{grid-template-columns:minmax(0,1fr) 96px}.sheet-date-browser{width:calc(100% - 32px);left:16px;top:var(--date-popover-top,16px)}.sheet-date-results>button{grid-template-columns:1fr}.sheet-date-results span{display:block}}

/* Library image management keeps controls inside each pin and exposes a stable drop target. */
.detail-panel .pin{position:relative;cursor:grab}.detail-panel .pin:active{cursor:grabbing}.detail-panel .pin.dragging{opacity:.48;transform:scale(.96)}.pin-actions{position:absolute;z-index:2;left:8px;right:8px;bottom:8px;display:flex;justify-content:space-between;pointer-events:none;opacity:0;transform:translateY(8px);transition:opacity .18s ease,transform .18s var(--spring)}.pin:hover .pin-actions,.pin:focus-within .pin-actions,.pin:focus .pin-actions{opacity:1;transform:translateY(0)}.pin-actions button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid rgba(255,255,255,.4);border-radius:50%;background:rgba(35,31,51,.6);color:#fff;box-shadow:0 8px 20px rgba(12,10,28,.22);backdrop-filter:blur(16px);pointer-events:auto}.pin-actions button:hover{background:rgba(255,255,255,.22)}.pin-actions [data-pin-action="delete"]{border-color:rgba(255,183,169,.5);color:var(--warning)}.pin-actions [data-pin-action="delete"]:hover{background:rgba(255,183,169,.22)}.pin-actions svg{width:20px;height:20px}.detail-tab.drop-target{border-color:rgba(255,255,255,.84);background:var(--accent);color:#423553;box-shadow:0 0 0 8px rgba(221,208,238,.16)}.moodboard.drop-target{min-height:160px;border:1px dashed rgba(255,255,255,.64);border-radius:16px;background:rgba(255,255,255,.08)}.library-toast{position:fixed;z-index:60;left:50%;bottom:32px;display:flex;align-items:center;gap:16px;min-height:48px;padding:8px 8px 8px 20px;border:1px solid rgba(255,255,255,.28);border-radius:24px;background:rgba(31,28,44,.82);color:#fff;box-shadow:0 20px 48px rgba(10,9,24,.3);backdrop-filter:blur(24px);opacity:0;pointer-events:none;transform:translate(-50%,16px);transition:opacity .25s ease,transform .32s var(--spring)}.library-toast.visible{opacity:1;pointer-events:auto;transform:translate(-50%,0)}.library-toast button{height:32px;padding:0 12px;border:0;border-radius:16px;background:rgba(255,255,255,.16);color:#fff}.library-toast button[hidden]{display:none}

/* Cover Flow and Dock progress use one composited motion clock. */
.cover-card{filter:none!important;will-change:transform,opacity;transition:transform .52s var(--spring),opacity .52s var(--spring)!important;backface-visibility:hidden;transform-style:preserve-3d}
.cover-card:not(.active){filter:none!important}
.cover-card img{transform:translateZ(0);backface-visibility:hidden}
.now-progress i{will-change:width;transition:width .52s var(--spring)!important}
.zip-working .cover-card,.zip-working .now-progress i{will-change:auto}
.detail-panel .pin{content-visibility:auto;contain:layout paint style;contain-intrinsic-size:auto 320px}
.picart-preview-pending{display:block;min-height:96px;background:rgba(255,255,255,.06)}

/* Keep imported previews and AI controls stable without native text artifacts. */
.project-upload-preview{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.34) transparent}
.ai-input input,.studio-prompt textarea{-webkit-appearance:none!important;appearance:none!important;box-shadow:none;text-shadow:none;-webkit-user-modify:read-write-plaintext-only}
#ai-send,#studio-send{position:relative;isolation:isolate;will-change:transform}
#ai-send:before,#studio-send:before{content:"";position:absolute;z-index:-1;inset:4px;border-radius:50%;background:rgba(255,255,255,.16);opacity:0;transform:scale(.86);transition:opacity .18s ease,transform .18s var(--spring)}
#ai-send:hover:before,#studio-send:hover:before,#ai-send.sending:before,#studio-send.sending:before{opacity:1;transform:scale(1)}
@media(prefers-reduced-motion:reduce){.cover-card,.now-progress i,#ai-send,#studio-send{transition-duration:.01ms!important}.ai-send.sending{animation:none!important}}

/* Every scroller stays inside its own glass surface. CSS columns cannot use content visibility safely. */
.detail-scroll,.studio-scroll,.moodboard-visuals,.moodboard-notes textarea,.ai-thread,.writer-stream,.moodboard-writer,.sheet-capsules,.sheet-tools,.subcategories,.project-upload-preview,.writer-head-actions,.sheet-date-results,.sheet-tags-area .sheet-capsules{
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.42) transparent;
  scrollbar-gutter:stable;
  overscroll-behavior:contain;
}
.detail-scroll,.studio-scroll,.moodboard-visuals,.moodboard-notes textarea,.ai-thread,.writer-stream,.moodboard-writer,.sheet-date-results,.sheet-tags-area .sheet-capsules{overflow-x:hidden}
.detail-scroll::-webkit-scrollbar,.studio-scroll::-webkit-scrollbar,.moodboard-visuals::-webkit-scrollbar,.moodboard-notes textarea::-webkit-scrollbar,.ai-thread::-webkit-scrollbar,.writer-stream::-webkit-scrollbar,.moodboard-writer::-webkit-scrollbar,.sheet-date-results::-webkit-scrollbar,.sheet-tags-area .sheet-capsules::-webkit-scrollbar{width:12px}
.sheet-capsules::-webkit-scrollbar,.sheet-tools::-webkit-scrollbar,.subcategories::-webkit-scrollbar,.project-upload-preview::-webkit-scrollbar,.writer-head-actions::-webkit-scrollbar{height:12px}
.detail-scroll::-webkit-scrollbar-track,.studio-scroll::-webkit-scrollbar-track,.moodboard-visuals::-webkit-scrollbar-track,.moodboard-notes textarea::-webkit-scrollbar-track,.ai-thread::-webkit-scrollbar-track,.writer-stream::-webkit-scrollbar-track,.moodboard-writer::-webkit-scrollbar-track,.sheet-date-results::-webkit-scrollbar-track,.sheet-tags-area .sheet-capsules::-webkit-scrollbar-track,.sheet-capsules::-webkit-scrollbar-track,.sheet-tools::-webkit-scrollbar-track,.subcategories::-webkit-scrollbar-track,.project-upload-preview::-webkit-scrollbar-track,.writer-head-actions::-webkit-scrollbar-track{margin:8px;background:transparent}
.detail-scroll::-webkit-scrollbar-thumb,.studio-scroll::-webkit-scrollbar-thumb,.moodboard-visuals::-webkit-scrollbar-thumb,.moodboard-notes textarea::-webkit-scrollbar-thumb,.ai-thread::-webkit-scrollbar-thumb,.writer-stream::-webkit-scrollbar-thumb,.moodboard-writer::-webkit-scrollbar-thumb,.sheet-date-results::-webkit-scrollbar-thumb,.sheet-tags-area .sheet-capsules::-webkit-scrollbar-thumb,.sheet-capsules::-webkit-scrollbar-thumb,.sheet-tools::-webkit-scrollbar-thumb,.subcategories::-webkit-scrollbar-thumb,.project-upload-preview::-webkit-scrollbar-thumb,.writer-head-actions::-webkit-scrollbar-thumb{border:4px solid transparent;border-radius:999px;background:rgba(255,255,255,.34);background-clip:padding-box;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.detail-scroll::-webkit-scrollbar-thumb:hover,.studio-scroll::-webkit-scrollbar-thumb:hover,.moodboard-visuals::-webkit-scrollbar-thumb:hover,.moodboard-notes textarea::-webkit-scrollbar-thumb:hover,.ai-thread::-webkit-scrollbar-thumb:hover,.writer-stream::-webkit-scrollbar-thumb:hover,.moodboard-writer::-webkit-scrollbar-thumb:hover,.sheet-date-results::-webkit-scrollbar-thumb:hover,.sheet-tags-area .sheet-capsules::-webkit-scrollbar-thumb:hover,.sheet-capsules::-webkit-scrollbar-thumb:hover,.sheet-tools::-webkit-scrollbar-thumb:hover,.subcategories::-webkit-scrollbar-thumb:hover,.project-upload-preview::-webkit-scrollbar-thumb:hover,.writer-head-actions::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.52);background-clip:padding-box}
.detail-panel,.ai-studio,.moodboard-detail,.bottom-sheet{isolation:isolate}

/* Library uses stable independent columns so image height never creates a row grid. */
html,body{height:100%;overflow:hidden!important;overscroll-behavior:none}
.pickart{height:100vh;min-height:0;overflow:hidden!important}
html::-webkit-scrollbar,body::-webkit-scrollbar{width:0;height:0;background:transparent}
html::-webkit-scrollbar-track,body::-webkit-scrollbar-track,html::-webkit-scrollbar-corner,body::-webkit-scrollbar-corner{background:transparent}
.detail-panel{overflow:hidden!important}
.detail-scroll{min-height:0;overflow-y:auto!important;overflow-x:hidden!important}
.detail-panel .library-head{grid-template-columns:48px minmax(0,1fr) 48px!important;align-items:center!important}
.library-head-actions{display:grid;grid-template-columns:48px;gap:8px;align-items:center}
.detail-panel .library-head .glass-button,.library-head-actions .glass-button{display:grid;place-items:center;width:48px!important;height:48px!important;max-width:48px!important;max-height:48px!important;margin:0!important}
.library-head-actions .detail-close{width:48px!important;height:48px!important}
.library-head-actions .detail-close:before{width:48px;height:48px}
.sheet-head-actions{display:grid;grid-template-columns:48px 48px 48px;gap:12px;align-items:center}
.sheet-ai-control{display:grid!important;place-items:center;width:48px!important;height:48px!important;min-width:48px!important;padding:0!important;border-radius:50%!important;font-size:14px!important;font-weight:700}
.sheet-delete-category{display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid rgba(255,183,169,.42);border-radius:50%;background:rgba(255,183,169,.08);color:var(--warning)}
.sheet-delete-category svg{display:block;width:24px;height:24px}
.sheet-delete-category:hover{background:rgba(255,183,169,.16)!important;border-color:rgba(255,183,169,.72)!important}
/* The library uses independent grid columns: WebKit never fragments a card across columns. */
.detail-panel .masonry{display:grid!important;width:100%!important;max-width:none!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px!important;align-items:start}
.detail-panel .masonry-column{display:grid;align-content:start;gap:16px;min-width:0}
.detail-panel .masonry .pin{display:block!important;width:100%;margin:0!important;isolation:isolate}
.detail-panel .masonry .pin img{width:100%;height:auto;opacity:1!important;visibility:visible!important;transform:none!important}
.detail-panel .masonry .pin.collection-inview-pending{opacity:0;transform:translate3d(0,12px,0) scale(.9)}
.detail-panel .masonry .pin.collection-inview-pending.collection-inview-visible{opacity:1;transform:translate3d(0,0,0) scale(1);transition:opacity .28s ease-out var(--collection-inview-delay,0ms),transform .32s cubic-bezier(.22,1,.36,1) var(--collection-inview-delay,0ms)}
@media(prefers-reduced-motion:reduce){.detail-panel .masonry .pin.collection-inview-pending{opacity:1;transform:none;transition:none}}
.detail-panel .masonry .pin-actions{z-index:4}
/* Hidden views must remain hidden even when masonry has a fixed display grid. */
.detail-panel .masonry[hidden],.detail-panel .moodboard[hidden]{display:none!important}
.detail-scroll::-webkit-scrollbar-track-piece{background:transparent!important}.detail-scroll::-webkit-scrollbar-corner{background:transparent!important}
@media(max-width:760px){.detail-panel .masonry{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-panel .moodboard{columns:2!important;column-gap:16px!important}.sheet-head-actions{grid-template-columns:48px 48px 48px;gap:8px}.sheet-delete-category{width:48px;height:48px}.bottom-sheet .sheet-close{width:48px;height:48px}}

/* The detail header uses a fixed 48px control cell; the X cannot inherit the oversized dock geometry. */
#back-btn.detail-close{display:grid!important;place-items:center!important;width:48px!important;height:48px!important;margin:0!important;padding:0!important;transform:none!important}
#back-btn.detail-close::before{inset:0!important;width:auto!important;height:auto!important;margin:0!important}
#back-btn.detail-close svg{position:static!important;display:block!important;width:24px!important;height:24px!important;margin:0!important;transform:none!important}

/* AI Studio close follows the same fixed icon-cell geometry as the collection close. */
#ai-studio-close.studio-close{display:grid!important;place-items:center!important;width:48px!important;height:48px!important;margin:0!important;padding:0!important;font-size:0!important;transform:none!important}
#ai-studio-close.studio-close::before{inset:0!important;width:auto!important;height:auto!important;margin:0!important}
#ai-studio-close.studio-close svg{position:static!important;display:block!important;width:24px!important;height:24px!important;margin:0!important;transform:none!important}

/* The Moodboard return control owns a circular halo rather than the generic button shadow. */
.moodboard-detail-close{overflow:visible!important;transition:transform .18s var(--spring),opacity .18s ease!important}
.moodboard-detail-close:hover{filter:none!important;box-shadow:none!important}
.moodboard-detail-close:hover::before{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.52);box-shadow:0 8px 20px rgba(18,16,42,.12),inset 0 1px rgba(255,255,255,.24)}
.moodboard-detail-close:active{transform:scale(.94)!important;opacity:.82}

/* Moodboard shares the image wall canvas so its card scale never grows past the library wall. */
.detail-panel .moodboard{display:block!important;align-items:initial!important}
.moodboard-pin{position:relative;display:inline-block!important;width:100%!important;margin:0 0 16px!important;vertical-align:top;break-inside:avoid-column;min-width:0;overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(255,255,255,.06)}
.moodboard-pin>[data-moodboard-image]{display:block!important;width:100%!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;overflow:hidden!important}
.moodboard-pin img{display:block!important;width:100%!important;height:auto!important;object-fit:initial!important;border:0!important;border-radius:0!important}
.moodboard .moodboard-delete{position:absolute!important;right:8px!important;bottom:8px!important;z-index:2!important;display:grid!important;place-items:center!important;width:40px!important;height:40px!important;padding:0!important;border:1px solid rgba(255,183,169,.5)!important;border-radius:50%!important;background:rgba(35,31,51,.6)!important;color:var(--warning)!important;box-shadow:0 8px 20px rgba(12,10,28,.22)!important;backdrop-filter:blur(16px)!important;overflow:visible!important;opacity:0;transform:translateY(8px);transition:opacity .18s ease,transform .18s var(--spring),background .18s ease}
.moodboard-pin:hover .moodboard-delete,.moodboard-pin:focus-within .moodboard-delete{opacity:1;transform:translateY(0)}
.moodboard .moodboard-delete:hover{background:rgba(255,183,169,.22)!important}
.moodboard-delete svg{display:block;width:20px;height:20px}
@media(max-width:760px){.moodboard-pin{margin-bottom:16px!important}}

/* Date search results are contained list rows: feedback never crosses the popover clip. */
.sheet-date-browser{max-height:var(--date-popover-max-height,400px)!important;overflow:hidden!important}
.sheet-date-results{min-height:48px!important;overflow-y:auto!important;overflow-x:hidden!important;padding:4px 0 8px!important}
.sheet-date-results>button{transform:none!important;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,opacity .18s ease!important}
.sheet-date-results>button:hover{transform:none!important;background:rgba(255,255,255,.14)!important;border-color:rgba(255,255,255,.34)!important;box-shadow:inset 0 1px rgba(255,255,255,.16)!important}
.sheet-date-results>button:active{transform:scale(.98)!important}

/* ModalManager owns native Dialog state and always releases these properties after exit. */
html.modal-active,body.modal-active{overflow:hidden!important}
dialog.is-closing::backdrop{backdrop-filter:none!important;background:rgba(23,21,43,0)!important}

/* System scrollbars are hidden everywhere except the Cover Flow's own image browsing. */
.detail-scroll,.studio-scroll,.moodboard-visuals,.moodboard-notes textarea,.ai-thread,.writer-stream,.moodboard-writer,.sheet-date-results,.sheet-tags-area .sheet-capsules,.sheet-capsules,.sheet-tools,.subcategories,.project-upload-preview,.writer-head-actions{scrollbar-width:none!important;-ms-overflow-style:none}
.detail-scroll::-webkit-scrollbar,.studio-scroll::-webkit-scrollbar,.moodboard-visuals::-webkit-scrollbar,.moodboard-notes textarea::-webkit-scrollbar,.ai-thread::-webkit-scrollbar,.writer-stream::-webkit-scrollbar,.moodboard-writer::-webkit-scrollbar,.sheet-date-results::-webkit-scrollbar,.sheet-tags-area .sheet-capsules::-webkit-scrollbar,.sheet-capsules::-webkit-scrollbar,.sheet-tools::-webkit-scrollbar,.subcategories::-webkit-scrollbar,.project-upload-preview::-webkit-scrollbar,.writer-head-actions::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
.app-scroll-indicator{position:absolute;z-index:8;top:16px;right:8px;bottom:16px;width:8px;border-radius:999px;background:rgba(255,255,255,.035);opacity:0;cursor:grab;touch-action:none;transition:opacity .18s ease}
.detail-panel.open .app-scroll-indicator.is-visible:not([hidden]),.app-scroll-indicator.dragging{opacity:1}
.app-scroll-indicator i{display:block;width:8px;min-height:48px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.16);box-shadow:inset 0 1px rgba(255,255,255,.32),0 4px 12px rgba(10,9,28,.16);backdrop-filter:blur(16px);transition:transform .18s var(--spring),height .18s var(--spring)}.app-scroll-indicator.dragging{cursor:grabbing}.app-scroll-indicator.dragging i{transition:none}

/* Category previews remain a contained, removable vertical rail inside the uploader. */
.project-upload{grid-template-columns:minmax(0,1fr) 104px!important;align-items:stretch!important;min-height:144px!important;padding:16px!important;cursor:pointer}
.project-upload-copy{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;min-width:0}
.project-upload-copy strong,.project-upload-copy small{display:block}
.project-upload-copy small{margin-top:4px;color:var(--secondary);font-size:14px;line-height:20px}
.project-upload-preview{grid-column:auto!important;display:grid!important;grid-template-columns:repeat(2,44px)!important;grid-auto-rows:44px;align-content:start;justify-content:end;gap:8px!important;width:104px!important;max-height:112px!important;padding:0 4px 0 0!important;overflow-y:auto!important;overflow-x:hidden!important}
.project-upload-preview:empty{display:none!important}
.project-preview-item{position:relative;display:block;width:44px;height:44px}
.project-upload-preview img{display:block!important;width:44px!important;height:44px!important;border:1px solid rgba(255,255,255,.24);border-radius:8px;object-fit:cover;box-shadow:0 8px 16px rgba(15,13,34,.16)}
.project-preview-item button{position:absolute;z-index:1;top:-6px;right:-6px;display:grid;place-items:center;width:18px;height:18px;padding:0;border:1px solid rgba(255,255,255,.54);border-radius:50%;background:rgba(45,39,63,.84);color:#fff;font-size:16px;line-height:1;box-shadow:0 4px 12px rgba(12,10,28,.26);backdrop-filter:blur(12px)}
.project-preview-item button:hover{background:rgba(184,86,105,.78)}
.project-upload-preview{scrollbar-width:thin!important;scrollbar-color:rgba(255,255,255,.32) transparent!important}
.project-upload-preview::-webkit-scrollbar{display:block!important;width:8px!important;height:auto!important}
.project-upload-preview::-webkit-scrollbar-track{background:transparent!important}
.project-upload-preview::-webkit-scrollbar-thumb{display:block!important;border:2px solid transparent!important;border-radius:999px!important;background:rgba(255,255,255,.3)!important;background-clip:padding-box!important}
@media(max-width:560px){.project-upload{grid-template-columns:minmax(0,1fr) 92px!important}.project-upload-preview{grid-template-columns:repeat(2,40px)!important;width:92px!important}.project-preview-item,.project-upload-preview img{width:40px!important;height:40px!important}}

/* AI Studio keeps its workspace controls fixed while only response content scrolls. */
.ai-studio{height:min(900px,calc(100vh - 64px))!important;max-height:none!important;overflow:hidden!important}
.studio-scroll{display:grid!important;grid-template-rows:auto auto auto auto minmax(0,1fr) auto;gap:16px;height:100%!important;padding:32px!important;overflow:hidden!important;scroll-padding-bottom:0!important}
.studio-head,.studio-prompt,.studio-segmented,.studio-inputs{min-width:0;margin:0!important}
.studio-prompt textarea{max-height:144px!important}
.studio-chat,.studio-generate{grid-row:5;min-width:0;min-height:0;height:100%;margin:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;scrollbar-width:thin!important;scrollbar-color:rgba(255,255,255,.34) transparent!important}
.studio-chat{display:block!important;padding:16px!important}
.studio-generate{align-content:start!important}
.studio-scroll>#studio-actions{grid-row:4;position:static;margin:0!important;padding:0!important;background:transparent!important;backdrop-filter:none}
.studio-inputs{grid-row:6;position:static!important;padding:0!important;background:transparent!important}
.studio-chat::-webkit-scrollbar,.studio-generate::-webkit-scrollbar{display:block!important;width:12px!important}
.studio-chat::-webkit-scrollbar-track,.studio-generate::-webkit-scrollbar-track{background:transparent!important}
.studio-chat::-webkit-scrollbar-thumb,.studio-generate::-webkit-scrollbar-thumb{display:block!important;border:4px solid transparent!important;border-radius:999px!important;background:rgba(255,255,255,.34)!important;background-clip:padding-box!important}
@media(max-width:760px){.ai-studio{height:100%!important}.studio-scroll{padding:24px 16px!important}.studio-prompt textarea{max-height:112px!important}}

/* Home AI results stay inside the compact glass assistant and expand in fixed batches. */
.ai-panel{overflow:hidden!important}
.ai-thread{min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;scrollbar-width:thin!important;scrollbar-color:rgba(255,255,255,.34) transparent!important}
.ai-thread::-webkit-scrollbar{display:block!important;width:10px!important}.ai-thread::-webkit-scrollbar-track{background:transparent!important}.ai-thread::-webkit-scrollbar-thumb{display:block!important;border:3px solid transparent!important;border-radius:999px!important;background:rgba(255,255,255,.32)!important;background-clip:padding-box!important}
.ai-pinterest-results{display:grid;gap:12px;margin:12px 0;padding:12px;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:rgba(255,255,255,.055)}
.ai-pinterest-results>strong{font-size:14px}.ai-pinterest-grid{columns:3 88px;column-gap:8px}.ai-pinterest-grid a{display:block;break-inside:avoid;margin:0 0 8px;border-radius:8px;overflow:hidden;background:rgba(0,0,0,.12)}.ai-pinterest-grid img{display:block;width:100%;height:auto;transition:transform .18s var(--spring)}.ai-pinterest-grid a:hover img{transform:scale(1.04)}
.ai-pinterest-more{height:36px;border:1px solid rgba(255,255,255,.24);border-radius:18px;background:rgba(255,255,255,.08);color:var(--primary)}

/* AI surfaces retain wheel and trackpad scrolling without the native white rail. */
.ai-thread,.studio-chat,.studio-generate,.writer-stream,.moodboard-writer{scrollbar-width:none!important;-ms-overflow-style:none!important}
.ai-thread::-webkit-scrollbar,.studio-chat::-webkit-scrollbar,.studio-generate::-webkit-scrollbar,.writer-stream::-webkit-scrollbar,.moodboard-writer::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;background:transparent!important}
.ai-thread::-webkit-scrollbar-track,.studio-chat::-webkit-scrollbar-track,.studio-generate::-webkit-scrollbar-track,.writer-stream::-webkit-scrollbar-track,.moodboard-writer::-webkit-scrollbar-track,.ai-thread::-webkit-scrollbar-thumb,.studio-chat::-webkit-scrollbar-thumb,.studio-generate::-webkit-scrollbar-thumb,.writer-stream::-webkit-scrollbar-thumb,.moodboard-writer::-webkit-scrollbar-thumb{background:transparent!important;border-color:transparent!important}

/* Uploaded previews use a three-column rail; delete badges never cross adjacent tiles. */
.project-upload{grid-template-columns:minmax(0,1fr) 176px!important}
.project-upload-preview{grid-template-columns:repeat(3,44px)!important;grid-auto-rows:44px!important;justify-content:start!important;width:176px!important;max-height:128px!important;padding:8px!important;gap:12px!important;overflow-y:auto!important;overflow-x:hidden!important}
.project-preview-item{width:44px!important;height:44px!important}
.project-preview-item button{top:-4px!important;right:-4px!important}
.project-upload-preview{scrollbar-width:none!important;-ms-overflow-style:none!important}
.project-upload-preview::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;background:transparent!important}
.project-upload-preview::-webkit-scrollbar-track,.project-upload-preview::-webkit-scrollbar-thumb{background:transparent!important;border-color:transparent!important}
@media(max-width:560px){.project-upload{grid-template-columns:minmax(0,1fr) 152px!important}.project-upload-preview{grid-template-columns:repeat(3,40px)!important;width:152px!important;gap:8px!important}.project-preview-item,.project-upload-preview img{width:40px!important;height:40px!important}}

/* Moodboard references use the same three-column, fixed-gutter wall as the library. */
.detail-panel .moodboard{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;align-items:start!important;columns:auto!important;column-gap:0!important}
.detail-panel .moodboard-column{display:grid;align-content:start;gap:16px;min-width:0}
.moodboard-pin{display:block!important;width:100%!important;margin:0!important;break-inside:auto!important}
.moodboard-pin img{width:100%!important;height:auto!important;object-fit:initial!important}
.moodboard-fixed-project>[data-fixed-project]{position:relative;display:block;width:100%;padding:0;border:0;background:transparent;cursor:pointer}
.moodboard-fixed-project-label{position:absolute;right:8px;bottom:8px;padding:5px 9px;border-radius:8px;background:rgba(28,23,38,.82);color:#fff;font-size:12px;line-height:1.3}
.moodboard-fixed-project>[data-fixed-project]:focus-visible{outline:2px solid #b984ed;outline-offset:-3px}
@media(max-width:760px){.detail-panel .moodboard{grid-template-columns:repeat(2,minmax(0,1fr))!important}.detail-panel .moodboard-column{gap:16px}}

/* Moodboard export appears in-place after Picart AI finishes the brief. */
.moodboard-layout-preview{display:grid;gap:8px;margin-top:24px;padding:16px;border:1px solid rgba(255,255,255,.2);border-radius:16px;background:rgba(255,255,255,.055)}
.moodboard-layout-preview[hidden]{display:none!important}.moodboard-layout-preview p{margin:0;color:var(--secondary);font-size:14px}.moodboard-layout-preview img{display:block;width:100%;height:auto;border-radius:8px;background:#f5f5f3}

/* The grid owns the only horizontal gutter calculation: 3 columns plus two 16px gaps. */
.detail-panel .moodboard{width:100%!important;grid-template-columns:repeat(3,minmax(0,calc((100% - 32px) / 3)))!important;column-gap:16px!important;row-gap:0!important}
.detail-panel .moodboard .moodboard-empty-state{grid-column:1/-1;display:grid;justify-items:start;gap:8px;min-height:220px;padding:32px;border:1px dashed rgba(255,255,255,.2);border-radius:16px;background:rgba(255,255,255,.035)}
.moodboard-empty-state small{color:var(--secondary);font-size:11px;letter-spacing:.12em}.moodboard-empty-state h3,.moodboard-empty-state p{margin:0}.moodboard-empty-state h3{font-size:20px;line-height:28px}.moodboard-empty-state p{max-width:360px;color:var(--secondary);font-size:14px;line-height:21px}.moodboard-empty-state button{margin-top:8px;padding:10px 16px;border:1px solid rgba(255,255,255,.26);border-radius:20px;background:rgba(255,255,255,.1);color:var(--primary);font:inherit;font-size:14px;transition:background .18s ease}.moodboard-empty-state button:hover{background:rgba(255,255,255,.17)}

/* The collection AI launcher participates in the header grid, so it cannot drift. */
.bottom-sheet #sheet-ai{position:static!important;right:auto!important;bottom:auto!important;background:rgba(255,255,255,.12)!important}
.bottom-sheet #sheet-ai:hover{background:rgba(255,255,255,.2)!important}

/* PicartMemoryStack prototype: opt-in Moodboard experiment, isolated from the existing wall. */
.moodboard-prototype-trigger{display:grid;align-content:center;min-width:148px;height:56px;padding:8px 16px;border:1px solid rgba(255,255,255,.24);border-radius:28px;background:rgba(255,255,255,.07);color:var(--primary);text-align:left;transition:background .18s ease,transform .22s var(--spring),box-shadow .22s ease}.moodboard-prototype-trigger small,.moodboard-prototype-trigger strong{display:block}.moodboard-prototype-trigger small{color:var(--secondary);font-size:11px;line-height:14px;letter-spacing:.08em}.moodboard-prototype-trigger strong{font-size:14px;line-height:18px}.moodboard-prototype-trigger:hover{background:rgba(255,255,255,.14);transform:translateY(-2px);box-shadow:0 12px 24px rgba(14,12,32,.16)}
.picart-memory-stack-prototype{position:fixed;z-index:35;inset:0;display:grid;place-items:center;padding:32px;opacity:0;pointer-events:none;transition:opacity .22s ease}.picart-memory-stack-prototype[hidden]{display:none}.picart-memory-stack-prototype.open{opacity:1;pointer-events:auto}.picart-memory-stack-backdrop{position:absolute;inset:0;border:0;background:rgba(18,16,29,.42);backdrop-filter:blur(18px) saturate(118%);-webkit-backdrop-filter:blur(18px) saturate(118%);cursor:default}.picart-memory-stack-dialog{position:relative;z-index:1;width:min(980px,100%);min-height:650px;padding:34px 40px 28px;border:1px solid rgba(255,255,255,.28);border-radius:32px;background:rgba(42,36,59,.9);box-shadow:0 28px 80px rgba(10,9,24,.34),inset 0 1px rgba(255,255,255,.24);transform:translateY(16px) scale(.985);transition:transform .42s var(--spring)}.picart-memory-stack-prototype.open .picart-memory-stack-dialog{transform:translateY(0) scale(1)}.picart-memory-stack-dialog-head{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:24px;align-items:start}.picart-memory-stack-dialog-head small{color:var(--secondary);font-size:11px;letter-spacing:.12em}.picart-memory-stack-dialog-head h2{margin:8px 0 6px;font-size:34px;line-height:40px;letter-spacing:-.025em}.picart-memory-stack-dialog-head p{margin:0;color:rgba(247,243,251,.64);font-size:15px;line-height:22px}.picart-memory-stack-close{display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:rgba(255,255,255,.08);color:var(--primary);font-size:26px;line-height:1;transition:background .18s ease,transform .18s var(--spring)}.picart-memory-stack-close:hover{background:rgba(255,255,255,.16);transform:scale(1.04)}.picart-memory-stack-stage{position:relative;display:grid;place-items:center;min-height:468px;margin:24px -8px 0;overflow:visible}.picart-memory-stack{position:relative;width:720px;height:330px;max-width:100%;isolation:isolate}.picart-memory-stack-item{position:absolute;left:50%;top:50%;display:block;width:148px;height:202px;padding:0;border:1px solid rgba(255,255,255,.3);border-radius:16px;background:rgba(255,255,255,.07);box-shadow:0 16px 32px rgba(10,9,24,.2),inset 0 1px rgba(255,255,255,.18);overflow:hidden;cursor:pointer;transform:translate3d(calc(-50% + var(--rest-x)),calc(-50% + var(--rest-y)),0);transform-origin:center;transition:transform .54s cubic-bezier(.2,.88,.2,1.16),box-shadow .34s ease,opacity .34s ease,border-color .34s ease;transition-delay:calc(var(--stack-index) * 16ms);will-change:transform}.picart-memory-stack-item img{display:block;width:100%;height:100%;object-fit:cover}.picart-memory-stack-item:after{content:"";position:absolute;inset:auto 0 0;height:38%;background:linear-gradient(to top,rgba(20,17,31,.42),transparent);pointer-events:none}.picart-memory-stack-index{position:absolute;right:10px;bottom:8px;color:rgba(255,255,255,.76);font-size:10px;font-weight:700;letter-spacing:.08em;text-shadow:0 1px 4px rgba(0,0,0,.28)}.picart-memory-stack.is-expanded .picart-memory-stack-item{transform:translate3d(calc(-50% + var(--expanded-x)),calc(-50% + var(--expanded-y)),0)}.picart-memory-stack.is-expanded .picart-memory-stack-item:not(.is-active){opacity:.72}.picart-memory-stack.is-expanded .picart-memory-stack-item.is-active{z-index:30;border-color:rgba(255,255,255,.74);box-shadow:0 24px 48px rgba(8,7,18,.34),0 8px 18px rgba(200,184,232,.1),inset 0 1px rgba(255,255,255,.32);transform:translate3d(calc(-50% + var(--expanded-x)),calc(-50% + var(--expanded-y) - 14px),0) scale(1.07)}.picart-memory-stack-item:focus-visible{outline:2px solid rgba(255,255,255,.92);outline-offset:5px}.picart-memory-stack-empty{width:100%;margin:0;text-align:center;color:var(--secondary);font-size:15px}.picart-memory-stack-dialog-foot{display:flex;justify-content:space-between;gap:20px;padding-top:18px;border-top:1px solid rgba(255,255,255,.13);color:rgba(247,243,251,.64);font-size:13px;line-height:20px}.picart-memory-stack-dialog-foot span:last-child{color:rgba(247,243,251,.38);text-transform:uppercase;letter-spacing:.08em;font-size:10px}
@media(max-width:760px){.moodboard-detail-head{grid-template-columns:56px minmax(0,1fr);align-items:start}.moodboard-ai-actions{grid-column:2;flex-wrap:wrap}.moodboard-prototype-trigger{min-width:140px}.picart-memory-stack-prototype{padding:16px}.picart-memory-stack-dialog{min-height:560px;padding:24px 20px 20px;border-radius:24px}.picart-memory-stack-dialog-head h2{font-size:28px;line-height:32px}.picart-memory-stack-stage{min-height:360px;margin-top:10px}.picart-memory-stack{width:100%;height:300px}.picart-memory-stack-item{width:112px;height:156px}.picart-memory-stack.is-expanded .picart-memory-stack-item{transform:translate3d(calc(-50% + var(--expanded-x) * .58),calc(-50% + var(--expanded-y)),0)}.picart-memory-stack.is-expanded .picart-memory-stack-item.is-active{transform:translate3d(calc(-50% + var(--expanded-x) * .58),calc(-50% + var(--expanded-y) - 10px),0) scale(1.06)}.picart-memory-stack-dialog-foot{display:grid;gap:4px}}
@media(prefers-reduced-motion:reduce){.picart-memory-stack-prototype,.picart-memory-stack-dialog,.picart-memory-stack-item,.moodboard-prototype-trigger,.picart-memory-stack-close{transition:none!important}.picart-memory-stack.is-expanded .picart-memory-stack-item,.picart-memory-stack.is-expanded .picart-memory-stack-item.is-active{transform:translate3d(calc(-50% + var(--expanded-x)),calc(-50% + var(--expanded-y)),0) scale(1)}.picart-memory-stack.is-expanded .picart-memory-stack-item.is-active{z-index:30}}

/* A local, non-blocking download indicator stays inside the clicked control. */
.pin-actions [data-pin-action="download"].downloading svg{animation:downloadPulse .8s ease-in-out infinite alternate}
@keyframes downloadPulse{to{opacity:.42;transform:translateY(2px)}}
/* Inspiration Search extends the right Dock region without changing the Dock shell. */
.dock-right{grid-template-columns:repeat(4,64px)!important}.dock-right .dock-icon{width:64px;height:80px}
.inspiration-search-panel{position:fixed;z-index:28;top:32px;right:32px;bottom:152px;width:min(760px,calc(100vw - 64px));display:grid;grid-template-rows:auto auto auto auto minmax(0,1fr);gap:18px;padding:28px;border:1px solid rgba(255,255,255,.3);border-radius:32px;background:linear-gradient(145deg,rgba(42,36,62,.88),rgba(59,49,82,.72));box-shadow:0 32px 90px rgba(14,12,32,.34),inset 0 1px rgba(255,255,255,.28);backdrop-filter:blur(34px) saturate(135%);color:var(--primary);opacity:0;visibility:hidden;transform:translateY(18px) scale(.985);transition:opacity .24s ease,transform .32s var(--spring),visibility .24s}
.inspiration-search-panel.open{opacity:1;visibility:visible;transform:none}.inspiration-search-head{display:grid;grid-template-columns:1fr 48px;align-items:start}.inspiration-search-head small{font-size:12px;letter-spacing:.16em;color:var(--secondary)}.inspiration-search-head h2{margin:4px 0 5px;font-size:30px;line-height:36px}.inspiration-search-head p{margin:0;color:var(--secondary);font-size:14px}.inspiration-search-head>button{width:48px;height:48px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:rgba(255,255,255,.08);color:var(--primary);font-size:24px}
.inspiration-search-form{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;height:64px;padding:0 10px 0 18px;border:1px solid rgba(255,255,255,.28);border-radius:32px;background:rgba(255,255,255,.1);box-shadow:inset 0 1px rgba(255,255,255,.18)}.inspiration-search-form svg{width:24px;height:24px;color:var(--secondary)}.inspiration-search-form input{min-width:0;border:0;outline:0;background:transparent;color:var(--primary);font:inherit;font-size:16px}.inspiration-search-form input::placeholder{color:rgba(235,229,244,.52)}.inspiration-search-form button{height:44px;padding:0 24px;border:0;border-radius:22px;background:rgba(255,255,255,.88);color:#312941;font-weight:700}
.inspiration-search-scope{display:flex;gap:8px}.inspiration-search-scope button{height:36px;padding:0 16px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.06);color:var(--secondary)}.inspiration-search-scope button.active{background:rgba(255,255,255,.88);color:#312941}.inspiration-search-status{min-height:20px;color:var(--secondary);font-size:13px}.inspiration-search-status.error{color:#ffc3cf}
.inspiration-search-results{min-height:0;overflow:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:14px;padding-right:4px}.inspiration-result{position:relative;isolation:isolate;height:250px;min-height:250px;overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:22px;background:rgba(255,255,255,.07)}.inspiration-result img{position:absolute;z-index:1;inset:0 0 auto;display:block;width:100%;height:100%;object-fit:cover}.inspiration-result-copy{position:absolute;z-index:10;left:0;right:0;bottom:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:68px;padding:12px;background:linear-gradient(180deg,rgba(38,32,54,.52),rgba(29,25,43,.84));border-top:1px solid rgba(255,255,255,.2);box-shadow:0 -12px 32px rgba(19,16,31,.18),inset 0 1px rgba(255,255,255,.16);backdrop-filter:blur(20px) saturate(135%);-webkit-backdrop-filter:blur(20px) saturate(135%)}.inspiration-result-copy span{position:relative;z-index:11;min-width:0}.inspiration-result-copy strong,.inspiration-result-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inspiration-result-copy strong{font-size:13px}.inspiration-result-copy small{margin-top:3px;color:var(--secondary);font-size:11px}.inspiration-result-copy button{position:relative;z-index:20;height:34px;padding:0 12px;border:1px solid rgba(255,255,255,.42);border-radius:17px;background:rgba(255,255,255,.9);box-shadow:0 6px 18px rgba(17,14,28,.2),inset 0 1px rgba(255,255,255,.7);color:#312941;font-size:12px;font-weight:700}.inspiration-result-copy button:disabled{opacity:.65}.inspiration-empty{grid-column:1/-1;display:grid;place-items:center;min-height:220px;color:var(--secondary);text-align:center}
@media(max-width:900px){.inspiration-search-panel{inset:16px 16px 96px;width:auto}.inspiration-search-results{grid-template-columns:repeat(2,minmax(0,1fr))}}
.inspiration-save-layer{position:fixed;z-index:44;inset:0;display:grid;place-items:center;padding:24px;background:rgba(17,14,28,.34);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s}.inspiration-save-layer.open{opacity:1;visibility:visible}.inspiration-save-card{width:min(560px,calc(100vw - 48px));padding:24px;border:1px solid rgba(255,255,255,.32);border-radius:30px;background:linear-gradient(145deg,rgba(52,44,74,.94),rgba(38,32,56,.88));box-shadow:0 36px 100px rgba(12,10,24,.42),inset 0 1px rgba(255,255,255,.26);color:var(--primary);transform:translateY(12px) scale(.985);transition:transform .28s var(--spring)}.inspiration-save-layer.open .inspiration-save-card{transform:none}.inspiration-save-card>header{display:grid;grid-template-columns:1fr 44px;align-items:start}.inspiration-save-card header small{font-size:11px;letter-spacing:.16em;color:var(--secondary)}.inspiration-save-card h3{margin:4px 0 5px;font-size:27px}.inspiration-save-card header p{margin:0;color:var(--secondary);font-size:13px}.inspiration-save-card header button{width:44px;height:44px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:rgba(255,255,255,.08);color:var(--primary);font-size:22px}.inspiration-save-preview{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:16px;margin:20px 0;padding:12px;border:1px solid rgba(255,255,255,.16);border-radius:22px;background:rgba(255,255,255,.07)}.inspiration-save-preview img{width:88px;height:72px;border-radius:14px;object-fit:cover}.inspiration-save-preview strong,.inspiration-save-preview small{display:block}.inspiration-save-preview strong{font-size:15px}.inspiration-save-preview small{margin-top:7px;color:var(--secondary);font-size:12px;line-height:17px}.inspiration-save-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.inspiration-save-options button{min-height:82px;padding:15px 16px;border:1px solid rgba(255,255,255,.18);border-radius:20px;background:rgba(255,255,255,.08);color:var(--primary);text-align:left;transition:background .18s ease,transform .18s var(--spring)}.inspiration-save-options button:hover{background:rgba(255,255,255,.16);transform:translateY(-1px)}.inspiration-save-options strong,.inspiration-save-options small{display:block}.inspiration-save-options strong{font-size:14px}.inspiration-save-options small{margin-top:6px;color:var(--secondary);font-size:11px}
@media(max-width:620px){.inspiration-save-options{grid-template-columns:1fr}}
/* 2026 product upgrade prototype: Dock, Cover Editor and Brainstorm canvas. */
.dock-primary{grid-template-columns:repeat(2,112px)!important;gap:12px}.dock-primary .dock-icon{width:112px!important;height:80px!important;grid-template-rows:1fr 18px;align-items:center}.dock-primary .dock-icon small{position:relative;z-index:2;font-size:10px;color:var(--secondary);letter-spacing:.02em}.floating-ai-button{transform:translateY(-6px)}.floating-ai-orb{position:relative;z-index:2;display:grid;place-items:center;width:46px;height:46px;border:1px solid rgba(255,255,255,.46);border-radius:50%;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.8),rgba(198,179,231,.48) 38%,rgba(80,65,112,.72));box-shadow:0 12px 30px rgba(23,18,42,.28),inset 0 1px rgba(255,255,255,.7);color:#302743;font-weight:800;animation:floatingAiBreath 3s ease-in-out infinite}.floating-ai-button .hover-halo{width:64px;height:64px;opacity:.5}.cover-edit-button{min-width:84px!important;padding:0 18px!important;font-size:13px!important}
@keyframes floatingAiBreath{50%{transform:translateY(-3px) scale(1.04);box-shadow:0 16px 36px rgba(23,18,42,.34),0 0 24px rgba(205,187,237,.38),inset 0 1px rgba(255,255,255,.8)}}
.cover-editor{position:fixed;z-index:31;top:32px;right:32px;bottom:32px;width:min(560px,calc(100vw - 64px));display:grid;grid-template-rows:auto auto auto auto minmax(0,1fr);gap:20px;padding:28px;border:1px solid rgba(255,255,255,.3);border-radius:32px;background:linear-gradient(145deg,rgba(49,42,70,.93),rgba(65,54,89,.8));box-shadow:0 32px 90px rgba(14,12,32,.38),inset 0 1px rgba(255,255,255,.28);backdrop-filter:blur(34px) saturate(140%);color:var(--primary);opacity:0;visibility:hidden;transform:translateX(24px);transition:opacity .24s ease,transform .32s var(--spring),visibility .24s}.cover-editor.open{opacity:1;visibility:visible;transform:none}.cover-editor>header{display:grid;grid-template-columns:1fr 48px}.cover-editor header small,.cover-editor-label{font-size:11px;letter-spacing:.14em;color:var(--secondary)}.cover-editor h2{margin:4px 0;font-size:30px}.cover-editor header p{margin:0;color:var(--secondary)}.cover-editor header button,.brainstorm-head button{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.09);color:var(--primary)}#cover-editor-close{width:48px;height:48px;border-radius:50%;font-size:24px}.cover-editor-preview{display:grid;grid-template-columns:150px 1fr;align-items:center;gap:18px;padding:14px;border:1px solid rgba(255,255,255,.18);border-radius:24px;background:rgba(255,255,255,.07)}.cover-editor-preview img{width:150px;height:112px;border-radius:18px;object-fit:cover}.cover-editor-preview strong,.cover-editor-preview small{display:block}.cover-editor-preview small{margin-top:8px;color:var(--secondary);line-height:18px}.cover-editor-actions{display:flex;gap:10px}.cover-editor-actions button{height:44px;padding:0 18px;border:1px solid rgba(255,255,255,.22);border-radius:22px;background:rgba(255,255,255,.1);color:var(--primary)}.cover-editor-thumbs{min-height:0;overflow:auto;display:grid;grid-template-columns:repeat(3,1fr);align-content:start;gap:12px}.cover-editor-thumbs button{position:relative;height:120px;padding:0;overflow:hidden;border:2px solid transparent;border-radius:18px;background:transparent}.cover-editor-thumbs button.active{border-color:rgba(255,255,255,.9);box-shadow:0 0 0 3px rgba(190,169,225,.35)}.cover-editor-thumbs img{width:100%;height:100%;object-fit:cover}
.brainstorm-studio{position:fixed;z-index:35;inset:20px;display:grid;grid-template-rows:80px minmax(0,1fr);padding:18px;border:1px solid rgba(255,255,255,.28);border-radius:34px;background:linear-gradient(145deg,rgba(44,37,64,.96),rgba(71,59,96,.9));box-shadow:0 36px 110px rgba(12,10,24,.46),inset 0 1px rgba(255,255,255,.28);backdrop-filter:blur(38px);color:var(--primary);opacity:0;visibility:hidden;transform:scale(.985);transition:opacity .24s ease,transform .32s var(--spring),visibility .24s}.brainstorm-studio.open{opacity:1;visibility:visible;transform:none}.brainstorm-head{display:grid;grid-template-columns:1fr auto;align-items:center;padding:0 8px 14px}.brainstorm-head small{font-size:10px;letter-spacing:.14em;color:var(--secondary)}.brainstorm-head h2{display:inline;margin:0 12px 0 0;font-size:28px}.brainstorm-head p{display:inline;color:var(--secondary)}.brainstorm-head>div:last-child{display:flex;gap:10px}.brainstorm-head button{height:44px;padding:0 18px;border-radius:22px}#brainstorm-close{width:44px;padding:0;border-radius:50%;font-size:22px}.brainstorm-shell{min-height:0;display:grid;grid-template-columns:78px minmax(0,1fr) 270px;gap:14px}.brainstorm-toolbar,.brainstorm-assistant{border:1px solid rgba(255,255,255,.18);border-radius:24px;background:rgba(255,255,255,.07);backdrop-filter:blur(20px)}.brainstorm-toolbar{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 8px}.brainstorm-toolbar button,.brainstorm-toolbar label{display:grid;place-items:center;width:58px;min-height:52px;border:0;border-radius:17px;background:transparent;color:var(--primary);font-size:19px}.brainstorm-toolbar button.active,.brainstorm-toolbar button:hover{background:rgba(255,255,255,.16)}.brainstorm-toolbar small{font-size:9px;color:var(--secondary)}.brainstorm-toolbar input{width:28px;height:28px;padding:0;border:0;background:transparent}.brainstorm-canvas-viewport{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:26px;background-color:rgba(236,231,244,.12);background-image:radial-gradient(rgba(255,255,255,.22) 1px,transparent 1px);background-size:24px 24px}.brainstorm-canvas{position:absolute;left:50%;top:50%;width:2400px;height:1600px;transform:translate(-50%,-50%);transform-origin:center;background:rgba(255,255,255,.025)}.brainstorm-empty{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:rgba(255,255,255,.45);pointer-events:none}.brainstorm-node{position:absolute;min-width:120px;min-height:70px;padding:10px;border:1px solid rgba(255,255,255,.35);border-radius:16px;background:rgba(63,52,88,.7);box-shadow:0 16px 36px rgba(17,14,30,.24);backdrop-filter:blur(16px);color:var(--primary);cursor:move}.brainstorm-node.selected{outline:2px solid rgba(220,207,244,.9);outline-offset:3px}.brainstorm-node img{display:block;max-width:240px;max-height:220px;border-radius:12px}.brainstorm-node[contenteditable=true]{cursor:text}.brainstorm-drawing{position:absolute;inset:0;pointer-events:none}.brainstorm-assistant{padding:18px}.brainstorm-assistant header{display:flex;align-items:center;gap:12px}.brainstorm-assistant header strong,.brainstorm-assistant header small{display:block}.brainstorm-assistant header small{color:var(--secondary)}.brainstorm-assistant>p{min-height:90px;margin:22px 0;color:var(--secondary);font-size:13px;line-height:20px}.brainstorm-assistant>div{display:grid;gap:9px}.brainstorm-assistant>div button{height:42px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(255,255,255,.08);color:var(--primary);text-align:left;padding:0 15px}
@media(max-width:1000px){.brainstorm-shell{grid-template-columns:68px 1fr}.brainstorm-assistant{display:none}}
.brainstorm-page{position:fixed;z-index:18;inset:0;grid-template-rows:96px minmax(0,1fr);padding:24px 28px 28px;border:0;border-radius:0;background:radial-gradient(circle at 18% 8%,rgba(126,111,167,.52),transparent 36%),linear-gradient(145deg,#332b49,#514367);box-shadow:none;transform:translateX(24px);transform-origin:right center}.brainstorm-page.open{transform:none}.brainstorm-page .brainstorm-head{padding:0 4px 18px}.brainstorm-page .brainstorm-shell{max-width:1800px;width:100%;margin:0 auto}.brainstorm-page .brainstorm-canvas-viewport{cursor:grab}.brainstorm-page .brainstorm-canvas-viewport.panning{cursor:grabbing}/* Keep Home painted beneath the moving Brainstorm sheet. */
.brainstorm-page .brainstorm-canvas{left:0;top:0;transform:translate(-800px,-500px);transform-origin:0 0}
.brainstorm-page .brainstorm-drawing{width:100%;height:100%}
.brainstorm-page .brainstorm-head>div:first-child{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:baseline;gap:12px}.brainstorm-page .brainstorm-head>div:first-child small{white-space:nowrap}.brainstorm-page .brainstorm-head h2{margin:0}.brainstorm-page .brainstorm-head p{margin:0}
/* Brainstorm interaction system */
.brainstorm-page .brainstorm-shell{grid-template-columns:64px minmax(0,1fr) 300px;gap:12px}.brainstorm-page .brainstorm-toolbar{position:relative;z-index:8;width:64px;padding:10px 6px;gap:5px;border-radius:22px}.brainstorm-page .brainstorm-toolbar button,.brainstorm-page .brainstorm-toolbar label{position:relative;width:48px;height:44px;min-height:44px;border-radius:14px;font-size:18px;cursor:default}.brainstorm-page .brainstorm-toolbar button.active{background:rgba(255,255,255,.24);box-shadow:inset 0 1px rgba(255,255,255,.28),0 8px 18px rgba(15,12,28,.16)}.brainstorm-page .brainstorm-toolbar button:disabled{opacity:.28}.brainstorm-page .brainstorm-toolbar [data-tooltip]::after{content:attr(data-tooltip);position:absolute;z-index:50;left:56px;top:50%;padding:6px 9px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(29,25,42,.94);box-shadow:0 8px 24px rgba(0,0,0,.25);color:#fff;font-size:11px;white-space:nowrap;opacity:0;visibility:hidden;transform:translate(3px,-50%);transition:.14s;pointer-events:none}.brainstorm-page .brainstorm-toolbar [data-tooltip]:hover::after{opacity:1;visibility:visible;transform:translate(0,-50%)}.brainstorm-page .brainstorm-toolbar input[type=color]{width:24px;height:24px;border-radius:50%;overflow:hidden;cursor:pointer}.brainstorm-tool-divider{display:block;width:30px;height:1px;margin:2px 0;background:rgba(255,255,255,.15)}
.brainstorm-canvas-viewport.tool-select{cursor:default!important}.brainstorm-canvas-viewport.tool-image{cursor:copy!important}.brainstorm-canvas-viewport.tool-text{cursor:text!important}.brainstorm-canvas-viewport.tool-draw,.brainstorm-canvas-viewport.tool-shape{cursor:crosshair!important}.brainstorm-canvas-viewport.moving,.brainstorm-canvas-viewport.panning{cursor:grabbing!important}.brainstorm-page .brainstorm-canvas{width:3200px;height:2400px;background:rgba(255,255,255,.018);transform-origin:0 0}
.brainstorm-object{position:absolute;box-sizing:border-box;transform-origin:center;user-select:none;touch-action:none}.brainstorm-object.type-image{overflow:visible;border-radius:12px;box-shadow:0 15px 38px rgba(15,12,28,.22)}.brainstorm-object.type-image>img{display:block;width:100%;height:100%;border-radius:12px;object-fit:cover;pointer-events:none}.brainstorm-object.type-text{min-width:40px;min-height:30px;padding:8px}.brainstorm-text-content{width:100%;height:100%;overflow:hidden;white-space:pre-wrap;line-height:1.18;outline:0}.brainstorm-text-content[contenteditable=true]{cursor:text;user-select:text;background:rgba(255,255,255,.07);border-radius:6px}.brainstorm-shape-content{width:100%;height:100%;border:1px solid rgba(255,255,255,.35);border-radius:16px;box-shadow:inset 0 1px rgba(255,255,255,.28),0 14px 32px rgba(15,12,28,.16)}.brainstorm-object.type-drawing svg{display:block;width:100%;height:100%;overflow:visible}.brainstorm-object.selected::after{content:"";position:absolute;z-index:10;inset:-4px;border:1.5px solid #ede5ff;border-radius:4px;box-shadow:0 0 0 1px rgba(76,59,111,.42);pointer-events:none}
.brainstorm-object [data-resize-handle],.brainstorm-object [data-rotate-handle]{position:absolute;z-index:20;width:10px;height:10px;padding:0;border:1px solid rgba(72,57,104,.65);border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(14,10,24,.24)}.brainstorm-object [data-resize-handle="nw"]{left:-9px;top:-9px;cursor:nwse-resize}.brainstorm-object [data-resize-handle="n"]{left:50%;top:-9px;transform:translateX(-50%);cursor:ns-resize}.brainstorm-object [data-resize-handle="ne"]{right:-9px;top:-9px;cursor:nesw-resize}.brainstorm-object [data-resize-handle="e"]{right:-9px;top:50%;transform:translateY(-50%);cursor:ew-resize}.brainstorm-object [data-resize-handle="se"]{right:-9px;bottom:-9px;cursor:nwse-resize}.brainstorm-object [data-resize-handle="s"]{left:50%;bottom:-9px;transform:translateX(-50%);cursor:ns-resize}.brainstorm-object [data-resize-handle="sw"]{left:-9px;bottom:-9px;cursor:nesw-resize}.brainstorm-object [data-resize-handle="w"]{left:-9px;top:50%;transform:translateY(-50%);cursor:ew-resize}.brainstorm-object [data-rotate-handle]{left:50%;top:-38px;width:12px;height:12px;transform:translateX(-50%);cursor:grab}.brainstorm-rotate-line{position:absolute;z-index:19;left:50%;top:-30px;width:1px;height:26px;background:#ede5ff;pointer-events:none}
.brainstorm-inspector{position:absolute;z-index:15;top:14px;left:50%;display:flex;align-items:center;gap:8px;height:42px;padding:0 10px;border:1px solid rgba(255,255,255,.26);border-radius:15px;background:rgba(44,37,63,.82);box-shadow:0 12px 32px rgba(13,10,24,.24);backdrop-filter:blur(20px);transform:translateX(-50%)}.brainstorm-inspector[hidden]{display:none}.brainstorm-inspector select,.brainstorm-inspector input{height:28px;border:0;border-radius:8px;background:rgba(255,255,255,.1);color:#f6f1fb;outline:0}.brainstorm-inspector select{width:132px;padding:0 8px}.brainstorm-inspector input{width:48px;padding:0 6px}.brainstorm-inspector span{color:var(--secondary);font-size:11px}
.brainstorm-page .brainstorm-assistant{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;padding:16px}.brainstorm-ai-thread{min-height:0;overflow:auto;display:flex!important;flex-direction:column;gap:10px!important;padding:8px 2px;scrollbar-width:none}.brainstorm-ai-thread::-webkit-scrollbar{display:none}.brainstorm-ai-message{max-width:92%;padding:10px 12px;border:1px solid rgba(255,255,255,.13);border-radius:15px;color:rgba(247,243,251,.9);font-size:12px;line-height:18px;white-space:pre-wrap}.brainstorm-ai-message.assistant{align-self:flex-start;background:rgba(255,255,255,.075);border-bottom-left-radius:5px}.brainstorm-ai-message.user{align-self:flex-end;background:rgba(207,190,237,.24);border-bottom-right-radius:5px}.brainstorm-ai-message.pending{animation:brainstormThinking 1s ease-in-out infinite alternate}@keyframes brainstormThinking{to{opacity:.48}}.brainstorm-ai-composer{display:grid!important;grid-template-columns:minmax(0,1fr) 34px;align-items:end;gap:8px!important;padding:8px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.07)}.brainstorm-ai-composer textarea{min-width:0;max-height:94px;padding:5px 4px;border:0;outline:0;resize:none;background:transparent;color:#f6f1fb;font:inherit;font-size:12px;line-height:17px}.brainstorm-ai-composer button{width:34px!important;height:34px!important;padding:0!important;border:1px solid rgba(255,255,255,.36)!important;border-radius:50%!important;background:rgba(255,255,255,.88)!important;color:#342a48!important;text-align:center!important;font-size:17px;font-weight:700}@media(max-width:1000px){.brainstorm-page .brainstorm-shell{grid-template-columns:60px minmax(0,1fr)}.brainstorm-page .brainstorm-assistant{display:none}}

/* Picart Vision Card Phase 1 — image personality card overlay, independent from Collection Masonry. */
.picart-vision-card{position:fixed;z-index:70;inset:0;pointer-events:none;opacity:0;transition:opacity .22s ease}
.picart-vision-card.open{opacity:1;pointer-events:auto}
.picart-vision-card-backdrop{position:absolute;inset:0;background:rgba(23,20,34,.44);backdrop-filter:blur(24px) saturate(136%);-webkit-backdrop-filter:blur(24px) saturate(136%);opacity:0;transition:opacity .22s ease}
.picart-vision-card.open .picart-vision-card-backdrop{opacity:1}
.picart-vision-card.closing .picart-vision-card-backdrop{opacity:0}
.picart-vision-card-stage{position:absolute;inset:0;pointer-events:none}
.picart-vision-card-surface{position:fixed;overflow:visible;border-radius:28px;transform-origin:top left;will-change:transform;pointer-events:auto;transition:box-shadow .28s ease}
.picart-vision-card-flipper{position:absolute;inset:0;overflow:hidden;border:1px solid rgba(255,255,255,.26);border-radius:28px;background:linear-gradient(145deg,rgba(43,37,58,.82),rgba(24,21,34,.82));box-shadow:0 36px 100px rgba(7,6,18,.46),inset 0 1px rgba(255,255,255,.28);transform-style:flat;transition:box-shadow .28s ease;will-change:opacity,transform}
.picart-vision-card.open:not(.show-insight):not(.closing) .picart-vision-card-surface:hover .picart-vision-card-flipper{box-shadow:0 44px 120px rgba(7,6,18,.54),0 14px 38px rgba(186,166,232,.12),inset 0 1px rgba(255,255,255,.3)}
.picart-vision-card.show-insight .picart-vision-card-flipper{transform:none;animation:picartVisionCardBackEnter .32s cubic-bezier(.2,.86,.2,1) both}
.picart-vision-card-front,.picart-vision-card-back{position:absolute;inset:0;display:grid;place-items:center;backface-visibility:visible;-webkit-backface-visibility:visible}
.picart-vision-card-front{z-index:1;visibility:visible;opacity:1;transition:opacity .18s ease,visibility 0s linear 0s}
.picart-vision-card.show-insight .picart-vision-card-front{visibility:hidden;opacity:0;pointer-events:none;transition:opacity .12s ease,visibility 0s linear .12s}
.picart-vision-card-front img{display:block;width:100%;height:100%;object-fit:contain;background:rgba(10,9,16,.28);transition:transform .28s ease}
.picart-vision-card.open:not(.show-insight):not(.preparing):not(.closing) .picart-vision-card-surface:hover .picart-vision-card-front img{transform:scale(1.03)}
.picart-vision-card-insight{position:absolute;right:18px;bottom:18px;z-index:3;display:grid;place-items:center;gap:1px;height:54px;min-width:104px;padding:0 17px;border:1px solid rgba(255,255,255,.34);border-radius:27px;background:rgba(45,39,59,.48);box-shadow:0 12px 28px rgba(9,8,20,.24),inset 0 1px rgba(255,255,255,.24);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);color:#fff;font-size:13px;font-weight:700;opacity:0;visibility:hidden;transform:translateY(6px) scale(.98);pointer-events:none;transition:opacity .18s ease,transform .22s var(--spring),visibility 0s linear .22s}
.picart-vision-card-insight small{color:rgba(255,255,255,.64);font-size:10px;font-weight:600;line-height:12px}
@media (hover: hover) and (pointer: fine){.picart-vision-card.open:not(.show-insight):not(.closing) .picart-vision-card-surface:hover .picart-vision-card-insight,.picart-vision-card.open:not(.show-insight):not(.closing) .picart-vision-card-surface:focus-within .picart-vision-card-insight{opacity:1;visibility:visible;transform:none;pointer-events:auto;transition-delay:0s}}
.picart-vision-card.show-insight .picart-vision-card-insight{opacity:0;visibility:hidden;pointer-events:none}
.picart-vision-card-back{z-index:2;isolation:isolate;overflow:hidden;padding:34px;background:radial-gradient(circle at 22% 18%,rgba(198,176,238,.18),transparent 34%),linear-gradient(145deg,rgba(52,44,74,.94),rgba(24,21,34,.96));color:#fff;transform:none;visibility:hidden;opacity:0}
.picart-vision-card.show-insight .picart-vision-card-back{visibility:visible;opacity:1}
.picart-vision-card-backdrop-image{position:absolute;z-index:0;inset:-24px;width:calc(100% + 48px);height:calc(100% + 48px);object-fit:cover;filter:blur(22px) saturate(108%);opacity:.38;transform:scale(1.07);pointer-events:none}
.picart-vision-card-backdrop-wash{position:absolute;z-index:1;inset:0;background:linear-gradient(145deg,rgba(28,23,43,.56),rgba(19,16,29,.86));pointer-events:none}
.picart-vision-card-insight-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.picart-vision-card-insight-head small{color:rgba(255,255,255,.52);font-size:11px;font-weight:800;letter-spacing:.14em}
.picart-vision-card-insight-head span{color:rgba(255,255,255,.52);font-size:11px}
.picart-vision-card-insight:disabled{cursor:wait;opacity:.68}
.picart-vision-card-personality-block{display:grid;gap:7px}
.picart-vision-card-personality-block p{margin:0;color:rgba(255,255,255,.92);font-size:20px;line-height:26px;font-weight:700}
.picart-vision-card-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.picart-vision-card-section-title{display:grid;gap:2px}
.picart-vision-card-section-title strong{color:rgba(255,255,255,.92);font-size:13px;line-height:17px;font-weight:750;letter-spacing:.01em}
.picart-vision-card-section-title span{color:rgba(255,255,255,.52);font-size:11px;line-height:14px}
.picart-vision-card-score-list{display:grid;gap:9px;margin-top:9px}
.picart-vision-card-score-row{display:grid;gap:5px}
.picart-vision-card-score-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:rgba(255,255,255,.78);font-size:12px}
.picart-vision-card-score-meta strong{color:rgba(255,255,255,.92);font-size:12px;font-weight:700}
.picart-vision-card-score-track{height:4px;overflow:hidden;border-radius:4px;background:rgba(255,255,255,.14)}
.picart-vision-card-score-track span{display:block;height:100%;border-radius:inherit;background:rgba(228,216,247,.88);transition:none}
.picart-vision-card-score-empty{color:rgba(255,255,255,.48);font-size:12px}
.picart-vision-card-insight-group,.picart-vision-card-direction{display:grid;gap:9px;margin-top:3px}
.picart-vision-card-tags{display:flex;flex-wrap:wrap;gap:7px;min-height:27px}
.picart-vision-card-tag,.picart-vision-card-tag-empty{display:inline-flex;align-items:center;min-height:27px;padding:0 10px;border:1px solid rgba(255,255,255,.17);border-radius:14px;background:rgba(255,255,255,.09);color:rgba(255,255,255,.88);font-size:12px;line-height:18px}
.picart-vision-card-tag-empty{border-color:transparent;background:transparent;padding:0;color:rgba(255,255,255,.48)}
.picart-vision-card-direction{gap:8px}
.picart-vision-card-direction p,.picart-vision-card-explanation{margin:0;color:rgba(255,255,255,.84);font-size:14px;line-height:21px}
.picart-vision-card-explanation{max-width:470px;color:rgba(255,255,255,.66)}
@keyframes picartVisionCardFieldReveal{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes picartVisionCardBackEnter{from{transform:translateY(8px) scale(.985);opacity:.72}to{transform:none;opacity:1}}
@media(max-width:720px){.picart-vision-card-back{padding:18px 14px}.picart-vision-card-tags{max-height:74px;overflow:auto}}
@media(prefers-reduced-motion:reduce){.picart-vision-card,.picart-vision-card-backdrop,.picart-vision-card-flipper,.picart-vision-card-front img{transition:none!important;animation:none!important}.picart-vision-card-surface{transform:none!important}.picart-vision-card.show-insight .picart-vision-card-flipper{transform:none}.picart-vision-card.show-insight .picart-vision-card-front{visibility:hidden}.picart-vision-card.show-insight .picart-vision-card-back{transform:none}}

/* Vision Card refinement: one analysis plane with a stable, physical flip. */
.picart-vision-card-flipper{transform-style:preserve-3d;transition:transform .56s cubic-bezier(.22,.8,.2,1);will-change:transform}
.picart-vision-card-flipper{overflow:visible}
.picart-vision-card-front,.picart-vision-card-back{backface-visibility:hidden;-webkit-backface-visibility:hidden;transform-style:preserve-3d;opacity:1;visibility:visible;overflow:hidden;border-radius:28px;transition:none}
.picart-vision-card-front{transform:rotateY(0deg)}
.picart-vision-card.show-insight .picart-vision-card-flipper{transform:rotateY(180deg);animation:none}
.picart-vision-card.show-insight .picart-vision-card-front{visibility:hidden;opacity:0;pointer-events:none}
.picart-vision-card-back{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto auto auto minmax(0,1fr);align-content:stretch;justify-items:stretch;gap:14px;overflow:hidden;padding:34px;background:linear-gradient(145deg,rgba(39,33,57,.58),rgba(17,15,26,.72));transform:rotateY(180deg)}
.picart-vision-card.show-insight .picart-vision-card-back{visibility:visible;opacity:1;transform:rotateY(180deg)}
.picart-vision-card-back> .picart-vision-card-insight-head,.picart-vision-card-back>section{position:relative;z-index:2;width:min(520px,100%);margin-inline:auto}
.picart-vision-card-back .picart-vision-card-insight-head{min-height:42px}
.picart-vision-card-back h2{max-width:520px;margin:0;font-size:30px;line-height:36px;letter-spacing:-.03em}
.picart-vision-card-back .picart-vision-card-insight-group,.picart-vision-card-back .picart-vision-card-direction{margin-top:0}
.picart-vision-card-back .picart-vision-card-direction{min-height:0}
.picart-vision-card-direction-scroll{position:relative;min-height:0;max-height:none;overflow:auto;padding-right:12px;scrollbar-width:none}
.picart-vision-card-direction-scroll::-webkit-scrollbar{display:none}
.picart-vision-card-scroll-hint{position:absolute;right:0;bottom:0;color:rgba(255,255,255,.58);font-size:18px;line-height:18px;pointer-events:none}
.picart-vision-card.analysis-ready.show-insight .picart-vision-card-back> :not(.picart-vision-card-backdrop-image):not(.picart-vision-card-backdrop-wash){animation:none}
.picart-vision-card.analysis-ready.show-insight .picart-vision-card-back> :nth-child(3){animation-delay:40ms}.picart-vision-card.analysis-ready.show-insight .picart-vision-card-back> :nth-child(4){animation-delay:80ms}.picart-vision-card.analysis-ready.show-insight .picart-vision-card-back> :nth-child(5){animation-delay:120ms}.picart-vision-card.analysis-ready.show-insight .picart-vision-card-back> :nth-child(6){animation-delay:160ms}.picart-vision-card.analysis-ready.show-insight .picart-vision-card-back> :nth-child(7){animation-delay:200ms}
.picart-vision-card.open:not(.show-insight):not(.closing) .picart-vision-card-surface:hover .picart-vision-card-front img{transform:scale(1.03)}
.picart-vision-card.open:not(.show-insight):not(.closing) .picart-vision-card-surface:hover .picart-vision-card-insight,.picart-vision-card.open:not(.show-insight):not(.closing) .picart-vision-card-surface:focus-within .picart-vision-card-insight{opacity:1;visibility:visible;transform:none;pointer-events:auto;transition-delay:0s}
@media(max-width:720px){.picart-vision-card-back{gap:10px;padding:18px 14px}.picart-vision-card-back h2{font-size:24px;line-height:29px}}
@media(prefers-reduced-motion:reduce){.picart-vision-card-flipper{transition:none!important}.picart-vision-card.show-insight .picart-vision-card-flipper{transform:rotateY(180deg)}.picart-vision-card.analysis-ready.show-insight .picart-vision-card-back> :not(.picart-vision-card-backdrop-image):not(.picart-vision-card-backdrop-wash){animation:none!important}}

/* Vision Card UX stabilization: one quiet image plane, one readable analysis layer. */
.picart-vision-card{isolation:isolate;contain:paint;transition:opacity .2s ease}
.picart-vision-card-backdrop{background:rgba(18,16,28,.48);backdrop-filter:blur(24px) saturate(124%);-webkit-backdrop-filter:blur(24px) saturate(124%);transition:opacity .2s ease}
.picart-vision-card-surface{border-radius:28px;box-shadow:0 32px 88px rgba(7,6,18,.46);perspective:1400px;-webkit-perspective:1400px;transition:none;transform:translateZ(0);transform-style:preserve-3d;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.picart-vision-card-flipper{overflow:visible;border:1px solid rgba(255,255,255,.24);border-radius:inherit;background:transparent;box-shadow:inset 0 1px rgba(255,255,255,.22);transform:rotateY(0deg);transform-origin:center center;transform-style:preserve-3d;transition:transform .44s cubic-bezier(.22,.8,.2,1);will-change:transform}
.picart-vision-card-front,.picart-vision-card-back{border-radius:inherit;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform-style:flat;transition:none;contain:none;visibility:visible;opacity:1}
.picart-vision-card-front{transform:rotateY(0deg) translateZ(.1px);background:rgba(10,9,16,.28)}
.picart-vision-card-front img{display:block;width:100%;height:100%;object-fit:contain;background:rgba(10,9,16,.28);transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:none}
.picart-vision-card.open:not(.show-insight):not(.preparing):not(.closing) .picart-vision-card-surface:hover .picart-vision-card-front img{transform:translateZ(0)}
.picart-vision-card-insight{right:18px;bottom:18px;height:52px;min-width:108px;border-radius:26px;background:rgba(37,32,50,.62);box-shadow:0 10px 24px rgba(7,6,18,.24),inset 0 1px rgba(255,255,255,.22);backdrop-filter:blur(16px) saturate(124%);-webkit-backdrop-filter:blur(16px) saturate(124%);opacity:0;transform:translateY(5px);transition:opacity .16s ease,transform .2s cubic-bezier(.16,1,.3,1),visibility 0s linear .2s}
@media (hover: hover) and (pointer: fine){.picart-vision-card.open:not(.show-insight):not(.preparing):not(.closing) .picart-vision-card-surface:hover .picart-vision-card-insight,.picart-vision-card.open:not(.show-insight):not(.preparing):not(.closing) .picart-vision-card-surface:focus-within .picart-vision-card-insight{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;transition-delay:0s}}
.picart-vision-card-back{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto auto minmax(0,1fr) auto;align-content:stretch;justify-items:stretch;gap:15px;overflow:hidden;padding:34px;background:transparent;color:#fff;transform:rotateY(180deg) translateZ(.1px);pointer-events:none}
.picart-vision-card.show-insight .picart-vision-card-flipper{transform:rotateY(180deg)}
.picart-vision-card.show-insight .picart-vision-card-front{visibility:visible;opacity:1;pointer-events:none}
.picart-vision-card.show-insight .picart-vision-card-back{transform:rotateY(180deg) translateZ(.1px);pointer-events:auto}
.picart-vision-card.returning .picart-vision-card-insight{visibility:hidden!important;opacity:0!important;pointer-events:none!important}
.picart-vision-card.analysis-loading .picart-vision-card-insight,.picart-vision-card.analysis-synthesizing .picart-vision-card-insight{opacity:.76}
.picart-vision-card.analysis-empty .picart-vision-card-insight,.picart-vision-card.analysis-bridge_error .picart-vision-card-insight,.picart-vision-card.analysis-engine_error .picart-vision-card-insight{border-color:rgba(255,255,255,.42);background:rgba(78,52,66,.72)}
.picart-vision-card-backdrop-image{position:absolute;z-index:0;inset:-28px;width:calc(100% + 56px);height:calc(100% + 56px);object-fit:cover;filter:blur(24px) saturate(112%);opacity:.34;transform:scale(1.08) translateZ(0);pointer-events:none}
.picart-vision-card-backdrop-wash{position:absolute;z-index:1;inset:0;background:linear-gradient(145deg,rgba(29,24,44,.58),rgba(15,13,23,.84));pointer-events:none}
.picart-vision-card-back>.picart-vision-card-insight-head,.picart-vision-card-back>section{position:relative;z-index:2;width:min(560px,100%);min-width:0;margin-inline:auto}
.picart-vision-card-insight-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;min-height:42px}
.picart-vision-card-insight-head small{color:rgba(255,255,255,.56);font-size:10px;font-weight:800;letter-spacing:.16em}
.picart-vision-card-insight-head h2{max-width:560px;margin:3px 0 0;font-size:30px;line-height:36px;letter-spacing:-.03em}
.picart-vision-card-insight-head>span{flex:0 0 auto;padding-top:3px;color:rgba(255,255,255,.54);font-size:11px}
.picart-vision-card-section-title{display:grid;gap:3px}
.picart-vision-card-section-title strong{color:rgba(255,255,255,.92);font-size:13px;line-height:17px;font-weight:750;letter-spacing:.01em}
.picart-vision-card-section-title span{color:rgba(255,255,255,.54);font-size:11px;line-height:14px}
.picart-vision-card-personality-block,.picart-vision-card-score-section,.picart-vision-card-insight-group,.picart-vision-card-direction{display:grid;gap:8px;margin:0;min-height:0}
.picart-vision-card-personality-block p{margin:0;color:rgba(255,255,255,.94);font-size:21px;line-height:27px;font-weight:720}
.picart-vision-card-score-list{display:grid;gap:8px;margin:0}
.picart-vision-card-score-row{display:grid;gap:5px}
.picart-vision-card-score-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:rgba(255,255,255,.8);font-size:12px}
.picart-vision-card-score-meta strong{color:rgba(255,255,255,.94);font-size:12px;font-weight:700}
.picart-vision-card-score-track{height:3px;overflow:hidden;border-radius:3px;background:rgba(255,255,255,.15)}
.picart-vision-card-score-track span{display:block;height:100%;border-radius:inherit;background:rgba(228,216,247,.9);transition:none}
.picart-vision-card-tags{display:flex;flex-wrap:wrap;align-content:start;gap:7px;min-height:24px}
.picart-vision-card-tag,.picart-vision-card-tag-empty{display:inline-flex;align-items:center;min-height:25px;padding:0 9px;border:1px solid rgba(255,255,255,.16);border-radius:13px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.88);font-size:12px;line-height:17px}
.picart-vision-card-tag-empty{border-color:transparent;background:transparent;padding:0;color:rgba(255,255,255,.48)}
.picart-vision-card-direction{grid-template-rows:auto minmax(0,1fr)}
.picart-vision-card-direction-scroll{position:relative;min-height:0;max-height:none;overflow:auto;padding:0 16px 0 0;scrollbar-width:none}
.picart-vision-card-direction-scroll::-webkit-scrollbar{display:none}
.picart-vision-card-direction p,.picart-vision-card-explanation{margin:0;color:rgba(255,255,255,.86);font-size:14px;line-height:21px}
.picart-vision-card-explanation{margin-top:8px;color:rgba(255,255,255,.66)}
.picart-vision-card-scroll-hint{position:absolute;right:0;bottom:0;color:rgba(255,255,255,.64);font-size:18px;line-height:18px;pointer-events:none}
.picart-vision-card.show-insight .picart-vision-card-back>*{animation:none!important}
.picart-vision-card.analysis-ready.show-insight .picart-vision-card-back{animation:none}
@media(max-width:720px){.picart-vision-card-back{gap:11px;padding:20px 16px}.picart-vision-card-insight-head h2{font-size:25px;line-height:30px}.picart-vision-card-personality-block p{font-size:19px;line-height:24px}.picart-vision-card-direction-scroll{padding-right:14px}}
@media(prefers-reduced-motion:reduce){.picart-vision-card,.picart-vision-card-backdrop,.picart-vision-card-flipper,.picart-vision-card-insight,.picart-vision-card-back{transition:none!important;animation:none!important}.picart-vision-card.show-insight .picart-vision-card-flipper{transform:rotateY(180deg)}.picart-vision-card.show-insight .picart-vision-card-back{transform:rotateY(180deg)}}


/* Vision Card motion pass: the physical card flip is the only content transition. */
.picart-vision-card.analysis-ready.show-insight .picart-vision-card-back{animation:none!important}
.picart-vision-card-score-track span{transform-origin:left center;transform:scaleX(0);transition:transform .24s cubic-bezier(.23,1,.32,1)}
.picart-vision-card.analysis-ready.show-insight .picart-vision-card-score-track span{transform:scaleX(var(--picart-score-scale,0))}
.picart-vision-card.analysis-ready.show-insight .picart-vision-card-back>.picart-vision-card-insight-head,.picart-vision-card.analysis-ready.show-insight .picart-vision-card-back>section{animation:none!important}
.picart-vision-card-direction-scroll,.picart-vision-card-tags{scrollbar-width:none;-ms-overflow-style:none}
.picart-vision-card-direction-scroll::-webkit-scrollbar,.picart-vision-card-tags::-webkit-scrollbar{display:none;width:0;height:0}
@media(prefers-reduced-motion:reduce){.picart-vision-card.analysis-ready.show-insight .picart-vision-card-back>.picart-vision-card-insight-head,.picart-vision-card.analysis-ready.show-insight .picart-vision-card-back>section{animation:none!important;opacity:1;transform:none}.picart-vision-card-score-track span{transition:none;transform:scaleX(var(--picart-score-scale,0))}}

/* Vision Card final motion boundary: one visible plane, no hover shadow swap. */
.picart-vision-card-surface{box-shadow:none!important;transition:none!important}
.picart-vision-card-flipper{box-shadow:0 32px 88px rgba(7,6,18,.46),inset 0 1px rgba(255,255,255,.22)!important}
.picart-vision-card.open:not(.show-insight):not(.closing) .picart-vision-card-surface:hover .picart-vision-card-flipper{box-shadow:0 32px 88px rgba(7,6,18,.46),inset 0 1px rgba(255,255,255,.22)!important}
@media(prefers-reduced-motion:reduce){.picart-vision-card-surface{box-shadow:none!important}.picart-vision-card-flipper{box-shadow:0 24px 64px rgba(7,6,18,.38),inset 0 1px rgba(255,255,255,.22)!important}}

/* Visual Core Formation: category scores select pigment only; analysis data is untouched. */
.picart-vision-card{--picart-core-rgb-a:190,165,232;--picart-core-rgb-b:86,133,255;--picart-core-rgb-c:218,225,238}
.picart-vision-card[data-visual-core-theme="art"]{--picart-core-rgb-a:184,91,255;--picart-core-rgb-b:64,126,255;--picart-core-rgb-c:174,255,84}
.picart-vision-card[data-visual-core-theme="photography"]{--picart-core-rgb-a:222,229,239;--picart-core-rgb-b:76,145,255;--picart-core-rgb-c:127,145,170}
.picart-vision-card[data-visual-core-theme="design"]{--picart-core-rgb-a:18,20,28;--picart-core-rgb-b:0,136,255;--picart-core-rgb-c:74,202,255}
.picart-vision-card[data-visual-core-theme="fashion"]{--picart-core-rgb-a:17,15,23;--picart-core-rgb-b:235,48,144;--picart-core-rgb-c:155,48,132}
.picart-vision-card[data-visual-core-theme="nature"]{--picart-core-rgb-a:113,192,145;--picart-core-rgb-b:93,139,255;--picart-core-rgb-c:207,225,177}
.picart-vision-card[data-visual-core-theme="architecture"]{--picart-core-rgb-a:205,218,232;--picart-core-rgb-b:91,151,214;--picart-core-rgb-c:126,135,155}
.picart-vision-card[data-visual-core-theme="cinema"]{--picart-core-rgb-a:231,152,92;--picart-core-rgb-b:118,75,181;--picart-core-rgb-c:245,210,142}
.picart-vision-card-back{grid-template-rows:auto auto auto auto auto minmax(0,1fr) auto}
.picart-vision-card-backdrop-wash{background:radial-gradient(circle at 19% 20%,rgba(var(--picart-core-rgb-a),.15),transparent 36%),radial-gradient(circle at 38% 16%,rgba(var(--picart-core-rgb-b),.09),transparent 27%),linear-gradient(145deg,rgba(27,23,42,.66),rgba(13,12,21,.9))}
.picart-vision-card-core{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:20px;padding:2px 0 14px;border-bottom:1px solid rgba(var(--picart-core-rgb-b),.14)}
.picart-vision-card-core-copy{display:grid;align-content:center;gap:10px;min-width:0}
.picart-vision-card-core-copy p{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0}
.picart-vision-card-core-copy p strong{overflow:hidden;color:rgba(255,255,255,.96);font-size:25px;line-height:30px;font-weight:700;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap}
.picart-vision-card-core-copy p span{flex:0 0 auto;color:rgba(var(--picart-core-rgb-c),.94);font-size:17px;line-height:22px;font-weight:680}
.picart-formation-orb{display:block;width:92px;height:92px;border:0;background:transparent;box-shadow:none;contain:layout paint;pointer-events:none}
.picart-formation-orb-small{width:56px;height:56px}
.picart-formation-orb[data-state="idle"]{opacity:.34}
@media(max-width:720px){.picart-vision-card-core{grid-template-columns:72px minmax(0,1fr);gap:14px;padding-bottom:10px}.picart-visual-core-orb{width:72px;height:72px}.picart-vision-card-core-copy p strong{font-size:21px;line-height:26px}.picart-vision-card-core-copy p span{font-size:15px}}

/* Vision Card content boundary: fixed identity layers, one internal reading scroll. */
/* Flex gives the reading region a definite remaining height; grid min-content sizing
   otherwise lets long portrait-card copy escape its intended scroll boundary. */
.picart-vision-card-back{display:flex;flex-direction:column;align-items:stretch;gap:15px;height:100%;min-height:0;max-height:100%}
.picart-vision-card-back>.picart-vision-card-insight-head,.picart-vision-card-back>section,.picart-vision-card-content-scroll{position:relative;z-index:2;width:min(560px,100%);min-width:0;margin-inline:auto}
.picart-vision-card-back>.picart-vision-card-insight-head,.picart-vision-card-back>section{flex:0 0 auto}
.picart-vision-card-content-scroll{display:block;flex:1 1 0;align-self:stretch;min-height:0;height:0;overflow-y:auto;overscroll-behavior:contain;padding:3px 12px 24px 0;scrollbar-width:none;-ms-overflow-style:none}
.picart-vision-card-content-scroll::-webkit-scrollbar{display:none;width:0;height:0}
.picart-vision-card-content-scroll .picart-vision-card-insight-group,.picart-vision-card-content-scroll .picart-vision-card-direction{display:block;position:static;clear:both;min-width:0;margin:0 0 24px}
.picart-vision-card-content-scroll .picart-vision-card-section-title{margin-bottom:9px}
.picart-vision-card-content-scroll .picart-vision-card-cultural-dna[hidden]{display:none}
.picart-vision-card-content-scroll .picart-vision-card-direction-scroll{display:block;overflow:visible;min-height:0;max-height:none;padding:0}
.picart-vision-card-content-scroll .picart-vision-card-direction-scroll p{display:block;position:static;margin:0}
.picart-vision-card-content-scroll .picart-vision-card-tags,.picart-vision-card-content-scroll p,.picart-vision-card-content-scroll .picart-vision-card-explanation{min-width:0;max-width:100%;overflow-wrap:anywhere;word-wrap:break-word;word-break:normal;line-height:1.5}
.picart-vision-card-content-scroll .picart-vision-card-tag,.picart-vision-card-content-scroll .picart-vision-card-tag-empty{max-width:100%;white-space:normal}
.picart-vision-card-content-scroll .picart-vision-card-explanation{margin-top:8px}
.picart-vision-card-content-scroll .picart-vision-card-scroll-hint{position:sticky;z-index:3;bottom:0;display:block;width:max-content;margin:-21px 0 0 auto;padding:5px 0 0 10px;background:linear-gradient(90deg,transparent,rgba(19,16,29,.78) 35%);color:rgba(255,255,255,.64);font-size:18px;line-height:18px;pointer-events:none}
@media(max-width:720px){.picart-vision-card-content-scroll{gap:20px;padding-right:10px;padding-bottom:18px}}

/* Home viewport safety: preserve the existing Cover Flow and Dock geometry while
   keeping both inside a user-resized native window. This sits last so it wins over
   width-only legacy scale rules when both constraints apply. */
@media (min-width:761px) and (max-height:820px){
  .home-view{min-height:calc(100dvh - 80px);padding-bottom:24px}
  .coverflow{height:440px;min-height:0;transform:scale(.86)!important;transform-origin:center}
  .dock-stage{--dock-scale:.74;height:84px}
}
@media (min-width:761px) and (max-height:680px){
  .brandbar{padding:16px 24px}
  .home-view{min-height:calc(100dvh - 72px);padding-bottom:16px}
  .coverflow{height:370px;transform:scale(.72)!important}
  .dock-stage{--dock-scale:.62;height:70px}
}

/* System Smart Collections: compact, secondary entry points in the existing brand bar. */
.smart-entry-bar{position:absolute;left:50%;top:50%;display:flex;align-items:center;gap:8px;transform:translate(-50%,-50%)}
.smart-entry-bar[hidden]{display:none}

.quick-capture-sidecar{position:fixed;inset:0;z-index:75;pointer-events:none;opacity:0;background:rgba(23,20,34,.18);transition:opacity .18s ease}
.quick-capture-sidecar.is-open{pointer-events:auto;opacity:1}
.quick-capture-sidecar-surface{position:absolute;top:20px;right:20px;bottom:20px;width:min(360px,calc(100vw - 40px));padding:24px;border:1px solid rgba(255,255,255,.28);border-radius:24px;background:linear-gradient(145deg,rgba(48,42,65,.96),rgba(28,25,43,.96));box-shadow:0 24px 70px rgba(7,6,18,.38);color:#f7f4ff;transform:translateX(12px);transition:transform .18s ease}
.quick-capture-sidecar.is-open .quick-capture-sidecar-surface{transform:translateX(0)}
.quick-capture-sidecar header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.quick-capture-sidecar header button,.quick-capture-sidecar-adjust,.quick-capture-sidecar-choices button{border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.08);color:inherit;padding:8px 12px;font:inherit;cursor:pointer}
.quick-capture-sidecar header button:last-child{font-size:22px;line-height:18px;padding:5px 10px}
.quick-capture-sidecar-preview{display:block;width:100%;height:190px;object-fit:cover;border-radius:16px;background:rgba(255,255,255,.08);margin-bottom:22px}
.quick-capture-sidecar-eyebrow{margin:16px 0 7px;color:rgba(232,222,255,.68);font-size:11px;letter-spacing:.12em}
.quick-capture-sidecar h2{margin:0;font-size:25px}
.quick-capture-sidecar-copy{margin:7px 0;color:rgba(255,255,255,.72)}
.quick-capture-sidecar-tags,.quick-capture-sidecar-choices{display:flex;flex-wrap:wrap;gap:7px}
.quick-capture-sidecar-tags span{padding:6px 9px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:rgba(255,255,255,.8);font-size:12px}
.quick-capture-sidecar-location{margin:0 0 20px;font-size:16px}.quick-capture-sidecar-location span{color:#bea4ef;padding:0 5px}
.quick-capture-sidecar-adjust{background:#bca2ea;color:#282039;border-color:transparent;font-weight:650}
.quick-capture-sidecar-choices{margin-top:14px}.quick-capture-sidecar-choices p{width:100%;margin:0 0 2px;color:rgba(255,255,255,.7);font-size:12px}.quick-capture-sidecar-choices button{font-size:12px}
.smart-entry{display:flex;align-items:center;gap:8px;min-height:34px;padding:6px 12px;border:1px solid var(--divider);border-radius:17px;background:var(--glass);color:var(--primary);backdrop-filter:blur(18px);font:inherit;cursor:pointer}
.smart-entry strong{font-size:13px;font-weight:600;white-space:nowrap}.smart-entry small{min-width:18px;padding:1px 5px;border-radius:9px;background:rgba(255,255,255,.28);font-size:11px;color:var(--secondary);text-align:center}
.smart-entry:hover{background:rgba(255,255,255,.2)}
.smart-collection-pin{position:relative}.smart-collection-pin .pin-smart-meta{position:absolute;z-index:2;top:10px;left:10px;padding:4px 8px;border:1px solid rgba(255,255,255,.24);border-radius:10px;background:rgba(32,27,48,.68);color:rgba(255,255,255,.86);font-size:11px;line-height:1.1;backdrop-filter:blur(8px)}
@media(max-width:760px){.smart-entry-bar{display:none}}

/* Brainstorm lifecycle controls: existing panel, no new sidebar choreography. */
.brainstorm-chat-references,.brainstorm-chat-controls,.brainstorm-chat-notice{grid-column:1/-1;min-width:0}
.brainstorm-chat-references,.brainstorm-chat-controls{display:flex;flex-wrap:wrap;gap:6px}
.brainstorm-ai-composer .brainstorm-chat-controls button{width:auto!important;min-height:32px;height:auto!important;padding:5px 9px!important;border-radius:10px!important;font-size:11px;font-weight:500}
.brainstorm-ai-composer button[hidden]{display:none!important}
.brainstorm-chat-reference{position:relative;flex:0 0 60px;width:60px;height:60px;margin:4px 2px;background:rgba(255,255,255,.12);border-radius:10px}
.brainstorm-chat-reference img{display:block;width:100%;height:100%;object-fit:contain;border-radius:10px}
.brainstorm-ai-composer .brainstorm-reference-remove{position:absolute;top:-4px;right:-4px;width:22px!important;height:22px!important;min-height:22px;padding:0!important;border:1px solid rgba(255,255,255,.35);border-radius:50%!important;background:rgba(46,35,62,.86);color:#fff;font-size:17px;line-height:1;display:grid;place-items:center}
.brainstorm-reference-remove:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.brainstorm-chat-notice,.brainstorm-chat-origin{display:block;font-size:11px;line-height:1.5}
.brainstorm-chat-origin{margin-bottom:4px;opacity:.8}
@media(prefers-reduced-motion:reduce){.brainstorm-ai-message.pending{animation:none}}

/* S4: a local drawer, independent of canvas geometry and AI request lifecycle. */
/* The viewport always fills the workspace; tools and chat overlay it. */
.brainstorm-page{padding:24px 0 0;background:radial-gradient(ellipse at 12% 0%,#79658e,transparent 65%),linear-gradient(130deg,#51435f,#665375);--canvas-ink:#f4eefb;--canvas-muted:#d3c4df}
.brainstorm-page .brainstorm-head{position:relative;z-index:23;padding:0 28px 18px;color:var(--canvas-ink)}
.brainstorm-page .brainstorm-shell{position:relative;grid-template-columns:minmax(0,1fr);max-width:none;width:100%;gap:0}
.brainstorm-page .brainstorm-canvas-viewport{grid-area:1/1;min-width:0;min-height:0;border:0;border-radius:0;background-color:transparent;background-image:radial-gradient(rgba(237,222,250,.23) .8px,transparent .8px)}
.brainstorm-page .brainstorm-canvas{background:transparent}
.brainstorm-page .brainstorm-toolbar{position:absolute;z-index:4;left:16px;top:16px;bottom:16px;max-height:calc(100% - 32px)}
.brainstorm-page .brainstorm-empty{color:var(--canvas-muted)}
.brainstorm-page .brainstorm-assistant{--chat-surface:rgba(122,99,145,.86);--chat-ink:#fbf6ff;--chat-muted:#e1d4ec;--chat-line:rgba(239,223,255,.16);position:absolute;isolation:isolate;z-index:22;right:0;top:0;bottom:0;width:min(380px,calc(100% - 106px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:16px;padding:28px 28px 24px 24px;overflow:visible;background:transparent;color:var(--chat-ink);border:0;border-radius:0;box-shadow:none;backdrop-filter:none;opacity:0;visibility:hidden;pointer-events:none;transform:none;transition:opacity .18s ease-out,visibility 0s .28s}
.brainstorm-page.chat-open .brainstorm-assistant{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition-delay:0s}
.brainstorm-page .brainstorm-assistant::before{content:"";position:absolute;z-index:-1;inset:-120px 0 0 -140px;background:linear-gradient(90deg,transparent 0%,var(--chat-surface) 38%,var(--chat-surface) 100%);backdrop-filter:blur(14px);-webkit-mask-image:linear-gradient(90deg,transparent,#000 34%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.2) 50px,rgba(0,0,0,.65) 120px,#000 200px);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent,#000 34%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.2) 50px,rgba(0,0,0,.65) 120px,#000 200px);mask-composite:intersect;pointer-events:none}

/* Stable soft edge; mounted reading content settles separately, without blurring text. */
.brainstorm-page .brainstorm-assistant>header,.brainstorm-page .brainstorm-assistant>.brainstorm-ai-thread,.brainstorm-page .brainstorm-assistant>.brainstorm-ai-composer{opacity:0;transform:translateX(24px);transition:transform .18s cubic-bezier(.23,1,.32,1),opacity .14s ease-out;transition-delay:0s}
.brainstorm-page.chat-open .brainstorm-assistant>header,.brainstorm-page.chat-open .brainstorm-assistant>.brainstorm-ai-thread,.brainstorm-page.chat-open .brainstorm-assistant>.brainstorm-ai-composer{opacity:1;transform:none;transition-duration:.24s,.2s;transition-delay:20ms}
.brainstorm-page.chat-open .brainstorm-assistant>.brainstorm-ai-thread{transition-delay:40ms}
.brainstorm-page.chat-open .brainstorm-assistant>.brainstorm-ai-composer{transition-delay:40ms}
.brainstorm-page .brainstorm-assistant header{display:flex;align-items:center;gap:10px;color:var(--chat-ink)}
.brainstorm-page .brainstorm-assistant header small,.brainstorm-page .brainstorm-chat-origin,.brainstorm-page .brainstorm-chat-notice{color:var(--chat-muted)}
#brainstorm-chat-close{margin-left:auto;flex:0 0 36px;width:36px;height:36px;min-height:36px;border:1px solid var(--chat-line);border-radius:50%;background:transparent;color:var(--chat-ink);font-size:22px}
.brainstorm-page .brainstorm-ai-message{color:var(--chat-ink);border-color:var(--chat-line);overflow-wrap:anywhere}
.brainstorm-page .brainstorm-ai-message.assistant{background:color-mix(in srgb,var(--chat-surface) 60%,transparent)}
.brainstorm-page .brainstorm-ai-message.user{background:rgba(142,107,219,.2)}
.brainstorm-page .brainstorm-ai-composer{background:color-mix(in srgb,var(--chat-surface) 60%,transparent);border-color:var(--chat-line)}
.brainstorm-page .brainstorm-ai-composer textarea{color:var(--chat-ink)}
.brainstorm-page .brainstorm-ai-composer textarea::placeholder{color:var(--chat-muted)}
.brainstorm-page .brainstorm-ai-thread{overscroll-behavior:contain;scrollbar-width:none}
.brainstorm-page .brainstorm-assistant :focus-visible,#brainstorm-chat-toggle:focus-visible{outline:2px solid #a38aeb;outline-offset:3px}
.brainstorm-page .brainstorm-chat-references{max-height:96px;overflow:auto;overscroll-behavior:contain}
@media(prefers-color-scheme:light){
 :root{--warning:#556700}
 .brainstorm-page{background:radial-gradient(ellipse at 15% 0%,#e6dcf2,transparent 68%),linear-gradient(130deg,#d2c2e2,#bda9d2);--canvas-ink:#3e2d50;--canvas-muted:#695775}
 .brainstorm-page .brainstorm-canvas-viewport{background-image:radial-gradient(rgba(82,58,107,.19) .8px,transparent .8px)}
 .brainstorm-page .brainstorm-assistant{--chat-surface:rgba(216,198,235,.86);--chat-ink:#392747;--chat-muted:#685075;--chat-line:rgba(83,52,108,.13)}
 .brainstorm-studio.brainstorm-page .brainstorm-title small{color:#6e587d}
 .brainstorm-page .brainstorm-head button{color:#463253;background:rgba(242,231,252,.28);border-color:rgba(91,60,114,.18)}
 .brainstorm-page .brainstorm-title-icon{background:rgba(100,65,130,.18)}
 .brainstorm-studio.brainstorm-page .brainstorm-toolbar button{color:#503760!important}
 .brainstorm-studio.brainstorm-page .brainstorm-toolbar button:hover,.brainstorm-studio.brainstorm-page .brainstorm-toolbar button.active{color:#362044!important;background:rgba(242,231,252,.4)!important}
 .brainstorm-studio.brainstorm-page .brainstorm-toolbar #brainstorm-undo,.brainstorm-studio.brainstorm-page .brainstorm-toolbar #brainstorm-redo{color:#6a507d!important}
}
@media(max-width:600px){.brainstorm-page .brainstorm-head{padding-inline:16px}.brainstorm-page .brainstorm-assistant{padding:20px 16px;width:calc(100% - 100px)}}
@media(prefers-reduced-motion:reduce){.brainstorm-page .brainstorm-assistant{transform:none;transition:opacity .1s linear,visibility 0s .1s}.brainstorm-page.chat-open .brainstorm-assistant{transition-delay:0s}.brainstorm-page .brainstorm-ai-message.pending{animation:none}}

@media(prefers-reduced-motion:reduce){.brainstorm-page .brainstorm-assistant>header,.brainstorm-page .brainstorm-assistant>.brainstorm-ai-thread,.brainstorm-page .brainstorm-assistant>.brainstorm-ai-composer{transform:none!important;transition:opacity .1s ease-out!important;transition-delay:0s!important}}

/* Fade canvas content at the viewport edge, without tinting controls or moving objects. */
.brainstorm-content-fade{position:absolute;inset:0;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 56px);mask-image:linear-gradient(to bottom,transparent,#000 56px)}
.brainstorm-content-fade>.brainstorm-canvas{pointer-events:auto}
.brainstorm-page .brainstorm-ai-composer textarea:focus,.brainstorm-page .brainstorm-ai-composer textarea:focus-visible{outline:none;box-shadow:none}
.brainstorm-page .brainstorm-ai-composer .brainstorm-chat-controls .brainstorm-reference-button{display:inline-flex;align-items:center;justify-content:center;width:34px!important;height:34px!important;min-width:34px;min-height:34px;padding:0!important;border-radius:50%;color:var(--chat-ink);background:rgba(245,236,255,.2)!important}
.brainstorm-reference-button svg{display:block;flex-shrink:0}

/* Brainstorm controls: one corner assistant entry and an uninterrupted canvas header. */
.brainstorm-page #brainstorm-close{position:absolute;left:50%;top:0;transform:translateX(-50%);width:48px;height:40px;padding:8px;border:0;background:transparent;color:var(--canvas-ink)}
#brainstorm-close svg{display:block;width:24px;height:24px;margin:auto;transition:transform .18s cubic-bezier(.23,1,.32,1)}
.brainstorm-page #brainstorm-chat-toggle{position:absolute;z-index:24;right:24px;bottom:24px;width:46px;height:46px;padding:7px;border-radius:50%;border:1px solid rgba(246,238,255,.46);background:linear-gradient(135deg,rgba(243,234,255,.72),rgba(154,126,189,.65));color:#f9f5ff;box-shadow:0 5px 18px rgba(57,37,83,.16);transition:opacity .14s ease,transform .2s cubic-bezier(.23,1,.32,1),visibility 0s}
.brainstorm-launcher-mark{display:block;transition:transform .24s cubic-bezier(.23,1,.32,1)}
.brainstorm-launcher-mark svg{display:block;width:100%;height:100%}
.brainstorm-page.chat-open #brainstorm-chat-toggle{opacity:0;visibility:hidden;pointer-events:none;transform:scale(.94)}
.brainstorm-page .brainstorm-assistant>header{min-height:36px;gap:8px}
.brainstorm-page .brainstorm-assistant header strong{font-size:14px;font-weight:600}
.brainstorm-page .brainstorm-assistant header strong small{display:inline;margin-left:5px;font-size:10px;font-weight:400;letter-spacing:.02em}
.brainstorm-page #brainstorm-chat-close{display:grid;place-items:center;border:0;background:transparent;border-radius:12px}
.brainstorm-page .brainstorm-ai-thread.is-empty{display:flex;align-items:center}
.brainstorm-chat-welcome{padding:12px 2px;color:var(--chat-ink)}
.brainstorm-chat-welcome strong{font-size:23px;font-weight:550;letter-spacing:-.03em}
.brainstorm-chat-welcome p{font-size:13px;line-height:1.7;color:var(--chat-muted);margin:12px 0}
.brainstorm-page .brainstorm-ai-composer{display:flex!important;flex-direction:column;gap:9px;padding:12px!important}
.brainstorm-page .brainstorm-ai-composer textarea{width:100%;min-height:62px;resize:none}
.brainstorm-composer-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}
.brainstorm-page .brainstorm-composer-actions>button[type=submit]{flex:0 0 34px;width:34px;height:34px;min-height:34px;align-self:center}
.brainstorm-page .brainstorm-chat-notice{font-size:10px;margin:0}
.brainstorm-page .brainstorm-ai-composer .brainstorm-reference-button{background:transparent!important;border:0!important}
.brainstorm-page #brainstorm-collect{margin-top:auto}
@media(hover:hover) and (pointer:fine){
 #brainstorm-close:hover svg{animation:brainstorm-collapse-hint 1.2s ease-in-out infinite}
 #brainstorm-chat-toggle:hover .brainstorm-launcher-mark{transform:rotate(12deg) scale(1.05)}
}
#brainstorm-chat-toggle:active .brainstorm-launcher-mark{transform:scale(.94)}
@media(prefers-reduced-motion:reduce){#brainstorm-close svg,.brainstorm-launcher-mark{transition:none!important;transform:none!important}.brainstorm-page #brainstorm-chat-toggle{transition:opacity .1s ease,visibility 0s;transform:none!important}}
.brainstorm-page .brainstorm-ai-composer{align-items:stretch!important;text-align:left}
.brainstorm-page .brainstorm-composer-actions{width:100%}
.brainstorm-page .brainstorm-composer-actions .brainstorm-chat-controls{flex:1;justify-content:flex-start}
.brainstorm-page .brainstorm-chat-references{justify-content:flex-start;align-self:stretch}
.brainstorm-page .brainstorm-ai-thread.is-empty{justify-content:center;align-items:stretch;text-align:left}
.brainstorm-page .brainstorm-chat-welcome{width:100%;text-align:left}

/* A quiet directional cue, active only while the collapse control is hovered. */
.brainstorm-page #brainstorm-close::after{content:"收起 Brainstorm";position:absolute;left:50%;top:41px;white-space:nowrap;font:500 11px/1.4 -apple-system,BlinkMacSystemFont,sans-serif;letter-spacing:.015em;color:var(--canvas-muted);opacity:0;transform:translate(-50%,-3px);pointer-events:none;transition:opacity .16s ease,transform .18s cubic-bezier(.23,1,.32,1)}
@keyframes brainstorm-collapse-hint{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
@media(hover:hover) and (pointer:fine){.brainstorm-page #brainstorm-close:hover::after{opacity:1;transform:translate(-50%,0)}}
.brainstorm-page #brainstorm-close:focus-visible::after{opacity:1;transform:translate(-50%,0)}
@media(prefers-reduced-motion:reduce){#brainstorm-close svg{animation:none!important}.brainstorm-page #brainstorm-close::after{transition:opacity .1s ease;transform:translate(-50%,0)}}

/* Floating header controls share the canvas, like the existing tool rail. */
.brainstorm-studio.brainstorm-page{grid-template-rows:minmax(0,1fr);padding:24px 0 0}
.brainstorm-page .brainstorm-head{position:absolute;left:0;right:0;top:30px;height:40px;padding:0 20px;pointer-events:none;background:transparent}
.brainstorm-page .brainstorm-head>.brainstorm-title{gap:8px!important;width:max-content;padding:6px 10px;border:1px solid rgba(255,255,255,.22);border-radius:14px;background:rgba(232,220,247,.16);backdrop-filter:blur(20px);pointer-events:none}
.brainstorm-page .brainstorm-title-icon{width:24px;height:24px;border-radius:8px}
.brainstorm-page .brainstorm-title-icon .brainstorm-brand-icon{width:22px;height:22px}
.brainstorm-page .brainstorm-title>div{display:flex;align-items:baseline;gap:8px}
.brainstorm-studio.brainstorm-page .brainstorm-title h2{font-size:16px;line-height:24px}
.brainstorm-studio.brainstorm-page .brainstorm-title small{font-size:10px;line-height:14px;letter-spacing:0}
.brainstorm-page #brainstorm-close{top:0;height:36px;padding:6px;pointer-events:auto;border:1px solid rgba(255,255,255,.22);border-radius:14px;background:rgba(232,220,247,.16);backdrop-filter:blur(20px)}
.brainstorm-page #brainstorm-close::after{top:39px;font-size:10px}
.brainstorm-page .brainstorm-toolbar{top:60px;max-height:calc(100% - 76px)}
.brainstorm-page .brainstorm-assistant{padding-top:16px}
@media(max-width:700px){.brainstorm-page .brainstorm-title small{display:none}.brainstorm-studio.brainstorm-page .brainstorm-title h2{font-size:14px}}

/* Supplied agent artwork: transparent film and halo play only on hover. */
.brainstorm-page #brainstorm-chat-toggle{width:48px;height:48px;padding:2px;border:0;background:transparent;box-shadow:none;overflow:visible}
.brainstorm-agent-film{display:block;width:44px;height:44px;background-image:url('./assets/brand/picart-agent-sprite.png');background-size:3036px 44px;background-position:0 0;position:relative;z-index:1}
.brainstorm-page #brainstorm-chat-toggle::before{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,rgba(255,244,255,.65),rgba(205,173,255,.25) 45%,transparent 72%);filter:blur(5px);opacity:0;pointer-events:none}
.brainstorm-agent-tooltip{position:absolute;right:0;bottom:58px;white-space:nowrap;padding:5px 8px;border-radius:8px;background:rgba(67,49,84,.86);color:#fff;font:500 11px/1.4 -apple-system,BlinkMacSystemFont,sans-serif;opacity:0;transform:translateY(3px);transition:opacity .16s ease,transform .16s ease;pointer-events:none}
@keyframes picart-agent-film{from{background-position:0 0}to{background-position:-2992px 0}}
@keyframes picart-agent-glow{0%,100%{opacity:.35;transform:scale(.94)}50%{opacity:.85;transform:scale(1.15)}}
@media(hover:hover) and (pointer:fine){
 .brainstorm-page.open:not(.chat-open) #brainstorm-chat-toggle:hover .brainstorm-agent-film{animation:picart-agent-film 2.875s steps(68) infinite}
 .brainstorm-page.open:not(.chat-open) #brainstorm-chat-toggle:hover::before{animation:picart-agent-glow 1.2s ease-in-out infinite}
 #brainstorm-chat-toggle:hover .brainstorm-agent-tooltip{opacity:1;transform:none}
}
#brainstorm-chat-toggle:focus-visible .brainstorm-agent-tooltip{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.brainstorm-agent-film,.brainstorm-page #brainstorm-chat-toggle::before{animation:none!important}.brainstorm-agent-tooltip{transition:opacity .1s ease;transform:none}}

/* Reference attachment feedback: quiet until hovered or populated. */
.brainstorm-page .brainstorm-ai-composer .brainstorm-reference-button{position:relative;isolation:isolate}
.brainstorm-reference-button::before{content:"";position:absolute;inset:-6px;z-index:-1;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.65),rgba(230,205,255,.3) 45%,transparent 72%);opacity:0;pointer-events:none;transition:opacity 160ms ease-out}
.brainstorm-reference-button::after{content:attr(data-tooltip);position:absolute;left:0;bottom:calc(100% + 10px);padding:7px 10px;white-space:nowrap;border-radius:9px;background:rgba(44,32,58,.9);color:#fff;font-size:11px;font-weight:400;opacity:0;transform:translateY(3px);pointer-events:none;transition:opacity 140ms ease-out,transform 140ms ease-out;z-index:5}
.brainstorm-reference-button:is(:hover,:focus-visible)::after{opacity:1;transform:translateY(0)}
.brainstorm-reference-button:is(:hover,:focus-visible,.has-references)::before{opacity:1}
.brainstorm-page .brainstorm-ai-composer .brainstorm-chat-controls .brainstorm-reference-button.has-references{background:rgba(255,255,255,.94)!important;color:#493657}
.brainstorm-page .brainstorm-chat-notice[hidden]{display:none}
@media(prefers-reduced-motion:reduce){.brainstorm-reference-button::before,.brainstorm-reference-button::after{transition:none}}

/* Shared Brainstorm tooltip material; collapse cue intentionally stays unboxed. */
.brainstorm-page [data-tooltip]:not(#brainstorm-close)::after,
.brainstorm-page .brainstorm-agent-tooltip{
 padding:6px 9px;border:1px solid rgba(255,255,255,.18);border-radius:8px;
 background:rgba(29,25,42,.94);box-shadow:0 8px 24px rgba(0,0,0,.25);
 color:#fff;font:500 11px/1.4 -apple-system,BlinkMacSystemFont,sans-serif;white-space:nowrap;
}
.brainstorm-page .brainstorm-toolbar [data-tooltip]:focus-visible::after{opacity:1;visibility:visible;transform:translate(0,-50%)}

.brainstorm-page #brainstorm-chat-close{position:relative;overflow:visible}
.brainstorm-page #brainstorm-chat-close::after,.brainstorm-page .brainstorm-reference-remove::after{content:attr(data-tooltip);position:absolute;z-index:50;right:0;top:calc(100% + 8px);opacity:0;visibility:hidden;transform:translateY(-3px);pointer-events:none;transition:opacity .14s ease-out,transform .14s ease-out,visibility .14s}
.brainstorm-page #brainstorm-chat-close:is(:hover,:focus-visible)::after,.brainstorm-page .brainstorm-reference-remove:is(:hover,:focus-visible)::after{opacity:1;visibility:visible;transform:translateY(0)}
@media(prefers-reduced-motion:reduce){.brainstorm-page #brainstorm-chat-close::after,.brainstorm-page .brainstorm-reference-remove::after{transition:none}}

/* Home reliability: keep a decoded poster beneath the single active video. */
.cover-media{position:relative;overflow:hidden}
.cover-media .cover-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cover-media video{opacity:0!important}
.cover-media video.has-frame{opacity:1!important}
.brand .brand-mark{border:0!important;box-shadow:none!important;backdrop-filter:none!important}
.brainstorm-page #brainstorm-chat-toggle::before{filter:none}
.brainstorm-agent-film{background-repeat:no-repeat;overflow:hidden;contain:paint}
.glass-dock button{transition:transform .18s cubic-bezier(.23,1,.32,1),background-color .18s ease}
.glass-dock button:hover{transform:translateY(-2px)}
.glass-dock button:active{transform:translateY(0) scale(.96)}
@media(prefers-reduced-motion:reduce){.glass-dock button{transition:none}.glass-dock button:hover,.glass-dock button:active{transform:none}}
.glass-dock .dock-motion-icon{position:relative;z-index:1;display:block;width:24px;height:24px;object-fit:contain;pointer-events:none;user-select:none;transform:translateZ(0)}
.glass-dock .dock-motion-icon.is-playing{will-change:contents}
@media(prefers-reduced-motion:reduce){.glass-dock .dock-motion-icon{will-change:auto}}
.glass-dock button[data-tooltip]{position:relative}
.glass-dock button[data-tooltip]::after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%,4px);padding:6px 10px;border-radius:9px;background:rgba(26,22,38,.95);color:#fff;font:500 12px/1.3 -apple-system,BlinkMacSystemFont,sans-serif;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s ease,transform .18s var(--spring);z-index:100}
.glass-dock button[data-tooltip]:hover::after,.glass-dock button[data-tooltip]:focus-visible::after{opacity:1;transform:translate(-50%,0)}

/* Scroll the completed overview without exposing a scrollbar or clipping actions. */
.bottom-sheet.hero-active.hero-content-visible{overflow-y:auto!important;scrollbar-width:none;overscroll-behavior:contain}
.bottom-sheet::-webkit-scrollbar{display:none}
.bottom-sheet .sheet-head h2{font-size:24px!important;line-height:28px!important}
.bottom-sheet .sheet-description{font-size:15px!important;line-height:21px!important}
@media(prefers-reduced-motion:reduce){.bottom-sheet.hero-active *{transition:none!important}}

.glass-dock .now-card{position:relative;overflow:visible}
/* Hidden glass layers must not retain a composited backdrop on first paint. */
#inspiration-save-layer[aria-hidden="true"],#inspiration-search-panel[aria-hidden="true"],#ai-panel[aria-hidden="true"],#ai-studio[aria-hidden="true"],#preview[aria-hidden="true"],#cover-editor[aria-hidden="true"]{visibility:hidden!important}
#inspiration-save-layer[aria-hidden="false"],#inspiration-search-panel[aria-hidden="false"],#ai-panel[aria-hidden="false"],#ai-studio[aria-hidden="false"],#preview[aria-hidden="false"],#cover-editor[aria-hidden="false"]{visibility:visible}

/* One surface grows upward from the entire Dock; its controls stay in place. */
.sheet-open .dock-stage{z-index:29!important}
.sheet-open .glass-dock{background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;border-color:transparent!important}
.bottom-sheet.hero-active,.bottom-sheet.hero-active.hero-content-visible{padding:0!important;overflow:hidden!important}
.bottom-sheet .sheet-content{position:absolute;inset:0 0 var(--sheet-dock-height,112px);padding:18px 32px 16px;overflow-y:auto;scrollbar-width:none;overscroll-behavior:contain}
.bottom-sheet .sheet-content::-webkit-scrollbar{display:none}
@media(max-width:760px){.bottom-sheet .sheet-content{padding:14px 18px}}
.sheet-open .coverflow{z-index:2}

/* The whole top grip is a discoverable collapse target, not a separate close chip. */
.bottom-sheet .sheet-handle{display:flex;align-items:center;justify-content:center;width:100%;height:28px;margin:-10px 0 10px;padding:0;border:0;border-radius:14px;background:transparent;color:var(--primary);cursor:pointer}
.bottom-sheet .sheet-handle svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s var(--spring)}
.bottom-sheet .sheet-handle:hover svg{transform:translateY(3px)}
.bottom-sheet .sheet-handle:focus-visible{outline:1px solid var(--divider);outline-offset:2px}
.bottom-sheet.hero-active.closing{z-index:28!important}

/* The central preview is a stable anchor for the shared surface. */
.glass-dock #open-current,.glass-dock #open-current:hover,.glass-dock #open-current:active,.glass-dock #open-current:focus-visible{transform:none!important;transition:background-color .18s ease,box-shadow .18s ease}
.glass-dock #open-current:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 0 16px rgba(223,206,247,.12)}

/* Dock labels follow the unboxed Brainstorm collapse hint. */
.glass-dock button[data-tooltip]::after{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--secondary);font-weight:600;font-size:13px;line-height:18px}

/* Context labels stay within the Dock; the central category needs no duplicate hint. */
.glass-dock button[data-tooltip]::after{top:auto;bottom:calc(50% + 32px);transform:translate(-50%,2px);font-size:12px;line-height:16px}
.glass-dock button[data-tooltip]:hover::after,.glass-dock button[data-tooltip]:focus-visible::after{transform:translate(-50%,0)}
#open-current::after{display:none!important}
.bottom-sheet .sheet-handle{position:relative;height:46px;margin-bottom:8px;align-items:flex-start;padding-top:2px}
.bottom-sheet .sheet-handle::after{content:"点击收起分类预览";position:absolute;top:27px;left:50%;transform:translateX(-50%);color:var(--secondary);font-size:12px;line-height:16px;white-space:nowrap;opacity:0;transition:opacity .16s ease;pointer-events:none}
.bottom-sheet .sheet-handle:hover::after,.bottom-sheet .sheet-handle:focus-visible::after{opacity:1}
.bottom-sheet>.sheet-date-browser{background:rgba(119,104,142,.96)!important;z-index:40;visibility:hidden}
.bottom-sheet>.sheet-date-browser.open{visibility:visible}
.bottom-sheet>.sheet-date-browser .sheet-date-results{min-height:0!important}

/* Shared directional cue: Brainstorm reference, 2026-09-09. */
:root{--picart-cue-duration:1.2s;--picart-cue-ease:ease-in-out;--picart-cue-distance:5px;--picart-cue-radius:14px}
@keyframes picart-direction-cue{0%,100%{transform:translate(0,0)}50%{transform:translate(var(--cue-x,0),var(--cue-y,5px))}}
.glass-dock .dock-icon{--cue-y:0;--cue-x:0;transform:none!important}
.glass-dock #prev-btn,.glass-dock #open-library-btn{--cue-x:-5px}
.glass-dock #next-btn{--cue-x:5px}
.glass-dock .dock-icon .hover-halo{width:48px;height:40px;border-radius:var(--picart-cue-radius)}
.glass-dock :is(#prev-btn,#next-btn,#open-library-btn):is(:hover,:focus-visible) .toolbar-glyph{animation:picart-direction-cue var(--picart-cue-duration) var(--picart-cue-ease) infinite}
.bottom-sheet .sheet-content{padding-top:88px!important}
.bottom-sheet>#sheet-close{position:absolute;z-index:50;top:8px;left:50%;width:200px;height:72px;min-height:72px;margin:0 0 0 -100px;padding:0;display:block;transform:none!important;pointer-events:auto!important;cursor:pointer;touch-action:manipulation;--cue-y:5px}
.bottom-sheet>#sheet-close::before{content:"";position:absolute;top:0;left:50%;width:48px;height:40px;margin-left:-24px;border:1px solid rgba(255,255,255,.24);border-radius:var(--picart-cue-radius);background:rgba(255,255,255,.08);pointer-events:none}
.bottom-sheet>#sheet-close svg{position:absolute;top:8px;left:50%;margin-left:-12px;pointer-events:none;transform:none}
.bottom-sheet>#sheet-close::after{top:48px;pointer-events:none;font:500 12px/1.4 -apple-system,BlinkMacSystemFont,sans-serif;color:var(--secondary)}
.bottom-sheet>#sheet-close:is(:hover,:focus-visible) svg{animation:picart-direction-cue var(--picart-cue-duration) var(--picart-cue-ease) infinite}
@media(prefers-reduced-motion:reduce){.glass-dock .dock-icon .toolbar-glyph,.bottom-sheet>#sheet-close svg{animation:none!important;transform:none!important}}
/* The transparent brand header must not intercept the overview's top grip. */
.sheet-open .brandbar{pointer-events:none}
.sheet-open .brandbar button{pointer-events:auto}

.brainstorm-page #brainstorm-close:is(:hover,:focus-visible) svg{animation:picart-direction-cue var(--picart-cue-duration) var(--picart-cue-ease) infinite}
@media(prefers-reduced-motion:reduce){.brainstorm-page #brainstorm-close svg{animation:none!important}}

/* Chat overflow stays scrollable without native tracks, including the composer. */
.brainstorm-page :is(.brainstorm-ai-thread,.brainstorm-chat-references,#brainstorm-ai-input),
:is(#ai-thread,#ai-input,#studio-chat,#studio-prompt){scrollbar-width:none!important;overflow-x:hidden;overflow-y:auto;overflow-wrap:anywhere;min-width:0}
.brainstorm-page :is(.brainstorm-ai-thread,.brainstorm-chat-references,#brainstorm-ai-input)::-webkit-scrollbar,
:is(#ai-thread,#ai-input,#studio-chat,#studio-prompt)::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
/* A read-only date keeps the same typography as the former date button. */
.sheet-stat strong>.sheet-date-value{font:inherit;color:inherit;line-height:inherit}

/* Keep the Dock-anchored Collection overview complete at its resting height. */
.bottom-sheet .sheet-content{padding:64px 32px 28px!important;scroll-padding-bottom:28px}
.bottom-sheet .sheet-description{margin:8px 0 12px!important}
.bottom-sheet .sheet-stats{margin-bottom:8px!important}
.bottom-sheet .sheet-tools{padding:6px 0 8px!important}
.bottom-sheet>#sheet-close{top:6px;height:60px;min-height:60px}
.bottom-sheet>#sheet-close::before{height:36px}
.bottom-sheet>#sheet-close svg{top:6px}
.bottom-sheet>#sheet-close::after{top:40px}
.bottom-sheet.hero-active.hero-content-visible.has-scroll-overflow .sheet-content{-webkit-mask-image:linear-gradient(180deg,#000 0,#000 calc(100% - 22px),transparent 100%);mask-image:linear-gradient(180deg,#000 0,#000 calc(100% - 22px),transparent 100%)}
@media(max-width:760px){.bottom-sheet .sheet-content{padding:60px 18px 24px!important}}

/* Keep the Home brand mark and wordmark visually grouped. */
.brand{gap:8px}

/* Expand the account entry without moving its artwork or the native drag strip. */
#home-btn{position:relative}
#home-btn::before{content:"";position:absolute;inset:0 -24px -20px;cursor:pointer}
.brand-mark.is-activating{animation:picart-brand-activation 160ms cubic-bezier(.77,0,.175,1)}
@keyframes picart-brand-activation{0%,100%{transform:translateX(0)}32%{transform:translateX(-4px)}68%{transform:translateX(3px)}}
@media(prefers-reduced-motion:reduce){.brand-mark.is-activating{animation:picart-brand-activation-reduced 120ms cubic-bezier(.23,1,.32,1)}@keyframes picart-brand-activation-reduced{0%{opacity:1}50%{opacity:.72}100%{opacity:1}}}

/* Keep WebKit backdrop sampling independent of hover/content repaint regions. */
.sheet-glass-surface{display:none}
.sheet-open .home-view>.sheet-glass-surface{display:block;position:fixed;z-index:24;box-sizing:border-box;pointer-events:none;border:1px solid transparent}

/* Anchor project import feedback to the active dialog, above its working content. */
.project-dialog-notice{position:relative;z-index:4;display:flex;align-items:center;gap:10px;min-height:40px;margin:0 0 2px;padding:8px 14px;border:1px solid rgba(216,199,240,.32);outline:none!important;border-radius:999px;background:rgba(123,102,151,.2);box-shadow:0 12px 34px rgba(23,18,43,.2),inset 0 1px rgba(255,255,255,.12);color:var(--primary);opacity:0;transition:opacity .22s var(--spring),transform .22s var(--spring)}
.project-dialog-notice:focus,.project-dialog-notice:focus-visible{outline:none!important}
.project-dialog-notice.is-visible{opacity:1}
.project-dialog-notice[hidden]{display:none}
.project-dialog-notice strong{flex:0 0 auto;font-size:13px;line-height:20px}
.project-dialog-notice span{min-width:0;font-size:12px;line-height:18px;color:var(--secondary);overflow-wrap:anywhere}
.project-dialog-notice button{flex:0 0 auto;height:28px;padding:0 10px;border:1px solid rgba(255,255,255,.24);border-radius:14px;background:rgba(255,255,255,.1);color:var(--primary);font-size:12px}
.project-dialog-notice button[hidden]{display:none}
.project-dialog-notice button:is(:hover,:focus-visible){background:rgba(255,255,255,.18)}
.project-dialog-notice[data-state="loading"]::before{content:"";flex:0 0 auto;width:12px;height:12px;border:2px solid rgba(255,255,255,.24);border-top-color:var(--accent);border-radius:50%;animation:project-notice-spin .8s linear infinite}
.project-dialog-notice[data-state="success"]{border-color:rgba(202,232,211,.36);background:rgba(108,150,121,.18)}
.project-dialog-notice[data-state="error"]{border-color:rgba(255,183,169,.5);background:rgba(160,84,82,.2)}
@keyframes project-notice-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.project-dialog-notice{transition:opacity .01ms linear!important}.project-dialog-notice[data-state="loading"]::before{animation:none}}
