dragonflight/services/premiere-plugin/css/styles.css

1284 lines
28 KiB
CSS
Raw Normal View History

fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
/* Wild Dragon MAM Panel Dragonflight Design System v1.2.0
* CEP-compatible: all oklch() converted to hex/rgba via OKLabsRGB math.
* Source of truth: services/web-ui/src/css/components/
* Do not hand-edit hex values regenerate from tokens.css if tokens change. */
:root {
/* Background scale */
--bg-deep: #030101;
--bg-base: #070403;
--bg-panel: #100908;
--bg-surface: #1a1210;
--bg-raised: #261d1b;
--bg-hover: #302624;
feat: server-side filmstrip worker + fix scheduler crash + fix clip freeze Root causes found: 1. Scheduler crashing every 15s: assets table has no error_message column. Fix: remove error_message from UPDATE in scheduler.js (#66 regression). 2. Clip freezing: client-side filmstrip seek loop runs on main thread, seeks same proxy the player is streaming → both stall → freeze. Fix: replace browser seek loop entirely with server-side FFmpeg worker. 3. No dedicated filmstrip worker: filmstrip was never pre-built server-side. Changes: - services/mam-api/src/db/migrations/018-add-filmstrip-s3-key.sql Add filmstrip_s3_key TEXT column to assets table - services/worker/src/workers/filmstrip.js (new) BullMQ worker: downloads proxy, runs FFmpeg fps filter to extract 28 evenly-spaced JPEG frames, base64-encodes them, uploads JSON array to S3 at filmstrips/<assetId>.json, stores key in DB - services/worker/src/workers/thumbnail.js Queue filmstrip job automatically after thumbnail completes - services/worker/src/index.js Register filmstrip worker (concurrency=2), export filmstripQueue singleton, close it on SIGTERM - services/mam-api/src/routes/assets.js - filmstripQueue added - POST /reprocess?type=filmstrip now supported - GET /:id/filmstrip returns signed S3 URL for JSON frames - services/mam-api/src/routes/jobs.js filmstrip queue visible in Jobs UI - services/web-ui/public/screens-asset.jsx Replace browser seek loop with fetch of /assets/:id/filmstrip → fetch S3 JSON → render frames. Zero browser-side video seeking. Right-click and Files tab re-generate via API endpoint.
2026-05-26 12:39:44 -04:00
/* Accent */
--accent: #ed391a;
--accent-hover: #ff5032;
--accent-bright: #ff765a;
--accent-subtle: rgba(237, 57, 26, 0.12);
--accent-border: rgba(237, 57, 26, 0.36);
/* Text */
--text-primary: #f0e9e8;
--text-secondary: #ada29f;
--text-tertiary: #7b7270;
--text-disabled: #48413f;
/* Borders */
--border-faint: #201817;
--border: #302624;
--border-strong: #4c3f3c;
/* Signals (primary) */
--signal-good: #35bb58;
--signal-bad: #f53c41;
--signal-warn: #e6b816;
--signal-idle: #817876;
--signal-info: #1e9cf0;
/* Signal backgrounds */
--signal-good-bg: rgba(53, 187, 88, 0.12);
--signal-bad-bg: rgba(245, 60, 65, 0.12);
--signal-warn-bg: rgba(230, 184, 22, 0.12);
--signal-info-bg: rgba(30, 156, 240, 0.12);
/* Signal hover variants */
--signal-good-hover: #46c865;
--signal-bad-hover: #ff4c4d;
--signal-warn-hover: #f3c530;
/* Status aliases — backwards compat for main.js */
--status-green: var(--signal-good);
--status-red: var(--signal-bad);
--status-blue: var(--signal-info);
--status-yellow: var(--signal-warn);
--status-gray: var(--signal-idle);
--status-green-bg: var(--signal-good-bg);
--status-red-bg: var(--signal-bad-bg);
--status-blue-bg: var(--signal-info-bg);
--status-yellow-bg: var(--signal-warn-bg);
/* Spacing */
--sp-1: 4px;
--sp-2: 8px;
--sp-3: 12px;
--sp-4: 16px;
--sp-5: 20px;
--sp-6: 24px;
--sp-8: 32px;
--sp-12: 48px;
--sp-16: 64px;
/* Typography */
--font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
--font-mono: 'JetBrains Mono', ui-monospace, 'SF Mono', 'Consolas', 'Liberation Mono', monospace;
--text-xs: 11px;
--text-sm: 13px;
--text-base: 14px;
--text-md: 16px;
/* Radii */
--r-sm: 4px;
--r-md: 6px;
--r-lg: 8px;
/* Transitions (legacy) */
--t-fast: 150ms ease-out;
--t-normal: 250ms ease-out;
/* Motion */
--ease-out-quart: cubic-bezier(0.25, 1, 0.5, 1);
--ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
--dur-fast: 120ms;
--dur-normal: 180ms;
--dur-slide: 240ms;
/* Elevation + surface extras */
--shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
--thumb-black: #000000;
--overlay: rgba(3, 1, 1, 0.65);
/* Z-index layers */
--z-dropdown: 40;
--z-overlay: 80;
--z-panel: 90;
--z-toast: 200;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html, body {
width: 100%;
height: 100%;
font-family: var(--font);
background: var(--bg-base);
color: var(--text-primary);
font-size: 12px;
-webkit-font-smoothing: antialiased;
}
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: var(--bg-deep); }
::-webkit-scrollbar-thumb { background: var(--border-strong); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--accent); }
/* ================================================================
PANEL CONTAINER
================================================================ */
#panel-container {
display: flex;
flex-direction: column;
width: 100%;
height: 100%;
}
/* ================================================================
CONNECTION BAR
================================================================ */
.connection-bar {
background: var(--bg-panel);
border-bottom: 1px solid var(--border);
padding: var(--sp-3);
flex-shrink: 0;
}
.connection-controls {
display: flex;
gap: var(--sp-2);
align-items: center;
}
fix(premiere-plugin): v1.0.1 — actually load + connect under CEP 12 End-to-end debugging against a live Premiere Pro 2025 + auth-enabled mam-api surfaced four real bugs that made v1.0.0 install cleanly but never load, plus the missing auth flow. All four are fixed and the panel is verified connected (status dot green, Reconnect button shown, project list populated). - manifest.xml: a comment in the <Resources> block contained "--" (inside "--enable-nodejs"/"--mixed-context"), which is illegal per the XML spec. CEP 12's strict parser logged ERROR XPATH Double hyphen within comment and skipped the panel entirely. Comment rewritten without double hyphens. - manifest.xml: lacked the Version="X.Y" attribute on <ExtensionManifest> and used a non-standard AbstractionLayers/empty <ExtensionList/> structure. CEP rejected it with Unsupported Manifest version '' Manifest rewritten to the standard CSXS 7.0 schema (ExtensionList + DispatchInfoList + RequiredRuntimeList), matching the working AMPP panel template. - main.js: re-declared `const csInterface = new CSInterface()` at top level even though CSInterface.js already declared the same binding. CEP 12 shares script-realm lexical scope across <script> tags, so the second const threw Identifier 'csInterface' has already been declared The throw fired before setupEventListeners(), so the Connect button's click handler was never attached. This is the root cause of the original "clicking Connect does nothing" symptom; everything else was secondary. Removed the duplicate declaration; main.js now uses the binding from CSInterface.js. - No auth support against AUTH_ENABLED=true servers. mam-api supports Bearer tokens (POST /api/v1/tokens), so added: • API token input field (password-masked) next to Server URL • localStorage persistence on every keystroke • window.fetch monkey-patch that injects Authorization: Bearer <token> on every request whose URL starts with the configured server. Signed S3 download URLs are NOT touched. Drive-by fixes that came out of the same debugging pass: - Server URL input listener was 'change' (fires on blur); switched to 'input' so typing-then-clicking-Connect immediately commits. - restoreSettings() now strips trailing slashes from the stored URL so older saved values like 'http://host/' stop producing //api/v1 404s. - CSS selector `input[type="text"].server-url` didn't match the new password input → the token field was unstyled and effectively invisible. Generalized to `input.server-url`; restructured the connection bar into `.connection-controls--stacked` (flex column) of two `.server-input-row` rows so two input fields fit cleanly. - Build scripts now parse ExtensionBundleVersion from both element form (<ExtensionBundleVersion>X</...>) and attribute form (ExtensionBundleVersion="X"), since the manifest rewrite switched schemas. Version bumped 1.0.0 → 1.0.1. New artifacts committed at services/premiere-plugin/build/releases/v1.0.1/ (.exe 2 MB, .zxp 35 KB). v1.0.0 left in place so editors who downloaded it can verify they're on the broken version. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-23 19:24:10 -04:00
.connection-controls--stacked {
display: flex;
flex-direction: column;
gap: var(--sp-2);
fix(premiere-plugin): v1.0.1 — actually load + connect under CEP 12 End-to-end debugging against a live Premiere Pro 2025 + auth-enabled mam-api surfaced four real bugs that made v1.0.0 install cleanly but never load, plus the missing auth flow. All four are fixed and the panel is verified connected (status dot green, Reconnect button shown, project list populated). - manifest.xml: a comment in the <Resources> block contained "--" (inside "--enable-nodejs"/"--mixed-context"), which is illegal per the XML spec. CEP 12's strict parser logged ERROR XPATH Double hyphen within comment and skipped the panel entirely. Comment rewritten without double hyphens. - manifest.xml: lacked the Version="X.Y" attribute on <ExtensionManifest> and used a non-standard AbstractionLayers/empty <ExtensionList/> structure. CEP rejected it with Unsupported Manifest version '' Manifest rewritten to the standard CSXS 7.0 schema (ExtensionList + DispatchInfoList + RequiredRuntimeList), matching the working AMPP panel template. - main.js: re-declared `const csInterface = new CSInterface()` at top level even though CSInterface.js already declared the same binding. CEP 12 shares script-realm lexical scope across <script> tags, so the second const threw Identifier 'csInterface' has already been declared The throw fired before setupEventListeners(), so the Connect button's click handler was never attached. This is the root cause of the original "clicking Connect does nothing" symptom; everything else was secondary. Removed the duplicate declaration; main.js now uses the binding from CSInterface.js. - No auth support against AUTH_ENABLED=true servers. mam-api supports Bearer tokens (POST /api/v1/tokens), so added: • API token input field (password-masked) next to Server URL • localStorage persistence on every keystroke • window.fetch monkey-patch that injects Authorization: Bearer <token> on every request whose URL starts with the configured server. Signed S3 download URLs are NOT touched. Drive-by fixes that came out of the same debugging pass: - Server URL input listener was 'change' (fires on blur); switched to 'input' so typing-then-clicking-Connect immediately commits. - restoreSettings() now strips trailing slashes from the stored URL so older saved values like 'http://host/' stop producing //api/v1 404s. - CSS selector `input[type="text"].server-url` didn't match the new password input → the token field was unstyled and effectively invisible. Generalized to `input.server-url`; restructured the connection bar into `.connection-controls--stacked` (flex column) of two `.server-input-row` rows so two input fields fit cleanly. - Build scripts now parse ExtensionBundleVersion from both element form (<ExtensionBundleVersion>X</...>) and attribute form (ExtensionBundleVersion="X"), since the manifest rewrite switched schemas. Version bumped 1.0.0 → 1.0.1. New artifacts committed at services/premiere-plugin/build/releases/v1.0.1/ (.exe 2 MB, .zxp 35 KB). v1.0.0 left in place so editors who downloaded it can verify they're on the broken version. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-23 19:24:10 -04:00
}
.server-input-row {
display: flex;
align-items: center;
gap: var(--sp-2);
fix(premiere-plugin): v1.0.1 — actually load + connect under CEP 12 End-to-end debugging against a live Premiere Pro 2025 + auth-enabled mam-api surfaced four real bugs that made v1.0.0 install cleanly but never load, plus the missing auth flow. All four are fixed and the panel is verified connected (status dot green, Reconnect button shown, project list populated). - manifest.xml: a comment in the <Resources> block contained "--" (inside "--enable-nodejs"/"--mixed-context"), which is illegal per the XML spec. CEP 12's strict parser logged ERROR XPATH Double hyphen within comment and skipped the panel entirely. Comment rewritten without double hyphens. - manifest.xml: lacked the Version="X.Y" attribute on <ExtensionManifest> and used a non-standard AbstractionLayers/empty <ExtensionList/> structure. CEP rejected it with Unsupported Manifest version '' Manifest rewritten to the standard CSXS 7.0 schema (ExtensionList + DispatchInfoList + RequiredRuntimeList), matching the working AMPP panel template. - main.js: re-declared `const csInterface = new CSInterface()` at top level even though CSInterface.js already declared the same binding. CEP 12 shares script-realm lexical scope across <script> tags, so the second const threw Identifier 'csInterface' has already been declared The throw fired before setupEventListeners(), so the Connect button's click handler was never attached. This is the root cause of the original "clicking Connect does nothing" symptom; everything else was secondary. Removed the duplicate declaration; main.js now uses the binding from CSInterface.js. - No auth support against AUTH_ENABLED=true servers. mam-api supports Bearer tokens (POST /api/v1/tokens), so added: • API token input field (password-masked) next to Server URL • localStorage persistence on every keystroke • window.fetch monkey-patch that injects Authorization: Bearer <token> on every request whose URL starts with the configured server. Signed S3 download URLs are NOT touched. Drive-by fixes that came out of the same debugging pass: - Server URL input listener was 'change' (fires on blur); switched to 'input' so typing-then-clicking-Connect immediately commits. - restoreSettings() now strips trailing slashes from the stored URL so older saved values like 'http://host/' stop producing //api/v1 404s. - CSS selector `input[type="text"].server-url` didn't match the new password input → the token field was unstyled and effectively invisible. Generalized to `input.server-url`; restructured the connection bar into `.connection-controls--stacked` (flex column) of two `.server-input-row` rows so two input fields fit cleanly. - Build scripts now parse ExtensionBundleVersion from both element form (<ExtensionBundleVersion>X</...>) and attribute form (ExtensionBundleVersion="X"), since the manifest rewrite switched schemas. Version bumped 1.0.0 → 1.0.1. New artifacts committed at services/premiere-plugin/build/releases/v1.0.1/ (.exe 2 MB, .zxp 35 KB). v1.0.0 left in place so editors who downloaded it can verify they're on the broken version. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-23 19:24:10 -04:00
}
.server-url {
flex: 1;
min-width: 0;
height: 32px;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
padding: 0 10px;
background: var(--bg-deep);
border: 1px solid var(--border);
border-radius: var(--r-sm);
color: var(--text-primary);
font-size: var(--text-xs);
font-family: var(--font-mono);
outline: none;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
transition: border-color var(--dur-fast) var(--ease-out-quart),
box-shadow var(--dur-fast) var(--ease-out-quart);
}
.server-url:focus-visible {
border-color: var(--accent-border);
box-shadow: 0 0 0 2px var(--accent-subtle);
}
.server-url::placeholder { color: var(--text-tertiary); }
.connect-btn { flex-shrink: 0; }
.status-indicator {
width: 8px;
height: 8px;
border-radius: 50%;
background: var(--signal-bad);
flex-shrink: 0;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
transition: background var(--dur-fast) var(--ease-out-quart),
box-shadow var(--dur-fast) var(--ease-out-quart);
}
.status-indicator.connected {
background: var(--signal-good);
box-shadow: 0 0 6px var(--signal-good);
}
.status-indicator.connecting {
background: var(--signal-warn);
animation: pulse 1.5s ease-in-out infinite;
}
@keyframes pulse {
0%, 100% { opacity: 1; }
50% { opacity: 0.5; }
}
/* ================================================================
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
BUTTONS (design system mirrors wd-btn)
================================================================ */
.btn {
display: inline-flex;
align-items: center;
justify-content: center;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
gap: 6px;
padding: 0 12px;
height: 32px;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 500 13px/1 var(--font);
border: 1px solid transparent;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border-radius: 4px;
transition: background-color var(--dur-fast) var(--ease-out-quart),
border-color var(--dur-fast) var(--ease-out-quart),
color var(--dur-fast) var(--ease-out-quart);
white-space: nowrap;
flex-shrink: 0;
cursor: pointer;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
user-select: none;
}
.btn:focus-visible {
outline: 2px solid var(--accent-subtle);
outline-offset: 1px;
}
.btn:active:not(:disabled) {
opacity: 0.85;
transition: opacity 60ms;
}
.btn-sm {
height: 28px;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
padding: 0 10px;
font-size: 12px;
}
.btn-lg {
height: 36px;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
padding: 0 14px;
font-size: 13px;
}
.btn-icon {
width: 28px;
height: 28px;
padding: 0;
}
.btn-primary {
background: var(--accent);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
color: #f5f7fb;
border-color: var(--accent);
}
.btn-primary:hover:not(:disabled) {
background: var(--accent-hover);
border-color: var(--accent-hover);
}
.btn-secondary {
background: var(--bg-surface);
color: var(--text-primary);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border-color: var(--border);
}
.btn-secondary:hover:not(:disabled) {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
background: var(--bg-hover);
border-color: var(--border-strong);
}
.btn-ghost {
background: transparent;
color: var(--text-secondary);
border-color: transparent;
}
.btn-ghost:hover:not(:disabled) {
background: var(--bg-hover);
color: var(--text-primary);
}
.btn-danger {
background: var(--signal-bad);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
color: #fbf6f6;
border-color: var(--signal-bad);
}
.btn-danger:hover:not(:disabled) {
background: var(--signal-bad-hover);
border-color: var(--signal-bad-hover);
}
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
.btn:disabled { opacity: 0.4; cursor: not-allowed; pointer-events: none; }
/* Legacy button compatibility */
button {
cursor: pointer;
font-family: var(--font);
}
button:disabled {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
opacity: 0.4;
cursor: not-allowed;
pointer-events: none;
}
button.secondary {
background: var(--bg-surface);
color: var(--text-primary);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border: 1px solid var(--border);
border-radius: 4px;
padding: 0 10px;
height: 32px;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 500 13px/1 var(--font);
display: inline-flex;
align-items: center;
justify-content: center;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
transition: background-color var(--dur-fast) var(--ease-out-quart),
border-color var(--dur-fast) var(--ease-out-quart);
}
button.secondary:hover:not(:disabled) {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
background: var(--bg-hover);
border-color: var(--border-strong);
}
/* ================================================================
SEARCH & FILTER
================================================================ */
.search-filter-area {
background: var(--bg-panel);
border-bottom: 1px solid var(--border);
padding: var(--sp-3);
flex-shrink: 0;
}
.search-bar {
display: flex;
gap: var(--sp-2);
margin-bottom: var(--sp-2);
}
.search-input {
flex: 1;
height: 32px;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
padding: 0 10px;
background: var(--bg-deep);
border: 1px solid var(--border);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border-radius: 4px;
color: var(--text-primary);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 400 13px/1 var(--font);
outline: none;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
transition: border-color var(--dur-fast) var(--ease-out-quart);
}
.search-input:focus-visible {
border-color: var(--accent-border);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
outline: 2px solid var(--accent-subtle);
outline-offset: 1px;
}
.search-input::placeholder { color: var(--text-tertiary); }
.filter-controls {
display: flex;
gap: var(--sp-2);
}
select {
flex: 1;
height: 32px;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
padding: 0 24px 0 10px;
background: var(--bg-deep);
border: 1px solid var(--border);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border-radius: 4px;
color: var(--text-primary);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 400 13px/1 var(--font);
appearance: none;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24'%3E%3Cpath fill='%23667788' d='m7 10 5 5 5-5z'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 6px center;
cursor: pointer;
outline: none;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
transition: border-color var(--dur-fast) var(--ease-out-quart);
}
select:focus-visible {
border-color: var(--accent-border);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
outline: 2px solid var(--accent-subtle);
outline-offset: 1px;
}
select option { background: var(--bg-surface); color: var(--text-primary); }
/* ================================================================
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
CHIP / BADGE (mirrors wd-badge)
================================================================ */
.chip {
display: inline-flex;
align-items: center;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
gap: 4px;
padding: 0 6px;
height: 18px;
border-radius: 3px;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 600 10px/1 var(--font);
letter-spacing: 0.08em;
text-transform: uppercase;
background: var(--bg-surface);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
color: var(--text-tertiary);
white-space: nowrap;
}
.chip-dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; flex-shrink: 0; }
.chip--good { color: var(--signal-good); background: var(--signal-good-bg); }
.chip--warn { color: var(--signal-warn); background: var(--signal-warn-bg); }
.chip--bad { color: var(--signal-bad); background: var(--signal-bad-bg); }
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
.chip--idle { color: var(--text-tertiary); background: var(--bg-surface); }
.chip--rec { color: var(--accent); background: var(--accent-subtle); }
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
.chip--info { color: var(--accent); background: var(--accent-subtle); }
/* ================================================================
SEQUENCE INFO BAR
================================================================ */
.seq-info-bar {
background: var(--bg-surface);
border-bottom: 1px solid var(--border);
padding: var(--sp-1) var(--sp-3);
flex-shrink: 0;
display: flex;
align-items: center;
gap: var(--sp-2);
min-height: 28px;
}
.seq-info-bar.hidden { display: none; }
.seq-info-label { flex-shrink: 0; }
.seq-info-name {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 500 11px/1 var(--font);
color: var(--text-primary);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
flex: 1;
}
.seq-refresh-btn {
flex-shrink: 0;
font-size: 13px;
line-height: 1;
}
feat: server-side filmstrip worker + fix scheduler crash + fix clip freeze Root causes found: 1. Scheduler crashing every 15s: assets table has no error_message column. Fix: remove error_message from UPDATE in scheduler.js (#66 regression). 2. Clip freezing: client-side filmstrip seek loop runs on main thread, seeks same proxy the player is streaming → both stall → freeze. Fix: replace browser seek loop entirely with server-side FFmpeg worker. 3. No dedicated filmstrip worker: filmstrip was never pre-built server-side. Changes: - services/mam-api/src/db/migrations/018-add-filmstrip-s3-key.sql Add filmstrip_s3_key TEXT column to assets table - services/worker/src/workers/filmstrip.js (new) BullMQ worker: downloads proxy, runs FFmpeg fps filter to extract 28 evenly-spaced JPEG frames, base64-encodes them, uploads JSON array to S3 at filmstrips/<assetId>.json, stores key in DB - services/worker/src/workers/thumbnail.js Queue filmstrip job automatically after thumbnail completes - services/worker/src/index.js Register filmstrip worker (concurrency=2), export filmstripQueue singleton, close it on SIGTERM - services/mam-api/src/routes/assets.js - filmstripQueue added - POST /reprocess?type=filmstrip now supported - GET /:id/filmstrip returns signed S3 URL for JSON frames - services/mam-api/src/routes/jobs.js filmstrip queue visible in Jobs UI - services/web-ui/public/screens-asset.jsx Replace browser seek loop with fetch of /assets/:id/filmstrip → fetch S3 JSON → render frames. Zero browser-side video seeking. Right-click and Files tab re-generate via API endpoint.
2026-05-26 12:39:44 -04:00
/* ================================================================
TAB NAVIGATION
================================================================ */
.tab-nav {
display: flex;
background: var(--bg-panel);
border-bottom: 1px solid var(--border);
flex-shrink: 0;
}
.tab-btn {
flex: 1;
height: 36px;
feat: server-side filmstrip worker + fix scheduler crash + fix clip freeze Root causes found: 1. Scheduler crashing every 15s: assets table has no error_message column. Fix: remove error_message from UPDATE in scheduler.js (#66 regression). 2. Clip freezing: client-side filmstrip seek loop runs on main thread, seeks same proxy the player is streaming → both stall → freeze. Fix: replace browser seek loop entirely with server-side FFmpeg worker. 3. No dedicated filmstrip worker: filmstrip was never pre-built server-side. Changes: - services/mam-api/src/db/migrations/018-add-filmstrip-s3-key.sql Add filmstrip_s3_key TEXT column to assets table - services/worker/src/workers/filmstrip.js (new) BullMQ worker: downloads proxy, runs FFmpeg fps filter to extract 28 evenly-spaced JPEG frames, base64-encodes them, uploads JSON array to S3 at filmstrips/<assetId>.json, stores key in DB - services/worker/src/workers/thumbnail.js Queue filmstrip job automatically after thumbnail completes - services/worker/src/index.js Register filmstrip worker (concurrency=2), export filmstripQueue singleton, close it on SIGTERM - services/mam-api/src/routes/assets.js - filmstripQueue added - POST /reprocess?type=filmstrip now supported - GET /:id/filmstrip returns signed S3 URL for JSON frames - services/mam-api/src/routes/jobs.js filmstrip queue visible in Jobs UI - services/web-ui/public/screens-asset.jsx Replace browser seek loop with fetch of /assets/:id/filmstrip → fetch S3 JSON → render frames. Zero browser-side video seeking. Right-click and Files tab re-generate via API endpoint.
2026-05-26 12:39:44 -04:00
background: transparent;
border: none;
border-bottom: 2px solid transparent;
color: var(--text-secondary);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 600 11px/1 var(--font);
letter-spacing: 0.02em;
feat: server-side filmstrip worker + fix scheduler crash + fix clip freeze Root causes found: 1. Scheduler crashing every 15s: assets table has no error_message column. Fix: remove error_message from UPDATE in scheduler.js (#66 regression). 2. Clip freezing: client-side filmstrip seek loop runs on main thread, seeks same proxy the player is streaming → both stall → freeze. Fix: replace browser seek loop entirely with server-side FFmpeg worker. 3. No dedicated filmstrip worker: filmstrip was never pre-built server-side. Changes: - services/mam-api/src/db/migrations/018-add-filmstrip-s3-key.sql Add filmstrip_s3_key TEXT column to assets table - services/worker/src/workers/filmstrip.js (new) BullMQ worker: downloads proxy, runs FFmpeg fps filter to extract 28 evenly-spaced JPEG frames, base64-encodes them, uploads JSON array to S3 at filmstrips/<assetId>.json, stores key in DB - services/worker/src/workers/thumbnail.js Queue filmstrip job automatically after thumbnail completes - services/worker/src/index.js Register filmstrip worker (concurrency=2), export filmstripQueue singleton, close it on SIGTERM - services/mam-api/src/routes/assets.js - filmstripQueue added - POST /reprocess?type=filmstrip now supported - GET /:id/filmstrip returns signed S3 URL for JSON frames - services/mam-api/src/routes/jobs.js filmstrip queue visible in Jobs UI - services/web-ui/public/screens-asset.jsx Replace browser seek loop with fetch of /assets/:id/filmstrip → fetch S3 JSON → render frames. Zero browser-side video seeking. Right-click and Files tab re-generate via API endpoint.
2026-05-26 12:39:44 -04:00
display: inline-flex;
align-items: center;
justify-content: center;
gap: var(--sp-2);
cursor: pointer;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
transition: background-color var(--dur-fast) var(--ease-out-quart),
color var(--dur-fast) var(--ease-out-quart);
feat: server-side filmstrip worker + fix scheduler crash + fix clip freeze Root causes found: 1. Scheduler crashing every 15s: assets table has no error_message column. Fix: remove error_message from UPDATE in scheduler.js (#66 regression). 2. Clip freezing: client-side filmstrip seek loop runs on main thread, seeks same proxy the player is streaming → both stall → freeze. Fix: replace browser seek loop entirely with server-side FFmpeg worker. 3. No dedicated filmstrip worker: filmstrip was never pre-built server-side. Changes: - services/mam-api/src/db/migrations/018-add-filmstrip-s3-key.sql Add filmstrip_s3_key TEXT column to assets table - services/worker/src/workers/filmstrip.js (new) BullMQ worker: downloads proxy, runs FFmpeg fps filter to extract 28 evenly-spaced JPEG frames, base64-encodes them, uploads JSON array to S3 at filmstrips/<assetId>.json, stores key in DB - services/worker/src/workers/thumbnail.js Queue filmstrip job automatically after thumbnail completes - services/worker/src/index.js Register filmstrip worker (concurrency=2), export filmstripQueue singleton, close it on SIGTERM - services/mam-api/src/routes/assets.js - filmstripQueue added - POST /reprocess?type=filmstrip now supported - GET /:id/filmstrip returns signed S3 URL for JSON frames - services/mam-api/src/routes/jobs.js filmstrip queue visible in Jobs UI - services/web-ui/public/screens-asset.jsx Replace browser seek loop with fetch of /assets/:id/filmstrip → fetch S3 JSON → render frames. Zero browser-side video seeking. Right-click and Files tab re-generate via API endpoint.
2026-05-26 12:39:44 -04:00
}
.tab-btn:hover {
color: var(--text-primary);
background: var(--bg-hover);
}
.tab-btn.active {
color: var(--accent);
border-bottom-color: var(--accent);
background: var(--bg-surface);
}
.tab-btn .badge {
background: var(--bg-raised);
color: var(--text-secondary);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: normal 10px/1 var(--font);
feat: server-side filmstrip worker + fix scheduler crash + fix clip freeze Root causes found: 1. Scheduler crashing every 15s: assets table has no error_message column. Fix: remove error_message from UPDATE in scheduler.js (#66 regression). 2. Clip freezing: client-side filmstrip seek loop runs on main thread, seeks same proxy the player is streaming → both stall → freeze. Fix: replace browser seek loop entirely with server-side FFmpeg worker. 3. No dedicated filmstrip worker: filmstrip was never pre-built server-side. Changes: - services/mam-api/src/db/migrations/018-add-filmstrip-s3-key.sql Add filmstrip_s3_key TEXT column to assets table - services/worker/src/workers/filmstrip.js (new) BullMQ worker: downloads proxy, runs FFmpeg fps filter to extract 28 evenly-spaced JPEG frames, base64-encodes them, uploads JSON array to S3 at filmstrips/<assetId>.json, stores key in DB - services/worker/src/workers/thumbnail.js Queue filmstrip job automatically after thumbnail completes - services/worker/src/index.js Register filmstrip worker (concurrency=2), export filmstripQueue singleton, close it on SIGTERM - services/mam-api/src/routes/assets.js - filmstripQueue added - POST /reprocess?type=filmstrip now supported - GET /:id/filmstrip returns signed S3 URL for JSON frames - services/mam-api/src/routes/jobs.js filmstrip queue visible in Jobs UI - services/web-ui/public/screens-asset.jsx Replace browser seek loop with fetch of /assets/:id/filmstrip → fetch S3 JSON → render frames. Zero browser-side video seeking. Right-click and Files tab re-generate via API endpoint.
2026-05-26 12:39:44 -04:00
padding: 1px 6px;
border-radius: 10px;
}
.tab-btn.active .badge {
background: var(--accent-subtle);
color: var(--accent);
}
/* ================================================================
MAIN CONTENT AREA
================================================================ */
.content-area {
display: flex;
flex: 1;
gap: 0;
min-height: 0;
}
.asset-grid-container {
flex: 1;
display: flex;
flex-direction: column;
min-width: 0;
border-right: 1px solid var(--border);
}
/* ================================================================
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
ASSET GRID (mirrors wd-card-asset-grid)
================================================================ */
.asset-grid {
flex: 1;
overflow-y: auto;
padding: var(--sp-3);
display: grid;
grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
gap: var(--sp-3);
}
.asset-card {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
background: var(--bg-panel);
border: 1px solid var(--border-faint);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border-radius: 6px;
overflow: hidden;
cursor: pointer;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
transition: border-color var(--dur-fast) var(--ease-out-quart);
display: flex;
flex-direction: column;
}
.asset-card:hover {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border-color: var(--border);
}
.asset-card:hover .asset-thumbnail img {
filter: brightness(1.04);
}
.asset-card.selected {
border-color: var(--accent);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
background: var(--bg-raised);
}
.asset-thumbnail {
width: 100%;
aspect-ratio: 16 / 9;
background: var(--thumb-black);
display: flex;
align-items: center;
justify-content: center;
font-size: 10px;
color: var(--text-tertiary);
overflow: hidden;
flex-shrink: 0;
}
.asset-thumbnail img {
width: 100%;
height: 100%;
object-fit: cover;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
display: block;
transition: filter var(--dur-fast) var(--ease-out-quart);
}
.asset-info {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
padding: 8px;
display: flex;
flex-direction: column;
gap: 3px;
flex: 1;
min-height: 0;
}
.asset-filename {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 500 12px/1.3 var(--font);
color: var(--text-primary);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.asset-meta {
display: flex;
gap: var(--sp-1);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 400 11px/1.3 var(--font-mono);
color: var(--text-tertiary);
font-variant-numeric: tabular-nums;
}
.asset-status-badge {
display: inline-flex;
align-items: center;
height: 18px;
padding: 0 6px;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border-radius: 3px;
font: 600 10px/1 var(--font);
letter-spacing: 0.08em;
text-transform: uppercase;
width: fit-content;
}
.status-badge.ready {
background: var(--signal-good-bg);
color: var(--signal-good);
}
feat: server-side filmstrip worker + fix scheduler crash + fix clip freeze Root causes found: 1. Scheduler crashing every 15s: assets table has no error_message column. Fix: remove error_message from UPDATE in scheduler.js (#66 regression). 2. Clip freezing: client-side filmstrip seek loop runs on main thread, seeks same proxy the player is streaming → both stall → freeze. Fix: replace browser seek loop entirely with server-side FFmpeg worker. 3. No dedicated filmstrip worker: filmstrip was never pre-built server-side. Changes: - services/mam-api/src/db/migrations/018-add-filmstrip-s3-key.sql Add filmstrip_s3_key TEXT column to assets table - services/worker/src/workers/filmstrip.js (new) BullMQ worker: downloads proxy, runs FFmpeg fps filter to extract 28 evenly-spaced JPEG frames, base64-encodes them, uploads JSON array to S3 at filmstrips/<assetId>.json, stores key in DB - services/worker/src/workers/thumbnail.js Queue filmstrip job automatically after thumbnail completes - services/worker/src/index.js Register filmstrip worker (concurrency=2), export filmstripQueue singleton, close it on SIGTERM - services/mam-api/src/routes/assets.js - filmstripQueue added - POST /reprocess?type=filmstrip now supported - GET /:id/filmstrip returns signed S3 URL for JSON frames - services/mam-api/src/routes/jobs.js filmstrip queue visible in Jobs UI - services/web-ui/public/screens-asset.jsx Replace browser seek loop with fetch of /assets/:id/filmstrip → fetch S3 JSON → render frames. Zero browser-side video seeking. Right-click and Files tab re-generate via API endpoint.
2026-05-26 12:39:44 -04:00
.status-badge.live,
.status-badge.recording {
background: var(--signal-bad-bg);
color: var(--signal-bad);
feat: server-side filmstrip worker + fix scheduler crash + fix clip freeze Root causes found: 1. Scheduler crashing every 15s: assets table has no error_message column. Fix: remove error_message from UPDATE in scheduler.js (#66 regression). 2. Clip freezing: client-side filmstrip seek loop runs on main thread, seeks same proxy the player is streaming → both stall → freeze. Fix: replace browser seek loop entirely with server-side FFmpeg worker. 3. No dedicated filmstrip worker: filmstrip was never pre-built server-side. Changes: - services/mam-api/src/db/migrations/018-add-filmstrip-s3-key.sql Add filmstrip_s3_key TEXT column to assets table - services/worker/src/workers/filmstrip.js (new) BullMQ worker: downloads proxy, runs FFmpeg fps filter to extract 28 evenly-spaced JPEG frames, base64-encodes them, uploads JSON array to S3 at filmstrips/<assetId>.json, stores key in DB - services/worker/src/workers/thumbnail.js Queue filmstrip job automatically after thumbnail completes - services/worker/src/index.js Register filmstrip worker (concurrency=2), export filmstripQueue singleton, close it on SIGTERM - services/mam-api/src/routes/assets.js - filmstripQueue added - POST /reprocess?type=filmstrip now supported - GET /:id/filmstrip returns signed S3 URL for JSON frames - services/mam-api/src/routes/jobs.js filmstrip queue visible in Jobs UI - services/web-ui/public/screens-asset.jsx Replace browser seek loop with fetch of /assets/:id/filmstrip → fetch S3 JSON → render frames. Zero browser-side video seeking. Right-click and Files tab re-generate via API endpoint.
2026-05-26 12:39:44 -04:00
font-weight: bold;
}
.status-badge.ingesting,
.status-badge.promoting,
.status-badge.processing {
background: var(--signal-info-bg);
color: var(--signal-info);
animation: pulse 1.5s ease-in-out infinite;
}
feat: server-side filmstrip worker + fix scheduler crash + fix clip freeze Root causes found: 1. Scheduler crashing every 15s: assets table has no error_message column. Fix: remove error_message from UPDATE in scheduler.js (#66 regression). 2. Clip freezing: client-side filmstrip seek loop runs on main thread, seeks same proxy the player is streaming → both stall → freeze. Fix: replace browser seek loop entirely with server-side FFmpeg worker. 3. No dedicated filmstrip worker: filmstrip was never pre-built server-side. Changes: - services/mam-api/src/db/migrations/018-add-filmstrip-s3-key.sql Add filmstrip_s3_key TEXT column to assets table - services/worker/src/workers/filmstrip.js (new) BullMQ worker: downloads proxy, runs FFmpeg fps filter to extract 28 evenly-spaced JPEG frames, base64-encodes them, uploads JSON array to S3 at filmstrips/<assetId>.json, stores key in DB - services/worker/src/workers/thumbnail.js Queue filmstrip job automatically after thumbnail completes - services/worker/src/index.js Register filmstrip worker (concurrency=2), export filmstripQueue singleton, close it on SIGTERM - services/mam-api/src/routes/assets.js - filmstripQueue added - POST /reprocess?type=filmstrip now supported - GET /:id/filmstrip returns signed S3 URL for JSON frames - services/mam-api/src/routes/jobs.js filmstrip queue visible in Jobs UI - services/web-ui/public/screens-asset.jsx Replace browser seek loop with fetch of /assets/:id/filmstrip → fetch S3 JSON → render frames. Zero browser-side video seeking. Right-click and Files tab re-generate via API endpoint.
2026-05-26 12:39:44 -04:00
.status-badge.idle {
background: var(--signal-warn-bg);
color: var(--signal-warn);
feat: server-side filmstrip worker + fix scheduler crash + fix clip freeze Root causes found: 1. Scheduler crashing every 15s: assets table has no error_message column. Fix: remove error_message from UPDATE in scheduler.js (#66 regression). 2. Clip freezing: client-side filmstrip seek loop runs on main thread, seeks same proxy the player is streaming → both stall → freeze. Fix: replace browser seek loop entirely with server-side FFmpeg worker. 3. No dedicated filmstrip worker: filmstrip was never pre-built server-side. Changes: - services/mam-api/src/db/migrations/018-add-filmstrip-s3-key.sql Add filmstrip_s3_key TEXT column to assets table - services/worker/src/workers/filmstrip.js (new) BullMQ worker: downloads proxy, runs FFmpeg fps filter to extract 28 evenly-spaced JPEG frames, base64-encodes them, uploads JSON array to S3 at filmstrips/<assetId>.json, stores key in DB - services/worker/src/workers/thumbnail.js Queue filmstrip job automatically after thumbnail completes - services/worker/src/index.js Register filmstrip worker (concurrency=2), export filmstripQueue singleton, close it on SIGTERM - services/mam-api/src/routes/assets.js - filmstripQueue added - POST /reprocess?type=filmstrip now supported - GET /:id/filmstrip returns signed S3 URL for JSON frames - services/mam-api/src/routes/jobs.js filmstrip queue visible in Jobs UI - services/web-ui/public/screens-asset.jsx Replace browser seek loop with fetch of /assets/:id/filmstrip → fetch S3 JSON → render frames. Zero browser-side video seeking. Right-click and Files tab re-generate via API endpoint.
2026-05-26 12:39:44 -04:00
}
.status-badge.error {
background: var(--signal-bad-bg);
color: var(--signal-bad);
}
/* ================================================================
EMPTY STATE
================================================================ */
.empty-state {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: var(--sp-12) var(--sp-8);
text-align: center;
gap: var(--sp-3);
}
.empty-state-icon {
color: var(--text-tertiary);
margin-bottom: var(--sp-2);
}
.empty-state-icon svg {
width: 36px;
height: 36px;
}
.empty-state-title {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 600 13px/1.4 var(--font);
color: var(--text-secondary);
}
.empty-state-body {
font-size: var(--text-xs);
color: var(--text-tertiary);
max-width: 30ch;
line-height: 1.6;
}
/* ================================================================
DETAILS PANEL
================================================================ */
.details-panel {
width: 190px;
background: var(--bg-panel);
border-left: 1px solid var(--border);
padding: var(--sp-3);
display: flex;
flex-direction: column;
gap: var(--sp-3);
overflow-y: auto;
}
.details-panel.hidden { display: none; }
.details-header {
margin-bottom: var(--sp-1);
}
.details-header-label {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 600 11px/1 var(--font);
text-transform: uppercase;
letter-spacing: 0.08em;
color: var(--text-tertiary);
}
.details-section {
display: flex;
flex-direction: column;
gap: 3px;
}
.details-label {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 600 10px/1 var(--font);
text-transform: uppercase;
color: var(--text-tertiary);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
letter-spacing: 0.08em;
}
.details-value {
font-size: var(--text-xs);
color: var(--text-primary);
word-break: break-word;
}
.tags-list {
display: flex;
flex-wrap: wrap;
gap: var(--sp-1);
}
.tag {
display: inline-block;
background: var(--bg-surface);
border: 1px solid var(--border-faint);
color: var(--text-secondary);
padding: 2px 6px;
border-radius: 100px;
font-size: 9px;
font-family: var(--font-mono);
}
.divider {
height: 1px;
background: var(--border);
border: none;
}
/* ================================================================
PROGRESS INDICATOR
================================================================ */
.progress-container {
padding: var(--sp-2) var(--sp-3);
background: var(--bg-panel);
border-bottom: 1px solid var(--border);
display: none;
}
.progress-container.visible { display: block; }
.progress-label {
font-size: var(--text-xs);
margin-bottom: var(--sp-1);
color: var(--text-secondary);
font-family: var(--font-mono);
font-variant-numeric: tabular-nums;
}
.progress-bar {
width: 100%;
height: 3px;
background: var(--bg-hover);
border-radius: 2px;
overflow: hidden;
}
.progress-fill {
height: 100%;
background: var(--accent);
width: 0%;
transition: width var(--dur-slide) var(--ease-out-quart);
}
/* ================================================================
EXPORT PANEL (Push Timeline to MAM)
================================================================ */
.export-panel {
background: var(--bg-panel);
border-top: 1px solid var(--border);
padding: var(--sp-3);
flex-shrink: 0;
}
.export-panel.hidden { display: none; }
.export-panel-title {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 600 11px/1 var(--font);
text-transform: uppercase;
letter-spacing: 0.08em;
color: var(--accent);
margin-bottom: var(--sp-3);
}
.export-panel input[type="text"],
.export-panel .input {
width: 100%;
height: 32px;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
padding: 0 10px;
background: var(--bg-deep);
border: 1px solid var(--border);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border-radius: 4px;
color: var(--text-primary);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 400 13px/1 var(--font);
margin-bottom: var(--sp-2);
outline: none;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
transition: border-color var(--dur-fast) var(--ease-out-quart);
}
.export-panel input[type="text"]:focus-visible,
.export-panel .input:focus-visible {
border-color: var(--accent-border);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
outline: 2px solid var(--accent-subtle);
outline-offset: 1px;
}
.export-panel select {
width: 100%;
margin-bottom: var(--sp-3);
flex: none;
}
.export-clip-info {
font-size: var(--text-xs);
color: var(--text-secondary);
margin-bottom: var(--sp-2);
font-family: var(--font-mono);
}
.export-panel-actions {
display: flex;
gap: var(--sp-2);
}
.export-panel-actions .btn { flex: 1; }
/* ================================================================
ADVANCED SECTION
================================================================ */
.advanced-section {
background: var(--bg-panel);
border-bottom: 1px solid var(--border);
padding: var(--sp-2) var(--sp-3);
flex-shrink: 0;
}
.advanced-section-title {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 600 10px/1 var(--font);
text-transform: uppercase;
letter-spacing: 0.1em;
color: var(--text-tertiary);
margin-bottom: var(--sp-2);
}
.advanced-row {
display: flex;
gap: var(--sp-2);
}
.advanced-row .btn { flex: 1; }
/* ================================================================
ACTION BAR
================================================================ */
.action-bar {
background: var(--bg-deep);
border-top: 1px solid var(--border);
padding: var(--sp-2) var(--sp-3);
flex-shrink: 0;
display: flex;
flex-direction: column;
gap: var(--sp-2);
}
.action-row {
display: flex;
gap: var(--sp-2);
}
.action-row .btn { flex: 1; }
/* ================================================================
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
SLIDE PANEL (mirrors wd-slide-panel)
================================================================ */
.slide-overlay {
position: fixed;
inset: 0;
background: var(--overlay);
z-index: var(--z-overlay);
opacity: 0;
pointer-events: none;
transition: opacity var(--dur-slide) var(--ease-out-quart);
}
.slide-overlay.open { opacity: 1; pointer-events: all; }
.slide-panel {
position: fixed;
top: 0; right: 0; bottom: 0;
width: 460px;
background: var(--bg-panel);
border-left: 1px solid var(--border);
z-index: var(--z-panel);
display: flex;
flex-direction: column;
overflow: hidden;
transform: translateX(100%);
transition: transform var(--dur-slide) var(--ease-out-expo);
}
.slide-panel.open { transform: translateX(0); }
.slide-panel-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 0 18px;
height: 52px;
border-bottom: 1px solid var(--border-faint);
flex-shrink: 0;
}
.slide-panel-title {
font: 600 14px/1 var(--font);
letter-spacing: -0.005em;
color: var(--text-primary);
}
.slide-panel-body {
flex: 1;
min-height: 0;
overflow-y: auto;
padding: 18px;
display: flex;
flex-direction: column;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
gap: 16px;
}
.slide-panel-footer {
padding: 14px 18px;
background: var(--bg-deep);
border-top: 1px solid var(--border-faint);
display: flex;
justify-content: flex-end;
gap: var(--sp-2);
flex-shrink: 0;
}
/* ================================================================
PRESET CARDS (for FCP Conform)
================================================================ */
.preset-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: var(--sp-2);
}
.preset-card {
padding: var(--sp-2) var(--sp-3);
background: var(--bg-surface);
border: 1px solid var(--border);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border-radius: 6px;
cursor: pointer;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
transition: border-color var(--dur-fast) var(--ease-out-quart),
background var(--dur-fast) var(--ease-out-quart);
}
.preset-card:hover {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border-color: var(--border-strong);
background: var(--bg-raised);
}
.preset-card.selected {
border-color: var(--accent);
background: var(--accent-subtle);
}
.preset-card-title {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 600 12px/1 var(--font);
color: var(--text-primary);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
margin-bottom: 4px;
}
.preset-card-desc {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 400 10px/1.4 var(--font-mono);
color: var(--text-tertiary);
}
/* ================================================================
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
CLIP LIST (for Hi-Res Relink mirrors wd-list-row)
================================================================ */
.clip-list-container {
flex: 1;
min-height: 0;
overflow-y: auto;
border: 1px solid var(--border);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border-radius: 6px;
background: var(--bg-base);
}
.clip-list {
display: flex;
flex-direction: column;
}
.clip-list-item {
display: flex;
align-items: center;
gap: var(--sp-2);
padding: var(--sp-2) var(--sp-3);
border-bottom: 1px solid var(--border-faint);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
transition: background-color var(--dur-fast) var(--ease-out-quart);
}
.clip-list-item:last-child { border-bottom: none; }
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
.clip-list-item:hover { background: var(--bg-hover); }
.clip-list-item-checkbox {
width: 14px;
height: 14px;
accent-color: var(--accent);
flex-shrink: 0;
cursor: pointer;
}
.clip-list-item-info {
flex: 1;
min-width: 0;
}
.clip-list-item-name {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 500 12px/1 var(--font);
color: var(--text-primary);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.clip-list-item-meta {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 400 11px/1.3 var(--font-mono);
color: var(--text-tertiary);
}
.clip-list-item-status {
flex-shrink: 0;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 600 10px/1 var(--font);
letter-spacing: 0.06em;
text-transform: uppercase;
}
.clip-list-item-status.matched {
color: var(--signal-good);
}
.clip-list-item-status.unmatched {
color: var(--text-disabled);
}
/* ================================================================
RELINK SUMMARY
================================================================ */
.relink-summary {
display: flex;
flex-direction: column;
align-items: center;
gap: var(--sp-2);
padding: var(--sp-4);
text-align: center;
}
.relink-summary.hidden { display: none; }
.relink-summary-icon { color: var(--signal-good); }
.relink-summary-text {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 500 13px/1 var(--font);
color: var(--text-primary);
}
.relink-summary-detail {
font-size: var(--text-xs);
color: var(--text-secondary);
font-family: var(--font-mono);
}
/* ================================================================
MESSAGE BANNERS
================================================================ */
.error-message {
background: var(--signal-bad-bg);
border: 1px solid rgba(245, 60, 65, 0.25);
color: var(--signal-bad);
padding: var(--sp-2) var(--sp-3);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border-radius: 4px;
font-size: var(--text-xs);
line-height: 1.5;
margin-bottom: var(--sp-2);
}
.success-message {
background: var(--signal-good-bg);
border: 1px solid rgba(53, 187, 88, 0.25);
color: var(--signal-good);
padding: var(--sp-2) var(--sp-3);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border-radius: 4px;
font-size: var(--text-xs);
line-height: 1.5;
margin-bottom: var(--sp-2);
}
.info-message {
background: var(--accent-subtle);
border: 1px solid var(--accent-border);
color: var(--accent);
padding: var(--sp-2) var(--sp-3);
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
border-radius: 4px;
font-size: var(--text-xs);
line-height: 1.5;
margin-bottom: var(--sp-2);
}
/* ================================================================
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
FORM GROUP (mirrors wd-form-group + wd-label)
================================================================ */
.form-group {
display: flex;
flex-direction: column;
gap: var(--sp-1);
}
.form-label {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 600 11px/1 var(--font);
letter-spacing: 0.08em;
text-transform: uppercase;
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
color: var(--text-tertiary);
margin-bottom: 4px;
}
.form-hint {
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
font: 400 11px/1.5 var(--font);
color: var(--text-tertiary);
}
/* ================================================================
UTILITY
================================================================ */
.hidden { display: none !important; }
.loading { opacity: 0.6; pointer-events: none; }
.truncate {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.truncate-lines-2 {
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.spinner {
display: inline-block;
width: 12px;
height: 12px;
border: 2px solid var(--border);
border-top-color: var(--accent);
border-radius: 50%;
animation: spin 0.8s linear infinite;
}
@keyframes spin {
to { transform: rotate(360deg); }
}
/* ================================================================
RESPONSIVE
================================================================ */
@media (max-width: 500px) {
.asset-grid {
grid-template-columns: repeat(auto-fill, minmax(90px, 1fr));
gap: var(--sp-2);
padding: var(--sp-2);
}
.details-panel {
width: 140px;
padding: var(--sp-2);
}
.slide-panel { width: 100%; }
}
fix(premiere-plugin): align panel CSS with web-ui design system Component-level alignment pass against services/web-ui/src/css/components/: - btn-primary text: #070403 (near-black) → #f5f7fb (near-white, matches web-ui) - btn-danger text: #fcf7f7 → #fbf6f6 (precise oklch(98% 0.005 25) conversion) - btn-secondary border: border-strong → border; hover: bg-hover + border-strong - button.secondary legacy: same border/hover fix - asset-card bg: bg-surface → bg-panel (matches wd-card-asset) - asset-card hover: remove accent glow + transform + shadow; border → var(--border) only - asset-card hover brightness: moved to img child only (matches web-ui pattern) - asset-card selected: remove box-shadow ring; bg → bg-raised - asset-card border-radius: explicit 6px (was var(--r-md)) - asset-card transition: simplified to border-color with design-system easing - asset-filename: font 11px → font: 500 12px/1.3 (web-ui uses 13px; 12px for panel density) - asset-meta: 10px text-secondary → font: 400 11px/1.3 font-mono + text-tertiary + tabular-nums - asset-status-badge: border-radius 100px → 3px (matches wd-badge) - chip: pad/gap aligned with wd-badge; font: 600 10px/1; added chip--idle + chip--info variants - form-label: 10px text-secondary → font: 600 11px/1 + text-tertiary + margin-bottom: 4px - details-header-label: aligned to font shorthand + 0.08em spacing - details-label: aligned to font: 600 10px/1 - export-panel-title: font shorthand - Add @keyframes wd-shimmer + .skeleton utility - Add @media (prefers-reduced-motion) block - Update file header comment
2026-05-27 12:00:00 -04:00
/* ================================================================
SKELETON SHIMMER
================================================================ */
@keyframes wd-shimmer {
0% { background-position: -200% 0; }
100% { background-position: 200% 0; }
}
.skeleton {
background: linear-gradient(
90deg,
var(--bg-surface) 0%,
var(--bg-hover) 50%,
var(--bg-surface) 100%
);
background-size: 200% 100%;
animation: wd-shimmer 1.8s ease-in-out infinite;
border-radius: 3px;
}
/* ================================================================
REDUCED MOTION
================================================================ */
@media (prefers-reduced-motion: reduce) {
.skeleton,
.status-indicator.connecting {
animation: none;
}
*, *::before, *::after {
transition-duration: 0ms !important;
animation-duration: 0ms !important;
}
}