.creation-composer{width:min(800px,calc(100vw - 36px));max-width:800px;gap:16px;padding:28px;border-radius:18px}.composer-heading{display:flex;align-items:center;gap:12px;padding-right:28px}.composer-heading svg{width:24px;height:24px;color:var(--primary)}.composer-heading--story svg{color:var(--story,#ef4848)}.composer-label{font-size:12px;color:var(--muted-foreground)}.creation-composer textarea{min-height:min(280px,38dvh);width:100%;resize:vertical;border:0;border-bottom:1px solid var(--border);background:transparent;color:var(--foreground);font:16px/1.9 Arial,PingFang SC,sans-serif;padding:0 0 16px;outline:none}.creation-composer textarea:focus-visible{border-bottom-color:var(--ring)}.creation-composer textarea::placeholder{color:var(--muted-foreground)}.composer-footer{align-items:center;justify-content:flex-end}.composer-import{display:inline-flex;position:relative;align-items:center;min-height:40px;margin-right:auto;padding:0 12px;border:1px solid var(--border);border-radius:9px;cursor:pointer;font-size:13px}.composer-import input{position:absolute;opacity:0;inset:0;width:100%;cursor:pointer}.composer-import:focus-within{outline:2px solid var(--ring);outline-offset:3px}.composer-error{font-size:13px;color:var(--destructive)}@media (max-width:600px){.creation-composer{padding:24px 20px 20px}.composer-footer{flex-direction:row;flex-wrap:wrap;gap:12px}}.composer-name,.composer-target{display:grid;gap:6px;font-size:12px;color:var(--muted-foreground)}.composer-target-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-target-menu{max-width:min(360px,calc(100vw - 48px))}.composer-target-menu [role=menuitemradio]{gap:8px}.composer-list-status{font-size:12px;color:var(--destructive)}.composer-list-status button{text-decoration:underline}.ph-page{max-width:1180px;margin:0 auto;padding:2px 4px 56px;color:var(--ink)}.ph-eyebrow{margin:0;color:var(--muted-foreground);font-family:var(--font-mono);font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:.08em;text-transform:uppercase}a.ph-slot-action:focus-visible{outline:2px solid var(--selection);outline-offset:2px}.ph-section{margin-top:40px}.ph-section:first-of-type{margin-top:24px}.ph-section-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;padding:0 2px 13px}.ph-section-heading h2{margin:7px 0 0;color:var(--ink);font-size:20px;font-weight:700;letter-spacing:-.03em;line-height:26px}.ph-task-summary{margin:3px 0 0;color:var(--muted-foreground);font-size:12px}.ph-heading-actions{display:flex;align-items:center;gap:8px}.ph-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(max(220px,(100% - 36px)/4),1fr));gap:12px;margin:0;padding:0;list-style:none}.ph-card-item{display:flex;flex-direction:column;gap:8px}.ph-card-grid .ph-localization-job-cover--empty svg,.ph-card-grid .ph-task-fallback svg{width:18px;height:18px;padding:8px}.ph-tasks-empty{max-width:520px;margin:8px auto 0}.ph-localization-job-cover{display:block;width:100%;height:100%;object-fit:cover;background:var(--surface-muted)}.ph-localization-job-cover--empty{display:grid;place-items:center;background:var(--surface);color:var(--muted-foreground)}.ph-cover-note{position:absolute;bottom:6px;left:6px;padding:2px 7px;border-radius:999px;background:color-mix(in srgb,var(--canvas) 82%,transparent);color:var(--muted-foreground);font-size:10px;font-weight:600;letter-spacing:.02em}.ph-localization-job-cover--empty svg,.ph-task-fallback svg{box-sizing:content-box;width:22px;height:22px;padding:10px;border-radius:999px;background:var(--surface-muted)}.ph-task-fallback{display:grid;width:100%;height:100%;place-items:center}.ph-task-fallback--creation{background:var(--surface);color:var(--creation)}[data-status-tone=translation] .ph-localization-job-cover--empty svg{background:var(--assets-soft);color:var(--assets)}[data-status-tone=success] .ph-localization-job-cover--empty svg,[data-status-tone=success] .ph-task-fallback svg{background:color-mix(in srgb,var(--success) 16%,var(--canvas));color:var(--success)}[data-status-tone=failed] .ph-localization-job-cover--empty svg{background:color-mix(in srgb,var(--destructive) 16%,var(--canvas));color:var(--destructive)}.ph-localization-jobs--failed{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 2px;color:var(--text);font-size:12px}.ph-localization-jobs--failed p{margin:0}.ph-episode-art{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:var(--canvas)}.ph-episode-art--compact{width:132px;border-radius:var(--radius-thumb)}.ph-text-action{border:0;background:var(--secondary);color:var(--secondary-foreground)}.ph-text-action:hover{background:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}.ph-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:22px;color:var(--muted-foreground);font-family:var(--font-mono);font-size:11px;font-variant-numeric:tabular-nums}.ph-pagination .ph-text-action:disabled{cursor:not-allowed;opacity:.42}.ph-slot-action{display:inline-flex;min-height:32px;align-items:center;padding:0 10px;border-radius:var(--radius-control);background:var(--secondary);color:var(--secondary-foreground);font-size:11px;font-weight:600;text-decoration:none}.ph-slot-action:hover{background:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}.ph-job-dialog-eyebrow{margin:0 0 5px;color:var(--translation);font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.ph-job-dialog-summary{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:6px;color:var(--muted-foreground);font-size:11px}.ph-job-dialog-summary strong{color:var(--translation);font-family:var(--font-mono);font-weight:700}.ph-job-dialog-body{display:flex;flex:1 1 auto;flex-direction:column;gap:16px;min-height:0;margin-top:6px;overflow-y:auto;padding-bottom:4px}.ph-job-dialog{display:flex;flex-direction:column;max-height:min(860px,calc(100dvh - 32px));overflow:hidden}.ph-job-output:empty,.ph-job-output:not(:has(.lf-video-stage)){display:none}.ph-job-output .lf-video-stage{margin:0;padding:0 0 16px;border:0;border-radius:0;border-bottom:1px solid var(--line);background:transparent}.ph-job-output .lf-video-stage-header{margin-bottom:10px}.ph-job-output .lf-video-stage-header h2{color:var(--ink);font-size:14px}.ph-job-output .lf-video-stage-error,.ph-job-output .lf-video-stage-header p{color:var(--muted-foreground)}.ph-job-output .lf-video-stage-player{width:100%;aspect-ratio:16/9;margin-bottom:10px;border:1px solid var(--line);border-radius:var(--radius-control);overflow:hidden;background:#000}.ph-job-output .lf-video-element{width:100%;height:100%;object-fit:contain}.ph-job-output .lf-video-stage-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.ph-job-dialog-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:0;border-block:1px solid var(--line);list-style:none}.ph-job-dialog-stage{position:relative;display:grid;grid-template-columns:8px minmax(0,1fr);grid-template-rows:auto auto;gap:1px 6px;padding:7px 8px;color:var(--ink);font-size:12px}.ph-job-dialog-stage+.ph-job-dialog-stage{border-inline-start:1px solid var(--line)}.ph-job-dialog-stage-dot{width:8px;height:8px;margin-top:3.5px;border:1px solid var(--line-strong);border-radius:50%;background:var(--surface-muted)}.ph-job-dialog-stage-state{grid-column:2;color:var(--muted-foreground);font-size:11px;line-height:15px}.ph-job-dialog-stage[data-stage-state=succeeded] .ph-job-dialog-stage-dot{border-color:var(--success);background:var(--success)}.ph-job-dialog-stage[data-stage-state=running]{color:var(--translation)}.ph-job-dialog-stage[data-stage-state=running] .ph-job-dialog-stage-dot{border-color:var(--translation);background:var(--translation)}.ph-job-dialog-stage[data-stage-state=failed]{color:var(--destructive)}.ph-job-dialog-stage[data-stage-state=failed] .ph-job-dialog-stage-dot{border-color:var(--destructive);background:var(--destructive)}.ph-job-dialog-failure{margin:0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--destructive) 38%,var(--line));border-radius:var(--radius-control);background:color-mix(in srgb,var(--destructive) 7%,var(--surface));color:var(--destructive);font-size:12px}.ph-job-dialog-meta{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0;padding:10px 0;border-block:1px solid var(--line)}.ph-job-dialog-meta>div{display:flex;align-items:baseline;min-width:0;gap:8px}.ph-job-dialog-meta dt{flex:none;color:var(--muted-foreground);font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase}.ph-job-dialog-meta dd{min-width:0;margin:0;overflow:hidden;color:var(--ink);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.ph-job-dialog-id{font-family:var(--font-mono)}.ph-job-dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:2px}.ph-state-screen{display:grid;min-height:100dvh;place-items:center;padding:24px;background:var(--app);color:var(--ink)}.ph-state-panel{width:min(520px,100%);padding:28px;border:1px solid var(--line);border-radius:var(--radius-surface);background:var(--surface)}.ph-state-panel h1{margin:9px 0 0;font-size:20px;font-weight:700;line-height:26px}.ph-state-panel>p:not(.ph-eyebrow){margin:10px 0 0;color:var(--text);font-size:13px;line-height:20px}@keyframes ph-skeleton{0%{opacity:.45}to{opacity:.8}}@media (max-width:780px){.ph-page{padding:0 0 36px}.ph-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}@media (max-width:520px){.ph-card-grid{grid-template-columns:minmax(0,1fr);gap:10px}.ph-section-heading{flex-wrap:wrap;align-items:flex-start}.ph-heading-actions{flex-wrap:wrap}.ph-pagination{gap:8px}.ph-job-dialog-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.ph-job-dialog-stage:nth-child(odd){border-inline-start:0}.ph-job-dialog-stage:nth-child(n+3){border-block-start:1px solid var(--line)}}.ph-task-spinner{display:inline-block;border-left:2px solid transparent;border-bottom:2px solid transparent;border-top:2px solid transparent;border-top-color:var(--assets);border-right:2px solid transparent;border-right-color:var(--assets);border-radius:9999px;animation:ph-task-spin 1.1s linear infinite}@keyframes ph-task-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.ph-task-spinner{animation:none}}