/* Shared resources, printable procurement tools and knowledge library. */
.resource-content{padding-bottom:clamp(40px,6vw,80px)}
.resource-page .phead{padding-bottom:32px}
.resource-page .phead h1{max-width:24ch}
.resource-page .phead .sub{max-width:68ch}
.resource-block{margin:0 0 30px;padding:24px 0;border-top:1px solid var(--line,#bac3ca)}
.resource-block h2{font-size:clamp(1.2rem,2vw,1.6rem);margin:0 0 14px;line-height:1.3}
.resource-block p,.resource-block ul{max-width:80ch;line-height:1.75;margin:0 0 14px}
.resource-block ul{padding-left:24px}
.resource-block li{margin:7px 0}
.resource-block a:not(.btn),.resource-details a{text-decoration:underline;text-underline-offset:3px}
.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:30px}
.resource-card{display:flex;align-items:flex-start;flex-direction:column;padding:24px;background:var(--paper,#fff);border:1px solid var(--line,#bac3ca);border-radius:4px;min-width:0}
.resource-card h2{font-size:1.2rem;margin:0 0 12px;line-height:1.35}
.resource-card p{line-height:1.7;margin:0 0 20px}
.resource-card .btn{margin-top:auto;white-space:normal}
.resource-tag,.resource-language{display:block;font:500 .8rem/1.5 'IBM Plex Mono',monospace;letter-spacing:.03em;color:var(--ink-2,#33404c);margin-bottom:12px}
.resource-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.resource-actions .btn,.resource-printbar .btn{min-height:44px;white-space:normal}
.resource-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 36px}
.resource-facts>div{border-top:3px solid var(--red,#d02d37);padding:16px 0}
.resource-facts strong{display:block;font-size:clamp(2rem,4vw,3.4rem);line-height:1.1}
.resource-facts span{display:block;font-size:.95rem;line-height:1.5;margin-top:10px}
.resource-details{margin:0 0 26px;border-top:1px solid var(--line,#bac3ca)}
.resource-details>div{display:grid;grid-template-columns:minmax(150px,1fr) 3fr;gap:20px;padding:13px 0;border-bottom:1px solid var(--line,#bac3ca)}
.resource-details dt{font-weight:700}
.resource-details dd{margin:0;line-height:1.6}
.resource-printbar{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin:0 0 26px;font-size:.9rem}
.resource-note,.resource-notice{line-height:1.75;padding:20px;margin:0 0 26px;background:#fff;border-left:4px solid var(--red,#d02d37)}
.resource-notice strong{display:block;margin-bottom:8px}
.resource-checklist{list-style:none;padding:0!important;max-width:none!important}
.resource-checklist label{display:flex;align-items:flex-start;gap:14px;cursor:pointer;padding:8px 0;line-height:1.65}
.resource-checklist input{width:20px;height:20px;flex:0 0 20px;margin-top:4px;accent-color:var(--red,#d02d37)}
.resource-blank{height:108px;border:1px solid var(--line,#bac3ca);background:repeating-linear-gradient(transparent,transparent 35px,#bec6cd 35px,#bec6cd 36px);margin-bottom:22px}
.resource-formlines{margin:20px 0 26px}
.resource-formlines>div{display:grid;grid-template-columns:1fr 2fr;gap:24px;padding:15px 0;border-bottom:1px solid var(--line,#bac3ca)}
.resource-formlines dt{font-weight:600}
.resource-formlines dd{margin:0;color:transparent;border-bottom:1px dotted #727c86;overflow:hidden;white-space:nowrap}
.resource-table-wrap{overflow-x:auto;margin-bottom:24px}
.resource-table{border-collapse:collapse;width:100%;min-width:560px;background:#fff;font-size:.95rem}
.resource-table caption{text-align:left;font-weight:700;padding:0 0 12px}
.resource-table th,.resource-table td{border:1px solid #aeb8c0;padding:12px;text-align:left;vertical-align:top}
.resource-table th{background:#e5e9ec;font-size:.88rem}
.resource-table .blank-cell{height:58px}
.resource-urgent{padding:clamp(20px,4vw,36px);border:2px solid var(--red,#d02d37);background:#fff;margin-bottom:32px}
.resource-urgent h2{font-size:clamp(1.5rem,4vw,2.5rem);margin:12px 0 18px;overflow-wrap:anywhere}
.resource-urgent p{line-height:1.75;max-width:80ch;margin:16px 0}
.resource-controls{display:grid;grid-template-columns:2fr 1fr 1fr auto;align-items:end;gap:14px;margin-bottom:16px}
.resource-controls-single-language{grid-template-columns:2fr 1fr auto}
.resource-controls .fld{margin:0;min-width:0}
.resource-controls input,.resource-controls select{width:100%;min-height:46px;padding:11px 12px;border:1px solid #aab4be;background:#fff;color:#182b39;border-radius:3px;font:inherit;box-sizing:border-box}
.resource-controls label{display:block;font-size:.94rem;font-weight:600;margin-bottom:8px}
.resource-controls button{min-height:46px}
.resource-count{font-size:.95rem;margin:16px 0}
.resource-knowledge{margin-bottom:32px}
.resource-knowledge .kcard{display:flex;flex-direction:column;min-width:0}
.resource-knowledge .kcard h2{font-size:1.18rem;line-height:1.45;margin:10px 0}
.resource-knowledge .resource-language{margin-top:auto;margin-bottom:0;padding-top:18px;font-family:inherit;font-weight:600}
.resource-page [hidden],[data-library] [hidden]{display:none!important}
.resource-page button:focus-visible,.resource-page input:focus-visible,.resource-page select:focus-visible{outline:3px solid #00735f;outline-offset:3px}
@media(max-width:850px){.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-controls{grid-template-columns:1fr 1fr}.resource-controls .fld:first-child{grid-column:1/-1}}
@media(max-width:520px){.resource-grid{grid-template-columns:1fr}.resource-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-details>div,.resource-formlines>div{grid-template-columns:1fr;gap:6px}.resource-controls{grid-template-columns:1fr}.resource-card{padding:22px}.resource-actions{flex-direction:column;align-items:stretch}.resource-actions .btn{justify-content:center}.resource-formlines dd{min-height:26px}.resource-content{overflow-wrap:anywhere}}
@media print{
@page{size:A4;margin:16mm}
.resource-page{font-family:Arial,'Microsoft JhengHei',sans-serif;font-size:10pt!important;background:#fff!important;color:#000!important;padding:0!important}
.resource-page header,.resource-page footer,.resource-page .topbar,.resource-page .wa,.resource-page .mbar,.resource-page .skip,.resource-page .resource-printbar,.resource-page .resource-actions,.resource-page .crumb,.resource-page .resource-controls{display:none!important}
.resource-page .wrap{width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
.resource-page .phead{padding:0 0 14pt!important;margin:0!important;background:none!important;border:0!important}
.resource-page .phead h1{font-size:23pt!important;max-width:none;letter-spacing:0!important;line-height:1.2!important}
.resource-page .phead .lbl{color:#222!important;font-size:8pt}
.resource-page .phead .sub{font-size:11pt!important;max-width:none!important;margin:10pt 0!important}
.resource-page .resource-content{padding:0!important}
.resource-page .resource-block{padding:12pt 0;margin-bottom:10pt}
.resource-page .resource-block h2{font-size:13pt;break-after:avoid}
.resource-page p,.resource-page li{font-size:10pt!important;line-height:1.5!important}
.resource-page .resource-notice,.resource-page .resource-note{padding:10pt;line-height:1.5;background:#fff;border:1px solid #777;break-inside:avoid}
.resource-page .resource-details>div{padding:7pt 0;grid-template-columns:130pt 1fr;break-inside:avoid}
.resource-page .resource-table-wrap{overflow:visible}
.resource-page .resource-table{min-width:0;width:100%;font-size:9pt;table-layout:fixed}
.resource-page .resource-table th{font-size:8pt}
.resource-page .resource-table th,.resource-page .resource-table td{padding:7pt;overflow-wrap:anywhere}
.resource-page .resource-table tr,.resource-page .resource-checklist li,.resource-page .resource-formlines>div{break-inside:avoid}
.resource-page .resource-formlines>div{padding:8pt 0;grid-template-columns:130pt 1fr}
.resource-page .resource-table .blank-cell{height:32pt}
.resource-page .resource-blank{height:60pt;background:none}
.resource-page a{color:#000!important;text-decoration:none!important}
.resource-page input[type=checkbox]{appearance:auto!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
