/* Compact instruments share the Home palette. These rules stay inside the three tools. */
/* The shared brand uses the reviewed mark at its designed display size. */
.science-masthead .quarry-mark {width:36px; height:36px; display:block}
.token-tool-page {
  --tool-rule:#2c4a59;
  --tool-quiet:#a7bdc8;
  min-width:0;
  font-size:14px;
}
.token-tool-page .token-tool-header {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:12px 22px;
  padding:5px 0 15px;
  margin-bottom:0;
  max-width:none;
  border-bottom:1px solid var(--tool-rule);
}
.token-tool-page .token-tool-header .eyebrow {margin:0 0 9px; font:10px/1.6 var(--mono); letter-spacing:1.1px}
.token-tool-page .token-tool-header>.page-intro {margin:0; padding:0; max-width:none}
.token-tool-page .token-tool-header>.tag {margin-top:2px; max-width:220px}
.token-tool-page .token-tool-header h1 {
  font:500 clamp(30px,3.1vw,44px)/1.12 var(--sans);
  letter-spacing:-1.35px;
  margin:0 0 9px;
  max-width:920px;
}
.token-tool-page .token-tool-header .lead {font-size:14px; line-height:1.6; max-width:870px; margin:0}
.token-tool-page p,.token-tool-page li {font-size:14px; line-height:1.65}
.token-tool-page .token-tool-workbench,.token-tool-page .token-tool-grid {
  display:grid;
  grid-template-columns:minmax(280px,.86fr) minmax(0,1.35fr);
  gap:20px;
  align-items:start;
  min-width:0;
  margin-top:16px;
}
.token-tool-page .token-tool-controls,.token-tool-page .token-tool-output {min-width:0}
.token-tool-page .token-tool-controls {
  background:var(--surface);
  border:1px solid var(--tool-rule);
  border-top-color:#507b85;
  padding:20px;
}
.token-tool-page .token-tool-controls>.panel {
  padding:0;
  border:0;
  background:transparent;
  margin-bottom:0;
}
.token-tool-page .panel,.token-tool-page .empty-state {
  border-color:var(--tool-rule);
  border-radius:2px;
  box-shadow:none;
  min-width:0;
}
.token-tool-page .token-panel {padding:22px; margin-bottom:14px}
.token-tool-page .token-panel h2 {font-size:26px; line-height:1.25; letter-spacing:-.65px; margin:12px 0}
.token-tool-page .token-panel h3 {font-size:17px; line-height:1.45; letter-spacing:-.2px; margin:19px 0 9px}
.token-tool-page .token-panel p {font-size:14px; line-height:1.65; margin-bottom:13px}
.token-tool-page .panel-label {font:10px/1.65 var(--mono); letter-spacing:.85px; color:var(--tool-quiet)}
.token-tool-page .token-section-copy {font-size:14px; line-height:1.65; margin:16px 0 0; max-width:850px}
.token-tool-page .token-tool-controls>.token-section-copy {margin-top:0}
.token-tool-page .token-question-grid {grid-template-columns:1fr; gap:8px; margin:16px 0 0}
.token-tool-page .token-question {
  padding:13px 34px 13px 14px;
  border:1px solid var(--tool-rule);
  border-radius:2px;
  background:#0a1720;
  gap:5px;
  min-height:76px;
  width:100%;
  transition:border-color .15s,background .15s;
}
.token-tool-page .token-question strong {font:500 17px/1.3 var(--sans); letter-spacing:-.2px}
.token-tool-page .token-question>span:not(.panel-label):not(.token-question-arrow) {font-size:14px; line-height:1.5; color:var(--tool-quiet)}
.token-tool-page .token-question>.panel-label {font-size:10px; letter-spacing:.75px}
.token-tool-page .token-question-arrow {right:13px; top:13px; font-size:16px; color:#779eaa}
.token-tool-page .token-question:hover {border-color:#6cabb1; background:#102632}
.token-tool-page .token-question[aria-pressed=true] {border-color:var(--accent); background:#11312f; box-shadow:inset 3px 0 var(--accent)}
.token-tool-page .token-question[aria-pressed=true] strong,.token-tool-page .token-question[aria-pressed=true] .token-question-arrow {color:var(--accent)}
.token-tool-page .token-research-result,.token-tool-page .token-utility-result {margin-top:0; min-width:0}
.token-tool-page .token-research-result:focus-visible,.token-tool-page .token-utility-result:focus-visible {outline:2px solid var(--accent); outline-offset:4px}
.token-tool-page .empty-state {padding:28px 24px; background:linear-gradient(135deg,#112431,#0b1923); text-align:left; min-height:220px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start}
.token-tool-page .empty-state h2,.token-tool-page .empty-state h3 {font:500 25px/1.25 var(--sans); letter-spacing:-.6px; max-width:410px; margin:0 0 12px}
.token-tool-page .empty-state p {font-size:14px; line-height:1.65; max-width:490px; margin:0; color:var(--tool-quiet)}
.token-tool-page .token-answer-columns {grid-template-columns:1fr 1fr; gap:22px; margin:16px 0 0; padding-top:2px; border-top:1px solid var(--tool-rule)}
.token-tool-page .token-answer-columns h3 {font-size:15px; line-height:1.45; margin:14px 0 9px; color:var(--science-ice)}
.token-tool-page .assumption-list {margin:9px 0 0; padding-left:18px; color:var(--tool-quiet)}
.token-tool-page .assumption-list li {font-size:14px; margin-bottom:7px; padding-left:2px; line-height:1.65; overflow-wrap:anywhere}
.token-tool-page .assumption-list li:last-child {margin-bottom:0}
.token-tool-page .token-tool-controls .actions {margin-top:15px; gap:10px}
.token-tool-page .token-tool-controls .token-control-heading {margin:0 0 11px; gap:7px; flex-wrap:wrap}
.token-tool-page .actions.spaced {margin:17px 0 0; gap:10px 17px; flex-wrap:wrap}
.token-tool-page .button {min-height:36px; padding:10px 13px; font-size:12px; line-height:1.5; gap:12px}
.token-tool-page .button.secondary {border-color:#4e7280}
.token-tool-page .button-link {display:inline-flex; align-items:center; min-height:28px; font-size:12px; line-height:1.65; padding:3px 0; overflow-wrap:anywhere}
.token-tool-page .button:disabled,.token-tool-page .preset:disabled {cursor:default; opacity:.65}
.token-tool-page :is(button,input,select,summary,a):focus-visible {outline:2px solid var(--accent); outline-offset:3px}
.token-tool-page .token-planner-presets {display:flex; flex-wrap:wrap; gap:7px; margin:16px 0}
.token-tool-page .preset {font:12px/1.5 var(--mono); padding:7px 10px; min-height:32px; border-color:#4e7280; background:#0a1720; white-space:normal; text-align:left}
.token-tool-page .preset:hover {background:#13312f; border-color:var(--accent)}
.token-tool-page .token-utility-form {min-width:0}
.token-tool-page .form-grid {display:grid; grid-template-columns:1fr 1fr; gap:13px 14px; margin:0}
.token-tool-page .token-field-group {border:0; margin:0 0 18px; padding:0; min-width:0}
.token-tool-page .token-field-group:last-child {margin-bottom:0}
.token-tool-page .token-field-group>legend {font:12px/1.65 var(--mono); letter-spacing:.5px; color:var(--science-ice); padding:0 0 12px; width:100%; border-bottom:1px solid var(--tool-rule); margin-bottom:14px}
.token-tool-page .field {min-width:0; gap:7px; margin:0}
.token-tool-page .field>span:first-child {font-size:12px; font-weight:500; line-height:1.5; color:var(--ink)}
.token-tool-page .field input,.token-tool-page .field select {min-height:40px; width:100%; min-width:0; padding:9px 10px; font:14px/1.4 var(--mono); background:#07141d; border-color:#4b6b7a; border-radius:2px}
.token-tool-page .field input:hover,.token-tool-page .field select:hover {border-color:#78b5b9}
.token-tool-page .field .help {font-size:11px; line-height:1.6; color:var(--tool-quiet); margin:0}
.token-tool-page .field input[aria-invalid=true] {border-color:var(--danger)}
.token-tool-page .token-stake-fields {grid-template-columns:1fr 1fr}
.token-tool-page .token-stake-fields>.field:first-child {grid-column:1/-1}
.token-tool-page .token-stake-fields>.field:first-child input {font-size:22px; padding-top:12px; padding-bottom:12px; color:var(--accent)}
.token-tool-page .token-funding-assumptions {margin:18px 0; padding:13px 14px; border:1px solid var(--tool-rule); border-radius:2px; background:#0a1720}
.token-tool-page details>summary {cursor:pointer; min-height:28px; font-size:12px; line-height:1.65; color:var(--accent); padding:4px 0; overflow-wrap:anywhere}
.token-tool-page details>summary::marker {color:var(--accent)}
.token-tool-page .token-funding-assumptions[open]>.token-cost-fields {margin-top:16px; grid-template-columns:1fr}
.token-tool-page .token-example-scenarios {margin:0 0 18px; border-bottom:1px solid var(--tool-rule); padding-bottom:12px}
.token-tool-page .token-example-scenarios>.token-planner-presets {margin:12px 0 0}
.token-tool-page .token-example-scenarios>summary {font-size:12px}
.token-tool-page .token-input-guidance {border-top:1px solid var(--tool-rule); margin-top:17px; padding-top:8px}
.token-tool-page .token-field-guidance {padding:12px 0; border-bottom:1px solid var(--tool-rule)}
.token-tool-page .token-field-guidance:last-child {border-bottom:0}
.token-tool-page .token-field-guidance>strong {font:500 13px/1.5 var(--sans); color:var(--ink)}
.token-tool-page .token-field-guidance>.help {font-size:14px; line-height:1.65; margin:6px 0 0; color:var(--tool-quiet)}
.token-tool-page .fine-print {font-size:12px; line-height:1.65; color:var(--tool-quiet)}
.token-tool-page .token-utility-form>.fine-print {font-size:12px; line-height:1.65; color:var(--tool-quiet); margin:18px 0; padding-top:14px; border-top:1px solid var(--tool-rule)}
.token-tool-page .token-tool-controls>.fine-print {margin:14px 0; padding-top:12px; border-top:1px solid var(--tool-rule)}
.token-tool-page .form-actions {display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; align-items:center}
.token-tool-page .error-message {font-size:14px; line-height:1.65; color:var(--danger); overflow-wrap:anywhere; margin-top:12px}
.token-tool-page .error-message:empty {margin:0}
.token-tool-page .notice {font-size:14px; line-height:1.5; padding:11px 15px; margin:12px 0; border-color:var(--tool-rule)}
.token-tool-page .notice p {margin:0; font-size:14px; line-height:1.5}
.token-tool-page .notice.warning {border-color:#746247; background:#241f1b}
.token-tool-page .tag {font:10px/1.6 var(--mono); letter-spacing:.4px; padding:4px 7px; max-width:100%}
.token-tool-page .token-result-metrics {grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:20px 0}
.token-tool-page .token-result-metric {border-left:1px solid #517e83; padding-left:12px}
.token-tool-page .token-result-metric .panel-label {font-size:10px; letter-spacing:.45px; line-height:1.65}
.token-tool-page .token-result-metric strong {font:500 clamp(21px,2vw,29px)/1.25 var(--mono); letter-spacing:-.9px; color:var(--ink); margin:9px 0; overflow-wrap:anywhere}
.token-tool-page .token-result-metric p {font-size:12px; line-height:1.55; margin:0; color:var(--tool-quiet)}
.token-tool-page .token-budget-proof {margin:14px 0 20px}
.token-tool-page .token-budget-proof>div {grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); font-size:12px; line-height:1.65; gap:18px; padding:9px 0}
.token-tool-page .token-budget-proof dt {color:var(--tool-quiet)}
.token-tool-page .token-budget-proof dd {color:var(--ink); overflow-wrap:anywhere; font-size:12px}
.token-tool-page .token-source-evidence {border:1px solid var(--tool-rule); border-radius:2px; background:var(--surface); padding:12px 17px; margin:14px 0}
.token-tool-page .token-source-evidence[open]>summary {padding-bottom:13px; border-bottom:1px solid var(--tool-rule); margin-bottom:14px}
.token-tool-page .token-source-evidence>.panel {border:0; margin:0; min-width:0}
.token-tool-page .token-source-evidence>.panel>.panel-header {padding:16px 0; flex-wrap:wrap; gap:10px}
.token-tool-page .token-source-evidence>.panel>.panel-pad {padding:18px 0 0}
.token-tool-page .token-source-evidence .concept-comparison-grid {grid-template-columns:1fr; gap:12px}
.token-tool-page .token-source-evidence .concept-card {padding:17px; background:#0a1720; border-color:var(--tool-rule)}
.token-tool-page .token-source-evidence .concept-card h3 {font-size:17px; line-height:1.45; margin:0 0 9px}
.token-tool-page .token-source-evidence .concept-card p:not(.source-meta) {font-size:14px; line-height:1.65}
.token-tool-page .token-answer-limits,.token-tool-page .token-research-scope {border-top:1px solid var(--tool-rule); margin-top:16px; padding-top:9px}
.token-tool-page .token-answer-limits[open]>summary,.token-tool-page .token-research-scope[open]>summary {padding-bottom:12px}
.token-tool-page :is(.token-budget-details,.token-reference-details,.token-funded-preview) {border-top:1px solid var(--tool-rule); padding-top:9px; margin-top:15px; min-width:0}
.token-tool-page :is(.token-budget-details,.token-reference-details,.token-funded-preview)[open]>summary {padding-bottom:13px; margin-bottom:10px}
.token-tool-page .token-funded-preview>.token-panel {padding:0; border:0; background:transparent; margin:0}
.token-tool-page .token-funded-preview .token-result-metrics {margin-top:17px}
.token-tool-page .source-detail {margin-top:12px; border-color:var(--tool-rule); min-width:0}
.token-tool-page .source-detail>summary {font-size:12px; line-height:1.65; padding:12px 14px; min-height:40px}
.token-tool-page .source-content {padding:14px; min-width:0; font-size:14px; line-height:1.65; overflow-wrap:anywhere}
.token-tool-page .source-content p,.token-tool-page .source-content li {font-size:14px; line-height:1.65}
.token-tool-page .source-meta,.token-tool-page .task-meta {font-size:11px; line-height:1.7; overflow-wrap:anywhere; color:var(--tool-quiet)}
.token-tool-page .definition-grid {gap:15px 20px; min-width:0}
.token-tool-page .definition-grid dt {font-size:11px; line-height:1.65}
.token-tool-page .definition-grid dd {font-size:13px; line-height:1.65; overflow-wrap:anywhere}
.token-tool-page .brief-boundaries {padding:16px; margin-top:16px; border-color:#746247; background:#241f1b}
.token-tool-page .token-privacy {font-size:11px; line-height:1.7; color:var(--tool-quiet); max-width:none; border-top:1px solid var(--tool-rule); margin:22px 0 0; padding-top:13px}
.token-tool-page .token-tool-context {margin-top:19px; display:flex; flex-wrap:wrap; align-items:flex-start; gap:12px 25px; min-width:0}
.token-tool-page .token-tool-context>.actions {margin:0}
.token-tool-page .token-tool-context>details {flex:1 1 300px; min-width:0; border-top:1px solid var(--tool-rule); padding-top:8px}
.token-tool-page .token-tool-context>details[open]>summary {padding-bottom:12px}
.token-tool-page .token-tool-context>details>.token-panel {padding:10px 0 0; border:0; background:transparent}
.token-tool-page .token-term-timeline {display:grid; grid-template-columns:1fr 1fr 1fr; gap:12px; margin:20px 0 17px; padding:12px 0; border-top:1px solid var(--tool-rule); border-bottom:1px solid var(--tool-rule)}
.token-tool-page .token-term-timeline>span {font:11px/1.6 var(--mono); color:var(--science-ice); padding-left:10px; border-left:1px solid #517e83; overflow-wrap:anywhere}
@media(min-width:1450px) {
  .token-tool-page .token-tool-workbench,.token-tool-page .token-tool-grid {grid-template-columns:minmax(350px,.83fr) minmax(0,1.35fr); gap:24px}
  .token-tool-page .token-tool-controls {padding:24px}
  .token-tool-page .token-panel {padding:26px}
}
@media(max-width:1100px) {
  .token-tool-page .token-tool-workbench,.token-tool-page .token-tool-grid {grid-template-columns:minmax(260px,.86fr) minmax(0,1.2fr); gap:15px}
  .token-tool-page .token-tool-controls {padding:17px}
  .token-tool-page .token-panel {padding:19px}
  .token-tool-page .token-answer-columns {grid-template-columns:1fr; gap:0}
  .token-tool-page .form-grid {grid-template-columns:1fr; gap:15px}
  .token-tool-page .token-stake-fields {grid-template-columns:1fr 1fr}
  .token-tool-page .token-result-metrics {gap:9px}
  .token-tool-page .token-result-metric {padding-left:9px}
}
@media(min-width:1100px) {
  .token-tool-page.token-tool-access .token-tool-grid {grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .token-tool-page.token-tool-access .token-cost-fields .form-grid {grid-template-columns:repeat(3,minmax(0,1fr))}
  .token-tool-page.token-tool-access .token-field-group {margin-bottom:12px}
  .token-tool-page.token-tool-access .token-field-group:last-child {margin-bottom:0}
  .token-tool-page.token-tool-access .token-field-group>legend {padding-bottom:8px; margin-bottom:9px}
  .token-tool-page.token-tool-access .token-tool-controls>.fine-print {margin:12px 0; padding-top:10px}
}
@media(max-width:800px) {
  .token-tool-page .token-tool-workbench,.token-tool-page .token-tool-grid {grid-template-columns:1fr; gap:16px; margin-top:17px}
  .token-tool-page .token-tool-header {padding:5px 0 17px}
  .token-tool-page .token-tool-header {grid-template-columns:1fr; gap:11px}
  .token-tool-page .token-tool-header>.tag {margin:0; justify-self:start}
  .token-tool-page .token-tool-header h1 {font-size:34px; letter-spacing:-1.1px}
  .token-tool-page .token-tool-controls {padding:18px}
  .token-tool-page .token-question-grid {grid-template-columns:1fr 1fr; gap:8px; margin-top:13px}
  .token-tool-page .token-question {min-height:110px; padding:12px 26px 12px 12px}
  .token-tool-page .token-question strong {font-size:16px}
  .token-tool-page .token-question-arrow {right:9px; top:12px; font-size:14px}
  .token-tool-page .token-question>span:not(.panel-label):not(.token-question-arrow) {font-size:14px; line-height:1.5}
  .token-tool-page .form-grid {grid-template-columns:1fr 1fr; gap:15px}
  .token-tool-page .token-funding-assumptions[open]>.token-cost-fields {grid-template-columns:1fr 1fr}
  .token-tool-page .token-tool-output>.empty-state,.token-tool-page .empty-state {min-height:170px}
  .token-tool-page .token-answer-columns {grid-template-columns:1fr 1fr; gap:20px}
  .token-tool-page .token-result-metric strong {font-size:25px}
}
@media(max-width:520px) {
  .token-tool-page .token-tool-header h1 {font-size:31px; letter-spacing:-1px}
  .token-tool-page .token-tool-header .eyebrow {font-size:10px; letter-spacing:.8px; margin-bottom:10px}
  .token-tool-page .token-tool-controls {padding:15px}
  .token-tool-page .token-panel {padding:18px}
  .token-tool-page.token-tool-access .token-panel.token-tool-controls {padding:15px}
  .token-tool-page .token-panel h2 {font-size:24px; letter-spacing:-.5px}
  .token-tool-page .token-question-grid {grid-template-columns:1fr; gap:7px}
  .token-tool-page .token-question {min-height:0; padding:12px 32px 12px 12px; gap:4px}
  .token-tool-page .token-question>span:not(.panel-label):not(.token-question-arrow) {font-size:14px}
  .token-tool-page .token-question>.panel-label {font-size:10px}
  .token-tool-page .token-question strong {font-size:17px}
  .token-tool-page .token-question-arrow {right:12px}
  .token-tool-page .form-grid,.token-tool-page .token-funding-assumptions[open]>.token-cost-fields {grid-template-columns:1fr; gap:14px}
  .token-tool-page.token-tool-access .token-cost-fields .form-grid {grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px}
  .token-tool-page.token-tool-access .token-field-group {margin-bottom:14px}
  .token-tool-page.token-tool-access .token-field-group>legend {padding-bottom:8px; margin-bottom:10px}
  .token-tool-page.token-tool-access .token-tool-controls>.fine-print {margin:11px 0; padding-top:10px}
  .token-tool-page .token-stake-fields {grid-template-columns:1fr 1fr; gap:13px}
  .token-tool-page .token-stake-fields>.field:first-child {grid-column:1/-1}
  .token-tool-page .token-answer-columns {grid-template-columns:1fr; gap:0}
  .token-tool-page .token-planner-presets {gap:6px; margin:13px 0}
  .token-tool-page .preset {font-size:12px; padding:7px 8px; min-height:32px}
  .token-tool-page .field input,.token-tool-page .field select {font-size:16px}
  .token-tool-page .form-actions {flex-direction:row; align-items:stretch; gap:9px}
  .token-tool-page .form-actions>.button[type=submit] {width:100%}
  .token-tool-page .form-actions>.button:not([type=submit]) {flex:1 1 auto}
  .token-tool-page .button {font-size:12px; padding:10px 12px; min-height:38px}
  .token-tool-page .token-tool-controls .actions .button {flex:1 1 auto}
  .token-tool-page .token-result-metrics {grid-template-columns:1fr; gap:0; margin:17px 0}
  .token-tool-page .token-result-metric {display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:5px 13px; align-items:center; padding:12px 0 12px 12px; border-left:2px solid #517e83; border-bottom:1px solid var(--tool-rule)}
  .token-tool-page .token-result-metric:last-child {border-bottom:0}
  .token-tool-page .token-result-metric>.panel-label {grid-column:1; grid-row:1; font-size:10px; letter-spacing:.4px}
  .token-tool-page .token-result-metric>strong {grid-column:2; grid-row:1/3; font-size:25px; margin:0; text-align:right}
  .token-tool-page .token-result-metric>p {grid-column:1; grid-row:2; font-size:12px; line-height:1.55}
  .token-tool-page .token-budget-proof>div {gap:12px; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
  .token-tool-page .empty-state {padding:24px 19px; min-height:170px}
  .token-tool-page .empty-state h2,.token-tool-page .empty-state h3 {font-size:24px}
  .token-tool-page .token-source-evidence {padding:10px 13px}
  .token-tool-page .token-source-evidence .concept-card {padding:14px}
  .token-tool-page .source-detail>summary {padding:10px 11px}
  .token-tool-page .source-content {padding:12px}
  .token-tool-page .definition-grid {grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce) {
  .token-tool-page .token-question {transition:none}
}
