/* 10derhub / Rev05. The h–u curve is a signature, never a barrier to the work. */
:root{--ink:#152b3c;--teal:#152b3c;--gold:#b49a65;--gold-text:#806834;--ivory:#f4f1ea;--paper:#f7f7f4;--muted:#637283;--line:#e0e4e7;--rd-paper:#f7f7f4;--rd-border:#e0e4e7;--rd-text:#263b4d;--rd-muted:#637283;--hub-curve:8px 8px 26px 8px}
body{color:var(--rd-text);background:var(--paper)}
button,input,select,textarea{transition:background-color 160ms,border-color 160ms,box-shadow 160ms}
button.primary{background:var(--ink);border-color:var(--ink);color:#fff;border-radius:7px 7px 15px 7px}
button.primary:hover{background:#27475e;border-color:#27475e}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #8b713d;outline-offset:3px}
button:disabled{cursor:not-allowed}
aside.rd-masthead{height:76px;background:var(--ink);gap:46px;border-bottom:1px solid #ffffff16}
.rd-masthead .brand{position:relative;padding-right:28px}
.rd-masthead .brand:after{content:'';position:absolute;right:0;bottom:0;width:16px;height:28px;border:1px solid #b49a6559;border-top:0;border-radius:0 0 14px 14px}
.rd-masthead .brand img{width:178px;height:36px;object-fit:contain}
.rd-masthead .roles label{color:#c0cbd4}
.rd-masthead .roles select{background:#203a4e;border-color:#4d6374;color:#f4f1ea;border-radius:6px 6px 14px 6px}
#nav>button,#nav summary{color:#c4d0da;position:relative;border-radius:6px 6px 13px 6px}
#nav>button.current,#nav .current>summary{box-shadow:none;color:#fff;background:#ffffff08}
#nav>button.current:after,#nav .current>summary:after{content:'';position:absolute;left:13px;right:13px;bottom:2px;height:7px;border-bottom:2px solid var(--gold);border-right:2px solid var(--gold);border-radius:0 0 10px 0;pointer-events:none}
#nav summary>span{color:#c4d0da}.global-popover{border-radius:7px 7px 20px 7px;box-shadow:0 14px 34px #152b3c24}
#nav .global-popover button{border-radius:5px 5px 12px 5px}
.rd-context{background:#fff;min-height:49px}.rd-currency{color:#637283}
.shell>.demo{background:#f0ede5;color:#655c48;border-bottom:1px solid #e8e3d8;letter-spacing:0}.shell>.demo b{color:#78613b}.shell>.demo span{color:#6a6b69}
main{padding-top:30px}.eyebrow{color:var(--gold-text)}h1{letter-spacing:-1px}
.heading p{color:#637283;max-width:650px}.rd-titlebar h1{font-size:29px}
.card,.stat,.module-card{border-color:var(--line);box-shadow:0 2px 8px #152b3c03}
.card,.module-card{border-radius:var(--hub-curve)}
.stat{border-radius:7px 7px 19px 7px}.stat label,.stat small{color:#647383}
.ob-stats .stat:last-child{background:var(--ivory);border-color:#e4dccb}
.ob-stats .stat:last-child:after{content:'';position:absolute;right:16px;bottom:12px;width:24px;height:24px;border-bottom:1px solid var(--gold);border-right:1px solid var(--gold);border-radius:0 0 16px 0}
.ob-hero{isolation:isolate;background:var(--ink);border-radius:10px 10px 44px 10px;padding:31px 32px;min-height:230px;grid-template-columns:minmax(0,1fr) 280px;gap:30px}
.ob-hero:before{content:'';position:absolute;inset:auto 250px -72px auto;width:220px;height:260px;background:url('assets/hu-line.svg') center/contain no-repeat;opacity:.25;pointer-events:none;z-index:-1}
.ob-hero h2{font-size:28px;max-width:650px;letter-spacing:-.7px;color:#fff}
.ob-hero .eyebrow{color:#dac8a1}.ob-hero .eyebrow span{color:#c3d0d9}
.hero-meta{color:#bdcbd5}.hero-meta span+span:before{color:var(--gold)}
.hero-copy{min-width:0;align-self:center}.hero-state{color:#d1dbe2}.hero-state i{background:var(--gold)}
.hero-actions button.primary{background:var(--ivory);color:var(--ink);border-color:var(--ivory)}
.hero-deadline{padding:20px 0 10px 30px;border-color:#ffffff26;display:flex;flex-direction:column;justify-content:center}
.hero-deadline .eyebrow{font-size:8px;letter-spacing:1.6px}.hero-date{margin:12px 0;color:#d2dce3;font-size:13px}
.hero-deadline .countdown{font-size:25px;font-weight:500;letter-spacing:-.7px}.hero-watermark{width:225px;height:175px;opacity:.07;top:5px;right:-83px}
.round-icon{border-radius:7px 7px 17px 7px;color:var(--gold-text);background:#f3efe5;border:1px solid #e8e0ce}
.module-card{position:relative;overflow:hidden;transition:border-color 180ms,box-shadow 180ms}
.module-card:after{content:'';width:94px;height:104px;position:absolute;right:-38px;top:-35px;background:url('assets/hu-line.svg') center/contain no-repeat;opacity:.4;transition:transform 240ms ease;pointer-events:none}
.module-card:hover{border-color:var(--gold);box-shadow:0 6px 18px #152b3c09;background:#fff}.module-card:hover:after{transform:translate(-6px,5px)}
.module-card h2{font-size:16px}.module-card p{color:#637283}.module-link{color:var(--ink)}
.journey-card .stage-list{position:relative;gap:12px}.stage{position:relative;border-radius:6px 6px 14px 6px;background:#f8f9f8;border-color:#dfe4e7}
.stage:not(:last-child):after{content:'';position:absolute;right:-10px;top:50%;width:8px;height:9px;border-bottom:1px solid var(--gold);border-right:1px solid var(--gold);border-radius:0 0 7px 0;opacity:.8}
.stage>span{color:var(--gold-text)}.stage small{color:#667586}.next-action{border-color:var(--line)}
.activity:before{background:var(--gold)}.activities{border-color:#e2dccf}
.contractor-hero{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);padding:0;gap:0;min-height:280px}
.contractor-hero .hero-copy{padding:34px;z-index:2}.contractor-hero:before{display:none}
.hub-art{height:100%;min-height:280px;position:relative;overflow:hidden;border-radius:0 42px 0 100px;background:#152b3c}
.hub-art img{position:absolute;right:0;bottom:0;height:155%;width:auto;max-width:none;object-fit:cover}
.hub-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#152b3c99,transparent 24%);pointer-events:none}
.hero-actions .tag{background:#ffffff0e;color:#e4d4b1;border:1px solid #b49a655c}
.portal-steps{gap:40px}.portal-step{position:relative;color:#647383}
.portal-step:not(:last-child):after{content:'';position:absolute;right:-28px;width:20px;height:9px;border-bottom:1px solid #b49a6599;border-right:1px solid #b49a6599;border-radius:0 0 12px 0}
.portal-step>span{border-radius:6px 6px 12px 6px;background:#f0ede6;border-color:#dfd7c7;color:#806834}.portal-step.done>span{background:var(--ink);border-color:var(--ink);color:#fff}.portal-step.done{color:var(--ink)}
.portal-card{border-radius:var(--hub-curve)}.portal-card h2{font-size:18px}.portal-card p{font-size:12px}
.document-access{background:var(--ivory);border-color:#e3dbca;border-radius:8px 8px 28px 8px}.document-access .round-icon{background:#ece5d5}
.document-card{border-radius:var(--hub-curve)}.document-card button{border-color:#cdd5dc}
.context-strip{background:#f0f3f5;border-color:#dce2e7;color:#637283}.context-strip>span:first-child{color:var(--ink)}
.section-band{background:var(--ink)}.section-band span{color:#c8d3dc}
.tabs button.active{background:var(--ink)}.comparison-tabs button.active{background:var(--ivory)}
.data-table th{background:#f0f3f5;color:#526576}.data-table td{border-color:#e4e8eb}.data-table tbody tr:nth-child(even){background:#fafbfc}.data-table tbody tr:hover{background:#f5f2eb}.data-table small{color:#667586}
.filterbar select{background:#fafbfc;border-color:#dce2e7}.filterhint{color:#647383}
.rd-tabs>button{position:relative;color:#637283}.rd-tabs>button.active{box-shadow:none}
.rd-tabs>button.active:after{content:'';position:absolute;left:0;right:0;bottom:0;height:8px;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);border-radius:0 0 12px 0}
.rd-layout .section-band{background:#eef2f5}.rd-layout .section-band span{color:#637283}
.rd-layout .card{border-radius:6px 6px 16px 6px}.rd-table th{background:#eef2f5;color:#566a7b}.rd-table th button small{color:#806834}
.rd-table thead .chosen{background:var(--ivory);box-shadow:inset 0 2px var(--gold)}.rd-table tbody .chosen{background:#f7f4ed}.rd-table th button:hover{color:#806834}
.rd-caption,.rd-description,.rd-desk-context,.rd-reconcile h2 span,.rd-section-title h2 span{color:#637283}
.rd-metrics strong{font-size:27px}.rd-equation{border-radius:6px 6px 20px 6px}.rd-equation .result{border-color:#ded7c8}
.rd-desk{background:#f4f1ea;border-color:#e1d8c6;border-radius:8px 8px 28px 8px;top:96px;max-height:calc(100vh - 116px);box-shadow:none;padding-top:27px}
.rd-desk:before{top:12px;right:15px;width:36px;height:24px;background:url('assets/hu-line.svg') center/contain no-repeat;opacity:.8}
.rd-desk-heading{padding-right:26px}.rd-desk h2{font-size:17px}.rd-desk-context{margin-bottom:20px}.rd-desk .rd-close{margin-right:-25px;background:#fdfcf8;z-index:1}
.rd-note-form textarea,.rd-note-form>input{background:#fff;border-color:#d8d7cf;color:var(--ink);border-radius:5px 5px 12px 5px}
.rd-note-form textarea::placeholder,.rd-note-form>input::placeholder{color:#6c7985}
.rd-note-actions>button.primary:disabled{background:#e1e5e8;border-color:#e1e5e8;color:#667582}
.rd-inspect{background:#fff;border-color:#c7cdd0;border-radius:6px 6px 14px 6px}
.rd-evidence-pair>section{border-color:#dadbd5;border-radius:5px 5px 15px 5px;background:#fff}.rd-evidence-pair span,.rd-source-refs p,.rd-source-explain p{color:#607181}
.rd-formula{background:#ebe9e0;border-color:#d9d2c2}.rd-status.neutral{background:#e9eef1;color:#4f6575;border-color:#d5dfe5}
.rd-status.warning{color:#785715;background:#f7ebcc}.rd-warning-text{color:#806124}
.rd-source-open:after{background:#152b3c80}.rd-sample{color:#65717c;border-color:#d8dee1}
.note{border-color:var(--gold);background:#f6f1e6;color:#736144}.banner{background:var(--ink);border-radius:8px 8px 28px 8px}.banner .eyebrow{color:#d8c69f}.banner p{color:#d1dce3}
.upload{border-color:#b8c4ce;background:#f7f9fb;border-radius:7px 7px 22px 7px}.upload input::file-selector-button{background:#e9eef2;color:var(--ink)}
.focused{color:#23475f;background:#e6eef3}.track{background:#e9eef2}.track span{background:#58758b}.track i{border-color:var(--gold)}
.bridgecell{background:#f6f8fa;border-color:#dfe4e9}.bridgecell strong{color:var(--ink)}.bridgecell.final{background:#eef2f5;border-color:#cad5de;color:var(--ink)}
dialog{border-color:#dbe0e5;border-radius:8px 8px 30px 8px;box-shadow:0 24px 80px #152b3c44;color:var(--ink)}dialog::backdrop{background:#152b3c88}
#toast{background:var(--ink);border-color:#4c6376;border-radius:7px 7px 18px 7px}
footer{color:#687887}.hub-footer-brand{display:flex;align-items:center;gap:18px}.hub-footer-brand img{width:112px;height:24px}.hub-footer-brand small{margin:0;font-size:8px;letter-spacing:.7px;color:#6c7a87}
@media(min-width:1550px){.ob-hero{min-height:250px;padding:36px 40px}.contractor-hero{padding:0;min-height:310px}.hub-art{min-height:310px}.contractor-hero .hero-copy{padding:40px}}
@media(max-width:1200px){aside.rd-masthead{gap:24px}.rd-masthead .brand{padding-right:22px}.rd-masthead .brand img{width:160px}.ob-hero h2{font-size:25px}.ob-hero{grid-template-columns:minmax(0,1fr) 240px;padding:27px}.contractor-hero{grid-template-columns:minmax(0,1fr) 38%;padding:0}.contractor-hero .hero-copy{padding:28px}}
@media(max-width:1000px){.rd-masthead .brand img{width:145px}.rd-masthead .brand{padding-right:0}.rd-masthead .brand:after{display:none}.ob-hero{grid-template-columns:1fr}.hero-deadline{border-left:0;border-top:1px solid #ffffff26;padding:20px 0 0}.hero-watermark{width:180px;right:0;top:-40px}.contractor-hero{grid-template-columns:minmax(0,1fr) 35%}.contractor-hero .hub-art{min-height:260px}.rd-layout.source-mode .rd-desk{border-radius:8px 8px 24px 8px;max-height:calc(100dvh - 32px)}.stage:nth-child(2):after{display:none}}
@media(max-width:760px){aside.rd-masthead{height:auto;min-height:110px;gap:0 14px;padding-top:17px}.rd-masthead .brand img{width:143px;height:31px}.rd-masthead .roles{width:auto}.rd-masthead .roles select{max-width:178px;font-size:9px}#nav{margin-top:12px}#nav>button,#nav summary{font-size:11px}.rd-masthead .brand{padding:0}.ob-hero{padding:25px 22px;border-radius:8px 8px 32px 8px;gap:20px;min-height:0}.ob-hero h2{font-size:24px}.hero-deadline .countdown{font-size:25px}.hero-meta{font-size:10px}.hero-state{display:inline;font-size:9px}.hero-actions{gap:14px}.contractor-hero{grid-template-columns:1fr;padding:0}.contractor-hero .hero-copy{padding:27px 23px}.contractor-hero .hub-art{height:160px;min-height:160px;border-radius:70px 0 0 0;margin-left:30px}.hub-art img{height:230%;right:0}.portal-steps{gap:26px}.portal-step:not(:last-child):after{right:-13px;top:13px;width:16px;height:8px}.portal-card h2{font-size:17px}.rd-desk{top:auto;max-height:none}.rd-titlebar h1{font-size:25px}.rd-metrics strong{font-size:24px}.rd-equation strong{font-size:22px}.rd-table th:first-child{background:#f0f3f5}footer{flex-wrap:wrap}.hub-footer-brand{gap:12px}.hub-footer-brand small{font-size:7px}.hub-footer-brand img{width:98px}footer>span:last-child{margin-left:0;flex-wrap:wrap;font-size:8px}.stage:nth-child(2):after{display:none}}
@media(max-width:390px){.rd-masthead .brand img{width:125px}.rd-masthead .roles select{max-width:166px}.hero-actions{align-items:flex-start;flex-direction:column}.rd-titlebar{flex-wrap:wrap}}
@media(max-width:760px){.hub-art img{height:145%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Workspace portfolio Rev06 */
.ws-tender{padding:22px 0;border-bottom:1px solid #dce1e4}.ws-tender:last-child{border-bottom:0}.ws-tender h3{margin:8px 0}.ws-tender h3 .text{text-align:left;font-size:18px;white-space:normal}.ws-meta{display:flex;flex-wrap:wrap;gap:8px 18px;color:#53616b;font-size:12px}.ws-tender .tools{margin:14px 0 0}.ws-identity{justify-content:space-between}.ws-identity label{display:flex;gap:12px;align-items:center}.ws-identity small{max-width:420px;color:#53616b}.activity small{line-height:1.8}.hero-copy>p{color:inherit}.ws-identity select{max-width:230px}@media(max-width:700px){.ws-identity{display:block}.ws-identity label{align-items:flex-start;flex-direction:column}.ws-meta{display:grid}.hero-deadline .hero-date{font-size:25px}}
.ws-identity small{line-height:1.5}.ob-hero .hero-deadline{color:#e3e9ec}.ob-hero .hero-deadline p,.ob-hero .hero-deadline small{color:#c4cfd5}.ob-hero .hero-deadline .hero-date{color:#fff;font-size:25px;line-height:1.4}
/* Preparation checklist Rev08 */
.prep-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:22px 0}.prep-task{display:flex;flex-direction:column;min-height:230px}.prep-task .cardhead{gap:10px;flex-wrap:wrap}.prep-task .tools{margin-top:auto;padding-top:20px}.prep-task h2{line-height:1.5}.prep-release{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:22px 0}.prep-release p{max-width:800px}#rd-context>.context-strip{margin:0;border-radius:0;gap:18px;font-size:10px}@media(max-width:1050px){.prep-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.prep-grid{grid-template-columns:1fr}.prep-release{align-items:flex-start;flex-direction:column}}
/* Template-based RFP form Rev09 */
dialog.rfp-wide{width:1050px;max-width:95vw}.rfp-section{padding:25px 0;border-bottom:1px solid var(--line)}.rfp-section h3{font-size:19px;margin-bottom:18px}.rfp-section h4{font-size:14px;margin:20px 0 10px}.rfp-section>p,.rfp-builder>p{font-size:12px}.rfp-section table td{padding:9px}.rfp-section textarea{min-height:110px}.rfp-bottom{display:flex;justify-content:flex-end;gap:12px;padding:22px 0;position:sticky;bottom:-30px;background:#fff;z-index:2}.rfp-preview{font-family:'Times New Roman',serif;padding:30px;background:white;border:1px solid var(--line);max-height:65vh;overflow:auto}.rfp-preview p{white-space:pre-wrap;color:#263b4d}.rfp-preview h3{margin:25px 0 12px;font-family:inherit}.rfp-preview h1{font-family:inherit;font-size:25px}.rfp-identity{margin-bottom:20px}@media(max-width:700px){dialog.rfp-wide{padding:20px}.rfp-bottom{flex-wrap:wrap;bottom:-20px}.rfp-preview{padding:15px}}
.rfp-pdf-viewer{display:block;width:100%;height:60vh;border:1px solid var(--line);background:#e8ebee;border-radius:8px}.rfp-wide .caption{overflow-wrap:anywhere}
.doc-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}.doc-category-grid .cardhead{gap:10px;flex-wrap:wrap}.doc-category-grid h3{font-size:17px}.doc-category-grid small{overflow-wrap:anywhere;line-height:1.6}.doc-category-grid p{font-size:12px}dialog.rfp-wide>div>h3{margin-top:22px}@media(max-width:700px){.doc-category-grid{grid-template-columns:1fr}}
