:root{--ink:#183b32;--muted:#66716b;--paper:#f7f6f0;--line:#dedfd5;--white:#fff;--accent:#e4c86f;--light:#edf2e8;--amber:#8c5c13;--font:system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:14px;line-height:1.55}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a27d23;outline-offset:3px}[hidden]{display:none!important}.skip{position:absolute;left:20px;top:-80px;padding:12px;background:white;z-index:5}.skip:focus{top:8px}
.topbar{height:90px;padding:0 max(30px,calc((100vw - 1320px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:650;line-height:1.1;letter-spacing:-1px}.brand:hover{text-decoration:none}.mark{font-family:Georgia,serif;background:var(--ink);color:var(--accent);font-size:35px;width:49px;height:49px;display:grid;place-items:center;padding-bottom:7px;border-radius:3px}.brand-sub{display:block;font-size:9px;font-weight:600;letter-spacing:2px;margin-top:7px}.top-actions{display:flex;align-items:center;gap:26px}.local-badge{font-size:12px;display:flex;align-items:center;gap:7px}.local-badge i{width:7px;height:7px;border-radius:50%;background:#437859}.link-button{background:none;border:0;padding:9px 3px;color:var(--ink);font-weight:600}.link-button:hover{text-decoration:underline}
main{max-width:1320px;margin:0 auto;padding:0 30px}.intro{display:grid;grid-template-columns:1.4fr 1fr;gap:80px;padding:51px 0 34px;align-items:center}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.1px;margin:0 0 16px}h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(36px,4.2vw,56px);font-weight:400;line-height:1.05;letter-spacing:-1.6px;margin:0 0 20px}.lede{max-width:550px;color:var(--muted);font-size:15px;margin:0}.context-card{border-left:3px solid var(--accent);padding:22px 28px;background:#efeee4;max-width:445px}.context-card h2{font-family:Georgia,serif;font-size:25px;font-weight:400;line-height:1.2;margin:10px 0}.context-card p{font-size:12px;color:#56645d;margin:12px 0 18px}.context-card .eyebrow{font-size:9px}.updated{font-size:10px;color:var(--muted)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin-bottom:35px}.stats>div{padding-left:26px;border-left:1px solid var(--line)}.stats>div:first-child{padding-left:0;border:0}.stats strong{font-size:30px;letter-spacing:-1px;font-weight:550;display:block;line-height:1.2;font-variant-numeric:tabular-nums}.stats span{font-size:11px;color:var(--muted);display:block;margin-top:5px}
.workspace{border:1px solid var(--line);background:var(--white);border-radius:5px;overflow:hidden;scroll-margin-top:20px}.tabs{display:flex;gap:0;overflow:auto;border-bottom:1px solid var(--line);background:#eeefe7}.tabs button{color:#4e6056;white-space:nowrap;border:0;border-bottom:3px solid transparent;background:none;padding:18px 22px;font-size:12px;font-weight:600}.tabs button:hover{background:#e6e9de}.tabs button[aria-current=page]{border-bottom-color:var(--ink);color:var(--ink);background:white}.workspace-body{padding:28px}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.section-heading h2{font-size:20px;font-weight:600;margin:0 0 5px;letter-spacing:-.3px}.section-heading p{font-size:12px;color:var(--muted);margin:0;max-width:750px}.button{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;border:1px solid var(--line);border-radius:4px;padding:11px 16px;font-size:12px;font-weight:600;text-decoration:none}.button:hover{text-decoration:none;filter:brightness(.97)}.primary{background:var(--ink);color:white;border-color:var(--ink)}.secondary{background:#fff;color:var(--ink)}.filters{display:flex;gap:12px;align-items:flex-end}.filters label{display:flex;flex-direction:column;gap:7px;min-width:140px}.filters label span{font-size:11px;color:var(--muted);font-weight:550}.search-label{flex:1}.filters input,.filters select{border:1px solid #cdd2c9;border-radius:4px;background:white;min-height:43px;padding:9px 12px;color:var(--ink);min-width:0;font-size:13px}.filters input::placeholder{color:#939b94}#quantity{max-width:125px}.result-bar{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted);padding:20px 0 11px;gap:20px}.result-bar #result-count{color:var(--ink);font-weight:600}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{padding:12px 14px;background:#f5f6f1;font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:#6a746d;font-weight:600;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}td{padding:16px 14px;border-bottom:1px solid #edefe6;vertical-align:top}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafbf7}.material-name{font-weight:600;font-size:13px;max-width:420px;line-height:1.5;margin-bottom:4px}.small{font-size:10px;color:var(--muted);margin-top:4px;line-height:1.55}.money{font-size:16px;font-weight:650;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:-.3px}.unavailable{font-size:12px;font-weight:500;color:#7c847e}.badge{display:inline-block;border-radius:3px;padding:3px 7px;font-size:9px;font-weight:600;letter-spacing:.2px;background:#edf3e9;color:#406243;margin:5px 5px 0 0}.badge.warn{color:var(--amber);background:#fbf0d7}.badge.gray{background:#edf0ec;color:#68716b}.row-action{border:0;background:none;padding:6px 0;color:var(--ink);font-size:11px;text-decoration:underline;white-space:nowrap}.pagination{display:flex;justify-content:center;align-items:center;gap:24px;border-top:1px solid var(--line);padding-top:22px;margin-top:10px;font-size:12px}.empty{padding:48px 20px;text-align:center;border:1px dashed var(--line);border-radius:4px;color:var(--muted)}.empty strong{display:block;font-size:17px;color:var(--ink);font-weight:500;margin-bottom:9px}.error{padding:20px;background:#fff0e8;color:#943b1d;border-radius:4px}
.source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.source-card{padding:24px;border:1px solid var(--line);border-radius:4px}.source-card h3{font-size:15px;margin:0 0 5px}.source-card p{font-size:12px;color:var(--muted);margin:13px 0}.source-card>a{font-size:11px;text-decoration:underline}.source-meta{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #edefe6;margin-top:17px;padding-top:10px;font-size:10px;color:var(--muted)}.compare-card{border:1px solid var(--line);margin-bottom:18px;border-radius:4px;overflow:hidden}.compare-head{padding:19px 22px;background:#f5f7ef;border-bottom:1px solid var(--line)}.compare-head h3{margin:0;font-size:15px;font-weight:600}.compare-head p{margin:7px 0 0;font-size:11px;color:var(--muted)}.compare-note{padding:14px 22px;margin:0;font-size:11px;color:var(--muted);background:#fafbf7}.subtotal{font-size:19px;font-variant-numeric:tabular-nums;font-weight:650}.comparison-pending{padding:16px 20px;background:#f9f1de;border-left:3px solid var(--accent);font-size:12px;color:#745727;margin-bottom:18px}.compare-quantity{font-size:10px;color:var(--muted)}
footer{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px;padding:25px 0 32px}footer p{margin:0;max-width:790px}footer a{white-space:nowrap;text-decoration:underline}dialog{border:1px solid var(--line);border-radius:8px;max-width:700px;width:calc(100% - 32px);padding:28px 32px;max-height:88vh;color:var(--ink);box-shadow:0 25px 80px #17332533}dialog::backdrop{background:#0b251c80}dialog h2{font-size:23px;line-height:1.3;letter-spacing:-.5px;margin:10px 0 20px}dialog p{font-size:13px;color:var(--muted)}.dialog-top{display:flex;align-items:center;justify-content:space-between}.dialog-top .eyebrow{margin:0}.close-button{font-size:29px;border:0;background:none;color:var(--ink);line-height:1;padding:3px 7px}dl{display:grid;grid-template-columns:160px 1fr;gap:10px 20px;font-size:12px}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}.detail-links{display:flex;gap:14px;margin:22px 0}dialog code{font-size:11px;background:#f0f2eb;padding:2px 5px;border-radius:2px;overflow-wrap:anywhere}.api-links{display:grid;gap:9px;margin:24px 0}.api-links a{font:12px ui-monospace,Consolas,monospace;text-decoration:underline;overflow-wrap:anywhere}.history-heading{font-size:14px;margin:24px 0 12px}
@media(min-width:1500px){main{padding:0}.topbar{padding-left:max(30px,calc((100vw - 1320px)/2));padding-right:max(30px,calc((100vw - 1320px)/2))}}
@media(max-width:900px){.intro{gap:30px;padding-top:34px}.context-card{padding:20px}.tabs button{padding:16px 15px}.workspace-body{padding:20px}.filters{flex-wrap:wrap}.search-label{flex-basis:60%}.stats span{font-size:10px}.stats>div{padding-left:15px}td,th{padding:12px 10px}.material-name{min-width:210px}.source-grid{grid-template-columns:1fr}}
@media(max-width:600px){.topbar{height:74px;padding:0 20px}.brand{font-size:21px}.mark{width:40px;height:40px;font-size:29px}.local-badge{display:none}.top-actions{gap:0}.top-actions button{font-size:11px}main{padding:0 16px}.intro{grid-template-columns:1fr;gap:23px;padding:30px 4px}.intro h1{font-size:42px}.intro .lede{font-size:13px}.context-card{max-width:none;padding:17px 20px}.context-card h2 br{display:none}.context-card h2{font-size:21px}.context-card p{margin:8px 0 13px}.stats{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.stats strong{font-size:26px}.stats>div:nth-child(3){border:0;padding:0}.workspace-body{padding:17px 13px}.section-heading{flex-direction:column;gap:14px}.section-heading .button{padding:8px 12px}.filters{gap:10px}.filters .search-label{flex-basis:100%}.filters label{min-width:100px;flex:1}.filters label input,.filters select{width:100%}#quantity{max-width:none}.filters .button{padding:11px 17px}.result-bar{font-size:10px}#result-hint{display:none}.tabs button{font-size:11px;padding:15px}.table-wrap{margin-right:-13px}.source-card{padding:18px}footer{flex-direction:column;gap:12px}dialog{padding:23px}dl{grid-template-columns:110px 1fr;gap:10px}.compare-card table{min-width:550px}.pagination{gap:12px;font-size:11px}.pagination .button{padding:8px 11px}}
