:root{color:#0a0a0a;font-synthesis:none;text-rendering:optimizelegibility;background:#f3f3f1;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif}*{box-sizing:border-box}body{background:#f3f3f1;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.app-shell{width:min(1120px,100% - 40px);min-height:100vh;margin:0 auto}.site-header{border-bottom:1px solid #cfcfcb;justify-content:space-between;align-items:center;height:84px;display:flex}.wordmark{color:#000;letter-spacing:-.04em;font-size:17px;font-weight:900;text-decoration:none}.header-note{color:#63635f;font-size:12px;font-weight:600}main{padding:88px 0 120px}.hero{max-width:820px}.eyebrow{letter-spacing:.16em;margin:0 0 22px;font-size:11px;font-weight:800}.hero h1{letter-spacing:-.07em;margin:0;font-size:clamp(42px,7vw,82px);font-weight:900;line-height:1.12}.hero-copy{color:#53534f;width:min(580px,100%);margin:30px 0 0;font-size:15px;line-height:1.9}.upload-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:72px;display:grid}.file-card{cursor:pointer;background:#fff;border:1px solid #bdbdb8;min-height:390px;transition:border-color .16s,transform .16s;position:relative;overflow:hidden}.file-card:hover,.file-card.is-dragging{border-color:#000;transform:translateY(-2px)}.file-card input{opacity:0;width:1px;height:1px;position:absolute}.file-placeholder,.file-preview{width:100%;height:255px}.file-placeholder{background:#e9e9e6;place-items:center;display:grid}.file-placeholder svg{stroke:#111;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:38px}.file-preview{object-fit:cover;filter:saturate(.88);display:block}.file-copy{gap:18px;padding:23px 24px 15px;display:flex}.file-step{color:#fff;background:#000;border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:10px;font-weight:800;display:grid}.file-copy strong{font-size:16px;font-weight:800;display:block}.file-copy span{color:#686864;margin-top:5px;font-size:12px;display:block}.file-footer{color:#777772;justify-content:space-between;gap:16px;padding:0 24px 22px 76px;font-size:10px;display:flex}.file-footer span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.submit-panel{border-top:1px solid #cfcfcb;grid-template-columns:1fr auto;align-items:end;gap:24px 42px;margin-top:32px;padding:30px 0 0;display:grid}.time-notice strong,.time-notice span{display:block}.time-notice strong{font-size:14px;font-weight:800}.time-notice span{color:#656560;margin-top:7px;font-size:12px}.consent-row{color:#43433f;cursor:pointer;grid-column:1;align-items:center;gap:10px;font-size:12px;display:flex}.consent-row input{appearance:none;background:#fff;border:1px solid #777;width:18px;height:18px;margin:0}.consent-row input:checked{background:#000;box-shadow:inset 0 0 0 4px #fff}.generate-button,.primary-button,.secondary-button{cursor:pointer;border:1px solid #000;justify-content:center;align-items:center;min-height:56px;padding:0 25px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.generate-button{color:#fff;background:#000;grid-area:1/2/span 3;gap:44px;min-width:230px}.generate-button svg{stroke:currentColor;stroke-width:1.5px;width:20px}.generate-button:disabled{cursor:wait;opacity:.45}.primary-button{color:#fff;background:#000}.secondary-button{color:#000;background:#fff}.error-message{color:#111;background:#fff;border-left:4px solid #000;grid-column:1/-1;padding:14px 16px;font-size:12px;line-height:1.6}.status-panel{background:#fff;border:1px solid #bdbdb8;width:min(820px,100%);margin:20px auto 0;padding:48px}.status-topline{color:#585854;align-items:center;gap:9px;font-size:11px;font-weight:700;display:flex}.status-dot{background:#111;border-radius:50%;width:8px;height:8px}.status-dot.is-active{animation:1.6s infinite pulse}.status-id{color:#94948f;margin-left:auto;font-family:ui-monospace,monospace}.status-panel h2{letter-spacing:-.05em;margin:35px 0 28px;font-size:clamp(30px,5vw,54px);line-height:1.25}.progress-track{background:#dededb;height:5px;overflow:hidden}.progress-value{background:#000;height:100%;transition:width .5s}.status-meta{color:#70706c;justify-content:space-between;margin-top:10px;font-size:10px;display:flex}.notification-note{background:#f2f2ef;align-items:flex-start;gap:15px;margin-top:36px;padding:20px;font-size:12px;line-height:1.7;display:flex}.notification-note svg{stroke:#111;stroke-width:1.4px;flex:0 0 22px;width:22px}.notification-note span{color:#686864;display:block}.text-button{color:#666;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #aaa;margin-top:25px;padding:0;font-size:11px}.result-video{aspect-ratio:16/9;background:#000;width:100%;margin:15px 0 24px}.result-actions{flex-wrap:wrap;gap:12px;display:flex}.history-section{margin-top:100px}.section-heading{border-bottom:1px solid #bdbdb8;justify-content:space-between;align-items:baseline;padding-bottom:15px;display:flex}.section-heading h2{margin:0;font-size:18px}.section-heading span{color:#777;font-size:10px}.history-item{border-bottom:1px solid #d2d2ce;align-items:center;display:flex}.history-main{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;justify-content:space-between;padding:18px 0;display:flex}.history-status{font-size:12px;font-weight:700}.history-main time{color:#777;font-size:10px}.history-delete{color:#777;cursor:pointer;background:0 0;border:0;padding:12px}footer{color:#777;border-top:1px solid #cfcfcb;justify-content:space-between;gap:20px;padding:28px 0 42px;font-size:9px;display:flex}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.72)}}@media (width<=760px){.app-shell{width:min(100% - 28px,1120px)}.site-header{height:68px}main{padding:56px 0 80px}.hero h1{font-size:44px}.upload-grid{grid-template-columns:1fr;margin-top:48px}.file-card{min-height:345px}.file-placeholder,.file-preview{height:220px}.submit-panel{grid-template-columns:1fr}.generate-button{grid-area:auto/1;width:100%}.consent-row{grid-column:1}.status-panel{padding:28px 22px}.status-panel h2{margin-top:28px}.result-actions,footer{flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
