:root{color:#1f2a37;background:#f6f8f7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;letter-spacing:0;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--border: #d7ded8;--field-border: #c4cdc6;--ink: #17212b;--muted: #637063;--green: #1b6f4a;--green-dark: #135538;--green-soft: #e7f3ed;--blue: #2458a5;--amber: #9a6400;--amber-soft: #fff7e5;--panel: #ffffff;--shadow: 0 18px 48px rgba(31, 42, 55, .1)}*{box-sizing:border-box}html{scrollbar-gutter:stable}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer;position:relative}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid rgba(36,88,165,.35);outline-offset:2px}.auth-shell{align-items:center;display:flex;min-height:100vh;padding:24px}.auth-panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);margin:0 auto;max-width:520px;padding:32px;width:100%}.brand-lockup{align-items:center;display:flex;flex-direction:column;gap:4px;margin-bottom:20px;text-align:center}.brand-lockup img{height:62px;object-fit:contain;width:102px}.brand-lockup strong{color:var(--ink);display:block;font-size:13px;line-height:1.35}.auth-panel h1{color:var(--ink);font-size:34px;line-height:1.08;margin:6px 0 12px}.page-header h1{color:var(--ink);font-size:24px;line-height:1.15;margin:0}.auth-panel p{color:var(--muted);line-height:1.6;margin:0 0 20px}.auth-form{display:grid;gap:16px}.auth-error{background:#fff0f0;border:1px solid #efb3b3;border-radius:8px;color:#8b1e1e;margin:0;padding:10px 12px}.auth-button{justify-content:center}.internal-shell{min-height:100vh}.internal-header{align-items:center;background:#fffffff5;border-bottom:1px solid var(--border);display:grid;gap:16px;grid-template-columns:260px 1fr 140px;padding:14px 24px;position:sticky;top:0;z-index:10}.internal-header .brand-lockup{margin:0}.brand-button{min-width:250px}.internal-nav{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.header-actions{align-items:center;display:flex;justify-content:flex-end}.nav-button{align-items:center;background:#fff;border:1px solid var(--field-border);border-radius:8px;color:#253128;display:inline-flex;font-size:13px;font-weight:800;gap:8px;min-height:38px;padding:8px 10px;text-decoration:none}.nav-button:hover,.nav-button:focus-visible{background:var(--green-soft);border-color:var(--green);color:var(--green-dark)}.nav-button.active{background:var(--green-dark);border-color:var(--green-dark);color:#fff}.approval-banner{align-items:center;background:#fff7e5;border:0;border-bottom:1px solid #e2be72;color:#71480c;display:flex;font-weight:900;gap:12px;justify-content:center;min-height:42px;padding:10px 44px 10px 16px;width:100%}.approval-banner:hover,.approval-banner:focus-visible{background:#ffefcc;color:#553606}.approval-banner kbd{color:#71480c}.menu-shell{margin:0 auto;max-width:1180px;padding:34px 24px 48px}.menu-hero{border-bottom:1px solid var(--border);margin-bottom:16px;padding-bottom:12px}.menu-hero h1{color:var(--ink);font-size:24px;line-height:1.15;margin:0}.menu-hero p:last-child{color:#3e4a43;font-size:18px;margin:0}.menu-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.menu-generated-section{display:grid;gap:14px;margin-top:28px}.menu-group-section{display:grid;gap:12px;margin-top:18px}.menu-group-section+.menu-group-section{margin-top:24px}.menu-group-tabs{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.menu-group-tab{background:#fff;border:1px solid var(--field-border);border-radius:8px;color:var(--blue);font-weight:900;min-height:42px;padding:10px 14px}.menu-group-tab:hover,.menu-group-tab.active{background:var(--green-soft);border-color:var(--green);color:var(--green-dark)}.menu-section-heading{border-bottom:1px solid var(--border);padding-bottom:12px}.menu-section-heading h2{color:var(--ink);font-size:24px;line-height:1.2;margin:0}.menu-section-heading p{color:var(--muted);margin:6px 0 0}.menu-tool-button{align-items:center;background:#fff;border:1px solid var(--border);border-left:6px solid var(--green);border-radius:8px;box-shadow:var(--shadow);color:var(--ink);display:flex;font-size:18px;font-weight:900;justify-content:space-between;min-height:116px;padding:18px;text-align:left;text-decoration:none}.menu-tool-button:hover{border-left-color:var(--blue);transform:translateY(-1px)}.generated-menu-tool-button{border-left-color:var(--blue)}.tool-page-shell{padding-top:24px}.page-shell{margin:0 auto;max-width:1440px;padding:28px}.page-header{background:var(--panel);border:1px solid var(--border);border-left:8px solid var(--green);border-radius:8px;box-shadow:var(--shadow);margin-bottom:16px;padding:14px 18px}.page-header .section-heading-row{border-bottom:0;padding-bottom:0}.eyebrow{color:var(--green);font-size:13px;font-weight:800;margin:0;text-transform:uppercase}.subtitle{color:#3e4a43;font-size:18px;line-height:1.5;margin:0 0 10px}.notice{color:var(--amber);font-size:14px;font-weight:700;margin:0}.calculator-notice{margin:-6px 0 16px}.calculator-grid{align-items:start;display:grid;gap:24px;grid-template-columns:minmax(360px,.8fr) minmax(0,1.4fr)}.input-panel,.results-panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);padding:24px}.input-panel{display:grid;gap:18px;position:sticky;top:24px}.results-panel{display:grid;gap:24px}.section-heading,.section-heading-row{border-bottom:1px solid var(--border);padding-bottom:14px}.section-heading h2,.section-heading-row h2,.table-section h2{color:var(--ink);font-size:20px;line-height:1.25;margin:0}.section-heading p,.section-heading-row p{color:var(--muted);font-size:14px;line-height:1.5;margin:6px 0 0}.section-heading-row{align-items:center;display:flex;gap:16px;justify-content:space-between}.field{display:grid;gap:7px}.field-label{color:var(--ink);font-size:14px;font-weight:800}.field-label-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.inline-link-button{background:transparent;border:0;color:var(--blue);font-size:13px;font-weight:800;min-height:0;padding:0;text-decoration:underline;text-underline-offset:3px}.inline-link-button:hover{color:var(--green-dark)}.inline-link-button kbd{margin-left:4px}.field-helper{color:var(--muted);font-size:12px;line-height:1.45}.text-input{background:#fff;border:1px solid var(--field-border);border-radius:8px;color:var(--ink);min-height:44px;padding:10px 12px;width:100%}.text-input:disabled{background:#eef2ef;color:#56635c}.password-input-grid{display:grid;grid-template-columns:minmax(0,1fr) auto}.password-input-grid .text-input{border-radius:8px 0 0 8px}.password-visibility-button{align-items:center;background:#fff;border:1px solid var(--field-border);border-left:0;border-radius:0 8px 8px 0;color:var(--blue);display:inline-flex;justify-content:center;min-width:46px;padding:8px 18px 16px 8px;position:relative}.password-visibility-button:hover{background:var(--green-soft);color:var(--green-dark)}.password-visibility-button svg{height:20px;width:20px}.password-visibility-button kbd{bottom:3px;position:absolute;right:4px}.searchable-select{display:block;width:100%}.searchable-select-options{background:#fff;border:1px solid var(--field-border);border-radius:8px;box-shadow:0 16px 38px #1f2a372e;overflow-y:auto;position:fixed;z-index:80}.searchable-select-option,.searchable-select-empty{padding:10px 12px}.searchable-select-option{cursor:pointer;display:grid;gap:3px}.searchable-select-option+.searchable-select-option{border-top:1px solid var(--border)}.searchable-select-option[aria-selected=true],.searchable-select-option:hover{background:var(--green-soft)}.searchable-select-option strong{color:var(--ink);font-size:14px;line-height:1.3}.searchable-select-option span,.searchable-select-empty{color:var(--muted);font-size:12px;line-height:1.35}.invalid-field{border-color:#d72d2d!important;box-shadow:0 0 0 3px #d72d2d24}.import-missing-field:not(.invalid-field){border-color:#ef8d8d!important;box-shadow:0 0 0 3px #ef8d8d2e}.import-populated-field:not(.invalid-field):not(.import-missing-field){border-color:#e6c65a!important;box-shadow:0 0 0 3px #e6c65a29}.dirty-field{background:var(--amber-soft);border-color:#d39a2e;box-shadow:inset 4px 0 #d39a2e}.percent-input-wrap{align-items:center;display:grid;grid-template-columns:1fr auto;position:relative}.percent-input{padding-right:34px}.percent-symbol{color:var(--muted);font-weight:800;margin-left:-30px;pointer-events:none;z-index:1}.advanced-panel{border:1px solid var(--border);border-radius:8px;overflow:hidden}.advanced-panel summary{background:#f4f7f5;color:var(--ink);cursor:pointer;display:grid;gap:5px;list-style:none;padding:14px 16px}.advanced-panel summary::-webkit-details-marker{display:none}.advanced-panel summary span{font-size:15px;font-weight:800}.advanced-panel summary small{color:var(--muted);font-size:12px;line-height:1.45}.advanced-content{display:grid;gap:18px;padding:16px}.quick-select-grid{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.quick-button,.button{align-items:center;border-radius:8px;display:inline-flex;gap:8px;min-height:42px;text-align:left}.quick-button{background:#fff;border:1px solid var(--field-border);color:#20312a;font-size:13px;font-weight:800;justify-content:space-between;padding:10px}.quick-button.active{background:var(--green-soft);border-color:var(--green);color:var(--green-dark)}.button{border:1px solid transparent;font-weight:800;padding:10px 14px}.primary-button{background:var(--green);color:#fff}.primary-button:hover{background:var(--green-dark)}.danger-button{background:#fff3ef;border-color:#a63f2c47;color:#8f3425}.danger-button:hover{background:#ffe7df}.secondary-button{background:#fff;border-color:var(--field-border);color:var(--blue)}.secondary-button:hover{background:#eef4fb}.button:disabled{cursor:not-allowed;opacity:.55}.button-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.visually-hidden-file{height:1px;opacity:0;overflow:hidden;position:absolute;width:1px}kbd{background:transparent;border:0;border-radius:0;color:#20312a;font-size:10px;font-weight:900;line-height:1;padding:0;white-space:nowrap}button:has(kbd){padding-bottom:16px;padding-right:24px}button kbd{bottom:4px;opacity:.72;pointer-events:none;position:absolute;right:6px}.result-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.result-card{background:#fbfcfb;border:1px solid var(--border);border-radius:8px;display:grid;gap:8px;min-height:146px;padding:18px}.result-label{color:var(--muted);font-size:13px;font-weight:800;line-height:1.35}.result-value{color:var(--green-dark);font-size:31px;line-height:1.08}.result-subtitle{color:var(--muted);font-size:12px;line-height:1.4}.table-section{display:grid;gap:12px}.table-scroll{border:1px solid var(--border);border-radius:8px;overflow-x:auto}.impact-table{border-collapse:collapse;min-width:760px;width:100%}.impact-table th,.impact-table td{border-bottom:1px solid var(--border);padding:12px;text-align:right;vertical-align:top}.impact-table thead th{background:#eef4f0;color:var(--ink);font-size:13px;font-weight:900}.impact-table thead th:first-child{text-align:left}.impact-table tbody th{color:#2e3c35;font-size:13px;font-weight:800;text-align:left}.impact-table td{color:var(--ink);font-size:14px;font-weight:700}.impact-table td small{color:var(--amber);display:block;font-size:11px;font-weight:800;line-height:1.35;margin-top:4px}.impact-table tr:last-child th,.impact-table tr:last-child td{border-bottom:0}.neonova-shell .page-header h1 sup,.menu-tool-button sup{font-size:.52em;line-height:0;vertical-align:super}.neonova-shell{max-width:1320px;overflow-x:clip}.neonova-save-panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);display:grid;gap:12px;margin-bottom:16px;padding:16px}.neonova-proposal-list-scroll{max-height:56vh}.neonova-proposal-list-table{min-width:1080px}.neonova-proposal-list-table td:nth-child(2),.neonova-proposal-list-table td:nth-child(3),.neonova-proposal-list-table td:nth-child(4),.neonova-proposal-list-table td:nth-child(5),.neonova-proposal-list-table td:nth-child(6),.neonova-proposal-list-table td:nth-child(7){white-space:nowrap}.neonova-proposal-list-table td:nth-child(6),.neonova-proposal-list-table td:nth-child(7){color:var(--green-dark);font-weight:900;text-align:right}.neonova-proposal-list-table td:nth-child(8){color:var(--muted);white-space:nowrap}.neonova-proposal-open-button{background:transparent;border:0;color:var(--blue);cursor:pointer;font:inherit;font-weight:900;max-width:100%;overflow-wrap:anywhere;padding:0;text-align:left}.neonova-proposal-open-button:hover,.neonova-proposal-open-button:focus-visible{color:var(--green-dark);outline:none;text-decoration:underline;text-underline-offset:3px}.neonova-deal-layout{display:grid;gap:16px}.neonova-input-panel{display:grid;gap:18px;position:static}.neonova-input-panel .section-heading-row,.neonova-form-section h3{background:#0f766e;border-bottom:0;border-radius:8px;color:#fff;padding:8px 10px}.neonova-input-panel .section-heading-row h2{color:#fff}.neonova-form-section{display:grid;gap:12px}.neonova-form-section h3{font-size:16px;line-height:1.2;margin:0}.neonova-compact-grid{align-items:stretch;display:grid;gap:10px;grid-template-columns:minmax(0,1fr)}.neonova-compact-grid .field{min-width:0}.neonova-wide-field{grid-column:span 2;max-width:520px;min-width:min(360px,100%);width:100%}.neonova-wide-field .text-input{width:min(34rem,100%)}.neonova-input-with-suffix{align-items:center;display:grid;gap:5px;grid-template-columns:var(--neonova-input-width) auto;width:max-content}.neonova-input-with-suffix>span{color:var(--muted);font-size:12px;font-weight:800;white-space:nowrap}.neonova-readonly-value{align-items:center;background:#f4f7f5;border:1px solid var(--border);border-radius:8px;color:var(--green-dark);display:flex;font-weight:900;min-height:40px;padding:8px 10px}.neonova-number-field{width:100%}.neonova-number-field .field-label{line-height:1.2;max-width:18rem}.neonova-number-stepper{--neonova-input-width: 7ch;align-items:center;display:inline-grid;gap:4px;grid-template-columns:30px max-content 30px;max-width:100%;width:max-content}.neonova-input-rate{--neonova-input-width: 7ch}.neonova-input-mw{--neonova-input-width: 5.5ch}.neonova-input-month,.neonova-input-percent{--neonova-input-width: 4.5ch}.neonova-input-money{--neonova-input-width: 11ch}.neonova-input-medium{--neonova-input-width: 7ch}.neonova-number-stepper .text-input{min-height:36px;min-width:var(--neonova-input-width);padding:7px 6px;text-align:right;width:var(--neonova-input-width)}.neonova-step-button{align-items:center;background:#fff;border:1px solid var(--field-border);border-radius:8px;color:var(--blue);display:inline-flex;font-size:17px;font-weight:900;justify-content:center;min-height:36px;padding:0;width:30px}.neonova-step-button:hover{background:#eef4fb}.neonova-model-status{align-items:center;background:var(--green-soft);border:1px solid #bddbc9;border-radius:8px;display:flex;flex:0 0 190px;justify-content:space-between;min-width:190px;padding:11px 12px;width:190px}.neonova-model-status.warning{background:#fff0f0;border-color:#efb3b3}.neonova-model-status span{color:var(--muted);font-size:13px;font-weight:800}.neonova-model-status strong{color:var(--green-dark);font-size:15px;white-space:nowrap}.neonova-model-status.warning strong{color:#8f3425}.neonova-results-panel{margin-top:16px;gap:14px;min-width:0;overflow:hidden}.neonova-proposal-party{align-items:center;background:#f4f7f5;border:1px solid var(--border);border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:10px 12px}.neonova-proposal-party span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.neonova-proposal-party strong{color:var(--ink);font-size:15px;overflow-wrap:anywhere;text-align:right}.neonova-result-table-wrap{border:1px solid var(--border);border-radius:8px;overflow-x:auto}.neonova-result-table{min-width:820px;table-layout:fixed;width:100%}.neonova-result-table thead th{background:#0f766e;color:#fff}.neonova-result-table thead th:nth-child(1),.neonova-result-table tbody th{width:31%}.neonova-result-table thead th:nth-child(2),.neonova-result-table td:nth-child(2){width:22%}.neonova-result-table thead th:nth-child(3),.neonova-result-table td:nth-child(3){width:47%}.neonova-result-table th,.neonova-result-table td{text-align:left}.neonova-result-table td:nth-child(2){color:var(--green-dark);font-weight:900;text-align:right;white-space:nowrap}@keyframes neonova-result-change-settle{0%{background-color:#ffd99a}35%{background-color:#ffedc7}to{background-color:#fff9e8}}.neonova-highlight-row th,.neonova-highlight-row td{border-bottom-color:#e8c5bb}.neonova-highlight-row{box-shadow:inset 4px 0 #da3b2f}.neonova-result-row-changed th,.neonova-result-row-changed td{animation:neonova-result-change-settle 5s ease-out forwards;background-color:#fff9e8}.neonova-result-row-changed{box-shadow:inset 4px 0 #f0a23a}.button.neonova-saved-button,.button.neonova-saved-button:disabled{background:#e3f3ea;border-color:#b8dcc9;color:#15593d;cursor:default;opacity:1}@media(min-width:861px){.neonova-deal-layout{align-items:start;grid-template-columns:minmax(390px,420px) minmax(0,1fr)}.neonova-input-panel{gap:10px;padding:12px}.neonova-input-panel .section-heading-row{align-items:start;gap:8px;padding:8px}.neonova-input-panel .section-heading-row h2{font-size:18px}.neonova-input-panel .neonova-model-status{align-items:start;display:grid;flex-basis:104px;gap:2px;justify-content:stretch;min-width:104px;padding:6px 8px;width:104px}.neonova-input-panel .neonova-model-status span{font-size:10px}.neonova-input-panel .neonova-model-status strong{font-size:12px}.neonova-input-panel .neonova-form-section{gap:7px}.neonova-input-panel .neonova-form-section h3{font-size:13px;padding:6px 8px}.neonova-input-panel .neonova-compact-grid{align-items:stretch;column-gap:0;display:grid;grid-template-columns:minmax(0,1fr);row-gap:6px}.neonova-input-panel .field{gap:4px}.neonova-input-panel .field-label{font-size:12px}.neonova-input-panel .neonova-number-field{align-items:center;display:grid;gap:6px;grid-template-columns:minmax(150px,1fr) max-content;width:100%}.neonova-input-panel .neonova-number-field .field-label{max-width:none}.neonova-input-panel .neonova-number-stepper{gap:3px}.neonova-input-panel .neonova-number-stepper .text-input{min-height:30px;padding:4px 5px}.neonova-input-panel .neonova-step-button{border-radius:6px;font-size:14px;min-height:30px;width:26px}.neonova-input-panel .neonova-wide-field{grid-column:1;max-width:none;min-width:0;width:100%}.neonova-input-panel .neonova-wide-field .text-input{min-height:34px;padding:6px 8px;width:100%}.neonova-results-panel{gap:12px;margin-top:0;padding:16px}.neonova-results-panel .section-heading-row{padding-bottom:10px}.neonova-result-table th,.neonova-result-table td{padding:8px 10px}}.warning-panel{background:var(--amber-soft);border:1px solid #f1cf8a;border-radius:8px;display:grid;gap:10px;padding:16px}.warning-panel p{color:#684500;font-size:13px;line-height:1.5;margin:0}.pdf-section{display:grid;gap:12px}.report-text-section,.saved-estimates-section{display:grid;gap:14px}.report-textarea{background:#fbfcfb;border:1px solid var(--field-border);border-radius:8px;color:#253128;line-height:1.55;min-height:230px;padding:14px;resize:vertical;width:100%}.saved-estimates-list{min-height:88px}.loi-draft-list-panel{display:grid;gap:8px;margin:0 auto 14px;max-width:1280px;padding:0}.loi-draft-list-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.loi-draft-title-row{align-items:center;display:flex;gap:8px;min-width:0}.loi-draft-title-row h2{margin:0;min-width:0}.loi-draft-title-button{background:transparent;border:0;color:var(--ink);cursor:pointer;font-size:18px;font-weight:900;line-height:1.2;overflow:hidden;padding:2px 0;text-align:left;text-overflow:ellipsis;white-space:nowrap}.loi-draft-title-button:hover,.loi-draft-title-button:focus-visible{color:var(--green-dark);outline:none;text-decoration:underline}.loi-draft-title-button:disabled{cursor:not-allowed;opacity:.55;text-decoration:none}.loi-draft-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.loi-draft-toggle{align-items:center;background:transparent;border:0;color:var(--green-dark);cursor:pointer;display:inline-flex;font-size:20px;font-weight:900;height:28px;justify-content:center;line-height:1;padding:0;width:28px}.loi-draft-toggle:hover,.loi-draft-toggle:focus-visible{background:var(--green-soft);border-radius:50%;outline:none}.loi-draft-toggle:disabled{cursor:not-allowed;opacity:.55}.loi-draft-list-scroll{border:1px solid var(--border);border-radius:8px;max-height:20vh;min-height:132px;overflow:auto}.loi-draft-list-table{border-collapse:collapse;font-size:13px;min-width:880px;width:100%}.loi-draft-list-table th,.loi-draft-list-table td{border-bottom:1px solid var(--border);padding:8px 10px;text-align:left;vertical-align:middle}.loi-draft-list-table th{background:#f4f7f5;color:var(--muted);font-size:11px;font-weight:900;position:sticky;text-transform:uppercase;top:0;z-index:1}.loi-draft-list-table tbody tr{cursor:pointer}.loi-draft-list-table tbody tr:hover,.loi-draft-list-table tbody tr:focus-visible,.loi-draft-list-table tbody tr.active{background:var(--green-soft);outline:none}.loi-draft-list-table td:first-child{color:var(--ink);font-weight:900;min-width:190px}.compact-heading-row{align-items:end}.empty-state{background:#fbfcfb;border:1px dashed var(--field-border);border-radius:8px;color:var(--muted);font-size:13px;line-height:1.45;margin:0;padding:12px}.storage-status{background:#fff7e5;border:1px solid #f1cf8a;border-radius:8px;color:#684500;font-size:13px;font-weight:800;line-height:1.45;margin:0;padding:10px 12px}.loading-line{align-items:center;background:#f4f7f5;border:1px solid var(--border);border-radius:8px;color:var(--muted);display:flex;font-size:13px;font-weight:900;gap:9px;line-height:1.45;margin:0;padding:10px 12px}.loading-spinner{animation:q3-spin .75s linear infinite;border:2px solid rgba(36,88,165,.22);border-top-color:var(--blue);border-radius:50%;box-sizing:border-box;display:block;flex:0 0 16px;height:16px;transform-origin:50% 50%;width:16px;will-change:transform}@keyframes q3-spin{to{transform:rotate(360deg)}}.pdf-status{color:var(--green-dark);font-size:13px;font-weight:900;min-height:18px}.loi-status{margin:0 auto 14px;max-width:1280px}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);white-space:nowrap}.loi-grid{grid-template-columns:1fr;margin-left:auto;margin-right:auto;max-width:1280px}.loi-input-panel{align-content:start;position:static}.loi-inputs-collapsed .loi-input-panel{gap:0}.loi-inputs-heading{border-bottom:0;padding-bottom:0}.loi-inputs-heading h2{margin:0}.loi-section-title-button{align-items:center;background:transparent;border:0;color:var(--ink);cursor:pointer;display:inline-flex;font-size:20px;font-weight:900;gap:8px;line-height:1.2;padding:0;text-align:left}.loi-section-title-button:has(kbd){padding-bottom:14px;padding-right:24px}.loi-section-title-button:hover,.loi-section-title-button:focus-visible{color:var(--green-dark);outline:none;text-decoration:underline}.loi-regular-grid{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}.loi-span-2{grid-column:span 2}.loi-text-fields{border-top:1px solid var(--border);display:grid;gap:16px;grid-template-columns:minmax(0,1fr);padding-top:16px}.loi-text-fields .loi-span-2{grid-column:1}.loi-uptime-years{display:grid;gap:8px;grid-template-columns:repeat(5,minmax(66px,1fr))}.template-editor-panel,.legal-section-editor{display:grid;gap:16px}.currency-decimal-wrap,.compound-input-grid,.date-input-grid{align-items:center;display:grid;gap:8px}.currency-decimal-wrap{grid-template-columns:auto minmax(0,1fr)}.currency-decimal-wrap>span{color:var(--ink);font-weight:900}.compound-input-grid{grid-template-columns:minmax(0,1fr) minmax(84px,auto) minmax(84px,auto)}.currency-rate-grid{grid-template-columns:auto minmax(0,1fr) minmax(84px,auto)}.input-prefix,.input-suffix{color:var(--muted);font-size:13px;font-weight:900}.date-input-grid{grid-template-columns:minmax(0,1fr) auto}.date-picker-icon-button{align-items:center;background:#fff;border:1px solid var(--field-border);border-radius:8px;color:var(--blue);display:inline-flex;gap:7px;justify-content:center;min-height:44px;padding:8px 10px;white-space:nowrap}.date-picker-icon-button:has(kbd){padding-bottom:16px;padding-right:24px}.date-picker-icon-button:hover{background:var(--green-soft);border-color:var(--green)}.calendar-icon{height:18px;width:18px}.flow-input-row{align-items:center;display:grid;gap:8px;grid-template-columns:auto minmax(80px,.22fr) auto minmax(80px,.22fr) minmax(220px,1fr)}.flow-input-row span{color:var(--ink);font-size:14px;font-weight:800}.inline-checkbox{align-items:center;color:var(--muted);display:inline-flex;font-size:13px;font-weight:800;gap:6px}.compact-textarea{min-height:156px}.radio-row,.uptime-grid{display:grid;gap:12px}.radio-row{grid-template-columns:repeat(2,minmax(0,1fr))}.uptime-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.rich-text-field{min-width:0}.rich-text-actions{align-items:center;display:inline-flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.rich-text-toolbar{display:flex;flex-wrap:wrap;gap:8px}.rich-format-button{align-items:center;background:#fff;border:1px solid var(--field-border);border-radius:8px;color:var(--ink);display:inline-flex;font-size:13px;font-weight:900;gap:7px;min-height:36px;padding:7px 9px}.rich-format-button:has(kbd){padding-bottom:16px;padding-right:24px}.rich-format-button:hover{background:var(--green-soft);border-color:var(--green)}.rich-format-button:disabled{cursor:not-allowed;opacity:.55}.rich-placeholder-select{min-height:36px;min-width:180px}.loi-clause-builder{align-items:start;display:grid;gap:14px;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr)}.loi-clause-preview-panel{display:grid;gap:8px;min-width:0}.loi-clause-preview{background:#fbfcfb;border:1px solid var(--field-border);border-radius:8px;color:var(--ink);line-height:1.55;padding:14px}.loi-clause-preview p{margin:0 0 8px}.loi-clause-preview p:last-child{margin-bottom:0}.loi-add-clause-button{justify-self:start;margin-top:4px}.underline-mark{text-decoration:underline}.rich-text-editor{background:#fbfcfb;border:1px solid var(--field-border);border-radius:8px;color:#253128;line-height:1.55;min-height:150px;padding:14px}.rich-text-editor ul,.rich-text-editor ol,.loi-preview-document ul,.loi-preview-document ol{margin-bottom:0;margin-top:0;padding-left:22px}.loi-preview-document{background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--ink);display:grid;gap:18px;padding:22px}.loi-preview-document h2{color:var(--ink);font-size:22px;letter-spacing:0;line-height:1.2;margin:0;text-align:center}.loi-preview-table{min-width:820px}.loi-preview-table th,.loi-preview-table td{text-align:left;white-space:pre-wrap}.loi-preview-table thead th:first-child,.loi-preview-table tbody th:first-child{width:72px}.loi-preview-table tbody th:nth-child(2){width:230px}.loi-preview-value{color:#d00000;font-weight:800}.loi-preview-value p{margin:0 0 7px}.loi-preview-value p:last-child{margin-bottom:0}.po-shell .page-header,.po-grid,.po-draft-status{margin-left:auto;margin-right:auto;max-width:1280px}.po-review-active .page-header,.po-review-active .po-grid,.po-review-active .po-draft-status,.po-review-active .po-sent-panel{max-width:none;width:min(100% - 32px,1880px)}.po-review-grid{align-items:start;gap:16px;grid-template-columns:minmax(400px,.95fr) minmax(0,1.05fr)}.po-review-grid .po-input-panel{min-width:0}.po-quote-preview-panel{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 12px 36px #12294614;display:grid;gap:12px;min-height:520px;overflow:hidden;padding:14px;position:sticky;top:12px}.po-quote-frame,.po-quote-image-wrap{background:#f5f7f8;border:1px solid var(--border);border-radius:8px;min-height:640px;overflow:auto;width:100%}.po-quote-frame{height:calc(100vh - 226px)}.po-quote-image-wrap{align-items:start;display:flex;justify-content:center;padding:10px}.po-quote-image-wrap img{display:block;max-width:100%}.po-quote-link-card{align-content:center;background:#fbfcfb;border:1px solid var(--border);border-radius:8px;color:var(--muted);display:grid;gap:10px;min-height:260px;padding:18px;text-align:center}.po-quote-link-card p,.po-quote-actions{margin:0}.po-quote-actions{font-size:13px}.po-mobile-quote-toggle,.po-mobile-jump-link,.po-mobile-jump-links{display:none}.po-monday-link{font-size:12px}.po-monday-description{display:block;margin-top:6px}.po-review-active .po-form-paper{gap:12px;padding:14px}.po-review-active .po-title-row h2{font-size:22px}.po-review-active .po-meta-grid,.po-review-active .po-detail-grid{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.po-review-active .po-address-grid,.po-review-active .po-lower-grid{gap:10px;grid-template-columns:1fr}.po-review-active .po-address-box,.po-review-active .po-totals-panel{padding:10px}.po-review-active .po-address-preview{min-height:76px}.po-review-active .po-items-table{min-width:940px}.po-review-active .po-items-table th,.po-review-active .po-items-table td{padding:6px}.po-input-panel{background:transparent;border:0;box-shadow:none;padding:0;position:static}.po-connection-panel{background:#fff;border:1px solid var(--border);border-left:6px solid var(--blue);border-radius:8px;box-shadow:0 12px 36px #12294614;display:grid;gap:10px;margin:0 auto;max-width:1280px;padding:18px 20px}.po-connection-panel.blocked{border-left-color:#8f3425}.po-connection-panel h2{color:var(--ink);font-size:22px;line-height:1.2;margin:0}.po-connection-panel p{color:var(--muted);font-size:15px;line-height:1.45;margin:0}.po-connection-panel .loading-line{margin:0}.po-connection-panel .button-row{margin-top:4px}.po-form-paper{background:#fff;border:1px solid var(--border);border-radius:8px;display:grid;gap:18px;padding:22px}.po-title-row{border-bottom:3px solid var(--blue);padding-bottom:10px;text-align:center}.po-title-row h2{color:var(--ink);font-size:26px;letter-spacing:0;line-height:1.1;margin:0}.po-meta-grid{align-items:end;display:grid;gap:12px;grid-template-columns:repeat(5,minmax(0,1fr))}.po-address-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.po-address-box{align-content:start;border:1px solid var(--border);border-radius:8px;padding:12px}.po-address-preview{background:#fbfcfb;border:1px solid var(--field-border);border-radius:8px;color:var(--ink);font-family:inherit;font-size:13px;line-height:1.5;margin:0;min-height:104px;overflow:auto;padding:10px;white-space:pre-wrap}.po-detail-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.po-items-section,.po-notes-grid,.po-totals-panel{display:grid;gap:12px}.po-items-table-wrap{border:1px solid var(--border);border-radius:8px;overflow-x:auto}.po-items-table{border-collapse:collapse;min-width:1180px;width:100%}.po-items-table th,.po-items-table td{border-bottom:1px solid var(--border);padding:8px;text-align:left;vertical-align:middle}.po-items-table th{background:#f4f7f5;color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.po-items-table td:first-child,.po-items-table th:first-child{text-align:center;width:72px}.po-items-table td:nth-child(3),.po-items-table td:nth-child(5),.po-items-table td:nth-child(7){text-align:right}.po-account-cell{display:grid;gap:6px;min-width:220px}.compact-checkbox{align-items:center;display:flex;gap:7px;margin:0}.compact-checkbox span{font-size:12px;font-weight:800}.po-quote-link{color:var(--muted);font-size:13px;margin:0}.po-sent-panel{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 12px 36px #12294614;display:grid;gap:12px;margin:14px auto;max-width:1280px;padding:16px}.po-sent-list{display:grid;gap:8px}.po-sent-row{align-items:center;border-top:1px solid var(--border);display:grid;gap:10px;grid-template-columns:minmax(220px,1fr) 120px minmax(180px,.7fr) auto;padding-top:8px}.po-order-list-table td:nth-child(7){color:var(--blue);font-weight:900}.po-readonly-paper{gap:16px}.po-readonly-notes-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.po-readonly-links{display:flex;flex-wrap:wrap;gap:8px}.po-approval-layout{display:grid;gap:14px;margin:0 auto;max-width:1280px}.po-approval-summary,.po-signature-panel{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 12px 36px #12294614;display:grid;gap:16px;padding:18px}.po-approval-facts{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.po-approval-facts div{background:#fbfcfb;border:1px solid var(--border);border-radius:8px;display:grid;gap:4px;min-height:70px;padding:10px}.po-approval-facts span{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.po-approval-facts strong{color:var(--ink);font-size:14px;line-height:1.35;overflow-wrap:anywhere}.po-approval-addresses{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.signature-mode-row{display:flex;flex-wrap:wrap;gap:8px}.signature-draw-area,.signature-upload-area,.signature-saved-area,.signature-type-grid{display:grid;gap:12px}.signature-canvas{background:#fff;border:1px solid var(--field-border);border-radius:8px;height:170px;touch-action:none;width:100%}.signature-type-grid{grid-template-columns:minmax(0,1fr) minmax(180px,240px)}.signature-preview-box{align-items:center;background:#fff;border:1px solid var(--field-border);border-radius:8px;color:var(--ink);display:flex;font-size:44px;grid-column:1 / -1;justify-content:center;min-height:132px;overflow:hidden;padding:16px;text-align:center}.signature-upload-area img,.signature-saved-area img{background:#fff;border:1px solid var(--field-border);border-radius:8px;display:block;max-height:180px;max-width:100%;object-fit:contain;padding:10px}.po-description-input{min-height:64px;resize:vertical}.po-row-actions{display:flex;flex-wrap:wrap;gap:6px}.po-row-button{align-items:center;background:#fff;border:1px solid var(--field-border);border-radius:8px;color:var(--blue);display:inline-flex;font-size:12px;font-weight:900;gap:5px;justify-content:center;min-height:34px;padding:6px 8px}.po-row-button:hover{background:#eef4fb}.po-row-button.danger{color:#8f3425}.po-row-button:disabled{cursor:not-allowed;opacity:.5}.po-lower-grid{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) minmax(240px,.34fr)}.po-totals-panel{border:1px solid var(--border);border-radius:8px;padding:14px}.po-total-row{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:12px;justify-content:space-between;padding-bottom:9px}.po-total-row span{color:var(--muted);font-size:13px;font-weight:900;text-transform:uppercase}.po-total-row strong{color:var(--ink);font-size:15px}.po-total-row.strong{background:var(--green-soft);border:1px solid rgba(27,111,74,.22);border-radius:8px;padding:10px}.po-total-row.strong strong{color:var(--green-dark);font-size:20px}.uptime-preview-table{border-collapse:collapse;width:100%}.uptime-preview-table th,.uptime-preview-table td{border-bottom:1px solid var(--border);padding:6px;text-align:left}.loi-preview-legal{display:grid;gap:12px}.loi-preview-legal h3{color:var(--ink);font-size:16px;line-height:1.25;margin:0 0 6px}.loi-preview-legal p,.signature-preview p{line-height:1.55;margin:0 0 8px}.signature-grid{display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}.template-editor-panel{margin:0 auto;max-width:1120px}.legal-section-editor{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);padding:18px}.solar-shell,.admin-shell,.bank-shell{padding-left:24px;padding-right:24px}.solar-workspace,.admin-workspace,.bank-workspace{margin:0 auto;max-width:1180px}.intro{margin-bottom:16px;max-width:820px}.intro h1,.admin-heading h1,.bank-heading h1{color:var(--ink);font-size:24px;line-height:1.15;margin:0}.intro p:last-child{color:#5d685f;font-size:16px;line-height:1.55;margin:0}.location-panel,.empty-state,.results,.baseline-strip,.saved-locations,.alert,.admin-list,.admin-editor,.bank-panel,.bank-summary-tile{background:#ffffffeb;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}.location-panel{padding:22px}.form-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.field-wide{grid-column:1 / -1}.location-panel .field>span:not(.field-helper),.admin-editor .checkbox-field span{color:var(--ink);font-size:14px;font-weight:800}.location-panel .field input{background:#fff;border:1px solid var(--field-border);border-radius:8px;color:var(--ink);min-height:44px;padding:10px 12px;width:100%}.address-search-wrap{position:relative}.address-suggestions{background:#fff;border:1px solid var(--field-border);border-radius:8px;box-shadow:0 14px 34px #1f2a3729;left:0;max-height:286px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 6px);z-index:25}.address-suggestion{cursor:pointer;display:grid;gap:3px;padding:10px 12px}.address-suggestion+.address-suggestion{border-top:1px solid var(--border)}.address-suggestion[aria-selected=true],.address-suggestion:hover{background:var(--green-soft)}.address-suggestion strong{color:var(--ink);font-size:14px;line-height:1.3}.address-suggestion span{color:var(--muted);font-size:12px;line-height:1.35}.pac-container{display:none!important}.location-panel .field small{color:var(--muted);font-size:12px;min-height:18px}.actions-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.primary-action,.secondary-action,.danger-action{align-items:center;border-radius:8px;display:inline-flex;gap:8px;min-height:42px;padding:10px 14px;font-weight:800}.primary-action{background:var(--green);border:1px solid var(--green);color:#fff}.primary-action:disabled{cursor:wait;opacity:.72}.secondary-action{background:#fff;border:1px solid var(--field-border);color:var(--blue)}.danger-action{background:#fff3ef;border:1px solid rgba(166,63,44,.28);color:#8f3425}.compact-action{min-height:36px;padding:7px 10px}.coordinate-preview{color:var(--muted);font-size:14px}.alert{border-color:#a63f2c59;color:#8f3425;font-weight:800;margin-top:16px;padding:14px 16px}.empty-state{margin-top:18px;padding:28px}.empty-state h2,.results h2,.saved-locations h2{color:var(--ink);margin:0 0 8px}.empty-state p{color:var(--muted);line-height:1.5;margin:0}.baseline-strip{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px;padding:18px}.baseline-strip span,.source-note span,.metric-value span,.sizing-value span{color:var(--muted);display:block;font-size:12px;font-weight:900;text-transform:uppercase}.baseline-strip strong,.source-note strong{display:block;margin-top:4px}.results{margin-top:18px;padding:22px}.results-header{align-items:flex-start;display:flex;gap:18px;justify-content:space-between;margin-bottom:18px}.comparison-address{color:#3f4a45;font-weight:800;margin-bottom:4px}.comparison-coordinates{color:var(--muted)}.source-note{background:#f8faf6;border:1px solid var(--border);border-radius:8px;min-width:210px;padding:12px}.planning-grid{align-items:stretch;display:grid;gap:14px;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr)}.metric-card,.calculator-card{background:#fff;border:1px solid var(--border);border-radius:8px;padding:16px}.calculator-card{display:grid;gap:16px}.metric-title{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.metric-title h3,.calculator-card h3{color:var(--ink);font-size:18px;margin:0 0 4px}.metric-title p,.calculator-card p{color:var(--muted);line-height:1.45;margin:0}.metric-title>strong{color:var(--green-dark);font-size:24px}.metric-values,.sizing-grid{display:grid;gap:10px}.metric-values{margin-top:18px}.sizing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-value,.sizing-value,.sizing-empty{background:#f4f7f1;border-radius:8px;padding:12px}.metric-value strong,.sizing-value strong{color:var(--ink);display:block;font-size:18px;margin-top:4px}.metric-value small,.sizing-empty{color:var(--muted)}.delta{font-weight:900;margin-top:14px}.delta.positive{color:var(--green-dark)}.delta.negative{color:#9c4f20}.saved-locations{margin-top:18px;padding:16px}.saved-header{align-items:center;display:flex;gap:14px;justify-content:space-between}.saved-location-list{display:grid;gap:8px;margin-top:12px}.saved-location-card{align-items:center;background:#fff;border:1px solid var(--border);border-radius:8px;display:grid;gap:12px;grid-template-columns:auto minmax(220px,1fr) minmax(180px,auto);padding:10px 12px}.saved-location-card:has(input:checked){border-color:var(--green);box-shadow:inset 4px 0 0 var(--green)}.saved-location-main h3{color:var(--ink);font-size:15px;margin:0 0 2px}.saved-location-main span,.saved-location-facts span{color:var(--muted);font-size:13px}.saved-location-facts{align-items:center;display:flex;gap:10px;justify-content:flex-end}.admin-grid{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(320px,.9fr) minmax(360px,1.1fr);margin-top:18px}.po-admin-wide{display:grid;gap:16px;margin-top:16px}.admin-po-integration-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-po-integration-panel{border:1px solid var(--border);border-radius:8px;display:grid;gap:12px;padding:14px}.admin-po-integration-panel h3{color:var(--ink);font-size:16px;margin:0}.admin-po-account-table-wrap{border:1px solid var(--border);border-radius:8px;overflow-x:auto}.admin-po-account-table{border-collapse:collapse;min-width:860px;width:100%}.admin-po-account-table th,.admin-po-account-table td{border-bottom:1px solid var(--border);padding:8px;text-align:left;vertical-align:middle}.admin-po-account-table th{background:#f4f7f5;color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.admin-po-account-table small{color:var(--muted);display:block;font-size:12px;margin-top:3px}.admin-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.admin-tab-button{align-items:center;background:#fff;border:1px solid var(--field-border);border-radius:8px;color:var(--blue);display:inline-flex;font-weight:900;gap:8px;min-height:42px;padding:10px 14px}.admin-tab-button:hover,.admin-tab-button.active{background:var(--green-soft);border-color:var(--green);color:var(--green-dark)}.admin-subheading{margin-top:18px}.admin-list,.admin-editor{display:grid;gap:16px;padding:20px}.admin-user-list{display:grid;gap:8px}.admin-user-row{align-items:center;background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--ink);display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;padding:10px}.admin-user-row.active{border-color:var(--green);box-shadow:inset 4px 0 0 var(--green)}.admin-user-row strong,.admin-user-row small{display:block}.admin-user-row small{color:var(--muted);font-size:12px;margin-top:2px}.admin-user-badges{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}.admin-user-badges em{background:var(--green-soft);border-radius:999px;color:var(--green-dark);font-size:11px;font-style:normal;font-weight:900;padding:4px 7px}.admin-group-checkboxes{border-top:1px solid var(--border);display:grid;gap:10px;padding-top:12px}.admin-group-checkbox-grid{display:grid;gap:9px 14px;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-page-access-panel{display:grid;gap:12px;margin-top:16px}.admin-page-access-table-wrap{border:1px solid var(--border);border-radius:8px;overflow-x:auto}.admin-page-access-table{border-collapse:collapse;min-width:760px;width:100%}.admin-page-access-table th,.admin-page-access-table td{border-bottom:1px solid var(--border);padding:10px;text-align:center;vertical-align:middle}.admin-page-access-table thead th{background:#f4f7f5;color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.admin-page-access-table tbody th{color:var(--ink);text-align:left;width:260px}.admin-page-access-table tbody th strong,.admin-page-access-table tbody th small{display:block}.admin-page-access-table tbody th small{color:var(--muted);font-size:11px;margin-top:3px}.admin-page-access-table tr:last-child th,.admin-page-access-table tr:last-child td{border-bottom:0}.admin-page-access-cell{align-items:center;display:inline-flex;gap:9px;justify-content:center;min-height:36px}.admin-page-order-field{align-items:center;display:inline-flex;gap:5px}.admin-page-order-field span{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.admin-page-order-field input{background:#fff;border:1px solid var(--field-border);border-radius:8px;color:var(--ink);font-weight:800;min-height:34px;padding:5px 6px;text-align:center;width:58px}.form-generator-grid{grid-template-columns:minmax(320px,.75fr) minmax(520px,1.25fr)}.generated-form-metadata-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.generated-field-list{display:grid;gap:12px}.generated-field-card{background:#fbfcfb;border:1px solid var(--border);border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(140px,1.1fr) minmax(120px,.7fr) minmax(130px,.8fr) minmax(150px,1fr) auto;padding:12px}.generated-required-field,.generated-runtime-checkbox{align-self:center}.admin-dirty-note{background:var(--amber-soft);border:1px solid rgba(154,100,0,.22);border-radius:8px;color:#745000;font-size:13px;font-weight:800;line-height:1.45;margin:0;padding:10px 12px}.checkbox-field{align-items:center;display:inline-flex;gap:10px}.unsaved-dialog-backdrop{align-items:center;background:#17212b73;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:100}.unsaved-dialog{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);display:grid;gap:16px;max-width:500px;padding:24px;width:min(100%,500px)}.unsaved-dialog h2{color:var(--ink);font-size:24px;line-height:1.15;margin:0}.unsaved-dialog p{color:var(--muted);line-height:1.55;margin:0}.bank-summary-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px}.bank-summary-tile{display:grid;gap:8px;min-height:112px;padding:16px}.bank-summary-tile span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.bank-summary-tile strong{color:var(--green-dark);font-size:24px;line-height:1.12}.bank-institution-grid{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.bank-panel{display:grid;gap:14px;padding:18px}.bank-panel-heading{align-items:start;border-bottom:1px solid var(--border);display:flex;gap:14px;justify-content:space-between;padding-bottom:14px}.bank-panel-heading h2{color:var(--ink);font-size:21px;line-height:1.2;margin:0 0 6px}.bank-panel-heading p{color:var(--muted);font-size:13px;line-height:1.4;margin:0}.bank-item-error{background:#fff0f0;border:1px solid #efb3b3;border-radius:8px;color:#8b1e1e;font-size:13px;font-weight:800;line-height:1.45;margin:0;padding:10px 12px}.bank-account-list{display:grid;gap:8px}.bank-account-row{align-items:center;background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--ink);display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) minmax(150px,auto);min-height:74px;padding:10px 12px}.bank-account-row:has(input:checked){border-color:var(--green);box-shadow:inset 4px 0 0 var(--green)}.bank-account-main,.bank-account-balance{display:grid;gap:3px}.bank-account-main strong,.bank-account-balance strong{color:var(--ink);font-size:14px;line-height:1.25}.bank-account-main small,.bank-account-balance small{color:var(--muted);font-size:12px;line-height:1.35}.bank-account-balance{text-align:right}.invoice-dashboard-shell{margin:0 auto;max-width:1420px;padding-left:24px;padding-right:24px}.invoice-dashboard-workspace{display:grid;gap:16px}.invoice-dashboard-heading h1{color:var(--ink);font-size:24px;line-height:1.15;margin:0}.invoice-summary-grid{display:grid;gap:12px;grid-template-columns:repeat(5,minmax(0,1fr))}.invoice-summary-tile{background:#fff;border:1px solid var(--border);border-left:6px solid var(--blue);border-radius:8px;display:grid;gap:7px;min-height:116px;padding:15px 16px}.invoice-summary-tile span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.invoice-summary-tile strong{color:var(--ink);font-size:25px;line-height:1.12;overflow-wrap:anywhere}.invoice-summary-tile small{color:var(--muted);font-size:12px;font-weight:800}.invoice-summary-danger{border-left-color:#c7332d}.invoice-summary-warning{border-left-color:#d6a020}.invoice-summary-ok{border-left-color:var(--green)}.invoice-dashboard-warning{background:#fff7e8;border:1px solid #e2be72;border-radius:8px;color:#71480c;font-size:14px;font-weight:800;margin:0;padding:10px 12px}.invoice-dashboard-meta{color:var(--muted);display:flex;flex-wrap:wrap;font-size:13px;font-weight:800;gap:8px 16px}.invoice-table-wrap{background:#fff;border:1px solid var(--border);border-radius:8px;overflow-x:auto}.invoice-table-wrap-compact{width:max-content;max-width:100%}.invoice-dashboard-table{border-collapse:collapse;min-width:1360px;width:100%}.invoice-dashboard-table-compact{min-width:540px;width:auto}.invoice-dashboard-table th,.invoice-dashboard-table td{border-bottom:1px solid var(--border);padding:11px 12px;text-align:left;vertical-align:top}.invoice-dashboard-table th{background:#f4f7f5;color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.invoice-dashboard-table td{color:var(--ink);font-size:14px;font-weight:700}.invoice-dashboard-table td:nth-child(6),.invoice-dashboard-table td:nth-child(7){text-align:right;white-space:nowrap}.invoice-dashboard-table-compact td:nth-child(4),.invoice-dashboard-table-compact th:nth-child(4){text-align:right;white-space:nowrap}.invoice-dashboard-table-compact th,.invoice-dashboard-table-compact td{line-height:1.15;padding:6px 8px;vertical-align:middle}.invoice-dashboard-table-compact th:nth-child(1),.invoice-dashboard-table-compact td:nth-child(1){width:112px}.invoice-dashboard-table-compact th:nth-child(2),.invoice-dashboard-table-compact td:nth-child(2){max-width:300px;width:240px}.invoice-dashboard-table-compact th:nth-child(3),.invoice-dashboard-table-compact td:nth-child(3){text-align:right;width:84px}.invoice-dashboard-table-compact th:nth-child(4),.invoice-dashboard-table-compact td:nth-child(4){width:118px}.invoice-dashboard-table-compact td:nth-child(5),.invoice-dashboard-table-compact th:nth-child(5){width:128px}.invoice-dashboard-table-compact .invoice-urgency{border-radius:8px;font-size:11px;line-height:1.1;padding:3px 6px}.invoice-dashboard-table td strong,.invoice-dashboard-table td small{display:block}.invoice-dashboard-table td small{color:var(--muted);font-size:12px;font-weight:700;line-height:1.35;margin-top:3px}.invoice-row{box-shadow:inset 6px 0 0 var(--green)}.invoice-row-red{background:#fff7f7;box-shadow:inset 6px 0 #c7332d}.invoice-row-yellow{background:#fffdf2;box-shadow:inset 6px 0 #d6a020}.invoice-row-green{background:#f8fcf9}.invoice-urgency{border:1px solid var(--border);border-radius:999px;display:inline-flex;font-size:12px;font-weight:900;justify-content:center;line-height:1.2;max-width:100%;padding:6px 9px;white-space:normal}.invoice-urgency-red{background:#fff0f0;border-color:#efb3b3;color:#8b1e1e}.invoice-urgency-yellow{background:#fff7e1;border-color:#e2be72;color:#765008}.invoice-urgency-green{background:var(--green-soft);border-color:#b5d7c6;color:var(--green-dark)}.approvals-shell{margin:0 auto;max-width:1180px;padding-left:24px;padding-right:24px}.approvals-panel{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);display:grid;gap:12px;padding:18px}.approvals-status{margin-bottom:14px}.approvals-list{display:grid;gap:10px}.approval-row{align-items:center;background:#fff;border:1px solid var(--border);border-left:6px solid var(--green);border-radius:8px;color:var(--ink);display:grid;gap:14px;grid-template-columns:132px minmax(0,1fr) minmax(180px,auto);min-height:84px;padding:13px 15px;text-decoration:none}.approval-row:hover,.approval-row:focus-visible{border-left-color:var(--blue);box-shadow:inset 0 0 0 1px #2458a533;outline:none}.approval-source{background:var(--green-soft);border:1px solid #b5d7c6;border-radius:8px;color:var(--green-dark);display:inline-flex;font-size:12px;font-weight:900;justify-content:center;padding:7px 9px;text-transform:uppercase}.approval-main,.approval-meta{display:grid;gap:4px;min-width:0}.approval-main strong,.approval-meta strong{color:var(--ink);font-size:16px;line-height:1.25;overflow-wrap:anywhere}.approval-main small,.approval-meta small{color:var(--muted);font-size:12px;font-weight:800;line-height:1.35}.approval-meta{text-align:right}.approvals-empty h2{color:var(--ink);font-size:20px;line-height:1.2;margin:0}.approvals-empty p{color:var(--muted);margin:0}@media(max-width:1060px){.calculator-grid{grid-template-columns:1fr}.input-panel{position:static}}@media(max-width:720px){.internal-header{align-items:center;background:#fff;display:grid;gap:8px;grid-template-columns:1fr;padding:8px 10px;position:static}.brand-button{min-width:0}.internal-header .brand-lockup{gap:3px}.internal-header .brand-lockup img{height:46px;width:76px}.internal-header .brand-lockup strong{font-size:11px;line-height:1.2}.menu-grid,.form-grid,.generated-form-metadata-grid,.generated-field-card,.loi-regular-grid,.radio-row,.uptime-grid,.loi-uptime-years,.signature-grid,.date-input-grid,.flow-input-row,.baseline-strip,.planning-grid,.sizing-grid,.admin-group-checkbox-grid,.admin-grid,.approval-row,.bank-summary-grid,.bank-institution-grid,.invoice-summary-grid,.po-address-grid,.po-approval-addresses,.po-approval-facts,.po-detail-grid,.po-lower-grid,.po-meta-grid,.po-readonly-notes-grid,.neonova-compact-grid,.signature-type-grid,.saved-location-card{grid-template-columns:1fr}.neonova-wide-field{grid-column:auto}.internal-nav{display:flex;flex-wrap:nowrap;gap:6px;justify-content:flex-start;overflow-x:auto;padding-bottom:3px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.loi-span-2{grid-column:auto}.flow-input-row{grid-template-columns:auto minmax(0,1fr) auto minmax(0,1fr)}.nav-button,.admin-tab-button,.menu-tool-button,.primary-action,.secondary-action,.danger-action{justify-content:center;width:100%}.nav-button{flex:0 0 auto;font-size:12px;gap:6px;min-height:32px;padding:6px 8px;width:auto;white-space:nowrap}.approval-banner{align-items:center;font-size:13px;justify-content:flex-start;min-height:38px;padding-left:10px;text-align:left}.approvals-shell{padding-left:10px;padding-right:10px}.approval-meta{text-align:left}.saved-header,.results-header,.saved-location-facts,.bank-panel-heading,.bank-account-row,.po-row-actions{align-items:stretch;display:grid}.bank-account-balance{text-align:left}.invoice-dashboard-shell{padding-left:10px;padding-right:10px}.invoice-dashboard-table{min-width:0}.invoice-dashboard-table thead{display:none}.invoice-dashboard-table,.invoice-dashboard-table tbody,.invoice-dashboard-table tr,.invoice-dashboard-table td{display:block;width:100%}.invoice-dashboard-table tbody{display:grid;gap:10px;padding:10px}.invoice-dashboard-table tr{border:1px solid var(--border);border-radius:8px;overflow:hidden}.invoice-dashboard-table td{border-bottom:1px solid var(--border);display:grid;gap:4px;grid-template-columns:minmax(120px,.45fr) minmax(0,1fr);text-align:left!important}.invoice-dashboard-table td:last-child{border-bottom:0}.invoice-dashboard-table td:before{color:var(--muted);content:"";font-size:11px;font-weight:900;text-transform:uppercase}.invoice-dashboard-table td>*{grid-column:2}.invoice-dashboard-table td:nth-child(1):before{content:"Due"}.invoice-dashboard-table td:nth-child(2):before{content:"Vendor"}.invoice-dashboard-table td:nth-child(3):before{content:"Invoice"}.invoice-dashboard-table td:nth-child(4):before{content:"Bill Date"}.invoice-dashboard-table td:nth-child(5):before{content:"AP Account"}.invoice-dashboard-table td:nth-child(6):before{content:"Total"}.invoice-dashboard-table td:nth-child(7):before{content:"Open Balance"}.invoice-dashboard-table td:nth-child(8):before{content:"Status"}.invoice-dashboard-table td:nth-child(9):before{content:"Payment Scheduled"}.invoice-dashboard-table td:nth-child(10):before{content:"Payment Sent"}.invoice-dashboard-table-compact td:nth-child(1):before{content:"Due Date"}.invoice-dashboard-table-compact td:nth-child(2):before{content:"Vendor"}.invoice-dashboard-table-compact td:nth-child(3):before{content:"Invoice Count"}.invoice-dashboard-table-compact td:nth-child(4):before{content:"Amount Due"}.invoice-dashboard-table-compact td:nth-child(5):before{content:"Aging"}.auth-shell,.page-shell{padding:12px}.auth-panel,.input-panel,.results-panel,.page-header{padding:14px}.auth-panel h1{font-size:24px}.page-header h1,.menu-hero h1,.intro h1,.admin-heading h1,.bank-heading h1{font-size:20px}.subtitle{font-size:14px;line-height:1.4}.result-grid,.quick-select-grid{grid-template-columns:1fr}.section-heading-row{align-items:stretch;display:grid}.button{justify-content:center;width:100%}.button-row{display:grid;width:100%}.result-value{font-size:27px}.tool-page-shell{padding-top:10px}.page-header{border-left-width:5px;margin-bottom:12px}.page-header h1{margin:0}.loi-shell{padding-left:10px;padding-right:10px}.loi-draft-list-panel,.loi-status,.loi-grid{max-width:none;width:100%}.loi-draft-list-header{align-items:stretch;display:grid;gap:8px}.loi-draft-title-row{justify-content:space-between}.loi-draft-title-button{font-size:16px}.loi-draft-actions{display:grid;gap:7px;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}.loi-draft-actions .button{min-height:38px;padding:8px 9px;width:100%}.loi-draft-list-scroll{max-height:38vh;min-height:0}.loi-draft-list-table{min-width:0}.loi-draft-list-table thead{display:none}.loi-draft-list-table,.loi-draft-list-table tbody,.loi-draft-list-table tr,.loi-draft-list-table td{display:block;width:100%}.loi-draft-list-table tbody{display:grid;gap:8px;padding:8px}.loi-draft-list-table tbody tr{background:#fff;border:1px solid var(--border);border-radius:8px;padding:8px}.loi-draft-list-table td{border-bottom:0;font-size:12px;padding:3px 0}.loi-draft-list-table td:first-child{font-size:14px;min-width:0}.loi-draft-list-table td:nth-child(n+2):before{color:var(--muted);display:inline-block;font-weight:900;min-width:70px}.loi-draft-list-table td:nth-child(2):before{content:"Site"}.loi-draft-list-table td:nth-child(3):before{content:"Energy"}.loi-draft-list-table td:nth-child(4):before{content:"Agreement"}.loi-draft-list-table td:nth-child(5):before{content:"Prepaid"}.loi-draft-list-table td:nth-child(6):before{content:"Term"}.loi-draft-list-table td:nth-child(7):before{content:"Saved"}.po-order-list-table td:nth-child(2):before{content:"Vendor"}.po-order-list-table td:nth-child(3):before{content:"Status"}.po-order-list-table td:nth-child(4):before{content:"Date"}.po-order-list-table td:nth-child(5):before{content:"Total"}.po-order-list-table td:nth-child(6):before{content:"Updated"}.po-order-list-table td:nth-child(7):before{content:"Mode"}.neonova-proposal-list-table td:nth-child(n+2):before{min-width:112px}.neonova-proposal-list-table td:nth-child(2):before{content:"Rate"}.neonova-proposal-list-table td:nth-child(3):before{content:"Load"}.neonova-proposal-list-table td:nth-child(4):before{content:"Term"}.neonova-proposal-list-table td:nth-child(5):before{content:"Delivery"}.neonova-proposal-list-table td:nth-child(6):before{content:"Required"}.neonova-proposal-list-table td:nth-child(7):before{color:var(--muted);content:"Commitment";display:inline-block;font-weight:900;min-width:112px}.neonova-proposal-list-table td:nth-child(8):before{color:var(--muted);content:"Saved";display:inline-block;font-weight:900;min-width:112px}.neonova-proposal-list-table td:nth-child(6),.neonova-proposal-list-table td:nth-child(7){text-align:left}.loi-grid,.loi-input-panel,.results-panel{gap:12px}.loi-section-title-button{font-size:18px;justify-content:space-between;width:100%}.loi-regular-grid,.loi-text-fields,.radio-row,.uptime-grid{gap:10px}.field{gap:5px}.field-label,.field-label-row{font-size:13px}.text-input{min-height:40px;padding:8px 10px}.date-input-grid{grid-template-columns:minmax(0,1fr) 42px}.date-picker-icon-button{min-height:40px;padding:7px}.flow-input-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.flow-input-row span:last-child{grid-column:1 / -1}.rich-text-toolbar{gap:6px}.rich-format-button{min-height:34px;padding:6px 8px}.rich-format-button:has(kbd){padding-bottom:14px;padding-right:22px}.rich-text-editor{min-height:112px;padding:10px}.compact-textarea{min-height:128px}.loi-clause-builder{grid-template-columns:minmax(0,1fr)}.loi-preview-document{gap:12px;padding:12px}.loi-preview-document h2{font-size:16px;text-align:left}.loi-preview-table{min-width:0}.loi-preview-table thead{display:none}.loi-preview-table,.loi-preview-table tbody,.loi-preview-table tr,.loi-preview-table th,.loi-preview-table td{display:block;width:100%}.loi-preview-table tbody tr{border-bottom:1px solid var(--border);padding:10px 0}.loi-preview-table tbody tr:last-child{border-bottom:0}.loi-preview-table tbody th,.loi-preview-table tbody td{border-bottom:0;padding:2px 0}.loi-preview-table tbody th:first-child{color:var(--muted);font-size:11px;text-transform:uppercase;width:100%}.loi-preview-table tbody th:first-child:before{content:"Item "}.loi-preview-table tbody th:nth-child(2){font-size:13px;width:100%}.loi-preview-table tbody td{font-size:13px;line-height:1.45;padding-top:6px}.loi-preview-legal h3{font-size:14px}.loi-preview-legal p,.signature-preview p{font-size:13px}.signature-grid{gap:14px}}@media(min-width:721px){.po-review-grid.calculator-grid{grid-template-columns:minmax(400px,.95fr) minmax(0,1.05fr)}}@media(max-width:720px){.po-review-active .page-header,.po-review-active .po-grid,.po-review-active .po-draft-status,.po-review-active .po-sent-panel{width:100%}.po-review-grid.calculator-grid{gap:12px;grid-template-columns:1fr}.po-review-grid .po-input-panel{order:1}.po-review-grid .po-quote-preview-panel{display:none;min-height:0;order:2;position:static}.po-review-grid.show-mobile-quote .po-quote-preview-panel{display:grid}.po-mobile-quote-toggle{display:inline-flex}.po-mobile-jump-link,.po-mobile-jump-links{display:inline-flex;gap:8px}.po-review-active .po-meta-grid,.po-review-active .po-detail-grid,.po-review-active .po-address-grid,.po-review-active .po-lower-grid{grid-template-columns:1fr}.po-review-active .po-form-paper{padding:12px}.po-quote-frame,.po-quote-image-wrap{height:70vh;min-height:420px}}.signal-admin-panel{display:grid;gap:18px}.signal-admin-grid{align-items:start}.signal-send-panel{display:grid;gap:16px}.signal-send-grid{display:grid;gap:14px;grid-template-columns:minmax(220px,.35fr) minmax(0,.65fr)}.signal-message-field{min-width:0}.signal-message-field textarea{min-height:148px;resize:vertical}.signal-attachment-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.signal-attachment-row input[type=file]{max-width:260px}.signal-attachment-name{color:var(--muted);font-size:13px;line-height:1.35;min-width:180px}@media(max-width:720px){.signal-send-grid{grid-template-columns:1fr}.signal-attachment-row{align-items:stretch;flex-direction:column}.signal-attachment-row .button,.signal-attachment-row input[type=file]{width:100%}}
