.hero-panel{padding-bottom:34px}.hero-panel h1{margin-bottom:22px}.hero-meta{margin-bottom:0}.hero h2{margin-top:38px}.hero .match-timeline{margin-top:28px}.arena-heading{font-size:22px;color:#263b4c;margin:40px 0 12px;scroll-margin-top:85px}.arena-heading+p{max-width:850px}.manual-figure{margin:24px 0 32px;border:1px solid #d6e1ed;border-radius:8px;overflow:hidden;background:#f4f6f8}.manual-figure img{display:block;width:100%;max-height:420px;object-fit:contain}.manual-figure figcaption{padding:12px 18px;background:white;font-size:13px;color:#586c7c}.seed-cad{width:100%;height:180px;object-fit:contain;display:block;margin-bottom:15px}.seed-image-pending{height:180px;display:grid;place-items:center;color:#61798d;background:#f4f6f8}.table-scroll{overflow-x:auto;margin:24px 0}.table-scroll table{margin:0;width:100%}.table-scroll th,.table-scroll td{white-space:normal;vertical-align:top}.table-scroll th:first-child{width:48%}.table-scroll th:not(:first-child){min-width:125px}.probability-layout{display:flex;align-items:center;gap:40px;padding:20px 0}.probability-pie{width:220px;aspect-ratio:1;border-radius:50%;box-shadow:0 0 0 5px white,0 0 0 6px #dce5ed;flex-shrink:0}.probabilities{display:grid;grid-template-columns:1fr!important;gap:16px;flex:1}.probabilities>div{border:0!important;display:grid;grid-template-columns:14px 62px 1fr;gap:10px;align-items:center;padding:0!important}.probabilities i{width:12px;height:12px;border-radius:3px}.probabilities strong{font-size:24px!important}.probabilities small{grid-column:3;margin-top:-7px}.seed-flow{display:flex;gap:16px;align-items:center;padding:24px;background:#f0f8fe;border:1px solid #d3e5f4;border-radius:8px;margin:24px 0}.seed-flow>div{flex:1}.seed-flow strong{color:#005b9c}.seed-flow p{font-size:13px;margin-bottom:0}.seed-flow>span{font-size:24px;color:#0075c9}.explain-tool{margin:28px 0;padding:24px;background:#f4f7fa;border:1px solid #d6e1ed;border-radius:8px}.tool-controls{display:flex;align-items:center;gap:18px;margin:20px 0}.tool-controls select{margin-left:8px;padding:8px;background:white;border:1px solid #c8d6e2;border-radius:4px}.demo-boxes{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.demo-box{border:1px solid #cdd9e4;background:white;padding:12px;border-radius:5px}.demo-box>strong{font-size:10px;display:block}.demo-box>small{font-size:10px;color:#667b8d;display:block;margin:6px 0 12px}.demo-box>div{display:flex;gap:6px}.goal-state{display:flex;flex:1;flex-direction:column;padding:7px 3px!important;background:#e7ecf0!important;color:#64717c!important;border-color:#d5dee6!important}.goal-state span:first-child{font-size:26px}.goal-state span:last-child{font-size:9px}.goal-state.is-active{background:#0075c9!important;color:white!important;border-color:#005b9c!important}.demo-message{min-height:48px;color:#174c74;font-weight:600;margin:20px 0 8px!important}.explain-tool>small{font-size:11px;color:#667b8d}
@media(max-width:700px){.probability-layout{gap:25px;flex-direction:column;align-items:stretch}.probability-pie{width:180px;align-self:center}.demo-boxes{grid-template-columns:repeat(2,1fr)}.seed-flow{flex-direction:column;align-items:stretch}.seed-flow>span{align-self:center;transform:rotate(90deg)}.tool-controls{align-items:flex-start;flex-direction:column}.seed-cad{height:140px}}
@media print{.table-scroll{overflow:visible}.probability-pie{print-color-adjust:exact}.demo-boxes,.tool-controls{display:none}.manual-figure,.seed-flow{break-inside:avoid}.probability-layout{break-inside:avoid}.hero-panel{padding:20px}.explain-tool{break-inside:avoid}}
.arena-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.arena-gallery .manual-figure{margin-top:12px}.arena-gallery img{height:170px}.display-layout{display:flex;align-items:center;gap:40px;margin:24px 0}.display-face{position:relative;width:260px;aspect-ratio:1;flex-shrink:0}.display-disc{position:absolute;inset:14%;border-radius:50%;box-shadow:0 0 0 1px #c7d3df}.display-indicator{position:absolute;width:14px;height:14px;margin:-7px;border-radius:50%;background:#dce3e9;border:1px solid #8698a7}.display-indicator.lit{background:#20c967;border-color:#148444;box-shadow:0 0 5px #20c96777}.display-buttons{display:flex;flex-wrap:wrap;gap:8px}.display-event{font-size:13px;color:#536c80}.display-layout strong{font-size:24px}.display-layout>div:last-child{flex:1}@media(max-width:700px){.arena-gallery{grid-template-columns:1fr}.display-layout{flex-direction:column;align-items:stretch}.display-face{align-self:center;width:220px}}@media print{.display-buttons{display:none}.display-disc,.display-indicator{print-color-adjust:exact}.display-layout{break-inside:avoid}}
.arena-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.arena-gallery .manual-figure:last-child:nth-child(3){grid-column:1/-1;width:calc(50% - 8px);justify-self:center}.arena-gallery img{height:320px}.manual-figure> .image-open>img{max-height:none}.image-open{display:block;position:relative;width:100%;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;cursor:zoom-in}.image-open:hover{filter:brightness(.98)}.image-open:focus-visible{outline:3px solid #0075c9;outline-offset:-3px}.enlarge-hint{position:absolute;right:12px;bottom:12px;padding:5px 9px;border-radius:4px;background:#fffE;color:#005b9c;font-size:11px;box-shadow:0 1px 5px #173f6122}#image-lightbox{width:min(1200px,94vw);max-width:94vw;max-height:94vh;padding:16px;border:1px solid #c9d7e3;border-radius:9px;background:#f4f6f8;box-sizing:border-box}#image-lightbox::backdrop{background:#152535b8}.lightbox-header{display:flex;align-items:center;gap:20px;justify-content:space-between;margin-bottom:12px}.lightbox-header h2{font-size:17px;margin:0}.lightbox-header button{flex-shrink:0}#lightbox-image{display:block;width:100%;height:auto;max-height:calc(94vh - 90px);object-fit:contain}@media(max-width:700px){.arena-gallery{grid-template-columns:1fr}.arena-gallery .manual-figure:last-child:nth-child(3){width:100%;grid-column:auto}.arena-gallery img{height:280px}#image-lightbox{padding:10px}.lightbox-header h2{font-size:14px}}@media print{.arena-gallery{grid-template-columns:repeat(3,1fr)}.arena-gallery .manual-figure:last-child:nth-child(3){grid-column:auto;width:100%}.arena-gallery img{height:200px}.enlarge-hint,#image-lightbox{display:none!important}.image-open{cursor:default}}
.image-zoom-controls{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:8px;font-size:12px}.image-zoom-controls button{padding:4px 12px}#lightbox-scroll{overflow:auto;max-height:calc(94vh - 130px)}#lightbox-image{max-width:none;max-height:calc(94vh - 130px)}

/* The indicator polygons are projected directly from the DISPLAY CAD. */
.display-disc{inset:21.425%;box-shadow:0 0 0 1px #899dac}
.display-lights{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.display-lights .display-indicator{fill:#dce3e9;stroke:#708493;stroke-width:1.5}
.display-lights .display-indicator.lit{fill:#20c967;stroke:#148444;filter:drop-shadow(0 0 2px #20c96777)}
.display-history{font-size:12px;color:#536c80;line-height:1.6}

.flower-gallery{grid-template-columns:repeat(3,1fr)}
.flower-gallery .manual-figure:last-child:nth-child(3){grid-column:auto;width:100%}
.flower-gallery img{height:260px}
.display-check{margin-top:16px;font-size:13px;color:#536c80}.display-check summary{cursor:pointer;color:#006cb8}
@media(max-width:700px){.flower-gallery{grid-template-columns:1fr}.flower-gallery img{height:280px}}

/* Expanded CAD keeps the same canvas, camera, and navigation controls. */
.viewer-head-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}
.viewer-head-actions>span{color:#708495;font-size:9px;letter-spacing:.5px}
#field-expand{background:#fff;border-color:#cdd9e3;color:#00528d;font-size:12px;white-space:nowrap}
#field-expand:hover{background:#edf7ff;border-color:#0075c9}
.field-viewer-placeholder{margin:24px 0}
body.field-viewer-expanded{overflow:hidden}
#field-dialog{width:calc(100vw - 32px);max-width:none;height:calc(100vh - 32px);height:calc(100dvh - 32px);max-height:none;padding:0;border:1px solid #c9d7e3;background:#f4f6f8;overflow:auto}
#field-dialog::backdrop{background:#152535b8}
#field-dialog .viewer{display:flex;flex-direction:column;height:100%;margin:0;border:0;border-radius:inherit}
#field-dialog .viewer-head,#field-dialog .viewer-buttons,#field-dialog .viewer-info{flex-shrink:0}
#field-dialog .viewer-body{flex:1;min-height:120px}
#field-dialog #field{height:100%;width:100%}
#field-dialog .viewer-buttons{padding-top:10px}
@media(max-width:720px){.viewer-head-actions{justify-content:flex-start}#field-dialog{width:calc(100vw - 12px);height:calc(100vh - 12px);height:calc(100dvh - 12px)}#field-dialog .viewer-head{padding:10px 12px}#field-dialog .viewer-info{padding:10px 12px}}
@media(max-height:540px){#field-dialog .viewer-head{padding:8px 12px}#field-dialog .viewer-head-actions>span{display:none}#field-dialog .viewer-info{padding:8px 12px;gap:10px}#field-dialog .viewer-info p{font-size:11px}#field-dialog .viewer-buttons{padding:6px 12px}}
@media print{#field-expand,.field-viewer-placeholder{display:none!important}}
/* Give every match-period score the same typography and emphasis. */
#scoring td{font:inherit;color:#52606d}
/* Physical references use body-sized values, including both mass units. */
#pieces td{font:inherit;color:#52606d}
/* Use a clearer dotted i in headings, with natural spacing between letters. */
h1,h2,h3,.hero-panel h1,.rule h3,.seed h3{font-family:"Segoe UI",Arial,sans-serif;letter-spacing:normal}

/* Rule references keep their place in the prose while exposing a local preview. */
.rule-reference{color:#006cb8;text-decoration:underline;text-underline-offset:3px;text-decoration-style:dotted;font-weight:600}
.rule-reference:hover,.rule-reference:focus-visible{text-decoration-style:solid}
.rule-preview{position:fixed;z-index:100;width:min(390px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow:auto;padding:18px;background:#fff;border:1px solid #b8ccdd;border-top:3px solid #0075c9;border-radius:7px;box-shadow:0 8px 30px #183e6630;font:14px/1.55 "Segoe UI",Arial,sans-serif;color:#333}
.rule-preview[hidden]{display:none}.rule-preview h4{margin:0 0 9px;font-size:15px}.rule-preview p{margin:0 0 14px}.rule-preview>div{display:flex;align-items:center;justify-content:space-between;gap:15px}.rule-preview button{font-size:12px;padding:4px 10px}.rule-preview a{color:#006cb8}
.rule-details{margin:14px 0 0;padding-left:22px;font-size:14px;max-width:800px}.rule-details li{padding-left:3px;margin:10px 0}.rule-sources{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:14px;font-size:12px}.rule-sources a{color:#006cb8}

/* Overlay enlarged goal markers on the unmodified overhead CAD render. */
.demo-instructions{padding:14px 17px;border-left:3px solid #0075c9;background:#e8f3fc;font-size:14px}.demo-instructions strong{display:block;margin-bottom:5px}
.demo-counts{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.demo-counts>span{padding:8px 12px;border:1px solid #ccd9e4;border-radius:5px;background:#fff;font-size:12px}.demo-counts .blue strong{color:#006cb8}.demo-counts .red strong{color:#b52937}
.field-scroll-hint{font-size:12px;color:#536c80;margin:10px 0}.goal-field-scroll{overflow-x:auto;border:1px solid #c9d6e0;border-radius:6px;background:#f4f6f8}.goal-field{position:relative;min-width:960px;aspect-ratio:1400/740}.goal-field-cad{display:block;width:100%;height:100%}.goal-field .field-side{font:700 25px "Segoe UI",Arial,sans-serif;paint-order:stroke;stroke:white;stroke-width:4px}.field-side.blue{fill:#006cb8}.field-side.red{fill:#b52937}
.field-goal{position:absolute;transform:translate(-50%,-50%);width:26px;height:26px;padding:0;border-radius:50%;border:2px solid #fff;background:#64717c;color:#fff;font:700 12px "Segoe UI",Arial,sans-serif;line-height:22px;box-shadow:0 0 0 1px #52606d;cursor:default;transition:background .15s,box-shadow .15s}
.field-goal.is-active{cursor:pointer;outline:3px solid #ffffffa0;outline-offset:2px}.field-goal.blue.is-active{background:#0075c9;box-shadow:0 0 0 3px #0075c955,0 0 12px 5px #0075c977}.field-goal.red.is-active{background:#c33142;box-shadow:0 0 0 3px #c3314255,0 0 12px 5px #c3314277}.field-goal.is-active:hover{filter:brightness(1.18);outline-color:#172c42}.field-goal:focus-visible{outline:3px solid #152535;outline-offset:4px;z-index:3}.field-goal.was-scored:not(.is-active){border-color:#ffe385}.field-goal.is-new{animation:goal-arrives .6s ease-in-out 3;outline:3px solid #7550b8;outline-offset:4px;z-index:2}
.goal-map-legend{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:12px;margin-top:15px;color:#536c80}.goal-map-legend span{display:flex;align-items:center;gap:7px}.goal-map-legend i{width:12px;height:12px;display:inline-block;border-radius:50%}.legend-lit{background:#0075c9;box-shadow:0 0 6px #0075c9}.legend-off{background:#64717c}
@keyframes goal-arrives{50%{transform:translate(-50%,-50%) scale(1.28)}}
@media(prefers-reduced-motion:reduce){.field-goal{transition:none}.field-goal.is-new{animation:none}}
@media(max-width:700px){#goal-demo{padding:16px}.demo-counts{flex-direction:column}.goal-map-legend{flex-direction:column}.goal-field{min-width:960px}}
@media print{.rule-preview{display:none!important}.rule-reference{color:inherit;text-decoration:none}.goal-field-scroll{overflow:visible}.goal-field{min-width:0}.field-goal{width:16px;height:16px;font-size:8px;line-height:12px}.field-scroll-hint{display:none}.field-goal.is-new{animation:none}}

/* Bound image previews; the lightbox keeps the full-resolution artwork. */
.seed-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.seed{min-width:0}
.seed .image-open{margin-bottom:15px}
.seed .seed-cad{width:100%;max-width:270px;height:180px;object-fit:contain;margin:0 auto}
.manual-figure:has(img[src*="field-zones-labeled.svg"]){width:100%;max-width:800px;margin-inline:auto}
.manual-figure:has(img[src*="pollen-cross-section.png"]){width:100%;max-width:660px;margin-inline:auto}
.manual-figure img[src*="field-zones-labeled.svg"],.manual-figure img[src*="pollen-cross-section.png"]{height:auto}
@media(max-width:700px){.seed-grid{grid-template-columns:1fr;max-width:360px;margin-inline:auto}.seed .seed-cad{height:140px}}

/* Keep the public field CAD link prominent beside the embedded model. */
.field-cad-link{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px;background:#00528d;color:#fff;flex-shrink:0}
.field-cad-link h3{margin:0 0 6px;font-size:26px;color:#fff}
.field-cad-link p{margin:0;font-size:15px;color:#fff}
.field-cad-link a{display:block;flex-shrink:0;padding:14px 20px;border:2px solid #fff;border-radius:6px;background:#fff;color:#00528d;font-size:17px;font-weight:700;line-height:1.4;text-decoration:none}
.field-cad-link a:hover{background:#e8f3fc;border-color:#b8dcf5;color:#003c68}
.field-cad-link a:focus-visible{outline:3px solid #ffdf70;outline-offset:4px}
.field-cad-new-tab{display:block;margin-top:3px;font-size:12px;font-weight:400}
@media(max-width:900px){.field-cad-link{align-items:stretch;flex-direction:column;gap:16px;padding:20px}.field-cad-link a{text-align:center;flex-shrink:1}}
@media print{.field-cad-link{background:#fff;color:#000;border-bottom:2px solid #00528d;break-inside:avoid}.field-cad-link h3,.field-cad-link p{color:#000}.field-cad-link a{border-color:#00528d}}
