/* FitsCalc Elements R9.1: one visual system, no dependence on R1–R9 styles. */
:root{color-scheme:light;--fc-ink:#18364b;--fc-accent:#246f9d;--fc-accent-hover:#195c84;--fc-muted:#5f7a8f;--fc-line:#d7e3ed;--fc-soft:#f2f7fb;--fc-white:#fff;--fc-focus:#f5a536}
*{box-sizing:border-box}
html{font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--fc-ink);background:#f1f5f9;scroll-behavior:smooth}
body{margin:0;min-width:320px}
button,input,select{font:inherit}
button{cursor:pointer}
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid var(--fc-focus);outline-offset:3px}
a{color:#216b9c;text-underline-offset:3px}
[hidden]{display:none!important}
.fc-shell{max-width:1530px;margin:auto;padding:24px 25px 50px;min-width:0}
.fc-eyebrow{font-size:11px;font-weight:800;color:#668ba7;letter-spacing:.08em;text-transform:uppercase}
.fc-header{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin:5px 0 22px}
.fc-header h1{font-size:clamp(23px,2.7vw,34px);letter-spacing:-.035em;margin:2px 0 4px}
.fc-header p,.fc-card-heading p,.fc-workbench-heading p{color:var(--fc-muted);font-size:13px;line-height:1.55;margin:4px 0}
.fc-back{font-size:13px;white-space:nowrap}
.fc-controls{display:grid;grid-template-columns:1.5fr 1fr 1.15fr auto;gap:12px;align-items:end;background:#fff;border:1px solid var(--fc-line);border-radius:14px;padding:15px;margin-bottom:15px}
.fc-controls:has(#fc-temperature-wrap:not([hidden])){grid-template-columns:1.3fr 1fr 1.15fr minmax(135px,.9fr) auto}
label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:650;color:#345b74;min-width:0}
input,select{padding:9px 11px;min-height:40px;width:100%;max-width:100%;border:1px solid #c5d6e5;border-radius:8px;color:#19394e;background:#fff;font-size:13px}
input[type="range"]{padding:0;min-height:22px;accent-color:var(--fc-accent)}
.fc-primary,.fc-quiet{min-height:40px;border-radius:8px;padding:10px 13px;border:1px solid #bbd4e6;background:#eaf4fa;color:#255a7c;font-size:13px;font-weight:700}
.fc-primary{border-color:#1f6a99;background:var(--fc-accent);color:#fff}
.fc-primary:hover{background:var(--fc-accent-hover)}
.fc-quiet:hover{background:#dceef8}
.fc-wide{width:100%;margin-top:13px}
.fc-top{display:grid;grid-template-columns:minmax(0,2.55fr) minmax(285px,.8fr);gap:14px;align-items:start}
.fc-card{background:#fff;border:1px solid var(--fc-line);border-radius:14px;min-width:0;padding:17px}
.fc-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.fc-card-heading h2,.fc-workbench-heading h2{font-size:19px;margin:0;color:#1a3b52}
.fc-card-heading>span{white-space:nowrap;font-weight:700;color:#507993;font-size:12px}
.fc-table-scroll{overflow-x:auto;max-width:100%;margin-top:15px;padding-bottom:6px;scrollbar-color:#a8c0d4 transparent}
.fc-periodic{display:grid;grid-template-columns:repeat(18,minmax(38px,1fr));grid-template-rows:repeat(10,clamp(47px,4.1vw,62px));gap:4px;min-width:760px;align-items:stretch}
.fc-element{border:1px solid #c8d8e4;border-radius:5px;display:flex;flex-direction:column;text-align:center;align-items:center;justify-content:center;padding:3px 1px;min-width:0;min-height:0;color:#102e44;transition:border-color .08s,box-shadow .08s;font-size:10px;position:relative}
.fc-element:hover{border-color:#347eac;box-shadow:inset 0 0 0 1px #347eac}
.fc-element.fc-current{border:2px solid #2676b0;box-shadow:0 0 0 1px #2676b0}
.fc-element.fc-muted{opacity:.22}
.fc-z{align-self:flex-start;position:absolute;top:3px;left:4px;font-size:8px;color:#4a738d}
.fc-symbol{font-size:clamp(12px,1.1vw,18px);font-weight:800;line-height:1.15;margin-top:4px}
.fc-name{display:block;font-size:9px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.fc-legend{display:flex;gap:8px 14px;flex-wrap:wrap;padding:15px 1px 3px;color:#55748a;font-size:11px;line-height:1.5}
.fc-token{display:inline-flex;gap:6px;align-items:center}
.fc-token i{display:block;height:11px;width:11px;border:1px solid #b5c8d5;border-radius:3px}
.fc-small{font-size:12px;color:#617b90;line-height:1.6;margin:10px 0}
.fc-selected-top{display:flex;align-items:center;gap:13px;margin-bottom:13px}
.fc-big-symbol{width:70px;height:70px;border-radius:10px;background:#e5f0f8;border:1px solid #d0e1ee;display:grid;place-items:center;font-size:35px;font-weight:800;color:#205c82;flex-shrink:0}
.fc-selected-top h2{font-size:24px;margin:0 0 3px}.fc-selected-top p{font-size:11px;color:#7b91a1;margin:0}
.fc-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.fc-fact{padding:10px;border:1px solid #d9e6f0;border-radius:8px;min-width:0}
.fc-fact span{display:block;color:#7790a2;font-size:10px;margin-bottom:6px}
.fc-fact strong{font-size:12px;overflow-wrap:anywhere;font-weight:700}
.fc-selected-card>a{font-size:12px}
.fc-workbench{margin-top:15px;padding:20px}
.fc-workbench-heading{margin-bottom:17px}
.fc-tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--fc-line);margin-bottom:19px;padding-bottom:1px}
.fc-tab{border:0;border-bottom:3px solid transparent;background:transparent;padding:13px 14px;color:#50738c;font-size:13px;font-weight:700}
.fc-tab[aria-selected="true"]{color:#1d6e9d;border-bottom-color:#237cae;background:#eef7fc;border-radius:8px 8px 0 0}
.fc-tab:hover{background:#f2f7fb}
[role="tabpanel"]{min-width:0;overflow:hidden}
.fc-section-heading{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;justify-content:space-between}
.fc-section-heading h3,h3{font-size:16px;color:#1d3e55;margin:7px 0 13px}
.fc-engineering{border-left:3px solid #72a9c9;background:#f1f7fa;padding:14px 16px;border-radius:0 8px 8px 0;margin:12px 0 17px;font-size:13px;line-height:1.65}
.fc-engineering strong{font-size:14px}
.fc-engineering p{margin:6px 0}
.fc-table-wrapper{overflow:auto;max-width:100%;border:1px solid var(--fc-line);border-radius:11px;margin-top:11px}
.fc-fact-table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.45;min-width:585px}
.fc-fact-table th,.fc-fact-table td{border-bottom:1px solid #e1ebf3;text-align:left;vertical-align:top;padding:10px 13px;overflow-wrap:anywhere}
.fc-fact-table thead th{background:#e9f3f9;font-weight:750;color:#2a556f}
.fc-fact-table tbody th{width:34%;min-width:145px;font-weight:650}
.fc-fact-table td strong{display:block;font-weight:700}
.fc-fact-table td a{display:block;margin-top:5px}
.fc-note{display:block;font-size:11px;color:#718b9e;line-height:1.5;margin-top:5px;max-width:600px}
.fc-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;align-items:end;margin:10px 0 16px}
.fc-fields-3{grid-template-columns:repeat(2,minmax(0,1fr)) auto}
.fc-fields-3>button{align-self:end}
.fc-calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fc-inset{background:#f9fcfe;border:1px solid #dce7f0;border-radius:11px;padding:16px;min-width:0;margin:7px 0}
.fc-inset h3{margin-top:0}
.fc-inset code{display:block;background:#edf4f9;padding:11px 13px;border-radius:8px;color:#285c7f;white-space:normal;line-height:1.5}
.fc-result{font-weight:850;color:#2374a3;font-size:clamp(23px,3vw,34px);margin:13px 0;overflow-wrap:anywhere}
.fc-warning{color:#a63838;background:#fff2f2;border:1px solid #e3c1c1;border-radius:8px;padding:11px 13px;font-size:13px;line-height:1.6}
.fc-atom-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fc-atom-graphic{width:min(320px,100%);height:auto;display:block;margin:10px auto}
.fc-isotope{display:grid;grid-template-columns:70px minmax(0,1fr) 90px;gap:9px;align-items:center;font-size:12px;margin:9px 0}
.fc-isotope-track{height:10px;background:#e6eef5;border-radius:10px;overflow:hidden}
.fc-isotope-track span{display:block;height:100%;background:#397fa8;border-radius:10px}
.fc-footer{padding:17px 3px 10px;margin-top:18px;border-top:1px solid var(--fc-line);font-size:12px;line-height:1.7;color:#5a768a}
@media(max-width:1080px){.fc-top{grid-template-columns:minmax(0,1fr)}.fc-selected-card .fc-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.fc-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.fc-controls:has(#fc-temperature-wrap:not([hidden])){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.fc-shell{padding:14px 10px 33px}.fc-header{margin:5px 0 16px}.fc-controls{padding:12px;gap:10px;grid-template-columns:1fr}.fc-controls:has(#fc-temperature-wrap:not([hidden])){grid-template-columns:1fr}.fc-card{padding:13px}.fc-periodic{grid-template-columns:repeat(18,40px);grid-template-rows:repeat(10,50px);gap:3px;min-width:772px}.fc-element{font-size:10px}.fc-symbol{font-size:15px}.fc-selected-card .fc-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.fc-workbench{padding:12px}.fc-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.fc-tab{font-size:12px;padding:10px 6px}.fc-atom-grid,.fc-calc-grid,.fc-fields,.fc-fields-3{grid-template-columns:1fr}.fc-fields-3>button{width:100%}.fc-isotope{grid-template-columns:60px 1fr 75px;font-size:11px}.fc-fact-table{min-width:560px}.fc-big-symbol{width:62px;height:62px;font-size:31px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fc-element{transition:none}}

@media(max-width:640px){
.fc-mobile-stack{min-width:0;width:100%}
.fc-mobile-stack thead{display:none}
.fc-mobile-stack tbody{display:block}
.fc-mobile-stack tr{display:block;padding:11px 12px;border-bottom:1px solid #dfeaf2}
.fc-mobile-stack th,.fc-mobile-stack td{display:block;padding:4px 0;border:0;width:100%;min-width:0}
.fc-mobile-stack th{font-size:12px;color:#28546f}
.fc-mobile-stack td{padding-top:3px;font-size:12px}
.fc-mobile-stack td::before{content:attr(data-label);display:block;color:#8099a9;font-size:10px;margin-bottom:4px}
.fc-mobile-stack td:empty{display:none}
}

/* R10: verified supplementary science panels, no duplicate widgets */
.fc-r10-science{border:1px solid #d8e5ee;border-radius:12px;padding:16px;margin:14px 0;background:#f8fbfd}
.fc-r10-science h3{margin:0 0 10px;color:#1f405a}
.fc-r10-science h4{margin:10px 0 8px;color:#1f405a}
.fc-r10-metadata{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}
.fc-r10-context{padding:14px;background:#fff;border:1px solid #dfebf2;border-radius:10px}
.fc-r10-context p{overflow-wrap:anywhere;line-height:1.55}
.fc-r10-tag{display:inline-flex;max-width:100%;padding:5px 10px;border-radius:20px;background:#e3eef7;color:#225579;font-size:12px;line-height:1.35}
.fc-r10-refs{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.fc-r10-refs a{overflow-wrap:anywhere}
.fc-r10-formula-rows{display:grid;gap:7px;margin:12px 0}.fc-r10-formula-row{display:grid;grid-template-columns:55px 1fr auto;gap:8px;border-bottom:1px solid #e2eaf0;padding-bottom:5px;font-size:14px}
@media(max-width:860px){.fc-r10-metadata{grid-template-columns:1fr}}@media(max-width:420px){.fc-r10-formula-row{grid-template-columns:38px 1fr auto;font-size:12px}.fc-r10-science{padding:12px}}

/* R12: compact traceability disclosure in existing properties tab. */
.fc-r12-quality{margin:15px 0;border:1px solid #ccdfed;border-radius:10px;background:#f5f9fc;overflow:hidden;color:#244d68}
.fc-r12-quality summary{cursor:pointer;font-weight:700;font-size:13px;line-height:1.55;padding:13px 15px;overflow-wrap:anywhere}
.fc-r12-quality:focus-within{outline:2px solid #5d9fc5;outline-offset:2px}
.fc-r12-quality-content{background:#fff;border-top:1px solid #dce7f0;padding:12px 15px;display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.fc-r12-quality-content p{margin:0;overflow-wrap:anywhere}
.fc-r12-quality-content a{overflow-wrap:anywhere}
@media (max-width:640px){.fc-r12-quality summary{font-size:12px;padding:11px}.fc-r12-quality-content{padding:11px}}
