.ops-studio { --ops-ink:#263a55;--ops-muted:#63758e;--ops-line:#dce4ef; color:var(--ops-ink);font-size:16px;min-width:0; }
.ops-studio * { box-sizing:border-box; }
.ops-studio button,.ops-studio input,.ops-studio select,.ops-studio textarea { font-family:inherit; }
.ops-header { display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px; }
.ops-kicker { display:block;color:#687fa3;font-size:13px;margin-bottom:7px; }
.ops-header h2 { margin:0;font-size:clamp(22px,2vw,28px);line-height:1.45;letter-spacing:normal;font-weight:700; }
.ops-export { display:flex;gap:6px;flex:none; }
.ops-export button { min-height:34px;padding:6px 9px;border:1px solid #dbe4f0;border-radius:6px;background:#fff;color:#5c7396;font-size:14px;cursor:pointer; }
.ops-tabs { display:flex;gap:5px;padding:5px;border:1px solid #e1e7f0;border-radius:10px;background:#f5f7fb;margin-bottom:27px; }
.ops-tabs>button { flex:1;min-width:0;min-height:43px;border:0;border-radius:7px;background:transparent;font-size:15px;color:#5c7293;cursor:pointer; }
.ops-tabs>button[aria-selected=true] { background:#fff;color:#2c589f;box-shadow:0 1px 5px #29416714;font-weight:650; }
.ops-section-title { display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px; }
.ops-section-title h3 { margin:0;color:#2d4668;font-size:19px;font-weight:650;line-height:1.5; }
.ops-section-title p { margin:6px 0 0;color:#6a7e9b;font-size:14px;line-height:1.7; }
.ops-latest-insight { margin:0 0 22px;padding:16px 18px;border:1px solid #cbded7;border-left:4px solid #258177;border-radius:8px;background:#f1f7f4; }
.ops-insight-label { color:#26756d;font-size:12px;font-weight:750;letter-spacing:.02em; }
.ops-latest-insight h3 { margin:4px 0 0;color:#183c40;font-size:17px;line-height:1.45; }
.ops-insight-reason { margin:6px 0 0;color:#5d7074;font-size:13px;line-height:1.55; }
.ops-insight-action { margin-top:11px;padding-top:10px;border-top:1px solid #dce8e2; }
.ops-insight-action strong { color:#345e58;font-size:12px; }
.ops-insight-action p { margin:4px 0 0;color:#344e52;font-size:14px;line-height:1.7; }
.ops-latest-insight ul { display:flex;flex-wrap:wrap;gap:8px 18px;margin:10px 0 0;padding:9px 0 0;border-top:1px solid #dce8e2;list-style:none; }
.ops-latest-insight li { color:#627473;font-size:12px; }
.ops-latest-insight li strong { margin-left:4px;color:#284b4b;font-variant-numeric:tabular-nums; }
.ops-primary,.ops-soft,.ops-text { min-height:42px;padding:9px 14px;border:1px solid transparent;border-radius:7px;font-size:14px;font-weight:550;white-space:nowrap;cursor:pointer; }
.ops-primary { background:#2e62db;color:#fff; }
.ops-primary:hover { background:#2150bb; }
.ops-soft { background:#f1f6ff;border-color:#d7e2f5;color:#40659b; }
.ops-soft:hover { background:#e7effe;border-color:#b3c8eb; }
.ops-text { background:transparent;color:#5577ab;padding-left:5px;padding-right:5px; }
.ops-studio button:disabled { cursor:default;opacity:.5; }
.ops-studio button[hidden] { display:none; }
.ops-evidence { display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin:0 0 25px;padding:18px;border:1px solid #dfe7f3;border-radius:10px;background:#fafcff; }
.ops-evidence>div { min-width:0; }
.ops-evidence>div>span { display:block;color:#5e769b;font-size:13px;line-height:1.6; }
.ops-evidence strong { display:block;font-size:25px;color:#355680;line-height:1.45;margin:5px 0;letter-spacing:normal;font-variant-numeric:tabular-nums;overflow-wrap:anywhere; }
.ops-evidence strong small { color:#6d84a7;font-size:14px;font-weight:400;margin-left:4px; }
.ops-evidence>div>small { display:block;color:#5d718d;font-size:13px;line-height:1.5; }
.ops-goals { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;border:0;padding:0;margin:0 0 23px; }
.ops-goals legend { color:#546c8f;font-size:14px;margin-bottom:9px;padding:0; }
.ops-goals label,.ops-days label { position:relative;cursor:pointer;min-width:0; }
.ops-goals input,.ops-days input { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%); }
.ops-goals label>span { display:flex;justify-content:center;align-items:center;min-height:45px;padding:10px 7px;border:1px solid #d6e1ef;border-radius:8px;background:#fff;color:#526d94;font-size:14px; }
.ops-goals input:checked+span,.ops-days input:checked+span { background:#eff5ff;border-color:#5980d5;color:#2b5aac;box-shadow:inset 0 0 0 1px #5980d5; }
.ops-goals input:focus-visible+span,.ops-days input:focus-visible+span { outline:3px solid #376bdc;outline-offset:3px; }
.ops-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 16px; }
.ops-field { display:block;min-width:0;color:#496489;font-size:14px;line-height:1.5;margin:0; }
.ops-field>span:first-child { display:block;margin-bottom:7px;color:#4c6486;font-size:14px;font-weight:500; }
.ops-input { display:flex;gap:7px;align-items:center;min-height:47px;background:#fff;border:1px solid #cbd8e9;border-radius:7px;padding:0 11px; }
.ops-input>input { width:100%;min-width:0;height:45px;border:0;border-radius:0;background:transparent;color:#2c466b;font-size:16px;padding:8px 0;outline:none;box-shadow:none;font-variant-numeric:tabular-nums; }
.ops-input>input[type=number] { text-align:right;appearance:textfield; }
.ops-input>input::placeholder,.ops-field textarea::placeholder { color:#7b8da8;font-size:14px; }
.ops-input>span { flex:none;color:#6b80a0;font-size:13px; }
.ops-input:focus-within { outline:2px solid #6b91dc;outline-offset:2px;border-color:#7699db; }
.ops-field select { width:100%;min-width:0;min-height:47px;padding:9px 11px;border:1px solid #cbd8e9;border-radius:7px;background:#fff;color:#2c466b;font-size:15px; }
.ops-field textarea { display:block;width:100%;min-width:0;min-height:104px;padding:12px 13px;border:1px solid #cbd8e9;border-radius:8px;background:#fff;color:#2f4c74;font-size:16px;line-height:1.8;resize:vertical; }
.ops-wide { grid-column:1/-1; }
.ops-section { margin-top:29px;padding-top:25px;border-top:1px solid #dfe7f2; }
.ops-class,.ops-outcome { position:relative;min-width:0;border:1px solid #dce5f1;border-radius:10px;padding:20px;margin:0 0 21px;background:#fbfcff; }
.ops-class legend,.ops-outcome legend { padding:0 6px;color:#4a6b9b;font-size:14px;font-weight:600; }
.ops-remove { min-height:29px;padding:5px 8px;background:#fff;color:#92706c;font-size:14px;border:0;border-radius:5px;cursor:pointer; }
.ops-class>.ops-remove,.ops-outcome>.ops-remove { position:absolute;right:14px;top:-14px; }
.ops-remove:hover { color:#a84235;background:#fff1eb; }
.ops-days { display:flex;align-items:center;justify-content:space-between;gap:5px;border:0;margin:0;padding:0;min-width:0; }
.ops-days legend { color:#4c6486;font-size:14px;font-weight:500;padding:0;margin-bottom:7px; }
.ops-days label { flex:1; }
.ops-days span { display:grid;place-items:center;height:43px;padding:5px 4px;border:1px solid #d5e0ef;border-radius:6px;background:#fff;color:#5c759b;font-size:13px; }
.ops-empty { padding:32px 18px;border:1px dashed #cddaea;border-radius:9px;background:#fafcff;color:#6b82a4;font-size:15px;text-align:center;line-height:1.7; }
.ops-empty strong { display:block;color:#45628c;font-size:17px;font-weight:550; }
.ops-empty p { color:#6b82a4;font-size:14px;margin:8px 0 0; }
.ops-finance { border:1px solid #dce5f2;border-radius:10px;background:#fff;margin-top:28px; }
.ops-finance>summary { min-height:57px;padding:17px 19px;cursor:pointer;font-size:17px;color:#3e5f8e;font-weight:600; }
.ops-finance>summary>span { float:right;background:#f1f5fc;color:#586f90;font-size:13px;font-weight:400;padding:4px 7px;border-radius:5px; }
.ops-finance>div { border-top:1px solid #e4ebf5;padding:22px 20px; }
.ops-scenarios { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:25px; }
.ops-scenarios>fieldset { display:grid;gap:16px;min-width:0;margin:0;padding:17px 14px;border:1px solid #dce5f3;border-radius:9px;background:#f9fbff; }
.ops-scenarios legend { padding:0 7px;font-size:15px;color:#416399;font-weight:650; }
.ops-scenario-results { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px; }
.ops-scenario-result { padding:19px 15px;background:#f0f5ff;border:1px solid #dbe6fa;border-radius:9px;min-width:0; }
.ops-scenario-result>span { color:#5b79a6;font-size:13px; }
.ops-scenario-result>strong { display:block;color:#305a9c;font-size:26px;line-height:1.5;font-weight:650;letter-spacing:normal;margin:7px 0 3px;overflow-wrap:anywhere; }
.ops-scenario-result>small { color:#5a708f;font-size:13px; }
.ops-scenario-result dl { margin:16px 0 0;padding-top:12px;border-top:1px solid #dae5f8;display:grid;gap:11px; }
.ops-scenario-result dl>div { display:flex;justify-content:space-between;gap:8px;font-size:14px;line-height:1.6;color:#536b8d; }
.ops-scenario-result dt,.ops-scenario-result dd { margin:0; }
.ops-scenario-result dd { color:#41679e;font-size:13px;font-weight:550;white-space:nowrap; }
.ops-scenario-result .ops-support-row { border-top:1px solid #cfddf3;padding-top:12px;margin-top:2px; }
.ops-support-row dt { color:#365e96;font-weight:600; }
.ops-support-row dt small { display:block;font-size:13px;font-weight:400;color:#657c9e;margin-top:4px; }
.ops-scenario-result .ops-support-row dd { color:#2f5ea5;font-size:15px;font-weight:650; }
.ops-campaign { margin-bottom:25px;padding:22px;border:1px solid #dce6f3;border-radius:12px;background:#fff; }
.ops-card-heading { display:flex;align-items:center;gap:10px;margin-bottom:22px; }
.ops-card-number { display:grid;place-items:center;min-width:30px;height:30px;background:#edf3ff;border-radius:7px;color:#6083bc;font-size:14px; }
.ops-card-heading h4 { min-width:0;flex:1;font-size:18px;color:#365781;margin:0;line-height:1.5; }
.ops-card-actions { display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:18px; }
.ops-card-actions>:last-child { margin-left:auto; }
.ops-result-filter { display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:13px;margin-bottom:23px; }
.ops-results-kpis { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #dce6f6;border-radius:10px;background:#f8faff;overflow:hidden; }
.ops-results-kpis>div { padding:19px 13px;border-right:1px solid #e2eaf5;min-width:0; }
.ops-results-kpis>div:last-child { border:0; }
.ops-results-kpis span { font-size:13px;color:#617fa5; }
.ops-results-kpis strong { display:block;margin-top:8px;color:#345d96;font-size:25px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:normal;overflow-wrap:anywhere; }
.ops-ratio-line { display:flex;justify-content:space-between;gap:12px;padding:16px 0 0;color:#617ca3;font-size:13px;line-height:1.7; }
.ops-ratio-line strong { color:#365f99;font-size:15px;margin-left:7px; }
.ops-result-basis { font-size:14px;line-height:1.7;color:#5d728f;margin:8px 0 24px; }
.ops-revisions { border-top:1px solid #dfe7f2;padding-top:24px;margin-top:27px; }
.ops-revisions ol { list-style:none;margin:20px 0 0;padding:0; }
.ops-revisions li { padding:13px 0;border-top:1px solid #e5ecf5; }
.ops-revisions li span { display:block;color:#5b7191;font-size:14px; }
.ops-revisions li strong { display:block;color:#50709b;font-weight:500;font-size:14px;margin-top:6px;line-height:1.7; }
.ops-save-bar { position:sticky;bottom:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:14px;background:#fff;border-top:1px solid #dce5f2;margin-top:28px;padding:16px 0 7px; }
.ops-save-bar>span { font-size:13px;color:#6b81a3;line-height:1.7; }
.ops-save-bar .ops-primary { min-height:46px;padding:10px 18px;font-size:15px; }
.ops-alert { padding:15px 17px;margin-bottom:20px;border:1px solid #eccdc5;border-radius:8px;background:#fff7f4;color:#a45f50;font-size:14px;line-height:1.7; }
.ops-alert[hidden] { display:none; }
.ops-studio button:focus-visible,.ops-studio select:focus-visible,.ops-studio textarea:focus-visible { outline:3px solid #4778db;outline-offset:3px; }
@media(max-width:650px){
  .ops-header { align-items:flex-start;gap:12px; }.ops-header h2 { font-size:23px; }.ops-export { flex-direction:column;gap:5px; }
  .ops-section-title { flex-wrap:wrap;gap:11px; }.ops-section-title h3 { font-size:18px; }.ops-goals { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ops-grid { gap:17px 12px; }.ops-campaign { padding:18px; }.ops-class,.ops-outcome { padding:18px 15px; }
  .ops-scenarios,.ops-scenario-results { gap:12px; }.ops-scenario-result { padding:16px 11px; }.ops-scenario-result>strong { font-size:23px; }.ops-scenario-result dl>div { flex-direction:column;gap:2px; }
  .ops-result-filter { grid-template-columns:repeat(2,minmax(0,1fr)); }.ops-result-filter>.ops-field:first-child { grid-column:1/-1; }
  .ops-results-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }.ops-results-kpis>div { padding:17px;border-bottom:1px solid #e2eaf5; }.ops-results-kpis>div:nth-child(2) { border-right:0; }.ops-results-kpis>div:nth-child(3) { border-bottom:0; }
  .ops-ratio-line { flex-direction:column;gap:5px; }.ops-days { gap:3px; }.ops-days span { font-size:14px;padding:5px 2px; }
}
@media(max-width:420px){
  .ops-header h2 { font-size:21px; }.ops-tabs>button { font-size:14px; }.ops-field>span:first-child { font-size:13px; }
  .ops-class>.ops-grid,.ops-campaign>.ops-grid,.ops-outcome>.ops-grid { grid-template-columns:1fr; }.ops-days { min-height:44px; }
  .ops-finance>div { padding:19px 13px; }.ops-scenarios>fieldset { padding:15px 10px; }.ops-scenarios { gap:9px; }.ops-evidence { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ops-card-actions { gap:7px; }.ops-card-actions>.ops-soft { width:100%; }.ops-card-actions>:last-child { margin-left:0; }
}
@container analysis (max-width:520px){.ops-section-title{flex-wrap:wrap}.ops-goals{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-results-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-ratio-line{flex-direction:column}.ops-scenario-result dl>div{flex-direction:column}.ops-result-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-result-filter>.ops-field:first-child{grid-column:1/-1}}
@container analysis (max-width:520px){.ops-latest-insight{padding:14px}.ops-latest-insight ul{display:grid;gap:6px}}
@media print{.ops-export,.ops-tabs,.ops-save-bar,.ops-card-actions,.ops-remove,.ops-section-title>button{display:none}.ops-studio{font-size:14px}.ops-campaign,.ops-class,.ops-outcome,.ops-scenario-results{break-inside:avoid}.ops-finance{display:block}}
