
.studio-v2-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:0 0 24px; }
.studio-v2-heading h3 { font:600 32px/1.15 Rajdhani,sans-serif; margin:0 0 7px; }
.studio-v2-heading p,.studio-help { color:var(--quiet); font:13px/1.6 Arial,sans-serif; margin:0; }
.studio-v2-layout { display:grid; grid-template-columns:205px minmax(0,1fr); gap:20px; align-items:start; }
.studio-portfolio { border:1px solid var(--border); padding:16px 12px; background:var(--surface); }
.studio-portfolio h4 { display:flex; justify-content:space-between; font:600 18px Rajdhani,sans-serif; margin:0 0 18px; }
.studio-portfolio h4>span { color:var(--quiet); font-size:13px; }
.studio-portfolio>button { display:flex; width:100%; align-items:center; gap:12px; text-align:left; padding:15px 11px; border:1px solid var(--border); border-left:3px solid transparent; background:transparent; color:var(--copy); margin:8px 0; cursor:pointer; }
.studio-portfolio>button.active { border-left-color:var(--amber); background:var(--surface-alt); }
.studio-portfolio strong { display:block; font:600 18px Rajdhani,sans-serif; overflow-wrap:anywhere; }
.studio-portfolio small,.studio-portfolio em { display:block; font:11px/1.5 Arial,sans-serif; color:var(--quiet); margin-top:5px; }
.studio-portfolio em { color:var(--cyan); font-style:normal; }
.studio-portfolio>p { color:var(--quiet); font:11px/1.6 Arial,sans-serif; margin:22px 4px 5px; }
.studio-product-symbol { color:var(--amber); font-size:25px; }
.studio-selected { min-width:0; }
.studio-selected>header { display:flex; align-items:center; justify-content:space-between; padding:0 0 18px; gap:16px; }
.studio-selected>header h3 { font:600 28px Rajdhani,sans-serif; margin:0; overflow-wrap:anywhere; }
.studio-status { color:var(--good); font:13px Rajdhani,sans-serif; }
.studio-view-tabs { display:flex; gap:3px; border-bottom:1px solid var(--border); margin-bottom:22px; }
.studio-view-tabs button { background:transparent; color:var(--quiet); border:0; border-bottom:2px solid transparent; padding:12px 16px; font:600 15px Rajdhani,sans-serif; cursor:pointer; }
.studio-view-tabs button.active { color:var(--amber); border-bottom-color:var(--amber); }
.studio-blueprint { display:grid; grid-template-columns:minmax(0,1fr) 245px; gap:20px; align-items:start; }
.blueprint-controls { min-width:0; }
.blueprint-controls fieldset,.studio-overview fieldset { border:0; padding:0; margin:0; min-width:0; }
.blueprint-controls h4,.blueprint-impact h4,.studio-overview legend { margin:0 0 13px; font:600 19px Rajdhani,sans-serif; }
.blueprint-types { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; margin-bottom:24px; }
.blueprint-types button { background:var(--surface); color:var(--copy); border:1px solid var(--border); padding:12px 8px; min-height:54px; font:600 15px/1.3 Rajdhani,sans-serif; cursor:pointer; }
.blueprint-types button.chosen { border-color:var(--amber); color:var(--amber); background:var(--surface-alt); }
.blueprint-tech { display:block; margin-bottom:24px; }
.blueprint-tech>span { display:block; font:600 16px Rajdhani,sans-serif; margin-bottom:10px; }
.blueprint-tech select { width:100%; min-width:0; background:var(--surface); border:1px solid var(--border); padding:12px; color:var(--copy); font:15px Rajdhani,sans-serif; }
.blueprint-features { display:grid; gap:8px; }
.blueprint-features label { display:grid; grid-template-columns:20px 1fr; align-items:center; gap:6px 10px; padding:13px; border:1px solid var(--border); background:var(--surface); cursor:pointer; }
.blueprint-features input { accent-color:var(--amber); width:17px; height:17px; }
.blueprint-features span { font:600 17px Rajdhani,sans-serif; }
.blueprint-features small { grid-column:2; font:11px Arial,sans-serif; color:var(--quiet); }
.blueprint-inputs { margin-top:24px; border-top:1px solid var(--border); padding-top:22px; }
.blueprint-inputs>p { color:var(--quiet); font:13px/1.6 Arial,sans-serif; }
.blueprint-inputs>p>span { color:var(--cyan); padding-right:10px; }
.blueprint-impact { border:1px solid var(--border); border-top:2px solid var(--amber); background:var(--surface-alt); padding:18px; }
.blueprint-impact .data-row { font-size:13px; gap:12px; }
.blueprint-impact .data-row strong { font-size:15px; }
.studio-projection { padding:20px 0; border-bottom:1px solid var(--border); margin-bottom:8px; }
.studio-projection small { display:block; color:var(--quiet); font:11px/1.5 Rajdhani,sans-serif; }
.studio-projection strong { display:block; font:600 31px Rajdhani,sans-serif; color:var(--good); margin-top:8px; }
.blueprint-impact h4:not(:first-child) { margin-top:24px; }
.studio-role { display:flex; align-items:center; justify-content:space-between; gap:12px; border-top:1px solid var(--border); padding:12px 0; font:14px Rajdhani,sans-serif; }
.studio-role strong { color:var(--good); white-space:nowrap; }
.studio-role.short strong { color:var(--amber); }
.blueprint-impact .studio-help { font-size:11px; margin:14px 0; }
.blueprint-impact .action { width:100%; font-size:14px; }
.studio-overview-stats { display:grid; grid-template-columns:1fr 1fr; gap:0 24px; margin:0 0 18px; }
.studio-overview fieldset { margin-top:26px; }
.studio-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; margin-bottom:18px; }
.studio-lifecycle { display:flex; flex-wrap:wrap; gap:20px; margin-top:24px; }
.studio-lifecycle details { color:var(--quiet); font:13px/1.6 Arial,sans-serif; }
.studio-performance .terminal-chart { margin-bottom:24px; }
.studio-create { padding:20px; border:1px solid var(--border); margin-bottom:20px; background:var(--surface); }
.studio-create p { color:var(--quiet); font:13px/1.6 Arial,sans-serif; }
.office-task-list { margin-bottom:28px; }
.office-task { border:1px solid var(--border); border-left:2px solid var(--cyan); padding:18px; margin-top:12px; background:var(--surface); }
.office-task.resolved { border-left-color:var(--good); }
.office-task header { display:flex; gap:12px; align-items:center; }
.office-task header>span { color:var(--cyan); font:13px Rajdhani,sans-serif; }
.office-task h5 { font:600 19px Rajdhani,sans-serif; margin:0; }
.office-task>p { color:var(--quiet); font:13px/1.6 Arial,sans-serif; }
.office-task-options { display:grid; gap:7px; }
.office-task-options button { display:grid; grid-template-columns:1fr auto; text-align:left; gap:6px 12px; padding:13px; color:var(--copy); background:var(--surface-alt); border:1px solid var(--border); cursor:pointer; }
.office-task-options button:hover { border-color:var(--amber); }
.office-task-options strong { font:600 16px Rajdhani,sans-serif; }
.office-task-options span { grid-row:2; font:12px/1.5 Arial,sans-serif; color:var(--quiet); }
.office-task-options small { grid-column:2; grid-row:1/3; align-self:center; font:12px Rajdhani,sans-serif; color:var(--amber); }
.office-task-done strong,.office-task-done span { display:block; }
.office-task-done strong { color:var(--good); font:600 16px Rajdhani,sans-serif; }
.office-task-done span { color:var(--quiet); font:12px/1.5 Arial,sans-serif; margin-top:6px; }
.office-task-history { display:grid; gap:8px; }
.office-task-history p { border-left:2px solid var(--border); padding-left:12px; }
.office-task-history strong,.office-task-history span,.office-task-history small { display:block; font:12px/1.6 Arial,sans-serif; }
.office-task-history strong { font-weight:600; color:var(--copy); }
.office-task-history span,.office-task-history small { color:var(--quiet); }
.world-layout { display:grid; grid-template-columns:285px minmax(0,1fr); gap:25px; }
.world-directory { min-width:0; }
.world-directory .studio-view-tabs button { padding:10px; }
.world-person { display:flex; align-items:center; gap:12px; width:100%; text-align:left; background:var(--surface); border:1px solid var(--border); color:var(--copy); padding:12px; margin:7px 0; cursor:pointer; }
.world-person.active { border-left:3px solid var(--amber); background:var(--surface-alt); }
.world-person strong { display:block; font:600 17px Rajdhani,sans-serif; }
.world-person small { display:block; color:var(--quiet); font:11px/1.5 Arial,sans-serif; margin-top:4px; }
.world-initial { display:grid; place-items:center; flex-shrink:0; width:38px; height:44px; background:var(--surface-alt); color:var(--amber); font:600 23px Rajdhani,sans-serif; }
.world-initial.large { width:60px; height:70px; font-size:36px; }
.world-conversation { min-width:0; }
.world-conversation>header { display:flex; align-items:center; gap:18px; border-bottom:1px solid var(--border); padding-bottom:24px; margin-bottom:24px; }
.world-conversation h3 { font:600 30px Rajdhani,sans-serif; margin:0 0 7px; }
.world-conversation header p,.world-conversation header small { color:var(--quiet); font:13px/1.6 Arial,sans-serif; margin:0; }
.world-conversation h4 { font:600 20px Rajdhani,sans-serif; margin:24px 0 10px; }
.world-topics { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:18px 0 24px; }
.world-topics button { text-align:left; background:var(--surface); border:1px solid var(--border); padding:16px; color:var(--copy); cursor:pointer; }
.world-topics button:hover { border-color:var(--amber); }
.world-topics strong { display:block; font:600 18px Rajdhani,sans-serif; }
.world-topics small { display:block; color:var(--quiet); font:12px/1.6 Arial,sans-serif; margin-top:6px; }
.world-transcript article { border-left:2px solid var(--cyan); background:var(--surface-alt); padding:16px 20px; margin:12px 0; }
.world-transcript article small { color:var(--cyan); font:12px Rajdhani,sans-serif; }
.world-transcript article p { color:var(--copy); font:14px/1.7 Arial,sans-serif; margin:8px 0 0; }
.world-shares { padding-top:22px; border-top:1px solid var(--border); margin-top:25px; }
.world-shares summary { cursor:pointer; font:600 17px Rajdhani,sans-serif; margin-bottom:15px; }
.specialist-recruitment { margin-bottom:25px; }
.specialist-recruitment>h3 { font:600 24px Rajdhani,sans-serif; }
.specialist-recruitment>div { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.specialist-recruitment article { border:1px solid var(--border); padding:18px; background:var(--surface); }
.specialist-recruitment h4 { font:600 21px Rajdhani,sans-serif; margin:0; }
.specialist-recruitment p,.specialist-recruitment small { display:block; color:var(--quiet); font:12px/1.6 Arial,sans-serif; }
.specialist-recruitment strong { font:600 19px Rajdhani,sans-serif; color:var(--copy); }
.specialist-recruitment .action { width:100%; margin-top:17px; }
.specialty-editor { padding:15px 20px; background:var(--surface-alt); margin-bottom:20px; }
.specialty-editor summary { cursor:pointer; font:600 17px Rajdhani,sans-serif; }
.specialty-editor p { color:var(--quiet); font:12px/1.6 Arial,sans-serif; }
.specialty-editor .field { margin-top:15px; }
.studio-v2 button:focus-visible,.world-page button:focus-visible,.office-task button:focus-visible { outline:2px solid var(--amber); outline-offset:3px; }
@media(max-width:1150px) { .studio-v2-layout { grid-template-columns:170px minmax(0,1fr); gap:16px; } .studio-blueprint { grid-template-columns:1fr; } .blueprint-impact { display:block; } .world-layout { grid-template-columns:240px minmax(0,1fr); gap:20px; } .specialist-recruitment>div { grid-template-columns:1fr; } }
@media(max-width:780px) { .studio-v2-layout,.world-layout { grid-template-columns:1fr; } .studio-v2-heading { align-items:flex-start; flex-direction:column; } .studio-portfolio { display:flex; gap:8px; overflow-x:auto; } .studio-portfolio h4,.studio-portfolio>p { display:none; } .studio-portfolio>button { min-width:180px; margin:0; } .studio-form-grid,.studio-overview-stats,.world-topics { grid-template-columns:1fr; } .world-directory { max-height:320px; overflow-y:auto; border-bottom:1px solid var(--border); } .office-task { padding:14px; } .office-task-options button { grid-template-columns:1fr; } .office-task-options small { grid-column:1; grid-row:3; } .blueprint-types { gap:6px; } .blueprint-types button { font-size:14px; } }

.office-policy-settings { border-bottom:1px solid var(--border); padding-bottom:16px; margin-bottom:20px; }
.office-policy-settings>summary { cursor:pointer; font:600 19px Rajdhani,sans-serif; color:var(--copy); }
.office-policy-settings>section { margin-top:22px; }
.office-policy-settings .office-policies,.office-policy-settings .office-assignees { grid-template-columns:1fr; }
.office-policy-settings .office-policies button { min-height:0; }
.office-policy-settings h4 { margin:0 0 12px; }
.office-policy-settings h4>span { margin-left:10px; }

/* Align labels with controls, keeping the full blueprint readable as a desk. */
.studio-status.building { color:var(--amber); }
.blueprint-impact .data-row strong { white-space:nowrap; font-size:14px; }
.blueprint-impact .data-row { letter-spacing:0; }
.blueprint-controls fieldset { display:grid; grid-template-columns:140px minmax(0,1fr); gap:18px 16px; }
.blueprint-controls fieldset>h4:first-of-type,.blueprint-types,.blueprint-tech,.blueprint-inputs { grid-column:1/-1; }
.blueprint-controls h4 { margin:0; }
.blueprint-types { margin-bottom:0; }
.blueprint-tech { display:grid; grid-template-columns:140px minmax(0,1fr); gap:16px; align-items:center; margin-bottom:0; }
.blueprint-tech>span { margin:0; }
.blueprint-features label { min-height:44px; padding:10px 12px; }
.blueprint-feature-group .studio-help { font-size:11px; margin-top:10px; }
.blueprint-inputs { display:grid; grid-template-columns:140px minmax(0,1fr); gap:8px 16px; margin-top:0; padding-top:18px; }
.blueprint-inputs h4 { grid-row:1/3; }
.blueprint-inputs>p { margin:0; }
.blueprint-inputs .studio-help { grid-column:1/-1; font-size:11px; }
.world-directory { max-height:calc(100vh - 270px); overflow-y:auto; padding-right:6px; }
@media(max-width:1350px) { .blueprint-controls fieldset { grid-template-columns:1fr; gap:14px; } .blueprint-tech { display:block; } .blueprint-tech>span { margin-bottom:8px; } .blueprint-inputs { grid-template-columns:1fr; } .blueprint-inputs h4 { grid-row:auto; } }
@media(max-width:780px) { .world-directory { max-height:320px; } }

@media(min-width:1360px) { .studio-selected>header { justify-content:flex-start; } .blueprint-impact { margin-top:-121px; } }
