.contract-layout{display:flex;gap:0;margin:-20px;min-height:calc(100vh - 60px)}.contract-sidebar{width:350px;min-width:350px;background:var(--surface-raised);border-right:var(--border-thin) solid var(--line-strong);padding:var(--space-6) var(--space-5) var(--space-8);overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-5)}.contract-sidebar h2{font-family:var(--font-display);font-size:var(--type-md);font-weight:var(--weight-black);letter-spacing:var(--tracking-tight);color:var(--ink-strong);border-bottom:var(--border-thin) solid var(--line-strong);padding-bottom:var(--space-3);margin:0;line-height:var(--leading-tight)}.contract-sidebar h2 small{display:block;font-family:var(--font-body);font-size:var(--type-xs);color:var(--ink-muted);font-weight:var(--weight-medium);margin-top:4px;letter-spacing:0}.contract-sidebar .section-label{font-family:var(--font-body);font-size:var(--type-xs);font-weight:var(--weight-black);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--ink-muted);margin-bottom:var(--space-2)}.contract-sidebar .field-group{display:flex;flex-direction:column;gap:var(--space-3)}.contract-sidebar .field-group label{font-family:var(--font-body);font-size:var(--type-xs);font-weight:var(--weight-black);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--ink-muted);margin-bottom:2px;display:block}.contract-sidebar .field-group input,.contract-sidebar .field-group textarea,.contract-sidebar .field-group select{width:100%;background:var(--surface-input);border:var(--border-thin) solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink-base);font-family:var(--font-body);font-size:var(--type-sm);padding:var(--space-2) var(--space-3);outline:none;transition:border-color .12s}.contract-sidebar .field-group input:focus,.contract-sidebar .field-group textarea:focus,.contract-sidebar .field-group select:focus{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset);border-color:var(--ink-strong)}.contract-sidebar .field-group input.computed{background:var(--surface-sunken);color:var(--accent-forest);cursor:not-allowed}.employee-lookup{border-bottom:var(--border-thin) solid var(--line-base);padding-bottom:var(--space-4)}.lookup-wrap{position:relative}.lookup-input{width:100%;background:var(--surface-input);border:var(--border-thin) solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink-base);font-family:var(--font-body);font-size:var(--type-sm);padding:var(--space-2) var(--space-3);outline:none;transition:border-color .12s}.lookup-input:focus{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset);border-color:var(--ink-strong)}.lookup-results{position:absolute;top:100%;left:0;right:0;z-index:20;background:var(--surface-page);border:var(--border-thin) solid var(--line-strong);border-top:none;border-radius:0 0 var(--radius-sm) var(--radius-sm);max-height:260px;overflow-y:auto}.lookup-item{display:flex;flex-direction:column;gap:1px;width:100%;padding:var(--space-2) var(--space-3);border:none;background:none;text-align:left;cursor:pointer;font-family:var(--font-body);color:var(--ink-base);transition:background-color .1s;border-left:var(--border-edge) solid transparent}.lookup-item:hover{background:var(--row-hover);border-left-color:var(--accent)}.lookup-name{font-size:var(--type-sm);font-weight:var(--weight-black);color:var(--ink-strong)}.lookup-meta{font-size:var(--type-xs);color:var(--ink-muted)}.contract-sidebar .toggle-group{display:flex;gap:0;border:var(--border-thin) solid var(--line-strong);border-radius:var(--radius-sm);overflow:hidden}.contract-sidebar .toggle-btn{flex:1;padding:var(--space-2) var(--space-2);border:none;background:var(--surface-page);color:var(--ink-muted);font-family:var(--font-body);font-size:var(--type-xs);font-weight:var(--weight-medium);cursor:pointer;text-align:center;transition:background-color .12s,color .12s}.contract-sidebar .toggle-btn:not(:last-child){border-right:var(--border-thin) solid var(--line-strong)}.contract-sidebar .toggle-btn.active{background:var(--brand-indigo);color:var(--brand-beige);font-weight:var(--weight-black)}.contract-sidebar .info-box{background:var(--surface-page);border:var(--border-thin) solid var(--line-base);border-left:var(--border-edge) solid var(--accent);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-3);font-size:var(--type-xs);color:var(--ink-muted);line-height:var(--leading-base)}.contract-sidebar .sidebar-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.contract-sidebar .print-btn{flex:1;padding:var(--space-3);background:var(--accent);color:var(--ink-on-accent);border:var(--border-thin) solid var(--accent);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--type-base);font-weight:var(--weight-black);cursor:pointer;transition:background-color .12s,color .12s,border-color .12s}.contract-sidebar .print-btn:hover{background:var(--ink-strong);border-color:var(--ink-strong);color:var(--surface-page)}.contract-sidebar .reset-btn{padding:var(--space-3) var(--space-4);background:var(--surface-page);color:var(--ink-base);border:var(--border-thin) solid var(--line-strong);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--type-base);font-weight:var(--weight-black);cursor:pointer;transition:background-color .12s,color .12s}.contract-sidebar .reset-btn:hover{background:var(--ink-strong);color:var(--surface-page)}.contract-sidebar .addendum-checks{display:flex;flex-wrap:wrap;gap:var(--space-2)}.contract-sidebar .check-pill{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:var(--border-thin) solid var(--line-strong);background:var(--surface-page);font-family:var(--font-body);font-size:var(--type-xs);font-weight:var(--weight-medium);color:var(--ink-base);cursor:pointer;transition:background-color .12s,color .12s,border-color .12s;user-select:none}.contract-sidebar .check-pill:has(input:checked){background:var(--brand-indigo);border-color:var(--brand-indigo);color:var(--brand-beige);font-weight:var(--weight-black)}.contract-sidebar .check-pill input[type=checkbox]{display:none}.contract-preview{flex:1;padding:var(--space-8);overflow-y:auto;display:flex;justify-content:center;align-items:flex-start;background:var(--surface-sunken)}.contract-document{background:#fff;width:794px;min-height:1123px;padding:36px 68px 70px;box-shadow:0 4px 32px #0000001f;font-family:Georgia,Times New Roman,Times,serif;font-size:11pt;color:#111;line-height:1.55}.contract-document tr:hover{background-color:#f5f5f5}.contract-document th,.contract-document td{border-bottom:unset}.contract-document .doc-logo{height:46px;width:auto;margin-bottom:18px;display:block}.contract-document .doc-title{font-size:16pt;font-weight:700;margin-bottom:5px;color:#111}.contract-document .doc-subtitle{font-size:9.5pt;color:#555;margin-bottom:6px;font-style:italic}.contract-document .title-bar{width:36px;height:3px;background:#c0392b;margin-bottom:26px}.contract-document .consolidation-notice{border:1px solid #b8860b;background:#fffdf0;padding:12px 16px;margin-bottom:24px;font-size:9.5pt;color:#5a4000;line-height:1.6}.contract-document .consolidation-notice strong{display:block;margin-bottom:4px;font-size:10pt;color:#3a2800}.contract-document .consolidation-notice.replace-notice{border-color:#8b0000;background:#fff5f5;color:#4a0000}.contract-document .consolidation-notice.replace-notice strong{color:#3a0000}.contract-document .ct{width:100%;border-collapse:collapse}.contract-document .ct tr{border-bottom:2px solid black}.contract-document .ct tr:last-child{border-bottom:none}.contract-document .ct td{padding:9px 10px;vertical-align:top;font-size:10.5pt}.contract-document .ct .n{width:26px;padding-left:0;font-weight:400}.contract-document .sal-wrap{margin-top:10px}.contract-document .sal-t{width:100%;border-collapse:collapse;font-size:10.5pt}.contract-document .sal-t td{padding:4px 0;vertical-align:top}.contract-document .sal-t .sl{width:54%}.contract-document .sal-hr{border:none;border-top:1px solid #aaa;margin:5px 0}.contract-document .sal-note{font-style:italic;font-size:9pt;color:#555;margin-top:10px}.contract-document .bld{font-weight:700;margin:10px 0 3px}.contract-document .ni{margin-left:6px;margin-bottom:3px}.contract-document .ni:before{content:"- "}.contract-document .addendum-section-title{font-weight:700;font-size:11pt;margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid #d0d0d0}.contract-document .sig-section{margin-top:46px;display:flex;gap:50px}.contract-document .sig-col{flex:1}.contract-document .sig-col-title{font-weight:700;margin-bottom:6px;font-size:10.5pt}.contract-document .sig-block{margin-top:8px}.contract-document .sig-block+.sig-block{margin-top:22px}.contract-document .sig-line{border-top:1px solid #555;margin-bottom:5px;margin-top:34px}.contract-document .sig-name{font-size:10pt}.contract-document .sig-title-txt{font-size:9.5pt;color:#555}.contract-document .inner-table{width:100%;border:none;border-collapse:collapse}.contract-document .inner-table td{padding:2px 0;vertical-align:top;font-size:10.5pt}.contract-document .inner-table .label-col{width:45%}.contract-document .inner-table tr{border-bottom:1px solid #d0d0d0}@media print{body *{visibility:hidden;margin:0;padding:0;height:0;overflow:hidden}.contract-document,.contract-document *{visibility:visible;height:auto;overflow:visible}.contract-document{position:absolute;left:0;top:0;width:100%;padding:15mm;margin:0;box-shadow:none;min-height:auto}}
