/* Vidu workspace port: palette and proportions from 00-tokens, workspace-header, 04-pipeline-board. */
:root{font-family:"Geist","Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#202620;background:#f3f5ef;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-height:100dvh}body:not(.platform-shell){display:grid;place-items:center}body:not(.platform-shell)>main{width:min(420px,calc(100% - 48px));padding:40px 0}h1,h2,h3,p{margin-top:0}h1{font-size:32px;letter-spacing:-1px;line-height:1.15}p{line-height:1.6}a{color:inherit;text-underline-offset:4px}button,input,textarea,select{font:inherit}button{cursor:pointer}button,a,summary,input,textarea{touch-action:manipulation}:focus-visible{outline:2px solid #60a5fa;outline-offset:4px}label{display:block;font-size:13px}input,textarea{width:100%;padding:12px;border:1px solid #cbd3c5;border-radius:8px;background:white;color:inherit}button{border:0;border-radius:8px;padding:12px 18px;background:#253c2b;color:white}body:not(.platform-shell) label{margin:20px 0}body:not(.platform-shell) input{margin-top:8px}.label,.eyebrow{font-size:10px;letter-spacing:.09em;text-transform:uppercase}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.platform-shell{--page:#050507;--surface:rgba(18,18,24,.82);--elevated:#1c1c24;--card:rgba(24,24,28,.86);--text:rgba(255,255,255,.94);--secondary:rgba(255,255,255,.62);--muted:#a0a0ab;--border:rgba(255,255,255,.1);--input:rgba(255,255,255,.055);background:var(--page);color:var(--text);font-size:13px;color-scheme:dark}
.platform-shell p{color:var(--secondary)}.platform-shell .eyebrow,.platform-shell .label{color:var(--muted)}.platform-shell button{background:#e9e9ed;color:#17171c;font-size:12px;font-weight:600}.platform-shell input,.platform-shell textarea{background:var(--input);border-color:var(--border);color:var(--text)}.platform-shell [role=alert]{color:#fca5a5}.platform-shell [role=status]{color:#86efac}.skip-link{position:absolute;left:12px;top:-100px;padding:12px;background:var(--elevated);z-index:20}.skip-link:focus{top:8px}
.workspace-header{position:relative;z-index:10;padding:10px 26px 0;border-bottom:1px solid var(--border);background:var(--page)}.header-primary{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:20px;align-items:center;min-height:54px}.header-identity,.header-actions{display:flex;align-items:center;gap:12px;min-width:0}.header-actions{justify-content:flex-end}.brand{display:flex;flex-shrink:0;align-items:center;padding:6px}.brand img{filter:invert(1)}.context-menu{position:relative;min-width:0}.context-menu summary{list-style:none;cursor:pointer;display:flex;gap:8px;align-items:center;border:1px solid transparent;border-radius:8px;padding:8px}.context-menu summary::-webkit-details-marker{display:none}.context-menu summary:hover,.context-menu[open]>summary{background:var(--input);border-color:var(--border)}.organization-menu summary,.workspace-menu summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px}.context-menu .eyebrow{grid-column:1 / -1;font-size:8px}.context-menu summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600}.organization-menu{max-width:180px}.workspace-menu{max-width:220px}.menu-panel{position:absolute;top:calc(100% + 8px);left:0;width:280px;max-width:calc(100vw - 32px);max-height:70dvh;overflow-y:auto;padding:12px;background:var(--elevated);border:1px solid var(--border);border-radius:14px;box-shadow:0 20px 60px #0008;z-index:12}.menu-panel a{display:block;padding:10px;border-radius:8px;text-decoration:none;overflow-wrap:anywhere}.menu-panel a:hover,.menu-panel a[aria-current]{background:#ffffff12}.menu-label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin:4px 10px 10px}.menu-note{font-size:12px;padding:0 10px;margin-bottom:14px}.header-actions .menu-panel{left:auto;right:0}.applications-menu .menu-panel{width:360px}.pending-apps{display:grid;grid-template-columns:1fr 1fr;gap:6px}.pending-apps>span{padding:12px;border:1px solid var(--border);border-radius:9px;font-size:12px}.pending-apps small{display:block;margin-top:5px;font-size:10px;color:var(--muted)}.profile-name{display:block;margin:10px;overflow-wrap:anywhere}.profile-menu form{padding:4px 10px}.avatar{display:grid;place-items:center;width:30px;height:30px;background:#34343e;border:1px solid #ffffff20;border-radius:50%;font-weight:600}.action-label{font-size:11px}.stage-badge{font-size:9px;letter-spacing:.03em;border:1px solid #f59e0b35;color:#e5c177;background:#f59e0b0c;border-radius:20px;padding:5px 9px;white-space:nowrap}.view-switch{display:flex;gap:3px;background:var(--input);padding:4px;border:1px solid var(--border);border-radius:10px}.view-switch a{padding:8px 16px;font-size:12px;white-space:nowrap;text-decoration:none;color:var(--secondary);border-radius:7px}.view-switch a[aria-current]{color:#111118;background:#e9e9ed;box-shadow:0 1px 5px #0002}.view-switch a:hover:not([aria-current]){background:#ffffff0b;color:var(--text)}.header-context{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:50px;padding:4px 6px 10px}.breadcrumb{display:flex;gap:10px;color:var(--muted);font-size:11px;min-width:0}.breadcrumb span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--secondary)}.search{display:flex;gap:6px;max-width:360px;width:100%;min-width:0}.search input{min-width:0;height:34px;font-size:12px;padding:8px 12px}.search button{padding:7px 11px;font-size:11px;background:var(--input);color:var(--secondary);border:1px solid var(--border)}
.mobile-stage{display:none}.app-content{min-width:0}.overview-page,.workspace-main{width:100%;padding:28px 32px 36px;min-width:0}.overview-page{max-width:1700px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.page-heading .eyebrow{margin-bottom:8px}.page-heading h1{font-size:27px;margin-bottom:8px}.page-heading p:last-child{font-size:12px;margin:0}.subtle-label{color:var(--muted);font-size:11px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 14px}.section-heading h2{font-size:14px;font-weight:600;margin:0}.section-heading>span{color:var(--muted);font-size:11px}.workspace-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.workspace-tiles>a{display:grid;grid-template-columns:28px 1fr 16px;align-items:center;gap:8px 10px;padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--surface);text-decoration:none;min-width:0;transition:background 140ms,border-color 140ms}.workspace-tiles>a:hover{background:var(--elevated);border-color:#ffffff30}.workspace-tiles strong{font-size:13px;overflow-wrap:anywhere}.workspace-tiles small{grid-column:2 / -1;font-size:10px;color:var(--muted)}.workspace-symbol{font-size:22px;color:#c1c7d1}.tile-arrow{color:var(--muted)}.project-directory{margin-top:32px}.record-table{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--surface)}.record-table-heading,.record-row{display:grid;grid-template-columns:minmax(0,1fr) 100px minmax(140px,230px) 24px;align-items:center;gap:16px;padding:14px 20px}.record-table-heading{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;background:#ffffff02}.record-row{text-decoration:none;border-top:1px solid var(--border);min-height:58px}.record-row:hover{background:#ffffff04}.record-row strong{font-size:12px;font-weight:550;overflow-wrap:anywhere}.record-workspace{font-size:11px;color:var(--secondary);overflow-wrap:anywhere}.type-badge{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#b8bac4;border:1px solid var(--border);border-radius:5px;padding:4px 6px;display:inline-block;white-space:nowrap}.row-arrow{color:var(--muted);margin-left:auto}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:20px;margin:18px 0;font-size:12px}.pagination>span{color:var(--muted)}.migration-notice{padding:13px 16px;border:1px solid var(--border);border-radius:10px;font-size:11px;margin:24px 0 0;background:#ffffff02}.search-status{font-size:12px}.search-status a{margin-left:14px}.compact a{padding:7px 14px}
.empty-state{padding:28px 18px;color:var(--muted);font-size:12px;line-height:1.6}.empty-state h3{color:var(--text)}.workspace-list{display:grid;gap:18px}.workspace-list>section{border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden}.workspace-list .section-heading{margin:0;padding:16px 20px;background:#ffffff03}.workspace-list-row{display:flex;align-items:center;gap:20px;padding:16px 20px;text-decoration:none;border-top:1px solid var(--border)}.workspace-list-row strong{flex:1;font-weight:550;overflow-wrap:anywhere}.workspace-list-row>span{font-size:11px;color:var(--muted)}.workspace-list-row:hover{background:#ffffff05}
.detail-page{width:min(1120px,100%);padding:30px 24px 60px;margin:auto}.detail-page>a{font-size:12px;color:var(--secondary)}.detail-page>.label{margin-top:28px}.detail-page h1{overflow-wrap:anywhere;font-size:28px}.detail-tabs{display:flex;gap:24px;flex-wrap:wrap;margin:24px 0;border-bottom:1px solid var(--border);padding-bottom:14px;font-size:12px}.detail-tabs a{text-decoration:none;color:var(--secondary)}.detail-tabs a:hover{color:white}.detail-section{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:26px;margin:20px 0;scroll-margin-top:20px}.detail-section h2{font-size:17px;margin-bottom:22px}.detail-section h3{font-size:14px}.long-text{white-space:pre-wrap;line-height:1.7;overflow-wrap:anywhere;font-size:14px;color:var(--secondary)}.detail-editor{display:grid;gap:12px}.detail-editor p{font-size:12px}.detail-editor textarea{max-width:100%;resize:vertical;line-height:1.65;min-height:100px;font-size:13px}.detail-editor button{justify-self:start;margin-top:4px}.task-list{list-style:none;padding:0}.task-list li{padding:12px 0;border-bottom:1px solid var(--border);line-height:1.6}.task-list span{margin-right:10px}.task-list li form{display:inline-block;margin-left:12px}.task-list button{padding:6px 10px;background:var(--input);color:var(--text);border:1px solid var(--border)}.detail-section article+article{margin-top:24px;padding-top:16px;border-top:1px solid var(--border)}
@media(min-width:1700px){.header-identity{gap:20px}.workspace-header{padding-inline:32px}}@media(max-width:1100px){.header-primary{grid-template-columns:minmax(0,1fr) auto;gap:12px}.header-identity{grid-column:1}.header-primary>.view-switch{grid-column:1 / -1;grid-row:2;justify-self:center;margin:8px 0}.header-actions{grid-column:2;grid-row:1}.stage-badge{display:none}.header-context{padding-top:8px}.workspace-menu{max-width:190px}.overview-page,.workspace-main{padding:22px}.action-label{display:none}}
@media(max-width:600px){.workspace-header{padding:8px 12px 0}.header-primary{gap:6px}.header-identity{gap:2px}.brand{padding:4px}.brand img{width:22px;height:22px}.organization-menu{max-width:95px}.workspace-menu{max-width:140px}.context-menu summary{padding:6px}.context-menu summary strong{font-size:11px}.context-menu .eyebrow{font-size:7px}.header-actions{gap:2px}.applications-menu summary svg{width:17px}.avatar{width:26px;height:26px;font-size:11px}.header-context{display:block;padding:6px 0 12px}.breadcrumb{display:none}.mobile-stage{display:block;font-size:9px;color:#e5c177;text-align:right;margin-top:8px}.search{max-width:none}.workspace-menu .menu-panel{left:-115px}.applications-menu .menu-panel{right:-34px}.header-primary>.view-switch{margin:6px 0;width:100%;justify-content:center}.view-switch a{text-align:center;flex:1}.overview-page,.workspace-main{padding:20px 14px}.page-heading{gap:12px;margin-bottom:20px;align-items:flex-start}.page-heading h1{font-size:23px}.page-heading .compact{flex-shrink:0}.compact a{padding:7px 10px}.subtle-label{display:none}.section-heading{flex-wrap:wrap;gap:6px}.workspace-tiles{grid-template-columns:1fr 1fr;gap:8px}.workspace-tiles>a{padding:12px;grid-template-columns:1fr 12px;gap:10px}.workspace-symbol{display:none}.workspace-tiles strong{font-size:11px}.workspace-tiles small{grid-column:1/-1;font-size:9px}.record-table-heading{display:none}.record-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:14px}.record-row>.row-arrow{display:none}.record-workspace{grid-column:1/-1;font-size:10px}.record-row strong{font-size:12px}.workspace-list-row{flex-wrap:wrap;padding:14px;gap:10px}.workspace-list-row strong{flex-basis:100%}.detail-page{padding:22px 14px 40px}.detail-page h1{font-size:24px}.detail-section{padding:18px}.detail-tabs{gap:15px}.pagination{gap:12px;font-size:11px}.migration-notice{font-size:10px}.task-list li form{margin:8px 0 0;display:block}}
@media(prefers-reduced-motion:reduce){*{transition:none;scroll-behavior:auto}}

/* Host boundary only. Original card/column appearance is owned by resources/css/vidu. */
#vidu-pipeline-dashboard.legacy-board-port{padding-left:0;padding-right:0;--vidu-toolbar-stack-height:0px}
.legacy-board-port a.vidu-board-card{text-decoration:none}

/* The original fixed viewport belongs to this embedded workspace, not the outer Laravel header. */
.legacy-board-host{contain:layout paint;position:relative;height:100svh;min-width:0;overflow:auto}
/* Integration exception: the legacy mobile shell hides horizontal overflow with !important.
   This isolated port has no legacy gesture runtime; preserve native touch/keyboard access. */
@media(max-width:768px){#vidu-pipeline-dashboard.legacy-board-port .vidu-pipeline-board{overflow-x:auto!important;overscroll-behavior-y:auto}}
