:root{--optum-navy: #002677;--optum-navy-hover: #001f5e;--optum-orange: #C25608;--optum-orange-hover: #A84A07;--optum-blue: #0066CC;--optum-blue-hover: #004FA3;--optum-focus-ring: rgba(194, 86, 8, .2);--optum-nav-text: #d4e1f7;--optum-bg: #EEF1F9;--optum-border: #d0d6e0}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Open Sans,Arial,sans-serif;font-size:14px;color:#333;background:#fff}.app-shell{display:flex;min-height:100vh}.nav-sidebar{width:200px;min-height:100vh;background:#002677;color:#d4e1f7;display:flex;flex-direction:column;flex-shrink:0;transition:width .2s ease}.nav-sidebar--collapsed{width:52px}.nav-toggle{align-self:flex-end;margin:10px 10px 6px;background:none;border:1px solid rgba(255,255,255,.25);border-radius:4px;color:#d4e1f7;font-size:16px;width:28px;height:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-toggle:hover{background:#ffffff1f}.nav-list{list-style:none;padding:0;margin:0;flex:1}.nav-item{display:block;width:100%;padding:10px 16px;text-align:left;background:none;border:none;border-left:3px solid transparent;color:#d4e1f7;font-size:14px;cursor:pointer;white-space:nowrap;overflow:hidden}.nav-item:hover{background:#ffffff1a}.nav-item--active{background:#c2560838;border-left-color:#c25608;color:#fff;font-weight:600}.nav-item__abbr{font-weight:700}.nav-brand{display:flex;align-items:center;gap:10px;padding:16px 16px 12px;border-bottom:1px solid rgba(255,255,255,.12);flex-shrink:0}.nav-brand-mark{width:30px;height:30px;border-radius:50%;background:#c25608;color:#fff;font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-brand-name{font-size:18px;font-weight:700;color:#fff;letter-spacing:.03em;text-transform:lowercase;white-space:nowrap;overflow:hidden}.main-content{flex:1;padding:24px 32px;display:flex;flex-direction:column;min-width:0;overflow:auto}.coming-soon-panel{flex:1;display:flex;align-items:center;justify-content:center}.coming-soon{font-size:22px;color:#999}.changes-panel,.organizations-panel{display:flex;flex-direction:column;gap:14px;padding-top:8px}.organizations-actions{display:flex;gap:12px}.organizations-actions--bottom{margin-top:8px;margin-left:0}.organization-summary-card{display:flex;flex-direction:column;gap:12px;padding:16px 18px;border:1px solid #d7deea;border-radius:8px;background:#f7f9fc}.organization-summary-row{width:100%}.organization-summary-row--top{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.organization-summary-row--detail-toggle{padding-top:8px}.organization-details-toggle{width:28px;height:28px;border:1px solid #8fa2bf;border-radius:50%;background:#fff;color:#2b3e5b;font-size:18px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.organization-details-toggle:hover{background:#eaf0fa}.organization-summary-row--details{padding-top:10px}.organization-summary-row--expanded{display:flex;flex-wrap:wrap;gap:32px;padding-top:12px;border-top:1px solid #e8edf4;margin-top:12px}.organization-card-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.organization-icon-btn{width:28px;height:28px;border:1px solid #8fa2bf;border-radius:4px;background:#fff;color:#2b3e5b;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.organization-icon-btn:hover{background:#eaf0fa}.organization-summary-label{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#65758b;margin-bottom:4px}.organization-summary-title{font-size:24px;font-weight:400;color:#002677}.organization-summary-value{font-size:18px;color:#22324a}.organization-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.organization-meta-text{color:#4f5f75;line-height:1.4}.organizations-headcount-table{margin-top:4px}.changes-toolbar{display:flex;align-items:center;gap:10px}.changes-label{font-size:14px;font-weight:600;color:#555}.changes-select{height:32px;min-width:380px;padding:0 8px;border:1px solid #ccc;border-radius:4px;font-family:inherit;font-size:14px;background:#fff}.changes-summary{display:flex;align-items:center;gap:16px;padding:8px 12px;background:#f5f7fa;border:1px solid #dde3ec;border-radius:6px}.changes-filename{font-weight:700;font-size:14px}.changes-ts{font-size:13px;color:#666;margin-right:8px}.changes-user{font-size:13px;color:#555}.changes-table{margin-top:4px}.change-row--added td:first-child{color:#2a7a2a}.change-row--removed td:first-child{color:#b00020}.change-row--changed td:first-child{color:#c47600}.change-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.change-badge--added{background:#d4edda;color:#155724}.change-badge--removed{background:#f8d7da;color:#721c24}.change-badge--changed{background:#fff3cd;color:#856404}.changed-fields{display:flex;flex-wrap:wrap;gap:4px}.field-chip{display:inline-block;padding:1px 7px;background:#e8eaf6;border-radius:8px;font-size:11px;color:#3949ab}.page{max-width:1100px;margin:0 auto;padding:24px 32px;display:flex;flex-direction:column;min-height:100vh}.toolbar{display:flex;align-items:center;padding-bottom:12px}.page-title{font-size:30px;font-weight:700;color:#002677}.filter-bar{display:flex;align-items:center;gap:10px}.filter-label{font-size:15px;color:#333}.manager-select{height:30px;min-width:200px;padding:0 8px;border:1px solid #d0d6e0;border-radius:4px;background:#fff;color:#333;font-family:inherit;font-size:14px;cursor:pointer}.manager-select:focus{outline:2px solid #C25608;outline-offset:1px}.divider{border:none;border-top:1px solid #999;margin:0 0 16px}.tabs{display:flex;border-bottom:2px solid #ddd;margin-bottom:16px}.tab-btn{padding:8px 24px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;font-family:inherit;font-size:14px;color:#666;cursor:pointer}.tab-btn:hover{color:#333}.tab-btn--active{color:#c25608;border-bottom-color:#c25608;font-weight:700}.org-chart-wrapper{padding:8px 0}.org-node{width:100%}.org-row{display:flex;align-items:center;padding:3px 0;position:relative}.org-row--child:before{content:"";display:block;flex-shrink:0;width:16px;height:1px;background:#bbb}.org-subtree{margin-left:20px;padding-left:0;border-left:1px solid #bbb}.org-card{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #c0d0e8;border-radius:6px;padding:5px 12px;font-size:13px;box-shadow:0 1px 3px #00000012;min-width:0;max-width:100%;word-break:break-word}.org-card--contractor{background:#fff8e6;border-color:#d4a820}.org-card--contractor.org-card--clickable:hover{background:#fff0c0;border-color:#b8900e}.org-card--manager{background:#e8edf5;border-color:#002677}.org-card--manager .org-card__name{font-weight:700}.org-card--manager.org-card--clickable:hover{background:#d4dff0;border-color:#001f5e}.org-card__badge--contractor{background:#fde68a;color:#92400e}.org-card--team{background:#f3e8ff;border-color:#a855f7}.org-card--team .org-card__name{font-weight:700}.org-card--team.org-card--clickable:hover{background:#e9d5ff;border-color:#9333ea}.org-card__badge--team{background:#e9d5ff;color:#7e22ce}.org-card--clickable:hover{background:#eef4ff;border-color:#80a8d0}.org-card__name{color:#222;flex:1;min-width:0}.org-card__badge{flex-shrink:0;background:#def;color:#26c;border-radius:10px;padding:1px 7px;font-size:11px;min-width:24px;text-align:center}.org-hint{padding:40px 0;text-align:center;color:#888;font-size:14px}.roster-table{width:100%;border-collapse:collapse;table-layout:fixed;flex:1}.roster-table th,.roster-table td{text-align:left;padding:7px 12px;border-bottom:1px solid #e0e0e0}.roster-table tbody tr{height:36px}.roster-table tbody td{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resource-inactive{font-style:italic;color:#888}.roster-table thead tr{background:#e8edf5}.roster-table th{font-weight:700;color:#002677;font-size:13px;text-transform:uppercase;letter-spacing:.03em}.roster-table tbody tr:nth-child(2n){background:#f5f8ff}.roster-table tbody tr:hover{background:#f7f9ff}.roster-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.roster-table th.sortable:hover{background:#e4e4e4}.sort-icon{margin-left:5px;font-size:12px;color:#333}.sort-icon--inactive{color:#aaa}.actions-col{width:180px;white-space:nowrap}.roster-table tbody td.actions-col{overflow:visible;text-overflow:unset}.btn-link{background:none;border:none;color:#06c;cursor:pointer;font-size:13px;padding:0 6px 0 0;text-decoration:underline}.btn-link:hover{color:#004fa3}.btn-link.btn-danger{color:#c22}.btn-link.btn-danger:hover{color:#900}.table-wrapper{display:flex;flex-direction:column;flex:1}.pagination{display:flex;align-items:center;justify-content:space-between;padding:12px 4px 0;gap:16px;flex-wrap:wrap}.pagination-info{font-size:13px;color:#666;min-width:160px}.pagination-controls{display:flex;align-items:center;gap:4px}.page-btn{width:30px;height:28px;border:1px solid #bbb;border-radius:4px;background:#fff;color:#333;font-size:14px;cursor:pointer;line-height:1}.page-btn:hover:not(:disabled){background:#f0f0f0}.page-btn:disabled{color:#bbb;border-color:#ddd;cursor:default}.page-indicator{font-size:13px;color:#444;padding:0 8px;white-space:nowrap}.pagination-size{display:flex;align-items:center;gap:8px;font-size:13px;color:#555}.pagination-size select{height:28px;padding:0 6px;border:1px solid #bbb;border-radius:4px;font-family:inherit;font-size:13px;cursor:pointer}.search-bar{display:flex;align-items:center;gap:16px;margin-bottom:10px}.search-input{flex:1;padding:7px 12px;font-size:14px;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;outline:none}.search-input:focus{border-color:#c25608;box-shadow:0 0 0 2px #c2560826}.multi-select{position:relative;display:inline-block}.multi-select__btn{display:flex;align-items:center;gap:6px;padding:7px 10px;font-size:14px;background:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;white-space:nowrap;color:#333}.multi-select__btn:hover{border-color:#999}.multi-select__btn--active{border-color:#c25608;color:#c25608}.multi-select__chevron{font-size:11px;color:#888}.multi-select__dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:200;background:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 4px 12px #0000001f;min-width:160px;padding:6px 0}.multi-select__option{display:flex;align-items:center;gap:8px;padding:6px 12px;font-size:14px;cursor:pointer;white-space:nowrap}.multi-select__option:hover{background:#f5f5f5}.multi-select__option input[type=checkbox]{accent-color:#C25608;cursor:pointer}.multi-select__clear{display:block;width:calc(100% - 24px);margin:4px 12px 2px;padding:4px 0;font-size:12px;color:#888;background:none;border:none;border-top:1px solid #eee;cursor:pointer;text-align:left}.multi-select__clear:hover{color:#c25608}.toggle-switch{display:flex;align-items:center;gap:8px;font-size:14px;color:#444;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none}.toggle-switch input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:36px;height:20px;background:#ccc;border-radius:20px;position:relative;cursor:pointer;flex-shrink:0;transition:background .2s}.toggle-switch input[type=checkbox]:checked{background:#c25608}.toggle-switch input[type=checkbox]:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;top:2px;left:2px;transition:left .15s}.toggle-switch input[type=checkbox]:checked:after{left:18px}.footer-bar{display:flex;align-items:center;gap:12px;padding-top:20px}.btn-add,.btn-export,.btn-import{height:30px;width:130px;border:1px solid #002677;border-radius:15px;background:#fff;color:#002677;font-family:inherit;font-size:15px;cursor:pointer}.btn-add:hover,.btn-export:hover,.btn-import:hover{background:#eef1f9}.import-stamp{margin-left:auto;font-size:13px;color:#666}.diff-added{color:#2a7a2a;font-weight:600}.diff-removed{color:#b00020;font-weight:600}.diff-changed{color:#c47600;font-weight:600}.status-msg{padding:16px 0;color:#666}.status-msg.error{color:#c22}.modal-error{color:#c22;font-size:13px;margin:4px 0 0}.empty-state{padding:32px 0;color:#888;text-align:center}.modal--narrow{width:360px}.reassign-resource-name{font-size:15px;font-weight:700;color:#222;margin-bottom:16px}.reassign-label{display:flex;flex-direction:column;gap:5px;font-size:13px;color:#555}.reassign-select{height:32px;padding:0 8px;border:1px solid #bbb;border-radius:4px;font-family:inherit;font-size:14px;color:#333}.reassign-select:focus{outline:2px solid #C25608;outline-offset:1px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:#fff;border-radius:6px;box-shadow:0 8px 32px #0003;width:780px;max-width:96vw;max-height:92vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px 10px;border-bottom:1px solid #ddd}.modal-header h2{font-size:17px;font-weight:400}.modal-close{background:none;border:none;font-size:16px;cursor:pointer;color:#666;line-height:1}.modal-close:hover{color:#222}.modal-form{padding:14px 20px}.organization-modal{width:860px}.req-modal{width:960px}.modal-tabs{margin:0 0 4px}.modal-tab-bar{display:flex;gap:2px;padding:0 20px;border-bottom:2px solid #d1d5db;margin-bottom:0}.modal-tab{padding:6px 14px;font-size:13px;font-weight:500;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;color:#6b7280;white-space:nowrap;transition:color .15s,border-color .15s}.modal-tab:hover{color:#374151}.modal-tab--active{color:#1d4ed8;border-bottom-color:#1d4ed8}.modal-tab-panel{padding:10px 20px 0}.organization-form-grid{grid-template-columns:1fr 1fr}.team-modal{width:680px}.team-form-grid{grid-template-columns:1fr 1fr}.team-members-section{margin-top:14px}.team-members-empty{font-size:13px;color:#777;margin:6px 0 0}.team-selected-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.team-member-chip{display:inline-flex;align-items:center;gap:4px;background:#dcefdc;color:#1f5f1f;border:none;border-radius:999px;padding:4px 10px;font-family:inherit;font-size:12px;cursor:pointer}.team-member-chip:hover{background:#c5e0c5}.team-member-search{width:100%;box-sizing:border-box;margin-top:2px}.team-members-results{display:flex;flex-direction:column;gap:4px;max-height:180px;overflow-y:auto;margin-top:6px;padding:8px 10px;border:1px solid #d9e0ea;border-radius:6px;background:#fafbfd}.team-member-checkbox{display:flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}.teams-unassigned-heading{font-size:14px;font-weight:600;color:#333;margin:0 0 10px}.member-pill{display:inline-block;background:#e0f0ff;color:#1a3a5c;border-radius:999px;padding:2px 9px;font-size:11px;margin:2px 3px 2px 0;white-space:nowrap}.member-names-cell{white-space:normal!important;overflow:visible!important;text-overflow:unset!important}.team-member-dates-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:8px}.team-member-dates-table th,.team-member-dates-table td{text-align:left;padding:5px 8px;border-bottom:1px solid #eee}.team-member-dates-table thead th{background:#f5f5f5;font-weight:600;color:#555;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.team-date-input{padding:3px 6px;font-size:12px;border:1px solid #ccc;border-radius:4px;font-family:inherit}.team-member-remove{background:none;border:none;cursor:pointer;color:#999;font-size:16px;padding:0 4px;line-height:1}.team-member-remove:hover{color:#c00}.organization-rule-builder{display:flex;flex-direction:column;gap:8px}.organization-rule-input-row{display:flex;gap:8px}.organization-rule-input-row input{flex:1}.organization-rule-input-row .btn-secondary{padding:0 14px}.organization-chip-list{display:flex;flex-wrap:wrap;gap:8px;min-height:32px;padding:10px;border:1px solid #d9e0ea;border-radius:6px;background:#fafbfd}.organization-chip{border:none;border-radius:999px;padding:6px 10px;font-family:inherit;font-size:12px;cursor:pointer}.organization-chip--include{background:#dcefdc;color:#1f5f1f}.organization-chip--exclude{background:#f4dddd;color:#822424}.organization-chip-empty{font-size:12px;color:#7a8698}.organization-modal-note{padding-top:12px;color:#6b7687}@media (max-width: 900px){.organization-summary-row--top,.organization-meta-grid,.organization-form-grid{grid-template-columns:1fr}.organizations-actions,.organization-rule-input-row,.toolbar,.search-bar,.changes-toolbar,.footer-bar{flex-wrap:wrap}.changes-select,.manager-select{min-width:0;width:100%}}.form-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px 18px}.form-grid label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:#555}.form-grid input,.form-grid select{height:28px;padding:0 6px;border:1px solid #bbb;border-radius:4px;font-family:inherit;font-size:13px;color:#333}.form-grid textarea{padding:4px 6px;border:1px solid #bbb;border-radius:4px;font-family:inherit;font-size:13px;color:#333;resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:2px solid #C25608;outline-offset:1px}.form-grid input[readonly],.form-grid textarea[readonly]{background:#f5f5f5;cursor:default;color:#444}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid #eee}.portfolio-orgs{margin-top:6px;border:1px solid #ddd;border-radius:4px;padding:8px;background:#fafafa}.portfolio-orgs-empty{margin:0;font-size:13px;color:#888}.portfolio-orgs-list{margin:0 0 8px;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.portfolio-orgs-item{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #e0e0e0;border-radius:3px;padding:4px 8px;font-size:13px}.portfolio-orgs-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portfolio-orgs-actions{display:flex;gap:4px;flex-shrink:0;margin-left:8px}.btn-icon{padding:2px 6px;font-size:12px;line-height:1.4;background:#f0f0f0;border:1px solid #ccc;border-radius:3px;cursor:pointer}.btn-icon:hover:not(:disabled){background:#e0e0e0}.btn-icon:disabled{opacity:.35;cursor:not-allowed}.btn-icon--danger{color:#b91c1c}.btn-icon--danger:hover:not(:disabled){background:#fee2e2;border-color:#fca5a5}.portfolio-orgs-add{display:flex;gap:8px;align-items:center;margin-top:4px}.portfolio-orgs-select{flex:1}.btn-primary{padding:8px 22px;background:#c25608;color:#fff;border:none;border-radius:4px;font-family:inherit;font-size:14px;cursor:pointer}.btn-primary:hover{background:#a84a07}.btn-secondary{padding:8px 22px;background:#fff;color:#444;border:1px solid #bbb;border-radius:4px;font-family:inherit;font-size:14px;cursor:pointer}.btn-secondary:hover{background:#f0f0f0}.btn-danger{padding:8px 22px;background:#b91c1c;color:#fff;border:none;border-radius:4px;font-family:inherit;font-size:14px;cursor:pointer}.btn-danger:hover{background:#991b1b}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.portfolio-summary-card{display:flex;flex-direction:column;gap:12px;padding:16px 18px;border:1px solid #d7deea;border-radius:8px;background:#f7f9fc;margin-top:12px}.budget-inline-filters{display:flex;align-items:center;gap:1rem;padding:10px 0 6px}.portfolio-summary-row{display:flex;align-items:center;gap:32px}.portfolio-summary-field{display:flex;flex-direction:column;gap:2px}.portfolio-summary-label{font-size:11px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.04em}.portfolio-summary-value{font-size:15px;color:#1a1a2e}.portfolio-summary-actions{margin-left:auto}.labor-rates-panel{padding:16px 0}.labor-rates-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.labor-rates-year-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#444}.labor-rates-year-select{padding:5px 8px;border:1px solid #bbb;border-radius:4px;font-family:inherit;font-size:14px}.labor-rates-table{width:100%;border-collapse:collapse;font-size:14px}.labor-rates-table th,.labor-rates-table td{padding:8px 12px;border-bottom:1px solid #e0e0e0;text-align:left;white-space:nowrap}.labor-rates-table th{background:#f5f5f5;font-weight:600;color:#333}.labor-rates-table tbody tr:hover{background:#f9f9f9}.labor-rates-table .num-col{text-align:right}.labor-rate-form-grid{grid-template-columns:1fr 1fr}.location-modal{width:480px}.location-form-grid{grid-template-columns:1fr 1fr}.location-gl-label{grid-column:1 / -1}.budget-modal{width:780px}.budget-form-grid{grid-template-columns:1fr 1fr}.budget-form-full{grid-column:1 / -1}.budget-projects-section{margin-top:20px;padding-top:16px;border-top:1px solid #e0e4ea}.budget-projects-title{font-size:14px;font-weight:600;color:#444;margin-bottom:10px;text-transform:uppercase;letter-spacing:.04em}.budget-projects-table{width:100%;border-collapse:collapse;font-size:13px}.budget-projects-table th{text-align:left;padding:5px 8px;border-bottom:1px solid #ccc;font-weight:600;color:#555;font-size:12px}.budget-projects-table td{padding:4px 8px;border-bottom:1px solid #eee;vertical-align:middle}.budget-projects-table .num-col{text-align:right;width:130px}.budget-projects-table .actions-col{width:110px;white-space:nowrap}.project-inline-input{width:100%;padding:3px 6px;border:1px solid #bbb;border-radius:3px;font-family:inherit;font-size:13px}.project-inline-input:focus{outline:2px solid #C25608;outline-offset:1px}.project-inline-input--num{text-align:right}.project-add-row td{padding-top:8px;border-bottom:none}.project-variance-row td{border-top:1px solid #ccc;padding-top:5px;padding-bottom:5px;font-style:italic;font-weight:500;background:#f5f5f5}.project-variance-row .num-col{text-align:right}.required-mark{color:#c00}.totals-row td{border-top:2px solid #bbb;background:#f0f3f7}.budgets-table .budget-name-col{width:auto}.budgets-table .num-col{width:180px;text-align:right;white-space:nowrap}.budgets-table .actions-col{width:130px;white-space:nowrap}.budgets-table .budget-name-cell{white-space:normal;word-break:break-word}.budget-main-row td{font-weight:600}.budget-main-row.budget-row--capital td{background:#eaf7ee}.budget-main-row.budget-row--om td{background:#e8f3fb}.budget-project-item-row td,.budget-variance-row td{font-size:12px;color:#555;border-bottom:none;padding-top:1px;padding-bottom:1px;background:#f7f9fc}.budget-project-item-row:hover td,.budget-variance-row:hover td{background:#eef2f8}.budget-variance-row td{border-bottom:1px solid #e0e0e0;padding-top:2px;padding-bottom:2px}.project-label-row{display:flex;align-items:center;gap:8px}.projects-section-label{flex-shrink:0;width:68px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#888}.projects-label-spacer{flex-shrink:0;width:68px}.project-name-text{flex:1}.variance-label-text{font-style:italic;font-weight:500;color:#555}.budget-variance-row .num-col{font-style:italic}.variance-negative{color:#c00}.variance-approved-positive{background:#d6f5e3}.variance-approved-negative{background:#fde8e8}.btn-link--danger{color:#c00}.btn-link--danger:hover{color:#900}.budget-changes-tab{display:flex;flex-direction:column;flex:1;overflow:hidden}.budget-changes-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid #e5e7eb;flex-shrink:0}.budget-changes-body{display:flex;flex:1;overflow:hidden}.budget-changes-list{width:380px;min-width:280px;overflow-y:auto;border-right:1px solid #e5e7eb;flex-shrink:0;display:flex;flex-direction:column}.budget-change-item{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border:none;border-bottom:1px solid #f0f0f0;background:#fff;cursor:pointer;text-align:left;font-size:.82rem;color:#333;width:100%}.budget-change-item:hover{background:#f5f5f5}.budget-change-item--selected{background:#fff3eb;border-left:3px solid #C25608}.budget-change-item--selected:hover{background:#ffe0c9}.change-item-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.change-item-date{color:#888;white-space:nowrap;font-size:.78rem}.change-subject-badge{font-size:.7rem;font-weight:600;padding:1px 5px;border-radius:3px;flex-shrink:0;letter-spacing:.02em;text-transform:uppercase}.change-subject-badge--budget{background:#d1fae5;color:#065f46}.change-subject-badge--project{background:#f3f4f6;color:#374151}.change-subject-badge--allocation{background:#ede9fe;color:#5b21b6}.change-type-badge{font-size:.7rem;font-weight:600;padding:1px 5px;border-radius:3px;flex-shrink:0;letter-spacing:.02em;text-transform:uppercase}.change-type-badge--created{background:#d1fae5;color:#065f46}.change-type-badge--updated{background:#dbeafe;color:#1e40af}.change-type-badge--deleted{background:#fee2e2;color:#991b1b}.budget-change-detail{flex:1;overflow-y:auto;padding:1.25rem 1.5rem}.budget-change-detail-title{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:#111}.budget-change-detail-meta{font-size:.82rem;color:#666;margin:0 0 .75rem}.budget-change-funding-table{border-collapse:collapse;font-size:.85rem;margin-bottom:1.25rem}.ta-change-detail-table{display:block;overflow-x:auto;white-space:nowrap}.budget-change-funding-table th,.budget-change-funding-table td{padding:.35rem .75rem;border:1px solid #e5e7eb;text-align:right}.budget-change-funding-table th:first-child,.budget-change-funding-table td:first-child{text-align:left}.funding-row-label{font-weight:600;color:#555}.budget-change-related{border-top:1px solid #e5e7eb;padding-top:1rem}.budget-change-related h4{font-size:.88rem;font-weight:600;margin:0 0 .6rem;color:#333}.related-project-change{display:flex;align-items:center;gap:.5rem;padding:.4rem 0;border-bottom:1px solid #f3f4f6;font-size:.82rem}.related-project-name{flex:1;color:#222}.related-project-funding{color:#555;white-space:nowrap}.allocations-tab{display:flex;flex-direction:column;flex:1;overflow:hidden}.alloc-filter-bar{padding:8px 0 4px;flex-shrink:0;display:flex;align-items:center;gap:20px}.view-toggle{display:flex;border:1px solid #ccc;border-radius:4px;overflow:hidden;flex-shrink:0}.view-toggle-btn{padding:4px 12px;font-size:12px;border:none;background:#f5f5f5;cursor:pointer;color:#444;border-right:1px solid #ccc}.view-toggle-btn:last-child{border-right:none}.view-toggle-btn--active{background:#002677;color:#fff;font-weight:600}.view-toggle-btn:not(.view-toggle-btn--active):hover{background:#e8e8e8}.team-view-group{margin-bottom:24px}.team-view-group-header{font-size:14px;font-weight:600;margin:0 0 6px;padding:4px 0;border-bottom:2px solid #002677;color:#002677}.alloc-filter-bar .filter-label{display:flex;align-items:center;gap:6px}.allocations-table-wrapper{overflow-x:auto}.allocations-table .alloc-project-col{min-width:200px;white-space:normal;word-break:break-word}.allocations-table .alloc-org-col{min-width:130px}.allocations-table .alloc-variance-col{min-width:120px;font-weight:600}.alloc-cell{cursor:pointer}.alloc-cell:hover{background:#f0f4ff}.alloc-cell--filled{color:#1a1a2e}.alloc-cell--editing{padding:2px 4px;cursor:default}.alloc-edit-input{width:100%;min-width:80px;padding:3px 6px;font-size:13px;font-family:inherit;text-align:right;border:1px solid #b0b8d0;border-radius:3px;background:#fff;box-sizing:border-box}.alloc-edit-input:focus{outline:none;border-color:#002677;box-shadow:0 0 0 2px #00267733}.alloc-empty{color:#bbb}.alloc-variance.variance--negative{color:#991b1b}.alloc-variance.variance--positive{color:#065f46}.alloc-row--capital td{background-color:#f0fdf4}.alloc-row--om td{background-color:#eff6ff}.alloc-row--capital .alloc-cell:hover,.alloc-row--om .alloc-cell:hover{filter:brightness(.96)}.projects-table{table-layout:auto}.projects-table tbody td{white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word}.projects-table td:nth-child(3),.projects-table td:nth-child(4),.projects-table td:nth-child(6),.projects-table th:nth-child(3),.projects-table th:nth-child(4),.projects-table th:nth-child(6){white-space:nowrap;width:1%}.forecasts-table{table-layout:auto}.forecasts-table tbody td{white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word}.forecasts-table td:nth-child(n+3),.forecasts-table th:nth-child(n+3){white-space:nowrap;width:1%;min-width:3.5rem}.alloc-project-cell{position:relative}.alloc-project-tooltip{display:none;position:absolute;left:0;top:calc(100% + 4px);z-index:200;min-width:240px;max-width:340px;background:#1e293b;color:#f1f5f9;border-radius:6px;padding:10px 14px;font-size:12px;line-height:1.55;box-shadow:0 4px 16px #00000038;pointer-events:none;white-space:normal}.alloc-project-tooltip dt{font-weight:600;color:#94a3b8;margin-top:6px;text-transform:uppercase;font-size:10px;letter-spacing:.05em}.alloc-project-tooltip dt:first-child{margin-top:0}.alloc-project-tooltip dd{margin:1px 0 0}.alloc-project-cell:hover .alloc-project-tooltip{display:block}.modal--wide{width:min(680px,94vw)}.modal-body{padding:0 24px 8px}.modal-actions--footer{padding:12px 24px 16px;border-top:1px solid #eee;margin-top:0}.team-assign-context{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:13px;margin-bottom:14px;padding:10px 12px;background:#f4f7fa;border-radius:6px;border:1px solid #dde3ea}.team-assign-context-label{font-weight:600;color:#555}.team-assign-table{margin-top:4px}.team-assign-funding-input{width:110px;height:28px;padding:0 6px;border:1px solid #bbb;border-radius:4px;font-family:inherit;font-size:13px;text-align:right}.team-assign-select{height:28px;padding:0 6px;border:1px solid #bbb;border-radius:4px;font-family:inherit;font-size:13px;max-width:260px;width:100%}.modal-add-row{margin-top:10px}.team-assign-editor{background:#f8f9fb;border:1px solid #dde3ea;border-radius:6px;padding:12px 16px;margin-bottom:14px}.team-assign-editor-title{font-weight:600;font-size:13px;color:#333;margin-bottom:10px}.team-assign-month-table{width:100%;border-collapse:collapse;font-size:13px}.team-assign-month-table th{text-align:left;padding:4px 8px;border-bottom:2px solid #dde3ea;color:#555;font-weight:600}.team-assign-month-table td{padding:3px 8px;border-bottom:1px solid #f0f0f0}.team-assign-month-input{width:110px;height:26px;padding:0 6px;border:1px solid #bbb;border-radius:4px;font-family:inherit;font-size:12px;text-align:right}.team-assign-editor-actions{margin-top:10px;display:flex;gap:8px}.team-assign-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.team-assign-toolbar-filters{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.team-assign-toolbar .filter-bar{display:flex;align-items:center;gap:8px}.team-assign-toolbar-actions{display:flex;gap:8px}.team-assign-table-wrapper{overflow-x:auto}.team-assign-table{min-width:1400px;table-layout:fixed}.team-assign-col-team{width:130px;min-width:110px;white-space:normal;word-break:break-word}.team-assign-col-project{width:180px;min-width:160px;white-space:normal;word-break:break-word}.team-assign-col-funding{width:110px}.team-assign-col-month{width:90px;min-width:80px;vertical-align:top;padding:4px 6px!important}.team-assign-col-total,.team-assign-col-others,.team-assign-col-variance{width:110px}.team-assign-cell-value{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.team-assign-cell-amt{font-size:12px;color:#222}.team-assign-cell-pct{font-size:11px;color:#666}.team-assign-cell-editing{padding:3px 4px!important;vertical-align:middle}.team-assign-cell-disabled{background:#f0f0f0}.team-assign-cell-disabled .team-assign-edit-input{background:#f0f0f0;border-color:#ddd;color:#bbb;cursor:not-allowed}.team-assign-edit-input{display:block;width:100%;height:24px;padding:0 4px;border:1px solid #bbb;border-radius:3px;font-family:inherit;font-size:11px;text-align:right;box-sizing:border-box;margin-bottom:2px}.team-assign-edit-input--pct{color:#666;border-color:#ccc;background:#fafafa}.team-assign-edit-input:focus{outline:none;border-color:#002677}.users-panel{padding:16px 0}.profile-card{max-width:480px;padding:24px;background:var(--color-surface, #fff);border:1px solid var(--color-border, #e0e0e0);border-radius:6px}.profile-heading{margin:0 0 20px;font-size:18px;font-weight:600}.profile-fields{margin:0 0 20px;padding:0}.profile-field{display:flex;gap:12px;padding:8px 0;border-bottom:1px solid var(--color-border, #e0e0e0)}.profile-field:last-child{border-bottom:none}.profile-label{flex:0 0 130px;font-weight:500;color:#555;font-size:13px}.profile-value{flex:1;font-size:14px}.profile-value--editable{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.profile-edit-link{font-size:12px;margin-left:4px}.profile-inline-form{display:flex;align-items:center;gap:6px;flex-wrap:wrap;width:100%}.profile-inline-input{padding:4px 8px;border:1px solid var(--color-border, #ccc);border-radius:4px;font-size:14px;flex:1;min-width:160px}.profile-inline-error{color:#c62828;font-size:12px;width:100%}.btn-sm{padding:4px 10px;font-size:13px}.profile-success{color:#2e7d32;font-size:14px;margin-bottom:12px}.profile-reset-btn{margin-top:4px}.profile-reset-form{margin-top:20px;border-top:1px solid var(--color-border, #e0e0e0);padding-top:16px;display:flex;flex-direction:column;gap:14px}.profile-reset-heading{margin:0;font-size:15px;font-weight:600}.profile-reset-label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:500}.profile-reset-label input{padding:6px 8px;border:1px solid var(--color-border, #ccc);border-radius:4px;font-size:14px}.users-table{width:100%;border-collapse:collapse;font-size:14px}.users-table th,.users-table td{padding:8px 12px;border-bottom:1px solid #e0e0e0;text-align:left}.users-table th{background:#f5f5f5;font-weight:600;color:#333;white-space:nowrap}.users-table tbody tr:hover{background:#f9f9f9}.row-inactive td{color:#999;font-style:italic}.muted{color:#aaa}.user-modal{width:680px}.user-form-grid{grid-template-columns:1fr 1fr}.user-form-grid select{height:auto;padding:5px 6px}.roles-fieldset{border:1px solid #d0d7e3;border-radius:6px;padding:10px 14px 14px;margin-top:14px}.roles-fieldset legend{font-size:12px;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.04em;padding:0 6px}.roles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 16px;margin-top:8px}.checkbox-label{display:flex;align-items:center;gap:6px;font-size:13px;color:#333;cursor:pointer}.checkbox-label input[type=checkbox]{width:15px;height:15px;cursor:pointer;flex-shrink:0}.form-error{color:#c22;font-size:13px;margin-top:10px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:16px;padding-top:12px;border-top:1px solid #eee}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#eef1f9}.login-card{background:#fff;border-radius:8px;box-shadow:0 2px 24px #00000024;width:380px;overflow:hidden}.login-card-header{background:#002677;padding:24px 36px 20px;text-align:center}.login-brand{display:flex;align-items:center;justify-content:center;gap:10px}.login-brand-mark{width:36px;height:36px;border-radius:50%;background:#c25608;color:#fff;font-size:20px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.login-brand-name{font-size:24px;font-weight:700;color:#fff;letter-spacing:.02em;text-transform:lowercase}.login-card-body{padding:28px 36px 36px}.login-title{font-size:16px;font-weight:600;margin:0 0 20px;text-align:center;color:#002677}.login-form{display:flex;flex-direction:column;gap:14px}.login-form label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:500;color:#444}.login-form input{padding:8px 10px;border:1px solid #ccc;border-radius:4px;font-size:14px}.login-form input:focus{outline:none;border-color:#c25608;box-shadow:0 0 0 2px #c2560833}.login-error{color:#c22;font-size:13px;margin:0}.login-submit{margin-top:6px;width:100%;padding:10px;font-size:14px}.toolbar-right{display:flex;align-items:center;gap:10px;margin-left:auto}.logout-btn{margin-left:12px;color:#666;font-size:13px;white-space:nowrap}.addition-modal-checkbox{display:flex;flex-direction:row!important;align-items:center;gap:8px;font-size:13px;color:#333;cursor:pointer}.addition-modal-checkbox input[type=checkbox]{width:15px;height:15px;cursor:pointer}.hiring-tab{display:flex;flex-direction:column;gap:12px}.demand-summary{margin-top:8px}.demand-summary-title{font-size:14px;font-weight:600;margin:0 0 6px;color:var(--text-secondary, #555)}.ramp-month-heading{font-size:14px;font-weight:600;color:#002677;text-transform:uppercase;letter-spacing:.04em;margin:16px 0 6px;padding-bottom:4px;border-bottom:2px solid #002677}.demand-summary-table{width:auto;min-width:420px}.demand-summary-table td:last-child,.demand-summary-table th:last-child{text-align:right;padding-right:12px}.demand-state-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;font-weight:600;white-space:nowrap}.demand-state-badge--unsubmitted{background:#e9ecef;color:#495057}.demand-state-badge--pending{background:#fff3cd;color:#856404}.demand-state-badge--approved{background:#d1e7dd;color:#0a3622}.demand-state-badge--open{background:#cfe2ff;color:#0a367c}.demand-state-badge--hired{background:#002677;color:#fff}.demand-state-badge--hold{background:#f8d7da;color:#842029}.demand-state-badge--closed{background:#e9ecef;color:#6c757d}.demand-state-badge--cancelled{background:#f8d7da;color:#6c757d}.demand-state-badge--tdp{background:#e0cffc;color:#432874}.demand-state-badge--unknown{background:#e9ecef;color:#495057}.state-transition-trigger{position:relative;display:inline-block;cursor:pointer}.state-transition-popover{display:none;position:absolute;top:100%;left:0;z-index:100;background:#fff;border:1px solid #dee2e6;border-radius:4px;box-shadow:0 2px 8px #00000026;min-width:160px;padding:4px 0}.state-transition-trigger:hover .state-transition-popover{display:flex;flex-direction:column}.state-transition-option{background:none;border:none;padding:6px 12px;text-align:left;cursor:pointer;font-size:13px;white-space:nowrap;width:100%}.state-transition-option:hover{background:#f0f4ff}.demand-modal{width:760px;max-width:95vw;max-height:90vh;overflow-y:auto}.demand-form-grid{grid-template-columns:repeat(2,1fr)}.demand-form-wide{grid-column:1 / -1}.demand-notes-section{border-top:1px solid #dee2e6;padding-top:16px;margin-top:8px;display:flex;flex-direction:column;gap:10px}.demand-notes-title{font-size:15px;font-weight:600;margin:0;color:#002677}.demand-note-item{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;padding:8px 12px}.demand-note-meta{display:flex;gap:12px;font-size:12px;color:#6c757d;margin-bottom:4px}.demand-note-author{font-weight:600}.demand-note-text{margin:0;font-size:13px;white-space:pre-wrap}.demand-note-form{display:flex;gap:8px;align-items:flex-start}.demand-note-input{flex:1;font-size:13px;padding:6px 8px;border:1px solid #ced4da;border-radius:4px;resize:vertical;font-family:inherit}.demand-history-table{width:100%;border-collapse:collapse;font-size:13px}.demand-history-table th,.demand-history-table td{padding:4px 8px;border:1px solid #dee2e6;text-align:left}.demand-history-table th{background:#f1f3f5;font-weight:600}.demand-changes-tab{display:flex;flex-direction:column;gap:12px}.change-item-user{font-size:12px;color:#6c757d;margin-left:auto}.demand-diff-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:8px}.demand-diff-table th,.demand-diff-table td{padding:4px 8px;border:1px solid #dee2e6;text-align:left}.demand-diff-table th{background:#f1f3f5;font-weight:600}.demand-diff-field{font-weight:600;width:30%}.demand-diff-before{color:#842029;background:#fff5f5}.demand-diff-after{color:#0a3622;background:#f0fff4}.demand-diff-raw{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;padding:8px;font-size:12px;overflow-x:auto;white-space:pre-wrap}.budget-change-detail-subtitle{font-size:13px;font-weight:600;margin:8px 0 4px}.hiring-table td{word-break:break-word;white-space:normal;overflow:visible;text-overflow:unset}.hiring-table tbody tr .btn-add-note{visibility:hidden;margin-left:6px;padding:0 4px;font-size:14px;line-height:1;cursor:pointer;background:none;border:1px solid #adb5bd;border-radius:3px;color:#495057}.hiring-table tbody tr:hover .btn-add-note{visibility:visible}.note-popup-trigger{position:relative;display:inline-block}.note-popup{z-index:200;background:#fff;border:1px solid #ced4da;border-radius:6px;box-shadow:0 4px 16px #0000002e;padding:12px;width:320px}.note-popup-textarea{width:100%;min-height:120px;resize:vertical;padding:6px 8px;font-size:13px;border:1px solid #ced4da;border-radius:4px;box-sizing:border-box}.note-popup-char-count{font-size:11px;color:#6c757d;text-align:right;margin-top:3px}.note-popup-error{font-size:12px;color:#dc3545;margin:4px 0 0}.note-popup-actions{display:flex;justify-content:flex-end;margin-top:8px}.report-by-leader{display:flex;flex-direction:column;gap:16px;padding:8px 0}.workforce-tables-row{display:flex;flex-direction:row;align-items:flex-start;gap:32px;flex-wrap:wrap}.workforce-distribution-side{flex:0 0 auto}.workforce-targets-section{display:flex;flex-direction:column;gap:8px;flex:0 0 auto}.workforce-targets-heading{font-size:14px;font-weight:700;color:#002677;text-transform:uppercase;letter-spacing:.04em;margin:0}.workforce-targets-table{table-layout:auto;width:auto}.workforce-targets-table th,.workforce-targets-table td{padding:7px 14px;white-space:nowrap}.target-row-label{font-weight:600;color:#333}.target-row-goal{color:#555}.target-row-actual{min-width:200px}.target-row-empty{color:#aaa}.target-badge{display:inline-block;padding:2px 10px;border-radius:12px;font-size:13px;font-weight:500}.target-badge--met{background:#d4edda;color:#155724}.target-badge--missed{background:#f8d7da;color:#721c24}.workforce-distribution-wrapper{display:flex;flex-direction:column;gap:8px;max-width:480px}.workforce-distribution-table{table-layout:auto;width:auto}.workforce-distribution-table th,.workforce-distribution-table td{text-align:center;min-width:120px;padding:10px 16px}.workforce-row-header{text-align:left!important;font-weight:700;color:#002677;background:#e8edf5;white-space:nowrap}.workforce-cell{vertical-align:middle;line-height:1.4}.workforce-count{display:block;font-size:18px;font-weight:600;color:#222}.workforce-pct{display:block;font-size:12px;color:#888;margin-top:2px}.workforce-total-note{font-size:13px;color:#666;margin:0}.builder-tab{padding:16px 20px;max-width:1100px}.builder-header{margin-bottom:18px}.builder-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.builder-use-template-wrap{position:relative;flex-shrink:0}.builder-template-panel--header{position:absolute;right:0;top:calc(100% + 6px);z-index:20;min-width:240px;background:#fff;border:1px solid #d0d6e0;border-radius:6px;padding:12px;box-shadow:0 4px 12px #0000001a}.builder-toggles{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:10px}.builder-toggle-group{display:flex;border:1px solid #d0d6e0;border-radius:4px;overflow:hidden}.builder-toggle-btn{padding:5px 16px;background:#fff;border:none;border-right:1px solid #d0d6e0;font-family:inherit;font-size:13px;color:#374151;cursor:pointer;transition:background .12s,color .12s;white-space:nowrap}.builder-toggle-btn:last-child{border-right:none}.builder-toggle-btn:hover{background:#f3f4f6}.builder-toggle-btn--active{background:#c25608;color:#fff;font-weight:600}.builder-toggle-btn--active:hover{background:#a84a07}.builder-contractor-select-wrap{display:flex;align-items:center}.builder-contractor-select{min-width:320px;height:32px}.builder-contractor-empty{font-size:13px;color:#6b7280;font-style:italic}.builder-waiting{padding:24px 0;font-size:14px;color:#6b7280;font-style:italic}.builder-sheet-note{margin:6px 0 0;font-size:12px;color:#6b7280}.builder-body{display:flex;flex-direction:column;gap:28px}.builder-form{display:flex;flex-direction:column;gap:14px}.builder-field{display:grid;grid-template-columns:280px minmax(0,600px);gap:0 16px;align-items:start}.builder-field-meta{padding-top:4px}.builder-field-label{font-size:13px;font-weight:600;color:#374151}.builder-field-tooltip{position:relative;display:inline-flex;align-items:center;margin-left:5px;color:#9ca3af;font-size:13px;font-weight:400;cursor:help;vertical-align:middle}.builder-field-tooltip:after{content:attr(data-tooltip);position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);background:#1f2937;color:#f9fafb;font-size:12px;line-height:1.55;padding:8px 12px;border-radius:5px;white-space:pre-line;width:320px;pointer-events:none;opacity:0;transition:opacity .15s;z-index:200;box-shadow:0 4px 12px #00000040}.builder-field-tooltip:hover:after{opacity:1}.builder-field-input{height:30px;padding:0 8px;border:1px solid #d0d6e0;border-radius:4px;background:#fff;color:#1f2937;font-family:inherit;font-size:13px}.builder-field-input:focus{outline:2px solid #C25608;outline-offset:1px}.builder-field-select{height:30px;font-size:13px}.builder-location-controls{display:flex;align-items:center;gap:16px}.builder-location-controls .builder-field-select{flex:1}.builder-telecommute-label{white-space:nowrap;flex-shrink:0}.builder-field-textarea{padding:6px 8px;border:1px solid #d0d6e0;border-radius:4px;background:#fff;color:#1f2937;font-family:inherit;font-size:13px;resize:vertical;line-height:1.5}.builder-field-textarea:focus{outline:2px solid #C25608;outline-offset:1px}.builder-output{max-width:896px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.builder-output-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.builder-output-title{font-size:13px;font-weight:600;color:#374151}.builder-char-count{font-size:12px;color:#16a34a;white-space:nowrap}.builder-char-count--warn{color:#d97706}.builder-char-count--over{color:#dc2626;font-weight:600}.builder-output-text{width:100%;padding:8px 10px;border:1px solid #d0d6e0;border-radius:4px;background:#fff;color:#1f2937;font-family:inherit;font-size:12px;resize:vertical;line-height:1.5;box-sizing:border-box}.builder-output-note{font-size:11px;color:#6b7280;margin:0;line-height:1.5}.builder-actions{display:flex;gap:8px;flex-wrap:wrap}.builder-actions .btn-secondary{padding:6px 14px;font-size:13px}.builder-template-panel{margin-top:10px;padding:12px 14px;background:var(--color-surface-alt, #f9f9f9);border:1px solid var(--color-border, #ddd);border-radius:6px;display:flex;flex-direction:column;gap:8px;max-width:480px}.builder-demand-checklist{margin:0 0 4px;padding-left:18px;font-size:13px;color:#444;display:flex;flex-direction:column;gap:4px}.builder-demand-checklist:before{content:"Before clicking Create, make sure you have:";display:block;font-weight:600;color:#333;margin-left:-18px;margin-bottom:4px}.builder-template-panel-label{font-size:13px;font-weight:600;color:var(--color-text-muted, #555)}.builder-template-panel-actions{display:flex;gap:8px}.builder-template-panel-actions .btn-primary,.builder-template-panel-actions .btn-secondary{padding:5px 14px;font-size:13px}.builder-template-error{margin-top:6px;font-size:13px;color:var(--color-error, #c0392b)}
