.contract-main{max-width:1000px}.contract-main .workspace-hero{padding:32px}.contract-main .workspace-hero h1{font-size:clamp(32px,6vw,52px);margin:12px 0}.contract-source{display:inline-block;color:white;font-weight:700;padding:12px 0}.contract-main .lookup{background:transparent;border:0;box-shadow:none;padding:28px 0}.contract-search-row{display:flex;gap:10px;margin-top:10px}.contract-main #contractQuery{flex:1;min-width:0;width:100%;background:white;border:1px solid #91a2b6;border-radius:8px;padding:15px 16px;font:17px system-ui;color:#172c40;box-shadow:none;outline-offset:3px}.contract-search-row button{border:0;border-radius:8px;background:var(--accent);color:white;padding:12px 22px;font-size:16px;font-weight:700;box-shadow:none}.contract-topics{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.contract-topics button{padding:10px 14px;background:#fff;color:#163755;border:1px solid #bdc9d5;border-radius:22px;min-height:44px;font-size:15px}.contract-filter{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:24px}.contract-filter select{padding:12px;background:white;color:#172c40;border:1px solid #91a2b6;border-radius:8px;font-size:16px;max-width:100%}.contract-main .lookup p{line-height:1.6;font-size:14px;color:#526174}.agreement-heading{margin:32px 0 16px;font-size:25px;color:var(--accent-ink)}.contract-article{background:white;color:#172c40;border:1px solid #c5cfda;border-radius:12px;margin:12px 0;overflow:hidden}.contract-article summary{padding:22px 24px;cursor:pointer;list-style:none;position:relative;padding-right:52px}.contract-article summary::-webkit-details-marker{display:none}.contract-article summary:after{content:'+';position:absolute;right:24px;top:24px;font-size:25px;color:var(--accent-ink)}.contract-article[open] summary:after{content:'−'}.contract-article summary h3{font:750 clamp(18px,3vw,22px)/1.45 system-ui;margin:0;letter-spacing:0}.article-meta{display:block;font-size:13px;color:#627184;margin-top:8px}.contract-article[open] summary{background:var(--accent-soft);border-bottom:1px solid #c5cfda}.article-body{padding:8px 28px 28px;max-width:820px;margin:auto}.article-body h4{font:750 22px/1.5 system-ui;margin:30px 0 16px;padding-top:18px;border-top:1px solid #dce3ea;color:var(--accent-ink)}.article-body p{font:18px/1.85 system-ui;margin:18px 0;overflow-wrap:anywhere}.article-body .numbered-clause{padding-left:18px;border-left:3px solid #c5d5e6}.close-article{border:0;background:var(--accent-soft);color:var(--accent-ink);padding:14px 18px;border-radius:8px;font-weight:700}.contract-main mark{background:#ffe58f;color:#172c40}.contract-main summary:focus-visible{outline:3px solid var(--accent);outline-offset:-4px}@media(max-width:600px){.contract-main .workspace-hero{padding:24px}.contract-article summary{padding:18px 44px 18px 18px}.contract-article summary:after{right:18px;top:18px}.article-body{padding:4px 18px 22px}.article-body h4{font-size:21px}.article-body p{font-size:17px}.contract-search-row{gap:8px}.contract-search-row button{padding:12px 16px}}
.feeder-pay{margin:26px 0 8px;border-top:1px solid #ffffff55;padding-top:24px}.pay-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.contract-main .feeder-pay h2{font:750 26px/1.25 system-ui;color:#fff;margin:0}.contract-main .feeder-pay p{color:#e9f1ff;font:14px/1.6 system-ui;margin:10px 0}.pay-date{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#fff}.pay-date label{font:600 13px system-ui}.pay-date input,.pay-date button{border:1px solid #bdd1e9;border-radius:7px;min-height:44px;padding:9px;background:white;color:#143252;font:15px system-ui}.pay-table{width:100%;border-collapse:collapse;margin:20px 0;color:#fff;text-align:left;table-layout:fixed}.pay-table th,.pay-table td{padding:16px 8px;border-bottom:1px solid #ffffff40}.pay-table thead th{font:600 13px system-ui;color:#dceaff}.pay-table tbody th{font:700 17px system-ui}.pay-table td{font:750 clamp(19px,3vw,30px) system-ui;white-space:nowrap;letter-spacing:-.5px}.pay-details{margin-top:16px;color:white}.pay-details summary{cursor:pointer;font-weight:700;padding:10px 0}.pay-details a{color:white;text-decoration:underline}.contract-main .feeder-pay #payNote{font-weight:650}@media(max-width:500px){.pay-table th,.pay-table td{padding:14px 3px}.pay-table th:first-child{width:25%}.pay-table td{font-size:21px}.pay-table tbody th{font-size:15px}.pay-date{width:100%}}
/* Comfortable reading layout; source wording remains unchanged. */
.contract-article[open]{background:#fffefa;box-shadow:0 8px 24px #203c5510}.contract-article[open] summary{background:#edf3f8;padding-top:26px;padding-bottom:26px}.article-body{--reading-size:20px;max-width:740px;padding:10px 36px 36px;color:#303b45}.article-body p{font:400 var(--reading-size)/1.85 Georgia,'Times New Roman',serif;margin:0 0 28px;letter-spacing:.005em;text-align:left}.reading-paragraph{display:block;white-space:pre-wrap}.reading-paragraph+.reading-paragraph{margin-top:1.2em}.article-body h4{font:750 23px/1.45 system-ui,sans-serif;margin:44px 0 24px;padding:18px 0 0;border-top:2px solid #c4d3e0;color:#214d70;letter-spacing:0}.article-body .numbered-clause{padding:0 0 0 20px;border-left:2px solid #c4d3e0;margin-left:3px}.reading-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:16px 0 20px;margin:0 0 20px;border-bottom:1px solid #e1e5e7;font:14px system-ui;color:#526272}.reading-controls>span{margin-right:6px}.reading-controls button{font:600 13px system-ui;min-height:42px;padding:9px 12px;background:transparent;border:1px solid #bbc9d4;border-radius:7px;color:#28465e;cursor:pointer}.reading-controls button[aria-pressed=true]{background:#e7eff5;border-color:#5f7c93}.article-body .close-article{margin-top:20px}.contract-article summary{scroll-margin-top:20px}@media(max-width:600px){.article-body{padding:8px 22px 26px}.article-body p{font-size:var(--reading-size);line-height:1.8}.article-body h4{font-size:22px;margin-top:36px}.reading-controls{gap:6px}.reading-controls button{padding:9px}.article-body .numbered-clause{padding-left:14px}}

.contract-audio{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:18px 0;border-bottom:1px solid #d5dfe6;font:15px/1.5 system-ui}.contract-audio button{background:transparent;border:1px solid #9cacb9;border-radius:7px;min-height:44px;padding:10px 15px;color:#214d70;font:650 15px system-ui;cursor:pointer}.contract-audio .audio-voice+button{background:transparent;color:#214d70;border-color:transparent;box-shadow:none}.contract-audio button:disabled{opacity:.45;cursor:default}.contract-audio small{flex-basis:100%;color:#526272;font-size:13px}.audio-status{font-size:14px;color:#526272}

.audio-voice{display:flex;gap:8px;align-items:center;flex-basis:100%;font-weight:600}.audio-voice select{min-height:44px;max-width:100%;min-width:0;flex:1;padding:9px;border:1px solid #9cacb9;border-radius:7px;background:#fff;color:#214d70;font:16px system-ui}

.sleeper-rate-panel{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid currentColor}.sleeper-rate-panel h3{font-size:1.25rem;margin:0 0 .75rem}.sleeper-rate-panel p{line-height:1.6}.sleeper-rate-panel .pay-table{width:100%;table-layout:fixed}.sleeper-rate-panel .pay-table th:first-child{width:46%}.sleeper-rate-panel .pay-table td{white-space:nowrap}.sleeper-rate-total{font-weight:800}.sleeper-rate-source{font-size:.9rem}

/* Explicit light foregrounds on every theme's dark pay surface. */
.contract-main .feeder-pay{color:#fff}
.contract-main .feeder-pay .sleeper-rate-panel h3{color:#fff}
.contract-main .feeder-pay .sleeper-rate-panel{border-top-color:#ffffff80}
.contract-main .feeder-pay a,.contract-main .feeder-pay a:visited{color:#fff;text-decoration:underline;text-underline-offset:3px}
.contract-main .feeder-pay a:focus-visible,.contract-main .feeder-pay summary:focus-visible{outline:3px solid #fff;outline-offset:4px}
/* Graphite's page surround is dark; article cards remain light. */
:root[data-theme=graphite] .contract-main .lookup{color:#edf0f5}
:root[data-theme=graphite] .contract-main .lookup p{color:#bdc7d5}
:root[data-theme=graphite] .agreement-heading{color:#dce4ef}
@media(max-width:400px){.sleeper-rate-panel .pay-table td{font-size:17px;letter-spacing:-.5px}.sleeper-rate-panel .pay-table tbody th{font-size:14px}}

.pay-simple th:first-child{width:40%}.pay-simple tbody th small{display:block;margin-top:5px;font:400 12px/1.4 system-ui;color:#e9f1ff}.pay-simple td{font-size:clamp(18px,3vw,28px)}@media(max-width:400px){.pay-simple tbody th{font-size:14px}.pay-simple td{font-size:18px}}
