/* Cristal Osso: produção e resultados, seguidos do território panorâmico.
   Escopo restrito à view; superfícies e cores vêm dos tokens CCC. */
.content:has(> .cristal-view){max-width:none}
.cristal-view{background:var(--bg);color:var(--ink-900);padding:var(--s5);width:100%;min-width:0;font-family:var(--font);-webkit-font-smoothing:antialiased}
.cristal-view *{box-sizing:border-box}
.cristal-view h1,.cristal-view h2,.cristal-view h3,.cristal-view p{margin:0}
.cristal-view button,.cristal-view input,.cristal-view select{font:inherit;color:inherit;border-radius:0;touch-action:manipulation}
.cristal-view button{background:transparent;border:1px solid var(--line-strong);min-height:44px;padding:9px 13px;cursor:pointer}
.cristal-view button:disabled{color:var(--ink-500);cursor:default}
.cristal-view :focus-visible{outline:2px solid var(--brand-deep);outline-offset:3px}
.cristal-view a{color:var(--brand-deep);text-underline-offset:4px}
.cristal-view [hidden]{display:none!important}
.cristal-view label{min-width:0;font-size:11px;color:var(--ink-500)}
.cristal-view input,.cristal-view select{background:transparent;border:0;min-width:0;min-height:44px;padding:8px 0;font-size:12px;color:var(--ink-900)}
.cristal-view input::placeholder{color:var(--ink-500);opacity:1}
.cristal-kicker{display:block;font-size:9px;font-weight:600;letter-spacing:.1em;color:var(--ink-500)}
.cristal-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 10px}
.cristal-demo{color:var(--warning-text);font-size:10px;line-height:1.6;max-width:58ch}
.cristal-heading-context{display:flex;align-items:center;gap:22px;flex:none}
.cristal-mode{font:9px/1.6 var(--font-mono);color:var(--ink-500)}
.cristal-mode b{display:block;color:var(--ink-900);font-weight:400}
.cristal-view .cristal-harvest{display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:.08em}
.cristal-harvest input{width:82px;font:11px var(--font-mono);letter-spacing:0}
.cristal-controls{display:grid;grid-template-columns:minmax(210px,.85fr) minmax(180px,1fr) auto;gap:24px;align-items:center;border-block:1px solid var(--line);padding:6px 0}
.cristal-search{position:relative;display:flex;align-items:center;min-width:0;border-bottom:1px solid var(--line-strong)}
.cristal-search input{width:100%;padding-right:30px}
.cristal-search>span{position:absolute;right:2px;font-size:26px;pointer-events:none}
.cristal-scope{display:flex;align-items:center;gap:12px;min-width:0}
.cristal-scope-indicator{width:6px;height:6px;flex:none;background:var(--brand-deep)}
.cristal-scope select{flex:1;width:100%;text-overflow:ellipsis}
.cristal-controls>button{border:0;font-size:12px;color:var(--brand-deep);white-space:nowrap;padding-inline:0}
.cristal-controls>button span{margin-left:14px}
#cristalBuscaResultados{position:absolute;z-index:25;inset:calc(100% + 7px) auto auto 0;width:100%;max-height:280px;overflow:auto;background:var(--surface);border:1px solid var(--line-strong)}
#cristalBuscaResultados button{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);padding:13px 16px;min-height:54px;font-size:14px;overflow-wrap:anywhere}
#cristalBuscaResultados small{display:block;color:var(--ink-500);font-size:10px;margin-top:4px}
#cristalBuscaResultados button:hover,#cristalBuscaResultados button[aria-selected=true]{background:var(--surface-2)}
#cristalBuscaResultados p{padding:16px;font-size:12px;color:var(--ink-500)}
.cristal-state{font-size:10px;line-height:1.6;color:var(--ink-500);padding:9px 0 0;overflow-wrap:anywhere;min-height:25px}
.cristal-workspace{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-template-areas:'production results' 'map map' 'details details' 'proof proof';column-gap:clamp(24px,4vw,48px);align-items:start}
.cristal-workspace>*{min-width:0}
#cristalResultado,.cristal-snapshot,.cristal-reading{display:contents}
#cristalResultado>.cristal-empty{grid-column:1/-1;margin:20px 0}
.cristal-production{grid-area:production;container-type:inline-size;padding:22px 0 28px;min-width:0}
.cristal-selected-context{padding-bottom:20px}
.cristal-selected-context h2{font-size:23px;font-weight:400;letter-spacing:-.025em;line-height:1.2;margin-top:6px;overflow-wrap:anywhere}
.cristal-selected-context p{display:inline-block;font-size:11px;line-height:1.6;color:var(--ink-500);margin-top:5px}
.cristal-selected-context>span:last-child{display:inline-block;font:10px/1.6 var(--font-mono);color:var(--ink-500);margin-left:10px}
.cristal-section-label{display:flex;justify-content:space-between;gap:16px;align-items:center;color:var(--ink-500)}
.cristal-section-label h3,.cristal-metric h3{font-size:10px;font-weight:400;letter-spacing:.055em;color:var(--ink-500);line-height:1.55}
.cristal-section-label>span{font:9px var(--font-mono);white-space:nowrap}
.cristal-main-number{font:clamp(36px,12cqi,62px)/1.12 var(--font);letter-spacing:-.05em;padding-top:8px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.cristal-main-number:has([data-cristal-valor="null"]){font-size:24px;letter-spacing:-.02em}
.cristal-view .cristal-production-unit{font-size:18px;line-height:1.3;margin-top:6px}
.cristal-production-unit span{font-size:11px;color:var(--ink-500);margin-left:6px}
.cristal-view .cristal-equivalent{font:10px/1.6 var(--font-mono);color:var(--ink-500);margin-top:8px}
.cristal-production-support{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 20px;border-top:1px solid var(--line);margin-top:19px;padding-top:12px}
.cristal-production-support>.cristal-note{padding-top:0}
.cristal-context{font:10px/1.6 var(--font-mono);color:var(--ink-500);overflow-wrap:anywhere}
.cristal-context>span{display:block;color:var(--ink-900);font-size:10px;margin-bottom:3px}
.cristal-note{font-size:11px;line-height:1.6;color:var(--ink-500);padding-top:5px;overflow-wrap:anywhere}
.cristal-origin{display:block;color:var(--ink-500);font:9px/1.6 var(--font-mono);margin-top:5px;overflow-wrap:anywhere}
.cristal-results{grid-area:results;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;align-self:stretch;gap:20px 24px;padding:23px 0 28px;min-width:0}
.cristal-metric{min-width:0}
.cristal-primary{grid-column:1/-1;border-bottom:1px solid var(--line);padding-bottom:18px}
.cristal-metric>p{padding-top:7px}
.cristal-number{font:29px/1.2 var(--font);letter-spacing:-.04em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.cristal-primary .cristal-number{font-size:40px}
.cristal-number[data-cristal-valor="null"]{font-size:18px;letter-spacing:0}
.cristal-metric small{font-size:11px;color:var(--ink-500);display:inline-block;overflow-wrap:anywhere}
.cristal-empty{border-left:2px solid var(--brand-deep);padding:20px;font-size:14px;line-height:1.65;color:var(--ink-900);background:var(--surface)}
.cristal-territory{grid-area:map;border:1px solid var(--line);background:var(--surface);min-width:0;overflow:hidden}
.cristal-territory>header{padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.cristal-territory h2{font-size:23px;font-weight:400;letter-spacing:-.025em;line-height:1.2;margin-top:4px}
.cristal-map-tools{display:flex;gap:18px;align-items:center}
.cristal-map-tools label{display:flex;align-items:center;gap:10px;white-space:nowrap}
.cristal-map-tools select{min-width:96px;padding:8px;border:1px solid var(--line);background:var(--surface-2)}
.cristal-map-tools button{border:0;padding-inline:0;color:var(--brand-deep);font-size:11px;white-space:nowrap}
.cristal-map-tools button span{margin-left:8px}
.cristal-territory>#cristalMapa{width:100%;height:clamp(320px,34vw,455px);min-height:320px;overflow:hidden;background:var(--surface-2);isolation:isolate}
.cristal-territory>.cristal-note{padding:10px 20px;font-size:10px}
.cristal-territory:has(#cristalMapaEstado[data-estado="sem_geometria"])>#cristalMapa,
.cristal-territory:has(#cristalMapaEstado[data-estado="sem_chave"])>#cristalMapa,
.cristal-territory:has(#cristalMapaEstado[data-estado="erro"])>#cristalMapa:empty{display:none}
#cristalMapaEstado[data-estado="sem_geometria"],#cristalMapaEstado[data-estado="sem_chave"],#cristalMapaEstado[data-estado="erro"]{min-height:140px;display:flex;align-items:center;padding:24px;font-size:14px;line-height:1.65;background:var(--surface-2);border-block:1px solid var(--line)}
.cristal-map-disclosure{padding:0 20px;font-size:11px;line-height:1.6;color:var(--ink-500)}
.cristal-map-disclosure summary{min-height:36px;cursor:pointer;padding:8px 0}
.cristal-map-disclosure p{padding-bottom:10px}
.cristal-plot-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:0;padding:8px 20px 14px}
.cristal-plot-list button{text-align:left;min-width:0;overflow-wrap:anywhere;border-color:var(--line);padding:13px 14px;font-size:13px}
.cristal-plot-list small{display:block;font:10px/1.6 var(--font-mono);color:var(--ink-500);margin-top:3px}
.cristal-plot-list button[aria-pressed=true]{background:var(--surface-2);border-color:var(--brand-deep)}
.cristal-breakdown{grid-area:details;margin-top:24px}
.cristal-proof{grid-area:proof}
.cristal-proof,.cristal-breakdown{border-top:1px solid var(--line);padding:0;font-size:12px;line-height:1.7;overflow-wrap:anywhere}
.cristal-proof summary,.cristal-breakdown>summary{cursor:pointer;min-height:48px;display:flex;align-items:center;gap:12px;color:var(--brand-deep)}
.cristal-proof summary::before,.cristal-breakdown>summary::before{content:"+";font:16px var(--font-mono)}
.cristal-proof[open] summary::before,.cristal-breakdown[open]>summary::before{content:"−"}
.cristal-proof summary::-webkit-details-marker,.cristal-breakdown>summary::-webkit-details-marker{display:none}
.cristal-proof>p,.cristal-proof>ul{padding-bottom:10px}
.cristal-hash{font:10px/1.8 var(--font-mono);overflow-wrap:anywhere}
.cristal-scopes,.cristal-preservation{padding:18px 0;border-top:1px solid var(--line)}
.cristal-scopes h2,.cristal-preservation h2{font-size:22px;font-weight:400;letter-spacing:-.02em;margin-bottom:18px}
.cristal-scopes>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.cristal-preservation>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.cristal-scopes .cristal-number{font-size:26px}
.cristal-footer{border-top:1px solid var(--line);margin-top:24px;padding-top:24px;display:flex;align-items:center;gap:24px;font-size:11px}
.cristal-footer>p{margin-right:auto;font-size:21px;white-space:nowrap}
.cristal-footer>p>span{display:block;color:var(--ink-500);font-size:10px;margin-top:4px}
.cristal-footer button{font-size:11px}
.cristal-footer>a{max-width:30ch;font-size:10px;line-height:1.7}
@media(max-width:1200px){.cristal-results{gap:16px}.cristal-primary .cristal-number{font-size:35px}.cristal-number{font-size:26px}.cristal-metric small{display:block;margin-top:3px}.cristal-production-support{grid-template-columns:1fr;gap:10px}.cristal-context p{display:inline}.cristal-context p+p::before{content:' · '}.cristal-footer{flex-wrap:wrap}.cristal-footer>a{max-width:none}}
@media(max-width:900px){.cristal-controls{grid-template-columns:minmax(0,1fr) auto;gap:4px 16px}.cristal-search{grid-column:1/-1}.cristal-heading{gap:14px}.cristal-heading-context{gap:14px}.cristal-results{grid-template-columns:1fr;gap:14px}.cristal-primary{padding-bottom:12px}.cristal-metric>p{padding-top:4px}.cristal-territory>header{padding:16px 18px;gap:14px;flex-wrap:wrap}.cristal-map-tools{margin-left:auto}.cristal-footer>p{font-size:19px}}
@media(max-width:600px){.cristal-view{padding:8px 0}.cristal-heading{align-items:start;flex-wrap:wrap;padding-bottom:8px}.cristal-demo{font-size:10px;max-width:none}.cristal-heading-context{width:100%;justify-content:space-between}.cristal-mode{display:flex;gap:8px;align-items:center}.cristal-controls{gap:2px 12px}.cristal-scope{gap:8px}.cristal-state{font-size:10px}.cristal-workspace{grid-template-columns:minmax(0,1fr);grid-template-areas:'production' 'map' 'results' 'details' 'proof';gap:0}.cristal-production{padding:20px 0 24px}.cristal-selected-context{padding-bottom:17px}.cristal-selected-context h2{font-size:23px}.cristal-main-number{font-size:clamp(38px,13cqi,58px)}.cristal-production-support{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.cristal-context p{display:block}.cristal-context p+p::before{content:none}.cristal-territory>header{padding:15px 13px 10px}.cristal-territory h2{font-size:20px}.cristal-map-tools{width:100%;justify-content:space-between;margin:0;gap:12px}.cristal-territory>#cristalMapa{height:355px;min-height:355px}.cristal-territory>.cristal-note{padding:10px 13px}.cristal-map-disclosure{padding:0 13px}.cristal-plot-list{grid-template-columns:repeat(2,minmax(0,1fr));padding:6px 13px 12px}.cristal-plot-list button{padding:11px;font-size:12px}.cristal-results{display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding:4px 0 0}.cristal-results>.cristal-metric{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:6px 14px;padding:17px 0;border-bottom:1px solid var(--line)}.cristal-results>.cristal-metric>p:first-of-type{text-align:right;padding:0}.cristal-results .cristal-number{font-size:28px}.cristal-results .cristal-note,.cristal-results .cristal-origin{grid-column:1/-1;padding:0;margin:0}.cristal-results .cristal-number[data-cristal-valor="null"]{font-size:18px}.cristal-breakdown{margin-top:22px}.cristal-scopes>div,.cristal-preservation>div{gap:16px;grid-template-columns:1fr}.cristal-scopes .cristal-metric,.cristal-preservation .cristal-metric{border-bottom:1px solid var(--line);padding-bottom:14px}.cristal-footer{display:grid;gap:15px;padding-top:22px}.cristal-footer button{width:100%}.cristal-footer>a{font-size:11px}}
@media(min-width:601px) and (max-width:900px){.cristal-territory>#cristalMapa{height:390px;min-height:390px}}
@media(max-width:380px){.cristal-production-support{grid-template-columns:1fr}.cristal-plot-list{grid-template-columns:1fr}.cristal-scope label{font-size:10px}.cristal-controls>button{font-size:11px}.cristal-controls>button span{margin-left:5px}}
@media(prefers-reduced-motion:reduce){.cristal-view *{animation:none;transition:none;scroll-behavior:auto}}
