/* P&D 2.0 professional mobile-first refinement */
:root{--pd-ink:#142c46;--pd-border:#dce5ee;--pd-soft:#f4f7fb;--pd-accent:#1769a8}
body{background:#f3f6fa!important;color:var(--pd-ink)}
header{padding:19px max(20px,calc((100vw - 1120px)/2))!important;box-shadow:none!important}
header .brand{letter-spacing:-.5px}header .brand small{letter-spacing:1.7px}
nav#nav{gap:7px;padding:10px max(16px,calc((100vw - 1120px)/2))!important;scrollbar-width:none;position:sticky;top:0;z-index:15;box-shadow:0 5px 18px #102b4812}
nav#nav::-webkit-scrollbar{display:none}
nav#nav button{border:1px solid transparent!important;border-radius:10px!important;min-height:45px;padding:11px 15px!important;font-size:13px!important;font-weight:650;transition:background .15s}
nav#nav button.active{background:#fff!important;color:#153d60!important;border-color:#fff!important;box-shadow:0 2px 8px #0002}
nav#nav button:not(.active):hover{background:#ffffff19}
main#main{max-width:1120px;padding:26px 18px 100px}
.panel,.stat,.payment-box{border:1px solid var(--pd-border)!important;border-radius:16px!important;box-shadow:0 5px 24px #17375508!important}
h1{letter-spacing:-.7px}h2{letter-spacing:-.25px}
label{font-size:13px!important;color:#475b70;font-weight:650}
input,select,textarea{min-height:48px;border-radius:10px!important;border:1px solid #cbd7e4!important;padding:12px 14px!important;font-size:16px!important;background:#fff}
input:focus,select:focus,textarea:focus{outline:3px solid #a4c8e859;border-color:#3983bb!important}
.btn,main button{min-height:46px;border-radius:10px;font-weight:650}
.btn.primary,.primary{background:#1769a8!important;border-color:#1769a8!important}
.actions{gap:10px!important}
#pdPaymentPlan{margin:25px 0;padding:24px;background:#fff}
.pd-pay-head{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:14px}
.pd-pay-eyebrow{font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:#66829b;font-weight:800}
.pd-pay-head h2{font-size:22px;margin:6px 0 5px}
.pd-pay-sub{font-size:13px;color:#63788c;line-height:1.6}
.pd-pay-builder{background:#f5f8fc;border:1px solid #dbe6f0;border-radius:13px;padding:18px;margin:15px 0}
.pd-pay-builder .two{gap:14px}
.pd-pay-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 18px;background:#eaf3fb;border-radius:12px;margin:14px 0}
.pd-pay-summary strong{font-size:21px;color:#123c61}
.pd-pay-summary span{font-size:12px;color:#56718a}
#pdInstallments{display:grid;gap:13px;margin:16px 0}
.pd-installment{display:block!important;background:#fff;border:1px solid #d9e4ee;border-left:4px solid #4188bd;border-radius:13px;padding:18px}
.pd-installment-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}
.pd-installment-head strong{font-size:13px;letter-spacing:.5px;color:#456783}
.pd-installment-head .pd-installment-value{font-size:19px;color:#163e61;font-weight:800}
.pd-installment-fields{display:grid;grid-template-columns:1.2fr 1fr;gap:12px}
.pd-pay-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.pd-pay-actions button{flex:1;min-width:145px}
#pdScheduleCheck{border-radius:10px;background:#f1f6fa;padding:13px 15px;font-weight:700}
.pd-payment-note{font-size:12px;color:#6d8093;line-height:1.6}
@media(max-width:700px){header{padding:17px 18px!important}main#main{padding:18px 13px 90px}nav#nav{padding:9px 12px!important}nav#nav button{min-height:48px}#pdPaymentPlan{padding:17px}.pd-pay-head h2{font-size:20px}.pd-pay-builder{padding:14px}.pd-installment{padding:14px}.pd-installment-fields{grid-template-columns:1fr}.pd-pay-summary strong{font-size:19px}.actions .btn{flex:1 1 150px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.pd-hidden{display:none!important}.pd-deposit-toggle{display:flex;align-items:center;gap:8px;margin:0!important;font-size:12px!important;color:#496a88;white-space:nowrap}.pd-deposit-toggle input{width:20px;min-height:20px;height:20px;accent-color:#2377b4}.pd-due-extra{margin-top:10px}.pd-due-extra[hidden]{display:none!important}.pd-inline-controls{display:flex;gap:8px}.pd-inline-controls input{width:80px}.pd-inline-controls select{flex:1;min-width:0}.pd-installment-head .pd-installment-value{display:block;margin-top:5px}@media(max-width:600px){.pd-installment-head{align-items:center}.pd-deposit-toggle span{font-size:11px}.pd-installment-head .pd-installment-value{font-size:21px}}

/* Invoice payment recording */
.pd-payment-overlay{position:fixed;inset:0;background:#081a2dcc;z-index:1000;display:flex;justify-content:center;align-items:flex-start;padding:24px 12px;overflow-y:auto}
.pd-payment-modal{width:min(100%,670px);background:#fff;border-radius:20px;box-shadow:0 20px 90px #0004;padding:26px;margin:auto 0}
.pd-payment-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}
.pd-payment-modal-head h2{font-size:25px;margin:5px 0}
.pd-close-payment{border:1px solid #d7e3ee;background:#f5f8fc;border-radius:9px;min-height:44px;padding:8px 13px;font-size:13px;color:#31546f}
.pd-ledger-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}
.pd-ledger-stats>div{background:#f1f6fb;border-radius:11px;padding:13px}
.pd-ledger-stats span{display:block;font-size:11px;color:#5c7287;margin-bottom:7px}
.pd-ledger-stats strong{font-size:18px;color:#153e63;overflow-wrap:anywhere}
.pd-payment-impact{background:#edf5fc;border:1px solid #d3e4f3;border-radius:10px;padding:14px;margin-top:17px;font-weight:700;color:#195d8b}
.pd-payment-credit{background:#fff4e7;border-color:#f1d6b5;color:#8d561b}
.pd-ledger-history{margin-top:25px;padding-top:18px;border-top:1px solid #e1e9f0}
.pd-ledger-history h3{font-size:16px;margin:0 0 12px}
.pd-ledger-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e8edf3;padding:12px 0}
.pd-ledger-row strong{color:#173e61;font-size:17px}
.pd-ledger-tag{font-size:11px;font-weight:700;color:#23754b;background:#e7f5ed;border-radius:100px;padding:6px 9px}
@media(max-width:600px){.pd-payment-overlay{padding:0;align-items:stretch}.pd-payment-modal{border-radius:0;min-height:100dvh;padding:22px 16px}.pd-ledger-stats{gap:6px}.pd-ledger-stats>div{padding:10px 8px}.pd-ledger-stats strong{font-size:15px}.pd-payment-modal-head h2{font-size:22px}}

/* Streamlined, choice-first estimate editing */
.pd-simple-plan-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}
.pd-simple-choice{cursor:pointer;display:block!important;position:relative}
.pd-simple-choice input{position:absolute;opacity:0;pointer-events:none}
.pd-simple-choice span{display:flex;flex-direction:column;gap:7px;border:2px solid #dce6ef;border-radius:13px;background:#fff;padding:16px 13px;min-height:95px}
.pd-simple-choice strong{font-size:14px;color:#183b5a}
.pd-simple-choice small{font-size:12px;color:#657d90;line-height:1.5;font-weight:400}
.pd-simple-choice input:checked+span{border-color:#2879b3;background:#edf6fd;box-shadow:0 0 0 2px #a9d3f050}
.pd-simple-choice input:focus-visible+span{outline:3px solid #9ac8eb}
.pd-simple-deposit{padding:14px 16px;background:#f4f8fb;border-radius:11px;margin:8px 0 14px}
.pd-simple-deposit label{display:flex;align-items:center;justify-content:space-between;gap:16px}
.pd-simple-deposit input{width:90px;text-align:center}
.pd-simple-deposit[hidden]{display:none}
.pd-advanced-settings{border:1px solid #dce6ee;border-radius:10px;margin:14px 0;padding:0 14px}
.pd-advanced-settings summary,.pd-extra-document-tools summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:700;color:#416885}
.pd-advanced-settings .pd-pay-builder{border:0;margin:0;padding:14px 0;background:transparent}
.pd-simple-payment-preview{background:#f8fafc;border:1px solid #dce7f0;border-radius:13px;padding:16px;margin:14px 0}
.pd-simple-readonly .pd-installment{padding:12px 15px;margin:0 0 8px;border-left:3px solid #4188bd}
.pd-simple-readonly .pd-installment-fields,.pd-simple-readonly .pd-due-extra,.pd-simple-readonly .pd-deposit-toggle,.pd-simple-readonly .pd-block-actions{display:none!important}
.pd-simple-readonly .pd-installment-head{margin:0}
.pd-simple-actions{margin-top:10px}
.pd-photo-layout-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.pd-photo-layout{position:relative;cursor:pointer}
.pd-photo-layout input{position:absolute;opacity:0;pointer-events:none}
.pd-photo-layout span{display:flex;flex-direction:column;gap:5px;text-align:center;align-items:center;padding:13px 8px;background:#fff;border:2px solid #dce6ef;border-radius:12px;min-height:106px;font-size:25px;color:#2b76a9}
.pd-photo-layout strong{font-size:12px;color:#234a6b}
.pd-photo-layout small{font-size:11px;color:#678096;font-weight:400}
.pd-photo-layout input:checked+span{border-color:#277db6;background:#edf6fd}
.pd-photo-layout input:focus-visible+span{outline:3px solid #9ac8eb}
.pd-upload-photos{display:flex!important;align-items:center;justify-content:center;background:#1769a8;color:white!important;border-radius:11px;padding:17px;cursor:pointer;margin:14px 0;font-size:16px!important}
.pd-upload-photos input{position:absolute;opacity:0;width:1px;height:1px}
.pd-extra-document-tools{border-top:1px solid #e2eaf2;margin-top:10px}
#pdBlockItems .pd-block-card[data-block] .pd-block-actions button{min-height:36px;font-size:11px;padding:6px 9px}
@media(max-width:650px){.pd-simple-plan-choices{grid-template-columns:1fr}.pd-simple-choice span{min-height:0;padding:14px}.pd-photo-layout-choices{gap:6px}.pd-photo-layout span{padding:12px 4px}.pd-photo-layout strong{font-size:11px}.pd-photo-layout small{font-size:10px}}
