:root{--paper:#f7f6f2;--ink:#18252b;--muted:#778088;--line:#dddeda;--yellow:#f4d348;--green:#287842;--red:#b74937;--white:#fff;--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}[hidden]{display:none!important}button:focus-visible,a:focus-visible,input:focus-visible,.dropzone:focus-within{outline:3px solid #678498;outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.topbar{height:88px;padding:0 max(28px,calc((100vw - 1320px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper)}.brand{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:800;letter-spacing:-.04em;white-space:nowrap}.brand-icon{width:42px;height:42px;border-radius:11px;background:#07151e;color:var(--yellow);display:grid;place-items:center}.brand-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8}.desktop-nav{align-self:stretch;display:flex;gap:42px;align-items:stretch}.desktop-nav a{position:relative;display:grid;place-items:center;min-width:52px;color:var(--muted);font-weight:650}.desktop-nav a.current{color:var(--ink)}.desktop-nav a.current:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--yellow)}.header-new,.primary{background:var(--yellow);border:0;color:var(--ink);font-weight:750}.header-new{padding:11px 20px;border-radius:12px}.primary,.secondary{min-height:48px;padding:12px 22px;border-radius:11px;display:inline-flex;justify-content:center;align-items:center;text-align:center;font-weight:700}.primary:hover,.header-new:hover{background:#e9c63a}.primary:disabled{color:#978440;background:#f4df79;opacity:.7}.secondary{border:1px solid #cfd2d1;background:transparent;color:var(--ink)}.secondary:hover{background:#edece6}
main{min-height:calc(100dvh - 88px)}.page{max-width:1320px;margin:auto}.home-view{padding:100px 28px 80px;display:grid;grid-template-columns:minmax(0,680px) minmax(270px,360px);justify-content:space-between;gap:80px}.home-view h1,.works-header h1{font-size:clamp(35px,3.9vw,54px);line-height:1.18;letter-spacing:-.055em;margin:0 0 16px}.lead{margin:0;color:var(--muted);font-size:17px}.dropzone{margin:50px 0 22px;min-height:300px;width:100%;border:1.5px dashed #c8cdd0;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;text-align:center;padding:24px;cursor:pointer;background:rgba(255,255,255,.25)}.dropzone.dragging{background:#fff9df;border-color:#cda73d}.upload-icon{font-size:52px;line-height:1;font-weight:450;margin-bottom:16px}.dropzone strong{font-size:22px}.dropzone span:not(.upload-icon),.dropzone small{color:var(--muted)}.dropzone small{font-size:14px}.file-input{position:absolute;width:1px;height:1px;opacity:0}.start-button{width:100%;font-size:18px;min-height:56px}.upload-note{min-height:23px;margin:11px 0 0;text-align:center;color:var(--muted);font-size:13px}.upload-progress{margin:0 0 18px}.progress-meta{display:flex;justify-content:space-between;gap:20px}.text-button{border:0;background:transparent;color:var(--ink);text-decoration:underline}progress{width:100%;height:10px;accent-color:var(--yellow)}.home-aside{align-self:start;margin-top:14px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:18px}.section-heading h2{font-size:27px;letter-spacing:-.04em;margin:0}.section-heading a{color:var(--muted)}.recent-job .job-item{padding:24px 0}.config-notice{color:var(--muted);font-size:13px;line-height:1.65;border-top:1px solid var(--line);padding-top:20px}
.works-view{padding:0 28px}.works-header{padding:64px 0 28px}.studio-grid{display:grid;grid-template-columns:minmax(340px,39%) minmax(0,1fr);border-top:1px solid var(--line);min-height:calc(100dvh - 250px)}.works-list{padding:28px 30px 80px 0;border-right:1px solid var(--line)}.job-group{margin:0 0 34px}.job-group h2{font-size:22px;letter-spacing:-.035em;margin:0 0 16px}.job-item{width:100%;display:flex;align-items:center;gap:16px;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;padding:14px 10px 14px 0;min-height:110px;color:var(--ink)}.job-item.selected{background:#fcf4d8;border-radius:9px;padding-left:9px}.job-thumb{width:86px;height:100px;flex:none;display:grid;place-items:center;background:#eeefed;border-radius:8px;overflow:hidden}.job-thumb img{width:100%;height:100%;object-fit:cover}.thumb-fallback{color:#a2a9aa;font-size:38px}.job-row-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.job-row-copy strong{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:650}.job-meta{font-size:13px;color:var(--muted)}.job-status{border-radius:30px;padding:3px 10px;font-size:12px;font-weight:650;background:#eeece6;color:#5e6970}.job-status.completed{color:var(--green);background:#e5f2e6}.job-status.failed,.job-status.partial{color:var(--red);background:#faebe6}.row-arrow{margin-left:auto;color:var(--muted);font-size:31px;line-height:1}.list-count,.empty-list{color:var(--muted);font-size:13px}.empty-list{padding:20px 0}
.job-detail{min-width:0;padding:32px 0 90px 52px}.back-button{display:none;border:0;background:transparent;color:var(--muted);padding:7px 0;margin-bottom:20px;font-size:14px}.detail-header{display:flex;align-items:flex-start;gap:14px}.detail-header h2{font-size:clamp(25px,2.8vw,38px);letter-spacing:-.045em;line-height:1.28;margin:0}.detail-meta{font-size:14px;color:var(--muted);margin:8px 0 0}.status-badge{white-space:nowrap;border-radius:30px;padding:5px 12px;background:#e8f1e7;color:var(--green);font-size:13px;font-weight:650}.status-badge.failed,.status-badge.partial{background:#faebe6;color:var(--red)}.status-badge.running,.status-badge.queued{background:#fff0bf;color:#806a28}.job-message{color:var(--muted);font-size:13px;margin:14px 0}.job-detail:has(.status-badge.completed) .job-message{display:none}.stages{padding:0;margin:12px 0 18px;list-style:none}.stage{display:grid;grid-template-columns:1fr auto;gap:2px 12px;border-bottom:1px solid var(--line);padding:11px 0}.stage strong{font-weight:650}.stage-status{color:var(--muted);font-size:13px}.stage p{grid-column:1/-1;font-size:13px;color:var(--muted);margin:0}.detail-actions{display:flex;gap:12px;margin:14px 0}.result-tabs{display:flex;border-bottom:1px solid var(--line);margin:25px 0 32px}.result-tabs:empty{display:none}.result-tabs button{flex:1;min-height:52px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);font-weight:650;font-size:17px}.result-tabs button.selected{color:var(--ink);border-color:var(--yellow)}.result-section h3{font-size:24px;letter-spacing:-.04em;margin:0 0 5px}.section-helper{margin:0 0 24px;color:var(--muted);font-size:14px}.video-result{display:grid;grid-template-columns:minmax(180px,40%) 1fr;gap:24px;align-items:start}.video-result video{display:block;width:100%;max-height:500px;background:#101010;border-radius:10px}.video-info{display:flex;align-items:flex-start;flex-direction:column;gap:12px}.video-info p{margin:0 0 5px;color:var(--muted)}.video-info a{min-width:180px}.video-info .fine-print{font-size:12px}.cover-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,4fr);gap:24px;align-items:start}.cover-grid figure{margin:0;min-width:0}.cover-grid img{width:100%;height:auto;display:block;border-radius:10px}.cover-grid figcaption{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:11px;color:var(--muted);font-size:13px}.cover-grid figcaption a{white-space:nowrap}.copy-tabs{display:flex;gap:10px;margin:22px 0}.copy-tabs button{border:1px solid var(--line);border-radius:9px;padding:8px 18px;background:transparent;color:var(--muted)}.copy-tabs button[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:white}.copy-body h4{font-size:20px;margin:0 0 14px}.copy-body p{max-width:60ch;margin:0 0 16px;line-height:1.8}.tags{color:var(--green);margin-bottom:20px}.copy-body+.secondary{margin-top:18px}.detail-dock{display:flex;gap:12px;margin-top:30px}.detail-dock:empty{display:none}.detail-dock>a,.detail-dock>button{flex:1}.mobile-nav{display:none}
.login{max-width:430px;padding:65px 24px;margin:auto}.login h1{font-size:32px}.login label{display:block;margin:25px 0 8px}.login input{width:100%;min-height:48px;border:1px solid var(--line);border-radius:9px;padding:10px}.login button{width:100%;margin-top:18px}.error-toast{position:fixed;z-index:20;bottom:30px;left:50%;transform:translateX(-50%);max-width:min(90vw,550px);padding:12px 18px;border-radius:9px;background:var(--red);color:white;box-shadow:0 10px 30px #0002}
@media(max-width:800px){.topbar{height:76px;padding:0 20px;border-bottom:0}.brand{font-size:23px}.brand-icon{width:40px;height:40px}.desktop-nav{display:none}.header-new{padding:9px 14px}.home-view{display:block;padding:45px 20px 110px}.home-view h1,.works-header h1{font-size:34px;letter-spacing:-.06em}.lead{font-size:15px}.dropzone{margin:28px 0 18px;min-height:220px;padding:20px}.dropzone strong{font-size:19px}.dropzone small{font-size:13px}.upload-icon{font-size:42px;margin-bottom:6px}.home-aside{margin-top:55px}.section-heading h2{font-size:23px}.recent-job .job-item{padding:18px 0}.config-notice{margin-top:10px}.works-view{padding:0 20px}.works-header{padding:44px 0 26px}.studio-grid{display:block;border:0;min-height:0}.works-list{padding:0 0 110px;border:0}.job-group h2{font-size:20px}.job-item{gap:14px;min-height:116px}.job-thumb{width:82px;height:94px}.job-row-copy strong{font-size:15px}.works-view.show-detail .works-header,.works-view.show-detail .works-list{display:none}.job-detail{display:none;padding:22px 0 130px}.job-detail.detail-open{display:block}.back-button{display:block}.detail-header{display:block}.detail-header h2{font-size:29px}.detail-meta{margin:5px 0 10px}.status-badge{display:inline-block}.result-tabs{margin:16px 0 26px}.result-tabs button{min-height:48px}.result-section h3{font-size:23px}.cover-grid{gap:12px;grid-template-columns:1fr 1fr}.cover-grid figcaption{flex-wrap:wrap;gap:8px;align-items:flex-start}.cover-grid figcaption a{width:100%}.video-result{display:block}.video-result video{max-width:260px;margin:0 auto 20px}.video-info{align-items:stretch}.video-info a{width:100%}.detail-dock{position:fixed;bottom:calc(68px + env(safe-area-inset-bottom));left:0;right:0;z-index:5;background:var(--paper);padding:14px 20px;border-top:1px solid var(--line);margin:0;justify-content:center}.detail-dock>a,.detail-dock>button{min-width:0;padding-left:9px;padding-right:9px}.mobile-nav{height:calc(68px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);position:fixed;bottom:0;left:0;right:0;z-index:10;display:flex;background:var(--white);border-top:1px solid var(--line)}.mobile-nav a{flex:1;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--muted);font-size:12px;font-weight:650;gap:1px}.mobile-nav a.current{color:var(--ink)}.nav-icon{font-size:27px;line-height:1}.error-toast{bottom:85px}}
@media(min-width:801px) and (max-width:1080px){.home-view{gap:35px;grid-template-columns:minmax(0,1fr) 300px}.studio-grid{grid-template-columns:40% 60%}.job-detail{padding-left:25px}.works-list{padding-right:18px}.cover-grid{gap:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.brand-text{display:flex;flex-direction:column;align-items:flex-start;gap:0;line-height:1.13}.brand-text small{font-size:12px;line-height:1.4;font-weight:500;letter-spacing:.02em;color:var(--muted)}
