.pq-budget-planner-v1-active>section.pq-finance-section:not(.pq-budget-planner-v1){display:none!important}
.pq-budget-planner-v1{display:block!important;min-width:0}
.pqbp-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin:10px 0 14px}.pqbp-head h2{margin:0;font-size:clamp(24px,3vw,36px)}.pqbp-head p,.pqbp-section-head p{margin:5px 0 0;color:var(--pq-muted,#9fb3c8)}
.pqbp-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:10px 0 14px}.pqbp-year,.pqbp-view,.pqbp-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pqbp-year button,.pqbp-view button{min-height:44px;border:1px solid var(--pq-line,#33475b);background:var(--pq-panel-2,#122236);color:var(--pq-text,#fff);border-radius:10px;padding:8px 12px;font-weight:700}.pqbp-year input{width:94px;min-height:44px;border:1px solid var(--pq-line,#33475b);border-radius:10px;background:var(--pq-panel,#0b1c2b);color:var(--pq-text,#fff);padding:8px;text-align:center;font-weight:800}.pqbp-view button.active{outline:2px solid var(--pq-gold,#39d6e8);border-color:var(--pq-gold,#39d6e8)}
.pqbp-summary{display:grid;grid-template-columns:repeat(5,minmax(135px,1fr));gap:10px;margin:12px 0 14px}.pqbp-kpi{border:1px solid var(--pq-line,#29465d);background:var(--pq-panel,#0b1a28);border-radius:14px;padding:13px}.pqbp-kpi span{display:block;color:var(--pq-muted,#9fb3c8);font-size:12px}.pqbp-kpi strong{display:block;margin-top:4px;font-size:20px}.pqbp-kpi.positive strong,.pqbp-variance.positive{color:#65d6a6}.pqbp-kpi.negative strong,.pqbp-variance.negative{color:#ff9b9b}
.pqbp-suggestions{border:1px solid var(--pq-line,#2c4357);background:var(--pq-panel,#0a1826);border-radius:15px;padding:14px;margin:12px 0}.pqbp-section-head{display:flex;justify-content:space-between;gap:12px}.pqbp-section-head h3{margin:0}.pqbp-suggestion{display:grid;grid-template-columns:minmax(190px,1fr) minmax(300px,2fr) auto;gap:14px;align-items:center;border-top:1px solid var(--pq-line,#263d51);padding:12px 0}.pqbp-suggestion:first-of-type{margin-top:10px}.pqbp-suggestion strong,.pqbp-suggestion small{display:block}.pqbp-suggestion small{color:var(--pq-muted,#9fb3c8);margin-top:4px}.pqbp-suggest-metrics{display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:8px}.pqbp-suggest-metrics span{font-size:12px;color:var(--pq-muted,#9fb3c8)}.pqbp-suggest-metrics b{display:block;color:var(--pq-text,#fff);font-size:14px;margin-top:2px}
.pqbp-grid-wrap{position:relative;overflow:auto;max-width:100%;max-height:min(70vh,760px);border:1px solid var(--pq-line,#2d465b);border-radius:14px;background:var(--pq-panel,#071725);overscroll-behavior:contain}.pqbp-grid{border-collapse:separate;border-spacing:0;min-width:max-content;width:100%;font-size:13px}.pqbp-grid th,.pqbp-grid td{border-right:1px solid var(--pq-line,#263c4f);border-bottom:1px solid var(--pq-line,#263c4f);padding:7px;vertical-align:middle;background:var(--pq-panel,#071725)}.pqbp-grid thead th{position:sticky;top:0;z-index:5;background:var(--pq-panel-2,#0f2638);min-width:112px;text-align:center;height:54px}.pqbp-grid thead th small{display:block;color:var(--pq-muted,#9fb3c8);font-size:10px;margin-top:2px}.pqbp-grid .pqbp-label{position:sticky;left:0;z-index:4;min-width:230px;max-width:230px;text-align:left;background:var(--pq-panel-2,#0d2234)}.pqbp-grid thead .pqbp-label{z-index:8}.pqbp-category .pqbp-label{font-size:14px}.pqbp-category td,.pqbp-category .pqbp-label{background:color-mix(in srgb,var(--pq-panel-2,#0d2234) 88%,transparent)}.pqbp-child .pqbp-label{font-weight:500}.pqbp-indent{display:inline-block;padding-left:28px}.pqbp-collapse,.pqbp-rule-button,.pqbp-actual{border:0;background:transparent;color:inherit;cursor:pointer}.pqbp-collapse{width:30px;height:30px;font-weight:900}.pqbp-rule-button{float:right;min-width:34px;min-height:34px;border-radius:8px;opacity:.72}.pqbp-rule-button:hover{background:var(--pq-line,#294459);opacity:1}.pqbp-label small{display:block;color:var(--pq-muted,#9fb3c8);font-size:10px;margin-left:30px}.pqbp-cell-input{width:94px;min-height:38px;padding:7px 6px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--pq-text,#fff);text-align:right}.pqbp-cell-input:hover,.pqbp-cell-input:focus{border-color:var(--pq-line-soft,#50708a);background:var(--pq-bg-2,#06111b);outline:none}.pqbp-cell-input.dirty{border-color:var(--pq-gold,#39d6e8);box-shadow:inset 0 0 0 1px var(--pq-gold,#39d6e8)}.pqbp-money,.pqbp-variance{display:block;text-align:right;white-space:nowrap}.pqbp-actual{width:100%;min-height:36px;text-align:right;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}.pqbp-actual:disabled{text-decoration:none;cursor:default;opacity:.62}.pqbp-both{display:grid;gap:2px;min-width:100px}.pqbp-both>div{display:grid;grid-template-columns:14px 1fr;align-items:center}.pqbp-both small{color:var(--pq-muted,#9fb3c8);font-size:9px}.pqbp-both .pqbp-cell-input{width:86px;min-height:30px;padding:4px}.pqbp-both .pqbp-actual{min-height:28px}.pqbp-total{min-width:135px;font-weight:800}.pqbp-total>span{display:block;text-align:right;font-size:11px}
.pqbp-savebar{position:sticky;bottom:10px;z-index:12;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px auto 0;max-width:720px;border:1px solid var(--pq-gold,#39d6e8);background:var(--pq-panel-2,#0e2436);border-radius:14px;padding:10px 12px;box-shadow:0 10px 30px rgba(0,0,0,.35)}.pqbp-savebar>div{display:flex;gap:8px}.pqbp-notice{border-radius:12px;padding:11px 13px;margin:10px 0}.pqbp-notice.error{background:rgba(150,30,45,.22);border:1px solid #a94455}.pqbp-notice.success{background:rgba(20,120,85,.2);border:1px solid #3d9d78}.pqbp-empty{padding:22px;text-align:center;color:var(--pq-muted,#9fb3c8)}
.pqbp-modal-backdrop{position:fixed;inset:0;z-index:1200;background:rgba(0,0,0,.68);display:flex;justify-content:center;align-items:flex-start;padding:5vh 14px;overflow:auto}.pqbp-modal,.pqbp-drawer{width:min(760px,100%);background:var(--pq-panel,#091827);border:1px solid var(--pq-line,#36536c);border-radius:18px;box-shadow:0 22px 70px rgba(0,0,0,.55);color:var(--pq-text,#fff)}.pqbp-modal header,.pqbp-drawer header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px;border-bottom:1px solid var(--pq-line,#2b4255)}.pqbp-modal h3,.pqbp-drawer h3{margin:0}.pqbp-modal header p,.pqbp-drawer header p{margin:4px 0 0;color:var(--pq-muted,#9fb3c8)}.pqbp-rule-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px}.pqbp-rule-form label{display:grid;gap:5px}.pqbp-rule-form label>span{font-size:12px;color:var(--pq-muted,#9fb3c8)}.pqbp-rule-form .wide{grid-column:1/-1}.pqbp-modal footer{padding:14px 16px;border-top:1px solid var(--pq-line,#2b4255);display:flex;justify-content:flex-end}.pqbp-drawer{margin-left:auto;width:min(620px,100%);min-height:min(80vh,720px)}.pqbp-drawer-body{padding:8px 16px 18px}.pqbp-drawer article{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--pq-line,#2b4255)}.pqbp-drawer article span,.pqbp-drawer article small{display:block}.pqbp-drawer article small{color:var(--pq-muted,#9fb3c8);margin-top:3px}.pqbp-category-only-report{font-weight:700}
@media(max-width:900px){.pqbp-summary{grid-template-columns:repeat(2,minmax(130px,1fr))}.pqbp-toolbar{align-items:stretch}.pqbp-view{width:100%;display:grid;grid-template-columns:repeat(2,1fr)}.pqbp-view button{width:100%}.pqbp-suggestion{grid-template-columns:1fr}.pqbp-suggest-metrics{grid-template-columns:repeat(2,1fr)}.pqbp-grid-wrap{max-height:68vh}.pqbp-grid{font-size:12px}.pqbp-grid thead th{min-width:98px}.pqbp-grid .pqbp-label{min-width:156px;max-width:156px}.pqbp-indent{padding-left:18px}.pqbp-rule-button{min-width:40px;min-height:40px}.pqbp-cell-input{width:82px;min-height:44px}.pqbp-both .pqbp-cell-input{width:74px;min-height:36px}.pqbp-actual{min-height:42px}.pqbp-savebar{bottom:8px}.pqbp-rule-form{grid-template-columns:1fr}.pqbp-rule-form .wide{grid-column:auto}.pqbp-modal-backdrop{padding:12px;align-items:flex-end}.pqbp-modal,.pqbp-drawer{max-height:92vh;overflow:auto}.pqbp-drawer{min-height:70vh}}
@media(max-width:520px){.pqbp-summary{grid-template-columns:1fr 1fr}.pqbp-kpi strong{font-size:17px}.pqbp-actions{width:100%}.pqbp-actions .pq-btn{flex:1;min-height:44px}.pqbp-year{justify-content:space-between;width:100%}.pqbp-suggest-metrics{grid-template-columns:1fr 1fr}.pqbp-savebar{left:8px;right:8px;max-width:none}}

/* QA1f: planner action text must remain readable across ProjectQuest themes. */
.pq-budget-planner-v1 .pq-btn-primary{
  background:color-mix(in srgb,var(--pq-page-accent,var(--pq-accent,#39d6e8)) 16%,var(--pq-panel-2,#102235))!important;
  border-color:var(--pq-page-accent,var(--pq-accent,#39d6e8))!important;
  color:var(--pq-text,#f7fbff)!important;
  -webkit-text-fill-color:var(--pq-text,#f7fbff)!important;
  text-shadow:none!important;
}
.pq-budget-planner-v1 .pq-btn-primary:hover,
.pq-budget-planner-v1 .pq-btn-primary:focus{
  background:color-mix(in srgb,var(--pq-page-accent,var(--pq-accent,#39d6e8)) 24%,var(--pq-panel-2,#102235))!important;
  color:var(--pq-text,#f7fbff)!important;
  -webkit-text-fill-color:var(--pq-text,#f7fbff)!important;
}
.pq-budget-planner-v1 .pq-btn-primary:disabled{
  color:var(--pq-muted,#a8bac9)!important;
  -webkit-text-fill-color:var(--pq-muted,#a8bac9)!important;
  opacity:.72;
}
