:root{--bg:#f7f9fa;--surface:#fff;--ink:#17202a;--muted:#647181;--line:#dfe5ec;--blue:#2455d6;--soft:#edf2ff;--green:#427442;--violet:#6c63a8;--rail:#17202a;color-scheme:light;font-family:'Segoe UI',Arial,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);line-height:1.5}body.dark{--bg:#101820;--surface:#192530;--ink:#edf2f7;--muted:#abb8c6;--line:#344553;--blue:#91b0ff;--soft:#263a59;--green:#a2c59f;--violet:#b5ade7;color-scheme:dark}button,input{font:inherit}button,a,input,summary{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a{color:var(--blue)}button{color:inherit}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;vertical-align:middle}h1,h2,h3,p{margin:0}button{border:0;background:none}button:hover:not(:disabled){filter:brightness(.94)}.skip{position:fixed;left:100px;top:-90px;background:var(--surface);padding:16px;z-index:20}.skip:focus{top:10px}.rail{position:fixed;inset:0 auto 0 0;width:98px;background:var(--rail);color:#b3bfce;display:flex;align-items:center;flex-direction:column;gap:14px;z-index:5}.monogram{font-size:29px;letter-spacing:-7px;color:#fff;text-decoration:none;font-weight:800;margin:30px 0 46px;padding-right:7px}.monogram span{color:#8aa8f8}.rail-link{display:grid;place-items:center;gap:6px;width:74px;min-height:70px;border-radius:10px;font-size:12px;color:#c0cbd7}.rail-link.active{background:#2455d6;color:#fff}.rail-link:hover{background:#2b3a4b}.rail-foot{margin-top:auto;padding-bottom:28px;font-size:10px;letter-spacing:1px;line-height:1.8;text-align:center}.shell{margin-left:98px}.topbar{height:77px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 44px;gap:20px}.breadcrumb{font-size:12px;font-weight:600;letter-spacing:1.5px}.breadcrumb span{margin:0 20px;color:var(--muted)}.theme{border:1px solid var(--line);background:var(--surface);border-radius:7px;padding:8px 13px;font-size:14px;white-space:nowrap}main{max-width:1570px;margin:auto;padding:44px}.intro{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:42px}.eyebrow{color:var(--muted);font-size:11px;letter-spacing:1.7px;font-weight:650}h1{font-size:clamp(30px,3.2vw,48px);letter-spacing:-1.7px;font-weight:720;line-height:1.25;margin:10px 0}h1 span{color:var(--blue)}.intro p{color:var(--muted);font-size:16px}.totals{display:flex;gap:26px}.totals div{border-left:1px solid var(--line);padding-left:25px;display:grid;gap:2px}.totals b{font:32px Consolas,monospace;color:var(--ink)}.totals span{font-size:12px;color:var(--muted);white-space:nowrap}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 275px;align-items:start;gap:30px}.search-line{display:flex;gap:10px}.search{display:flex;align-items:center;gap:12px;padding:0 17px;background:var(--surface);border:1px solid var(--line);border-radius:8px;flex:1;color:var(--muted);min-width:0}.search input{border:0;background:none;color:var(--ink);height:52px;min-width:0;width:100%;font-size:15px}.search input:focus{outline:none}.search:focus-within{outline:2px solid var(--blue)}.plain{color:var(--muted);font-size:14px;padding:9px 5px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.filter{border:1px solid var(--line);padding:8px 14px;border-radius:24px;font-size:14px;background:var(--surface)}.filter small{margin-left:7px;color:var(--muted);font:12px Consolas,monospace}.filter[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.filter[aria-pressed=true] small{color:inherit}.result-line{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:23px 0 18px;font-size:13px;color:var(--muted)}.views{display:flex;border:1px solid var(--line);padding:3px;border-radius:7px}.views button{font-size:13px;padding:5px 12px;border-radius:4px}.views button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #0001}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.card{border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow:hidden;transition:border-color .15s,transform .15s}.card:hover{border-color:var(--blue);transform:translateY(-2px)}.card.selected{border:2px solid var(--blue)}.card-open{width:100%;padding:0;text-align:left;display:block}.card-photo{height:185px;overflow:hidden;background:#d7d9d5;position:relative}.card-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 43%;display:block;transform:scale(1.03)}.image-index{position:absolute;left:14px;top:13px;background:#17202ae8;color:white;padding:4px 7px;border-radius:3px;font:11px Consolas,monospace;letter-spacing:.5px}.card-body{padding:20px 21px 0}.card-heading{display:flex;justify-content:space-between;align-items:start;gap:8px}.card h3{font-size:21px;line-height:1.25;letter-spacing:-.5px}.code{font:13px Consolas,monospace;color:var(--muted);white-space:nowrap}.category{font-size:12px;display:inline-flex;gap:6px;align-items:center;margin:9px 0 20px;color:var(--blue)}.category::before{content:'';width:6px;height:6px;background:currentColor;border-radius:1px}.category.sedimentary{color:var(--green)}.category.ore{color:var(--violet)}.stats{display:grid;grid-template-columns:1fr 1.45fr;gap:14px;padding-bottom:18px;border-bottom:1px solid var(--line)}.stats span{font-size:12px;color:var(--muted);display:block}.stats b{font:21px Consolas,monospace;display:block;margin:4px 0}.stats em{font:11px 'Segoe UI',Arial,sans-serif;color:var(--muted)}.card-bottom{padding:12px 20px;display:flex;justify-content:space-between;align-items:center;gap:10px}.check{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}.check input{accent-color:#2455d6;width:17px;height:17px;margin:0}.more{color:var(--blue);font-size:13px;padding:7px 0}.compare-panel{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:24px;position:sticky;top:24px}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:5px}.panel-heading .eyebrow{font-size:10px;letter-spacing:1px}.counter{font:12px Consolas,monospace;color:var(--blue);background:var(--soft);padding:5px 7px;border-radius:4px}.compare-panel h2{font-size:23px;margin:16px 0 6px;letter-spacing:-.5px}.muted{color:var(--muted);font-size:14px}.slot{min-height:66px;border:1px dashed var(--line);border-radius:7px;margin:12px 0;padding:12px;display:flex;gap:10px;align-items:center;color:var(--muted);font-size:13px}.slot.filled{border-style:solid;color:var(--ink)}.slot img{width:43px;height:43px;object-fit:cover;border-radius:4px}.slot b{font-size:13px;display:block}.slot small{display:block;color:var(--muted);font:11px Consolas,monospace}.slot .remove{margin-left:auto;font-size:22px;align-self:flex-start;line-height:1;padding:3px}.primary{width:100%;background:#2455d6;color:white;border-radius:7px;padding:13px 14px;font-size:14px;display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:20px}.primary:disabled{background:var(--line);color:var(--muted);opacity:1}.full{width:100%;margin-top:8px}.panel-note{border-top:1px solid var(--line);margin-top:24px;padding-top:19px;display:flex;gap:10px;color:var(--muted);font-size:12px;line-height:1.65}.panel-note>span{font-family:Georgia,serif;font-style:italic}.empty{padding:60px 25px;text-align:center;border:1px dashed var(--line);border-radius:10px;color:var(--muted)}.empty h3{color:var(--ink);margin-bottom:10px}.source-note{margin-top:65px;padding:32px 0;border-top:1px solid var(--line);max-width:1000px}.source-note h2{font-size:24px;margin:9px 0 15px}.source-note p{color:var(--muted);font-size:14px;line-height:1.8;margin:12px 0}.source-note details{border-top:1px solid var(--line);padding:16px 0}.source-note summary{font-size:14px;cursor:pointer}.unassigned{max-width:100%;max-height:420px;border-radius:8px}footer{display:flex;justify-content:space-between;gap:20px;margin-top:32px;padding-top:24px;border-top:1px solid var(--line);font-size:11px;letter-spacing:1px;color:var(--muted)}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface)}table{border-collapse:collapse;width:100%;font-size:14px;white-space:nowrap}th,td{text-align:left;padding:15px 16px;border-bottom:1px solid var(--line)}th{background:var(--soft);font-size:12px;font-weight:600;color:var(--muted)}td:not(:first-child){font-family:Consolas,monospace}td button{color:var(--blue);padding:0;font:inherit;text-align:left}td small{display:block;font-size:11px;color:var(--muted)}.table-caption{font-size:12px;color:var(--muted);padding:12px 0}dialog{border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);padding:0;max-width:1000px;width:calc(100% - 40px);max-height:90vh;overflow:auto;box-shadow:0 30px 120px #0006}dialog::backdrop{background:#0a1527a8;backdrop-filter:blur(4px)}body:has(dialog[open]){overflow:hidden}.dialog-top{display:flex;justify-content:space-between;gap:24px;padding:27px 32px 23px;border-bottom:1px solid var(--line)}.dialog-top h2{font-size:27px;line-height:1.3;margin-top:8px}.close{width:36px;height:36px;font-size:28px;background:var(--bg);border:1px solid var(--line);border-radius:50%;flex-shrink:0;line-height:1}.detail-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:30px;padding:28px 32px}.detail-image img{width:100%;border-radius:8px}.detail-image p{font-size:12px;color:var(--muted);line-height:1.7;margin-top:12px}.source-button{display:inline-block;font-size:14px;margin:15px 0}.mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;margin:20px 0}.mini-stats>div{background:var(--bg);padding:14px}.mini-stats span{display:block;font-size:11px;color:var(--muted)}.mini-stats b{font:18px Consolas,monospace}.range-explainer{font-size:12px;color:var(--muted);line-height:1.6;margin-bottom:20px}.range-row{margin-bottom:19px}.range-label{display:flex;justify-content:space-between;gap:14px;align-items:start;font-size:13px}.range-value{font:15px Consolas,monospace;white-space:nowrap}.track{height:6px;border-radius:4px;background:var(--line);position:relative;margin:11px 0 5px}.interval{position:absolute;height:6px;background:var(--blue);border-radius:4px;min-width:2px}.marker{position:absolute;top:-4px;width:4px;height:14px;background:var(--ink);transform:translateX(-2px);border-radius:2px}.range-foot{display:flex;justify-content:space-between;font:10px Consolas,monospace;color:var(--muted);gap:10px}.range-foot .range-text{font:11px 'Segoe UI',Arial,sans-serif}.missing{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:11px 0;font-size:13px;color:var(--muted)}.missing span:last-child{font-size:12px;white-space:nowrap}.detail-note{padding:18px 32px;background:var(--bg);border-top:1px solid var(--line);font-size:12px;color:var(--muted);line-height:1.75}.original{padding:0 32px 24px}.original img{width:100%;margin-top:12px}.original summary{color:var(--blue);font-size:14px;cursor:pointer}#comparison-content{padding:25px 32px}.compare-table{white-space:normal;table-layout:fixed;min-width:620px}.compare-table td,.compare-table th{vertical-align:top}.compare-table th{font-size:14px;color:var(--ink)}.compare-table th small{display:block;font:12px Consolas,monospace;color:var(--muted);margin:8px 0}.compare-table img{width:100%;height:90px;object-fit:cover;border-radius:5px;margin-bottom:12px}.compare-table td{font:15px Consolas,monospace}.compare-table td:first-child{font:13px 'Segoe UI',Arial,sans-serif}.compare-table .absent{font:12px 'Segoe UI',Arial,sans-serif;color:var(--muted)}#toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%);background:#17202a;color:white;padding:14px 24px;border-radius:8px;box-shadow:0 5px 30px #0003;z-index:30;max-width:calc(100% - 32px);font-size:14px;display:none}#toast.show{display:block}@media(min-width:1650px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1150px){main{padding:32px 26px}.topbar{padding:0 26px}.totals{gap:14px}.totals div{padding-left:14px}.workspace{grid-template-columns:minmax(0,1fr) 245px;gap:20px}.compare-panel{padding:18px}.card-photo{height:155px}.stats{gap:8px}.card-body{padding:17px 15px 0}.card-heading{display:block}.card-heading .code{display:block;margin-top:6px}.card-bottom{padding:10px 15px}.totals div:last-child{display:none}}@media(max-width:900px){.rail{width:76px}.rail-link{width:64px}.shell{margin-left:76px}.workspace{grid-template-columns:1fr}.compare-panel{position:static;order:2}.compare-panel #selection{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.slot{flex-wrap:wrap}.panel-note{margin-top:16px}.primary{width:auto;min-width:240px}.full{width:auto;float:right}.compare-panel h2{margin-top:8px}.totals{display:none}.detail-layout{grid-template-columns:240px minmax(0,1fr)}}@media(max-width:620px){.rail{width:100%;height:60px;inset:auto 0 0;flex-direction:row;justify-content:space-evenly;gap:0}.monogram,.rail-foot{display:none}.rail-link{width:30%;height:52px;min-height:0;gap:2px;border-radius:7px;font-size:10px}.rail-link svg{width:19px;height:19px}.shell{margin-left:0;margin-bottom:65px}.topbar{height:60px;padding:0 18px}.breadcrumb{font-size:9px;letter-spacing:.7px}.breadcrumb span{margin:0 8px}.theme{padding:6px;font-size:18px}.theme span{display:none}main{padding:25px 18px}.intro{margin-bottom:26px}h1{font-size:34px}.intro p{font-size:14px}.eyebrow{font-size:10px}.search input{font-size:14px;height:48px}.filters{gap:6px;margin:15px 0}.filter{padding:7px 10px;font-size:12px}.cards{gap:14px;grid-template-columns:1fr}.card-photo{height:200px}.card-heading{display:flex}.card-body{padding:20px 22px 0}.card-bottom{padding:12px 22px}.stats b{font-size:23px}.compare-panel #selection{display:block}.full{float:none}.primary{width:100%}.detail-layout{grid-template-columns:1fr;padding:20px;gap:22px}.detail-image{display:grid;grid-template-columns:120px 1fr;gap:15px}.detail-image>img{height:100px;object-fit:cover}.detail-image .mini-stats{grid-column:span 2;margin:0}.detail-image .primary{grid-column:span 2;margin:0}.detail-image .photo-caption{margin:0}.dialog-top{padding:20px}.dialog-top h2{font-size:22px}.dialog-top .code{white-space:normal}.detail-note{padding:15px 20px}.original{padding:0 20px 20px}#comparison-content{padding:20px}.source-note{margin-top:35px}.source-note h2{font-size:21px}footer{display:block;font-size:10px}footer span{display:block;margin-top:10px}#toast{bottom:80px}.search-line>.plain{font-size:12px}.compare-table{min-width:600px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
