/* FPD.DEV pilot: readable controls, quiet branding, and an embedded layout. */
:root{--fpd-navy:#142740;--fpd-navy-2:#142740;--fpd-orange:#246ce5;--fpd-text:#24344a;--fpd-border:#dbe2ec;--fpd-shadow:0 8px 25px #1529450d}
body{font-family:Arial,Helvetica,sans-serif;background:#f4f6f9}
.fpd-header{background:#fff;color:#152945;border-bottom:1px solid #dbe2ec;padding:14px 20px}
.fpd-title{color:#152945;font-size:18px;letter-spacing:-.025em}
.fpd-subtitle{color:#65748a;font-size:12px;margin-top:4px}
.fpd-dynamic-logo{box-shadow:none;border-radius:0}
.fpd-header-right{color:#43546c;display:flex;align-items:center;gap:10px}
.fpd-header-right label{font-size:12px;font-weight:700}
.fpd-header-right select{padding:9px;border:1px solid #c5d2e3;border-radius:6px;background:white;color:#142740;font-weight:700}
.fpd-main{grid-template-columns:300px minmax(0,1fr)}
.fpd-side-top{grid-row:1 / -1;overflow-y:auto;padding:18px 14px;background:#fff}
.fpd-panel-title{font-size:18px;margin-bottom:6px;letter-spacing:-.02em}
.fpd-panel-note{font-size:12px;line-height:1.5;margin-bottom:15px}
.fpd-group{border:0;box-shadow:none;padding:0;background:transparent}
.fpd-group-title{font-size:13px;margin:8px 0}
.fpd-subgroup-title{font-size:10px;letter-spacing:.13em;color:#64748b;margin:18px 0 9px;padding-top:13px}
.fpd-build-grid{gap:7px}
.fpd-btn,.fpd-test-btn,.fpd-build-btn{min-height:36px;font-size:11px;line-height:1.3;border-radius:6px;font-weight:600;box-shadow:none}
.fpd-btn.active,.fpd-test-btn.active,.fpd-build-btn.active{background:#154fa8;color:#fff;border:2px solid #0c397d;box-shadow:0 0 0 1px #a7c7f4;font-weight:800}
.fpd-build-btn[aria-pressed="false"],.fpd-test-btn[aria-pressed="false"],#rotateButton[aria-pressed="false"]{background:#fff;color:#34465e;border:1px solid #8294ad;box-shadow:none}
.fpd-build-btn[aria-pressed="true"]::before,.fpd-test-btn.active::before,#rotateButton.active::before{content:"✓";margin-right:5px;font-weight:900}
.fpd-build-btn[aria-pressed]:not(#frontNvisButton)::after,#rotateButton[aria-pressed]::after{content:"OFF";display:inline-block;margin-left:6px;font-size:9px;font-weight:800;letter-spacing:.04em}
.fpd-build-btn[aria-pressed="true"]:not(#frontNvisButton)::after,#rotateButton[aria-pressed="true"]::after{content:"ON"}
.fpd-test-btn.nvis-test.active{background:#075e49;color:white;border:2px solid #064c3b;box-shadow:0 0 0 1px #93e1c4}
.fpd-build-btn:disabled{opacity:.5;cursor:not-allowed}
.fpd-btn:focus-visible,.fpd-test-btn:focus-visible,.fpd-build-btn:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #ffa800;outline-offset:3px}
.fpd-build-select-row{font-size:11px;grid-template-columns:1fr 140px;margin-top:9px}
.fpd-build-select-row select,.fpd-bottom-control select{height:34px;font-size:11px;border-radius:5px;background:#fff}
.fpd-print-build-btn{font-size:12px;min-height:42px;margin-top:20px;background:#246ce5;border-color:#246ce5}
.fpd-print-build-btn:hover,.fpd-btn.orange:hover{background:#144bad;border-color:#144bad}
.fpd-stage-badge{top:14px;right:14px;background:#fffffff0;box-shadow:none;max-width:285px;border-radius:6px;padding:10px 12px}
.fpd-stage-badge strong{font-size:12px}.fpd-stage-badge span{font-size:11px;line-height:1.4}
.fpd-bottom-controls{padding:10px 12px;gap:10px}.fpd-bottom-control label{font-size:10px;margin-bottom:5px}
.fpd-bottom-buttons .fpd-btn{min-height:34px}.fpd-btn.green{background:#142740;border-color:#142740}
.fpd-bottom-full{grid-column:2;padding:10px 14px;background:#f8fafc}.fpd-test-grid{gap:6px;grid-template-columns:repeat(5,minmax(0,1fr))}
.fpd-test-grid #nvisCheckerBtn{grid-column:1}
.fpd-footer{padding:10px 20px;font-size:11px}.fpd-footer a{color:#144bad}
.fpd-sales-card,.fpd-bottom-help{display:none!important}
.fpd-modal{padding:24px;border-radius:12px}.fpd-modal h2{font-size:23px;letter-spacing:-.035em}.fpd-modal-buttons{bottom:-24px;margin:16px -24px -24px;padding:16px 24px}
.fpd-modal-founder-note{display:none}.fpd-modal p{font-size:14px;line-height:1.55}
.fpd-model-status{position:absolute;bottom:14px;left:14px;right:14px;color:#52627b;font-size:11px;text-align:center;pointer-events:none}
.fpd-embedded .fpd-header,.fpd-embedded .fpd-footer{display:none}
.fpd-embedded .fpd-viewer-page{background:#f8fafc}
@media(max-width:980px){.fpd-main{display:flex}.fpd-side-top{order:2;padding:18px}.fpd-workarea{order:1}.fpd-bottom-full{order:3}.fpd-stage{height:470px;min-height:370px}.fpd-build-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fpd-group{margin-bottom:8px}.fpd-build-select-row{max-width:450px}.fpd-header-right{white-space:normal}.fpd-header{flex-wrap:wrap}.fpd-bottom-control{min-width:100px;flex:1}.fpd-test-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:520px){.fpd-stage{height:430px;min-height:350px}.fpd-stage-badge{max-width:240px;top:10px;right:10px}.fpd-build-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fpd-test-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fpd-bottom-buttons{width:100%;justify-content:space-between}.fpd-header{padding:12px}.fpd-title{font-size:17px}.fpd-subtitle{white-space:normal}}
@media print{.fpd-model-status{display:none}.fpd-side-top{display:none}.fpd-stage{height:6.6in}.fpd-header{display:flex!important}}

.fpd-requirements{border:1px solid #d5deea;border-radius:8px;padding:16px;margin:18px 0}.fpd-requirements legend{font-weight:700}.fpd-requirements select{width:100%;min-height:42px;padding:8px;background:#fff;border:1px solid #a8b7ca;border-radius:5px}.fpd-requirements textarea{min-height:90px}.fpd-requirements #approvalHelp{font-size:12px;color:#4b5e76}

.fpd-tour{position:fixed;inset:16px 18px auto auto;box-sizing:border-box;width:min(440px,calc(100% - 36px));max-height:min(560px,calc(100vh - 32px));overflow:auto;margin:0;padding:24px;border:1px solid #b9cbe4;border-radius:12px;background:#fff;color:#142740;box-shadow:0 16px 55px #0c20394d;font:15px/1.6 Arial,sans-serif;text-align:left}
.fpd-tour::backdrop{background:#10274326}
.fpd-tour .fpd-tour-kicker{font-size:10px;font-weight:700;letter-spacing:.1em;color:#2168db;margin:0 0 10px;display:flex;justify-content:space-between;gap:20px}
.fpd-tour h2{font-size:25px;line-height:1.15;margin:0 0 12px;letter-spacing:-.025em}
.fpd-tour #fpdTourText{margin:0;color:#42536b}
.fpd-tour-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.fpd-tour-actions button{min-height:42px;border:1px solid #b9cbe4;border-radius:6px;background:white;color:#142740;padding:9px 13px;font:600 13px Arial,sans-serif;cursor:pointer}
.fpd-tour-actions #fpdTourNext{background:#2168db;border-color:#2168db;color:#fff;margin-left:auto}
.fpd-tour-actions button:disabled{opacity:.4;cursor:default}
.fpd-tour-actions button:focus-visible{outline:3px solid #ffad00;outline-offset:3px}
.fpd-tour-highlight{outline:3px solid #2168db!important;outline-offset:-3px}
@media(max-width:520px){.fpd-tour{right:12px;width:calc(100% - 24px);padding:20px}.fpd-tour h2{font-size:23px}.fpd-tour-actions{gap:6px}.fpd-tour-actions button{padding:9px 10px}}
.fpd-tour.fpd-tour-intro{right:12px;width:min(280px,calc(100% - 24px));padding:16px;font-size:13px;line-height:1.45}
.fpd-tour-intro h2{font-size:21px;margin-bottom:9px}
.fpd-tour-intro .fpd-tour-kicker{font-size:9px;letter-spacing:.05em;margin-bottom:8px}
.fpd-tour-intro #fpdTourDemoStatus{font-size:11px;line-height:1.4;margin:10px 0 0;color:#52627b}
.fpd-tour-intro .fpd-tour-actions{margin-top:12px;gap:6px}
.fpd-tour-intro .fpd-tour-actions button{font-size:11px;min-height:34px;padding:7px 10px}
@media print{.fpd-tour{display:none!important}.fpd-tour-highlight{outline:0!important}}
.fpd-side-top .fpd-build-select-row{grid-template-columns:1fr;gap:5px;margin:12px 0}
.fpd-side-top .fpd-build-select-row select{font-size:12px;min-height:36px}
.fpd-side-top .fpd-build-select-row.hidden{display:none}
#selectedPartLabel{font-weight:700;color:#154d91}

#frontNvisButton[aria-pressed="true"]:not(:disabled){background:#075e49;color:#fff;border:2px solid #064c3b;box-shadow:0 0 0 2px #93e1c4;font-weight:800}#frontNvisButton[aria-pressed="true"]:not(:disabled)::before{content:"✓";margin-right:8px;font-size:16px}
