/* Scoped workspace; shared utility and checkout behaviours remain intact. */
body.diyai-cost-planner-page,body.diyai-cost-planner-page.diyai-visual-design { background:#050e15; color:#edf4fc; }
body.diyai-cost-planner-page #primary.site-main { max-width:1600px!important; margin:32px auto 80px!important; padding:0 32px!important; }
body.diyai-cost-planner-page #content.container { width:100%; max-width:none; padding:0; }
.diyai-utility.cost-planner-page { --cost-border:#304a60; --cost-muted:#b5c9df; max-width:1600px; padding:0; margin:0 auto; border:0; background:transparent; color:#edf4fc; }
#diyai-utility.cost-planner-page :is(h1,h2,h3,h4) { color:#f5f8fc; line-height:1.2; text-align:start; }
#diyai-utility .cost-hero { display:flex; justify-content:space-between; align-items:center; gap:40px; padding:18px 0 36px; margin:0; background:transparent; border:0; box-shadow:none; }
#diyai-utility .cost-hero>div:first-child { flex:1; min-width:0; }
#diyai-utility .cost-hero h1 { margin:12px 0 18px; font-size:clamp(2rem,3.5vw,3.25rem); font-weight:750; line-height:1.08; letter-spacing:-.04em; max-width:850px; text-wrap:balance; }
.cost-hero p { max-width:760px; color:var(--cost-muted); }
.cost-hero .cost-step,.cost-step { color:#ffc247; font-size:.75rem; font-weight:750; letter-spacing:.09em; text-transform:uppercase; }
.cost-free { flex-shrink:0; border:1px solid #304a60; border-radius:12px; background:#0c1c2a; padding:18px 22px; }
.cost-free strong,.cost-free span { display:block; }.cost-free span { color:var(--cost-muted); font-size:.85rem; margin-top:6px; }
.cost-columns { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:28px; align-items:start; }
.cost-output,.cost-controls,.cost-library,.cost-planner-page .utility-comparisons { min-width:0; border:1px solid var(--cost-border); border-radius:16px; padding:clamp(20px,2vw,30px); background:#091723; }
.cost-controls { background:#102436; }.cost-planner-page h2 { margin:8px 0 20px; font-size:1.65rem; }
.cost-planner-page p { margin-block:12px; }.cost-planner-page .utility-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.cost-planner-page label { color:#e9f2fc; font-size:.9rem; }.cost-planner-page input,.cost-planner-page select,.cost-planner-page textarea { background:#07131e; border-color:#47627b; color:#f5f8fc; border-radius:9px; padding:12px; }
.cost-planner-page input[type=checkbox] { accent-color:#ffb000; min-height:20px; }.cost-planner-page .utility-check { align-items:start; }
.cost-model-options { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:16px 0; }.cost-planner-page legend { font-size:.9rem; }
.cost-planner-page button,.cost-planner-page a.cost-cta { color:#eaf3ff; background:#1a3348; border:1px solid #47627b; border-radius:9px; font-weight:600; text-decoration:none; }
.cost-planner-page #calculate,.cost-planner-page a.cost-cta { color:#08131d; background:#ffb000; border-color:#ffb000; padding:14px 20px; }
.cost-planner-page #calculate { width:100%; }.cost-planner-page a { color:#ffc247; }.cost-planner-page button:hover { border-color:#ffb000; }
.cost-planner-page .utility-presets { gap:8px; }.cost-planner-page .utility-presets button { font-size:.8rem; padding:8px 10px; min-height:42px; }
.cost-planner-page .utility-note { color:var(--cost-muted); font-size:.8rem; line-height:1.6; }.cost-planner-page details { background:#091a29; border-color:var(--cost-border); padding:16px; }
.cost-planner-page .utility-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }.cost-planner-page .utility-metrics>div { background:#122a40; border:1px solid #304a60; }
.cost-planner-page .utility-metrics>div:first-child { border-color:#9c761d; }.cost-planner-page .utility-metrics strong { color:#ffca57; font-size:clamp(1.4rem,2.3vw,2rem); margin:8px 0; }.cost-planner-page .utility-metrics small { color:var(--cost-muted); }
.cost-planner-page table { background:transparent; }.cost-planner-page th { color:var(--cost-muted); font-size:.8rem; }.cost-planner-page td,.cost-planner-page th { text-align:start; border-color:var(--cost-border); padding:16px 10px; }.cost-planner-page .utility-cost-results table { min-width:500px; }
.cost-planner-page .utility-bar-track { background:#193249; }.cost-planner-page .utility-bar-track>span { background:#ffb000; }.cost-planner-page .utility-cost-bar { grid-template-columns:110px minmax(40px,1fr) 120px; font-size:.8rem; gap:10px; }
.cost-empty-bars { display:grid; gap:20px; padding:32px 0; }.cost-empty-bars i { height:24px; border-radius:6px; width:45%; background:#ffb000; }.cost-empty-bars i:nth-child(2) { width:72%; background:#3a6f98; }.cost-empty-bars i:nth-child(3) { width:92%; background:#21415d; }
.cost-planner-page .utility-comparisons,.cost-library { margin-top:28px; }.cost-library-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; }.cost-badge { background:#19364c; padding:6px 12px; border-radius:20px; }
.cost-member-offer { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:22px; margin-block:24px; background:#122a40; border:1px solid #756023; border-radius:12px; }.cost-member-offer a { flex-shrink:0; }.cost-member-offer p { max-width:780px; }.cost-library>label { max-width:560px; }
.cost-planner-page .utility-error { color:#ffb8b1; }.cost-planner-page [aria-invalid=true] { background:#331c25; border-color:#ff978e; }.cost-planner-page .utility-warning { color:#ffe4a5; background:#352d18; }
@media(max-width:1050px) { .cost-columns { grid-template-columns:1fr; }.cost-controls { grid-row:1; }.cost-hero { align-items:start; }.cost-free { max-width:200px; flex-shrink:1; } }
@media(max-width:600px) { body.diyai-cost-planner-page #primary.site-main { padding:0 16px!important; }.cost-hero { display:block; }.cost-free { max-width:none; margin-top:24px; }.cost-columns { gap:16px; }.cost-model-options { grid-template-columns:1fr; }.cost-member-offer { display:block; }.cost-member-offer a { display:inline-block; margin-top:12px; }.cost-planner-page .utility-metrics { grid-template-columns:1fr; }.cost-planner-page .utility-cost-bar { grid-template-columns:1fr 1fr; }.cost-planner-page .utility-grid { gap:14px; }.cost-planner-page .utility-table-wrap { max-width:100%; } }

/* The editorial theme loads after plugin CSS. Keep its generic page/header rules
   outside this workspace, including when FlyingPress changes stylesheet order. */
body.diyai-cost-planner-page #primary .breadcrumbs { color:#aebfd2; margin:0 0 24px; font-size:13px; line-height:1.5; }
body.diyai-cost-planner-page #primary .breadcrumbs a { color:#bcd3ed; }
body.diyai-cost-planner-page #primary .breadcrumbs .current { color:#dce8f7; }
#diyai-utility.cost-planner-page,#diyai-utility.cost-planner-page * { box-sizing:border-box; }
#diyai-utility.cost-planner-page { font-size:15px; line-height:1.6; }
#diyai-utility.cost-planner-page h2 { font-size:clamp(1.25rem,1.6vw,1.55rem); font-weight:700; letter-spacing:-.025em; }
#diyai-utility.cost-planner-page h3 { font-weight:650; }
#diyai-utility.cost-planner-page .cost-hero p { margin-block:12px; font-size:16px; line-height:1.65; }
#diyai-utility.cost-planner-page .cost-step { color:#ffc247; font-size:11px; line-height:1.5; margin:0 0 14px; }
#diyai-utility.cost-planner-page .cost-free strong { color:#f5f8fc; font-size:15px; }
#diyai-utility.cost-planner-page .cost-free span { font-size:12px; line-height:1.5; }
#diyai-utility.cost-planner-page label { font-size:13px; line-height:1.45; }
#diyai-utility.cost-planner-page :is(input,select,textarea) { min-width:0; font-size:16px; min-height:48px; }
#diyai-utility.cost-planner-page input[type=checkbox] { min-height:22px; }
#diyai-utility.cost-planner-page summary { color:#edf4fc; font-size:14px; line-height:1.5; display:list-item; min-height:24px; }
#diyai-utility.cost-planner-page summary::marker { color:#91abc5; }
#diyai-utility.cost-planner-page details { margin:12px 0; padding:14px 16px; }
#diyai-utility.cost-planner-page .utility-note { font-size:12px; line-height:1.65; }
#diyai-utility.cost-planner-page :is(button,a.cost-cta) { line-height:1.4; text-align:center; }
#diyai-utility.cost-planner-page :is(button,a.cost-cta):focus-visible { outline:3px solid #ffc247; outline-offset:3px; }
#diyai-utility.cost-planner-page #calculate:hover,#diyai-utility.cost-planner-page a.cost-cta:hover { background:#ffc247; color:#08131d; border-color:#ffc247; }
#diyai-utility.cost-planner-page .cost-library-heading { margin-bottom:16px; }
#diyai-utility.cost-planner-page .cost-library-heading h2 { margin-bottom:0; }
#diyai-utility.cost-planner-page .cost-library>label { margin-top:22px; }
#diyai-utility.cost-planner-page .utility-table-wrap { border:1px solid var(--cost-border); border-radius:10px; }
#diyai-utility.cost-planner-page #app-result[data-stale=true] { margin-block-start:24px; padding-block-start:24px; }
#diyai-utility.cost-planner-page caption { margin:0; padding:16px 12px; text-align:start; }
#diyai-utility.cost-planner-page :is(th,caption) { color:#c4d6ea; }
#diyai-utility.cost-planner-page td { color:#edf4fc; }
@media(max-width:1050px) { #diyai-utility .cost-hero { gap:24px; align-items:flex-start; } }
@media(max-width:600px) {
  #diyai-utility .cost-hero { display:block; padding:10px 0 24px; }
  #diyai-utility .cost-hero h1 { font-size:32px; text-wrap:initial; }
  #diyai-utility.cost-planner-page .cost-hero p { font-size:15px; }
  #diyai-utility .cost-free { margin-top:20px; padding:14px 16px; }
  #diyai-utility .cost-columns { gap:20px; }
  #diyai-utility .cost-library-heading { align-items:flex-start; gap:12px; }
  #diyai-utility .cost-library-heading h2 { font-size:21px; }
}

/* Workload first on desktop; keep the wider column for the comparison. */
@media(min-width:1051px) {
  #diyai-utility.cost-planner-page .cost-columns { grid-template-columns:minmax(0,1fr) minmax(0,1.35fr); }
  #diyai-utility.cost-planner-page .cost-controls { order:1; }
  #diyai-utility.cost-planner-page .cost-output { order:2; }
}
