.public-banner{--banner-drag:0px;position:relative;isolation:isolate;width:100%;height:clamp(360px,30vw,500px);overflow:hidden;border-radius:12px;background:#1c2730;color:#fff;touch-action:pan-y;outline-offset:4px}.public-banner:focus-visible{outline:2px solid #78e5a4}.public-banner-work{position:absolute;inset:0;overflow:hidden}.public-banner-primary{clip-path:polygon(0 0,68.8% 0,54.8% 100%,0 100%)}.public-banner-secondary{clip-path:polygon(68.8% 0,100% 0,100% 100%,54.8% 100%)}.public-banner[data-single] .public-banner-primary{clip-path:none}.public-banner-art{position:absolute;inset:0;transform:translateX(var(--banner-drag));transition:transform .65s cubic-bezier(.2,1.35,.3,1)}.public-banner-cover{position:absolute;top:0;height:100%;max-width:none;-o-object-fit:cover;object-fit:cover;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.public-banner-primary .public-banner-cover{left:-56px;width:calc(72% + 112px);-o-object-position:center;object-position:center}.public-banner-secondary .public-banner-cover{left:calc(51% - 56px);width:calc(49% + 112px);-o-object-position:center;object-position:center}.public-banner[data-single] .public-banner-cover{width:calc(100% + 112px)}.public-banner-fallback{display:grid;height:100%;place-items:center;background:radial-gradient(ellipse at 60% 30%,#345c5c,#14232e);color:#78e5a455}.public-banner-shade{position:absolute;inset:0;background:linear-gradient(90deg,#07151a8c,transparent 72%),linear-gradient(0deg,#07151ade,#07151a00 95%);pointer-events:none}.public-banner-copy{position:absolute;bottom:66px;left:3.5%;width:47%;animation:public-banner-enter .65s cubic-bezier(.2,1.25,.3,1) both}.public-banner-secondary .public-banner-copy{left:72%;width:25%;bottom:66px}.public-banner-kicker{margin:0 0 18px;font-size:10px;letter-spacing:.18em;color:#d2f1e0}.public-banner-copy :is(h1,h2){margin:0;font-family:Songti SC,STSong,serif;line-height:1.2;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-shadow:0 2px 12px #0006}.public-banner-copy h1{font-size:clamp(34px,4.5vw,72px)}.public-banner-copy h2{font-size:clamp(24px,2.8vw,46px)}.public-banner-description{margin:16px 0;font-size:14px;line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#e1e7eb}.public-banner-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.public-banner-tags span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid #ffffff60;background:#10202a55;padding:3px 9px;border-radius:6px;font-size:12px}.public-banner-open{position:absolute;inset:0;cursor:pointer}.public-banner-open:focus-visible{outline:2px solid var(--studio-accent);outline-offset:-2px}.public-banner[data-dragging] .public-banner-open{cursor:grabbing}.public-banner-divider{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.public-banner-divider line{stroke:#dcebe6aa;stroke-width:1}.public-banner-pagination{position:absolute;z-index:2;bottom:16px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:14px;padding:4px 8px;background:#0b171a99;border:1px solid #ffffff30;border-radius:30px}.public-banner-pagination button{display:grid;place-items:center;height:28px;width:28px;border-radius:50%}.public-banner-pagination button:hover{background:#78e5a4;color:#10251a}.public-banner-pagination span{min-width:48px;text-align:center;font-size:12px}.public-banner[data-dragging]{cursor:grabbing;-webkit-user-select:none;-moz-user-select:none;user-select:none}.public-banner[data-dragging] .public-banner-art{transition:none}.public-banner-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:radial-gradient(ellipse at 75% 20%,#334b4e,#18252d 70%)}.public-banner-empty h1{font-size:clamp(24px,3vw,40px)}.public-banner-empty p{color:#bbcbd0;font-size:14px}.public-production-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.public-production-card{border:1px solid var(--studio-line);border-radius:12px;padding:18px;background:var(--studio-surface)}.public-production-card img{width:100%;max-height:240px;-o-object-fit:contain;object-fit:contain;border-radius:8px;margin:12px 0}@keyframes public-banner-enter{0%{opacity:.2;transform:translateX(calc(var(--banner-direction) * 28px))}to{opacity:1;transform:translateX(0)}}@media (max-width:700px){.public-banner{height:430px}.public-banner-copy{bottom:64px;left:4%;width:47%}.public-banner-secondary .public-banner-copy{left:72%;width:25%;bottom:64px}.public-banner-copy h1{font-size:30px}.public-banner-copy h2{font-size:21px}.public-banner-kicker{font-size:8px;letter-spacing:.04em;margin-bottom:10px}.public-banner-description{font-size:11px;margin:10px 0}.public-banner-tags{margin-bottom:10px;gap:5px}.public-banner-tags span{font-size:10px;padding:2px 5px}.public-banner[data-single] .public-banner-copy{width:85%}.public-production-grid{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.public-banner-copy{animation:none}.public-banner-art{transition:none;transform:none}}.public-library-page{max-width:1480px;margin:0 auto;padding-bottom:48px}.public-library-header{padding:18px 0 28px}.public-library-header>p{color:var(--studio-accent);font-size:12px;letter-spacing:.18em}.public-library-header h1{margin-top:10px;font-size:clamp(28px,4vw,42px);font-weight:650}.public-library-header>span{display:block;margin-top:12px;color:var(--studio-muted);font-size:14px}.public-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.public-library-card{overflow:hidden;border:1px solid var(--studio-line);border-radius:14px;background:var(--studio-surface)}.public-library-poster{position:relative;display:grid;width:100%;aspect-ratio:16/9;place-items:center;overflow:hidden;background:#111a20;color:#90a1ad}.public-library-poster:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#071015a8,transparent 64%);transition:background .2s ease}.public-library-poster:hover:after{background:linear-gradient(0deg,#071015c7,#07101528)}.public-library-poster>span{position:absolute;z-index:1;display:grid;width:50px;height:50px;place-items:center;border:1px solid #ffffff55;border-radius:999px;background:#071015a6;color:#fff}.public-library-card-copy{padding:18px}.public-library-card-copy h2{margin-top:10px;overflow:hidden;font-size:18px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.public-library-card-copy>p{min-height:44px;margin-top:8px;display:-webkit-box;overflow:hidden;color:var(--studio-muted);font-size:13px;line-height:22px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.public-library-meta{display:flex;gap:8px;color:var(--studio-muted);font-size:11px}.public-library-meta span{border:1px solid var(--studio-line);border-radius:999px;padding:3px 8px}.public-library-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.public-library-actions button{min-height:36px;padding:0 12px;font-size:12px}.public-library-state{min-height:320px;display:grid;place-items:center;align-content:center;gap:14px;border:1px dashed var(--studio-line);border-radius:14px;color:var(--studio-muted);text-align:center}.public-library-state h2{color:var(--studio-text);font-size:20px}.public-library-pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:28px;color:var(--studio-muted);font-size:13px}@media (max-width:1050px){.public-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.public-library-grid{grid-template-columns:1fr}.public-library-actions button{flex:1}}.workspace-works-tabs{display:inline-flex;align-items:stretch;gap:28px;margin-top:16px;border-bottom:1px solid var(--studio-line)}.workspace-works-tabs button{position:relative;min-height:40px;padding:0 0 8px;border:0;background:transparent;color:var(--studio-muted);font-size:15px;font-weight:600;transition:color .16s ease}.workspace-works-tabs button.is-active,.workspace-works-tabs button:hover{color:var(--studio-text)}.workspace-works-tabs button.is-active:after{position:absolute;right:0;bottom:-1px;left:0;height:3px;border-radius:2px;background:var(--studio-accent);content:""}.public-gallery{margin-top:16px}.public-gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:16px}.public-gallery-heading h2{margin:0;font-size:20px;font-weight:650}.public-gallery-count{flex-shrink:0;color:var(--studio-muted);font-size:12px}.public-gallery-empty{display:flex;min-height:132px;align-items:center;justify-content:center;gap:12px;border:1px dashed var(--studio-line);border-radius:12px;color:var(--studio-muted);background:var(--studio-surface)}.public-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.public-gallery-card{min-width:0;overflow:hidden;border:1px solid var(--studio-line);border-radius:12px;background:var(--studio-surface)}.public-gallery-preview-wrap{aspect-ratio:16/9}.public-gallery-preview,.public-gallery-preview-wrap{position:relative;overflow:hidden;background:var(--studio-inset)}.public-gallery-preview{display:block;width:100%;height:100%}.public-gallery-preview img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .18s ease}.public-gallery-preview .public-banner-fallback{width:100%}.public-gallery-preview:hover img{transform:scale(1.02)}.public-gallery-play{position:absolute;inset:0;display:grid;place-items:center;color:#fff;background:rgba(0,0,0,.08)}.public-gallery-play svg{width:38px;height:38px;padding:9px;border-radius:50%;background:rgba(10,17,21,.72)}.public-gallery-card-body{position:relative;padding:14px}.public-gallery-card-info{transition:opacity .16s ease}.public-gallery-card-body h3{overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:650}.public-gallery-meta{display:flex;justify-content:space-between;gap:12px;margin-top:8px;color:var(--studio-muted);font-size:11px}.public-gallery-actions{position:absolute;top:50%;right:12px;left:12px;display:flex;justify-content:center;gap:8px;visibility:hidden;opacity:0;transform:translateY(calc(-50% + 4px));transition:opacity .16s ease,transform .16s ease,visibility .16s ease}.public-gallery-card:focus-within .public-gallery-card-info,.public-gallery-card:hover .public-gallery-card-info{opacity:0}.public-gallery-card:focus-within .public-gallery-actions,.public-gallery-card:hover .public-gallery-actions{visibility:visible;opacity:1;transform:translateY(-50%)}.public-gallery-actions a,.public-gallery-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:34px;padding:6px 12px;border:1px solid var(--studio-line);border-radius:10px;background:color-mix(in srgb,var(--studio-inset) 88%,transparent);color:var(--studio-text);font-size:12px;text-decoration:none;transition:border-color .16s ease,background-color .16s ease,color .16s ease}.public-gallery-actions a:hover,.public-gallery-actions button:first-child,.public-gallery-actions button:hover{border-color:var(--studio-button);background:var(--studio-button);color:var(--studio-on-button)}@media (max-width:1023px){.public-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.public-gallery-grid{grid-template-columns:minmax(0,1fr)}.public-gallery-heading{align-items:flex-start;flex-direction:column;gap:6px}}