.field-school { padding:110px max(5vw,calc((100vw - 1380px)/2)); background:#f5eddc; color:#294437; }
.field-school-head { display:grid; grid-template-columns:1.2fr .7fr; gap:55px; align-items:end; margin-bottom:35px; }
.field-school-head small { color:#a76f4c; font-size:11px; font-weight:800; letter-spacing:.2em; }
.field-school-head h2 { font:normal clamp(52px,6vw,86px)/1.04 'Playfair Display',Georgia,serif; letter-spacing:-.055em; margin:18px 0 0; }
.field-school-head h2 em { color:#ad704a; }
.field-school-head p { color:#647462; font-size:15px; line-height:1.8; max-width:450px; }
.discovery-frame { display:grid; grid-template-columns:minmax(250px,.37fr) minmax(0,1fr); background:#fff8e9; border:1px solid #d4c2a1; border-radius:8px 28px 8px 28px; box-shadow:0 25px 70px #8c74553e; overflow:hidden; }
.discovery-side { min-width:0; padding:36px; background:radial-gradient(circle at 15% 10%,#466c56,#25463c 70%); color:#f8efda; }
.discovery-side>span { color:#e8c28b; font-size:11px; font-weight:800; letter-spacing:.18em; }
.discovery-progress { display:flex; flex-wrap:wrap; gap:8px; margin:34px 0 25px; }
.discovery-progress button { width:43px; height:43px; border-radius:50%; border:1px solid #d9c9a899; background:#fbf2da13; color:#f7e9c9; font-size:11px; font-weight:800; }
.discovery-progress button[aria-current=step] { background:#f0c884; border-color:#f0c884; color:#284536; box-shadow:0 0 0 5px #f0c88433; }
.discovery-progress button.complete:not([aria-current=step]) { background:#73987a; border-color:#a6c3a7; color:#fff; }
.discovery-side>p { color:#e9d9b9; font-size:13px; font-weight:700; }
.discovery-ledger { display:grid; gap:12px; padding-top:26px; border-top:1px solid #f9edcf55; color:#e3ebd4; font-size:12px; line-height:1.5; }
.discovery-ledger span { display:block; border-bottom:1px solid #f9edcf2b; padding-bottom:9px; }
.discovery-main { min-width:0; padding:34px clamp(24px,4vw,60px) 43px; }
.discovery-kicker { display:flex; justify-content:space-between; gap:12px; color:#9c704f; font-size:10px; font-weight:800; letter-spacing:.16em; }
.discovery-kicker span+span { color:#74836c; }
.discovery-scene { height:202px; margin:26px 0 31px; border:1px solid #d9c3a0; border-radius:4px 18px 4px 18px; overflow:hidden; position:relative; display:grid; place-items:center; background:radial-gradient(circle at 50% 68%,#f3d49d,#d8baa0 47%,#a7ae96); }
.discovery-scene:before { content:''; position:absolute; inset:16px; border:1px solid #fff9e088; border-radius:50%; transform:scaleX(.54); }
.scene-halo { position:absolute; width:245px; height:245px; border:1px dashed #735f4e55; border-radius:50%; }
.scene-line { position:absolute; bottom:27px; width:min(70%,390px); height:15px; background:#54493966; border-radius:50%; filter:blur(6px); }
.scene-object { position:absolute; display:none; width:126px; height:118px; place-items:center; font:normal 56px/1 Georgia,serif; color:#f6e1b7; text-shadow:0 3px 8px #2a281f70; filter:drop-shadow(8px 13px 6px #3b302b55); z-index:1; }
.scene-object span { position:absolute; bottom:12px; font:800 10px/1 'DM Sans',sans-serif; letter-spacing:.14em; text-shadow:none; }
.discovery-scene[data-scene=ore] .scene-ore { display:grid; background:linear-gradient(125deg,#cb8b61,#874a3b 60%,#6e453b); clip-path:polygon(13% 15%,52% 0,96% 27%,87% 78%,47% 100%,0 74%); }
.discovery-scene[data-scene=prep] { background:radial-gradient(circle at 50% 75%,#f6ca7a,#b77755 47%,#495e53); }
.discovery-scene[data-scene=prep] .scene-prep { display:grid; border-radius:48% 52% 25% 25%; background:linear-gradient(45deg,#713d35,#bd754f); font-size:42px; }
.discovery-scene[data-scene=fuel] { background:radial-gradient(circle at 50% 85%,#f5ad5d,#765c4b 42%,#2c5046); }
.discovery-scene[data-scene=fuel] .scene-fuel { display:grid; border-radius:46% 37% 48% 32%; background:linear-gradient(130deg,#edb474,#de693c,#59372c); transform:rotate(-10deg); }
.discovery-scene[data-scene=air] { background:radial-gradient(circle at 50% 55%,#cbdfcb,#7caca0 56%,#34605a); }
.discovery-scene[data-scene=air] .scene-air { display:grid; border:7px double #d5e6ce; border-radius:50%; background:#376e6599; }
.discovery-scene[data-scene=bloom] { background:radial-gradient(circle at 50% 75%,#f2c788,#b98258 39%,#45594d); }
.discovery-scene[data-scene=bloom] .scene-bloom { display:grid; width:150px; border:8px solid #e5b978; border-radius:42% 48% 40% 46%; background:linear-gradient(145deg,#b57747,#383a31 65%); }
.discovery-question small { color:#aa704a; font-size:10px; font-weight:800; letter-spacing:.18em; }
.discovery-question h3 { font:normal clamp(30px,3vw,45px)/1.1 'Playfair Display',Georgia,serif; letter-spacing:-.04em; margin:12px 0; }
.discovery-question p { max-width:630px; color:#60715f; font-size:14px; line-height:1.72; }
.discovery-choices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin-top:21px; }
.discovery-choices button { min-width:0; min-height:72px; padding:12px; border:1px solid #c8b795; border-radius:4px 15px 4px 15px; background:#f5ecdb; color:#315849; font-size:12px; line-height:1.4; font-weight:800; overflow-wrap:anywhere; }
.discovery-choices button[aria-pressed=true] { background:#a46745; color:#fff6e8; border-color:#a46745; }
.discovery-choices button:disabled { cursor:default; }
.discovery-answer { margin-top:17px; padding:17px 19px; border-left:4px solid #bb7e4d; background:#f0dfc4; color:#544f40; font-size:13px; line-height:1.7; }
.discovery-answer[hidden],.discovery-next[hidden] { display:none; }
.discovery-answer[data-outcome=found] { border-color:#4d8461; background:#deebd8; color:#315b42; }
.discovery-next { margin-top:18px; border:0; border-radius:4px 13px 4px 13px; background:#a8663f; color:#fff8e8; padding:13px 19px; font-size:12px; font-weight:800; }
.discovery-next span { margin-left:20px; }
.discovery-bridge { display:flex; align-items:center; justify-content:space-between; gap:22px; margin-top:19px; padding:23px 28px; border:1px solid #c3b797; border-radius:4px 15px 4px 15px; }
.discovery-bridge div { display:grid; gap:7px; }
.discovery-bridge b { font-size:11px; letter-spacing:.13em; color:#a06a48; }
.discovery-bridge span { font-size:13px; color:#596e5c; line-height:1.5; }
.discovery-bridge a { flex:none; padding:14px 17px; background:#2e5845; color:#fff3dd; text-decoration:none; border-radius:4px 13px 4px 13px; font-size:12px; font-weight:800; }

/* Čitateľný rez aj pred zapálením a ovládanie, ktoré zostáva v obrazovke. */
.forge-workspace { width:100%; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.furnace-panel,.workbench { min-width:0; }
.furnace-panel { background:radial-gradient(circle at 50% 52%,#738579,#374e47 53%,#1b3331 100%); }
.furnace-art { position:relative; isolation:isolate; }
.furnace-backdrop { position:absolute; inset:7% 9% 12%; border:1px dashed #d2bd9580; border-radius:50%; background:radial-gradient(circle at 50% 64%,#d7904a70,transparent 31%),radial-gradient(circle at 50% 58%,#20353099,#15272533 68%); }
.furnace-art svg { position:relative; z-index:1; filter:drop-shadow(0 15px 21px #0b1919a3); }
.furnace-panel[data-state=cold] .charge { opacity:.76; }
.furnace-panel[data-state=cold] .furnace-fire { opacity:.15; }
.furnace-panel[data-loaded=true] .charge { opacity:1; }
.furnace-real { display:grid; grid-template-columns:116px 1fr; align-items:center; gap:15px; margin:1px 10px 0; padding:7px; border:1px solid #ddc59b66; background:#19352e88; border-radius:4px 15px 4px 15px; }
.furnace-real img { width:116px; height:105px; object-fit:cover; object-position:center 52%; border-radius:2px 11px 2px 11px; }
.furnace-real div { display:grid; gap:5px; }
.furnace-real small { color:#efc791; font-size:8px; font-weight:800; letter-spacing:.14em; }
.furnace-real strong { color:#fff0d0; font:normal 20px/1.15 'Playfair Display',Georgia,serif; }
.furnace-real span { color:#d1dfd0; font-size:10px; }
.furnace-panel[data-inspect=charge] .charge,.furnace-panel[data-inspect=air] .air-system,.furnace-panel[data-inspect=heat] .furnace-fire,.furnace-panel[data-inspect=slag] .slag,.furnace-panel[data-inspect=slag] .bloom { filter:drop-shadow(0 0 14px #ffe0a8); opacity:1; }
.furnace-inspect { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; margin:4px 10px 12px; }
.furnace-inspect button { min-width:0; min-height:46px; border:1px solid #e2cca88a; color:#f7e6c5; background:#f9ecd51a; border-radius:4px 10px 4px 10px; font-size:10px; font-weight:700; line-height:1.2; }
.furnace-inspect button[aria-pressed=true] { background:#f0d299; color:#294b3f; }
.furnace-insight { min-height:54px; margin:0 11px 13px; padding:11px 14px; border-left:2px solid #e6b775; background:#172e2a99; color:#f3e6c9; font-size:11px; line-height:1.5; }
.workbench { padding:35px clamp(24px,3vw,46px); }
.workbench * { min-width:0; }
.ore-options button { overflow-wrap:anywhere; }
.choice-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.choice-row button { overflow-wrap:anywhere; }
.forge-phase { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; margin-top:23px; }
.forge-phase span { border-top:3px solid #cec6ad; padding-top:8px; color:#877c67; font-size:9px; font-weight:800; }
.forge-phase span.active { border-color:#bc7045; color:#a45b3d; }
.forge-phase span.complete { border-color:#437759; color:#2e6849; }
@media(max-width:1050px) { .forge-workspace { grid-template-columns:1fr; } .furnace-art { max-width:650px; } }
@media(max-width:720px) {
  .field-school { padding:75px 5%; }
  .field-school-head { display:block; }
  .field-school-head h2 { font-size:clamp(48px,12vw,65px); }
  .discovery-frame { grid-template-columns:1fr; }
  .discovery-side { padding:22px; }
  .discovery-progress { margin:18px 0; }
  .discovery-ledger { padding-top:12px; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .discovery-main { padding:25px 19px 30px; }
  .discovery-kicker span+span { display:none; }
  .discovery-scene { height:170px; margin:19px 0; }
  .discovery-choices { grid-template-columns:1fr; }
  .discovery-choices button { min-height:51px; }
  .discovery-bridge { display:grid; padding:20px; }
  .discovery-bridge a { text-align:center; }
  .furnace-art { width:100%; max-width:100%; left:auto; transform:none; margin:0; }
  .furnace-real { grid-template-columns:80px 1fr; margin:0 12px; }
  .furnace-real img { width:80px; height:85px; }
  .furnace-real strong { font-size:16px; }
  .furnace-inspect { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .furnace-top { position:static; margin:0 15px 12px; }
  .furnace-panel { padding:18px 0 23px; }
  .furnace-note { overflow-wrap:anywhere; }
  .workbench { padding:26px 18px; }
  .ore-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .choice-row { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .choice-row button { padding:8px 5px; font-size:10px; }
  .forge-phase span { font-size:8px; }
}
@media(max-width:390px) { .ore-options { grid-template-columns:1fr 1fr; } .workbench { padding:22px 13px; } .furnace-top { flex-wrap:wrap; } }

/* Voľby sú bežné bloky. Plávajúca legenda fieldsetu v Chrome zužovala ich stĺpec. */
.workbench .forge-field { display:block; width:100%; min-width:0; clear:both; border:0; border-top:1px solid #d5c8ad; padding:18px 0 0; margin:20px 0 0; }
.forge-legend { display:block; width:100%; margin:0 0 13px; font-size:13px; font-weight:800; line-height:1.4; }
.forge-legend span { color:#b4774d; margin-right:9px; }
.workbench .ore-options,.workbench .choice-row { display:grid; width:100%; min-width:0; clear:both; }
.workbench .ore-options { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.workbench .ore-options button { display:grid; grid-template-columns:32px minmax(0,1fr); grid-template-rows:auto auto; align-content:center; gap:2px 10px; width:100%; min-width:0; min-height:73px; padding:11px; }
.workbench .ore-options button .ore-icon { grid-column:1; grid-row:1 / 3; align-self:center; width:28px; height:28px; }
.workbench .ore-options button b { grid-column:2; grid-row:1; font-size:13px; line-height:1.2; }
.workbench .ore-options button small { grid-column:2; grid-row:2; margin:0; font-size:10px; line-height:1.2; }
.workbench .choice-row { grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
.workbench .choice-row button { width:100%; min-width:0; min-height:51px; overflow-wrap:break-word; }
@media(max-width:460px) {
  .workbench .ore-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .workbench .choice-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* Skutočný BIATEC a súbor mincí v múzeu nahrádzajú pôvodnú CSS mincu. */
.coin-evidence { display:none; position:absolute; top:50%; left:50%; width:355px; height:270px; transform:translate(-50%,-50%); }
.trace-art[data-trace=coin] .coin-evidence { display:block; }
.coin-evidence img { position:absolute; display:block; object-fit:cover; border:6px solid #f3e0bc; box-shadow:0 17px 28px #152b2677; }
.coin-evidence .coin-single { top:1px; left:0; width:215px; height:215px; border-radius:50%; object-position:center 46%; }
.coin-evidence .coin-group { bottom:29px; right:0; width:175px; height:120px; border-radius:4px 16px 4px 16px; object-position:62% 62%; }
.coin-evidence small { position:absolute; bottom:2px; left:0; color:#f9e7c2; font-size:9px; font-weight:800; letter-spacing:.13em; }
@media(max-width:650px) {
  .coin-evidence { width:325px; height:260px; }
  .coin-evidence .coin-single { width:195px; height:195px; }
  .coin-evidence .coin-group { width:158px; height:108px; }
}

.trace-photo { position:absolute; top:50%; left:50%; width:300px; height:275px; margin:0; opacity:0; visibility:hidden; pointer-events:none; transform:translate(-50%,-45%) scale(.86); filter:drop-shadow(0 17px 22px #15241f99); }
.trace-photo img { display:block; width:100%; height:244px; object-fit:cover; border:7px solid #f6e5c6; border-radius:4px 21px 4px 21px; }
.trace-photo.pottery-photo img { object-position:center 55%; }
.trace-photo.model-photo img { object-position:center 54%; }
.trace-photo figcaption { margin-top:9px; color:#f9e6bd; text-align:center; font-size:9px; font-weight:800; letter-spacing:.11em; }
.trace-art[data-trace=pottery] .pottery-photo,.trace-art[data-trace=model] .model-photo { opacity:1; visibility:visible; transform:translate(-50%,-50%) scale(1); }
@media(max-width:650px) { .trace-photo { width:280px; height:245px; } .trace-photo img { height:213px; } }

/* Skutočné vzorky v pozorovaní pred vstupom do pece. */
.scene-samples { display:none; position:relative; z-index:2; width:min(92%,535px); grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }
.discovery-scene[data-scene=ore] { background:radial-gradient(circle at 50% 70%,#d8b78a,#7d8b73 65%,#435c52); }
.discovery-scene[data-scene=ore] .scene-samples { display:grid; }
.discovery-scene[data-scene=ore] .scene-ore,.discovery-scene[data-scene=ore] .scene-line { display:none; }
.scene-samples figure { margin:0; min-width:0; padding:5px; background:#fff5dd; border:1px solid #f6e6c5; border-radius:3px 12px 3px 12px; box-shadow:0 12px 18px #23382e66; transform:rotate(-2deg); }
.scene-samples figure:nth-child(2) { transform:translateY(-5px) rotate(2deg); }
.scene-samples figure:nth-child(3) { transform:rotate(-1deg); }
.scene-samples img { display:block; width:100%; height:111px; object-fit:cover; border-radius:2px 8px 2px 8px; }
.scene-samples figcaption { padding:6px 2px 3px; color:#45614e; font-size:9px; font-weight:800; letter-spacing:.1em; text-align:center; }
.discovery-choices.has-samples button { display:flex; align-items:center; gap:12px; text-align:left; padding:7px; min-height:73px; }
.discovery-choices.has-samples img { display:block; width:56px; height:56px; flex:none; object-fit:cover; border:1px solid #c2ae87; border-radius:2px 10px 2px 10px; }
.discovery-choices.has-samples span { line-height:1.35; }
.discovery-choices.has-samples button[aria-pressed=true] img { border-color:#fff2d6; }
@media(max-width:720px) {
  .scene-samples { width:93%; gap:5px; }
  .scene-samples figure { padding:3px; }
  .scene-samples img { height:96px; }
  .scene-samples figcaption { font-size:7px; letter-spacing:.03em; }
  .discovery-choices.has-samples { grid-template-columns:1fr; }
}

/* Päť pozorovaní používa rovnaký vizuálny jazyk skutočných materiálov a vysvetľujúcich schém. */
.scene-story { display:none; position:relative; z-index:2; width:min(92%,690px); height:170px; }
.discovery-scene[data-scene=prep] .story-prep,.discovery-scene[data-scene=fuel] .story-fuel,.discovery-scene[data-scene=air] .story-air,.discovery-scene[data-scene=bloom] .story-result { display:grid; }
.discovery-scene[data-scene=prep] .scene-object,.discovery-scene[data-scene=fuel] .scene-object,.discovery-scene[data-scene=air] .scene-object,.discovery-scene[data-scene=bloom] .scene-object { display:none; }
.discovery-scene[data-scene=prep] .scene-line,.discovery-scene[data-scene=fuel] .scene-line,.discovery-scene[data-scene=air] .scene-line,.discovery-scene[data-scene=bloom] .scene-line { display:none; }
.scene-story figure { margin:0; min-width:0; overflow:hidden; border:5px solid #fff5de; border-radius:3px 15px 3px 15px; box-shadow:0 12px 22px #132c274f; background:#2c4539; }
.scene-story img { display:block; width:100%; height:100%; object-fit:cover; }
.scene-story figcaption { position:absolute; bottom:7px; left:8px; right:8px; color:#fff5df; background:#1d382ecc; border-radius:3px; padding:6px; font-size:9px; font-weight:800; letter-spacing:.09em; text-align:center; }
.story-prep { grid-template-columns:42% 1fr; gap:15px; align-items:center; }
.story-prep .story-photo { position:relative; height:160px; }
.story-prep .story-photo img { object-position:center; }
.story-process { display:grid; align-content:center; gap:5px; height:160px; padding:18px 22px; border:1px solid #e8c48d; border-radius:4px 16px 4px 16px; background:#fff4dbed; box-shadow:0 12px 20px #3c3a2b30; }
.story-process small,.story-callout small { color:#a36841; font-size:9px; font-weight:800; letter-spacing:.15em; }
.story-process strong,.story-callout strong { color:#304d3b; font:normal 27px/1.13 'Playfair Display',Georgia,serif; }
.story-process span { color:#ad6440; font-size:14px; font-weight:800; }
.story-process p { margin:0; color:#60705a; font-size:11px; line-height:1.4; }
.story-fuel { grid-template-columns:1fr; }
.story-fuel .story-wide { position:relative; grid-area:1/1; height:170px; }
.story-fuel .story-wide img { object-position:center 60%; filter:brightness(.67); }
.story-fuel .story-wide figcaption { left:auto; right:10px; bottom:9px; width:max-content; }
.story-callout { position:relative; grid-area:1/1; justify-self:start; align-self:center; display:grid; gap:7px; max-width:270px; margin-left:25px; padding:14px 18px; border-left:3px solid #e7b978; background:#fff5e4ed; box-shadow:0 10px 25px #0e211c77; }
.story-air { grid-template-columns:42% 1fr; gap:15px; }
.story-air .story-real { position:relative; height:166px; }
.story-air .story-real img { object-position:center 52%; }
.story-air-diagram { display:grid; place-items:center; gap:0; background:#203c36ed; border:1px solid #cbac7c; border-radius:4px 16px 4px 16px; color:#e9f3dc; }
.story-air-diagram svg { width:min(100%,230px); height:134px; }
.story-air-diagram span { margin-top:-19px; font-size:9px; font-weight:800; letter-spacing:.11em; }
.story-result { grid-template-columns:1fr 1fr; gap:14px; }
.story-result figure { position:relative; height:168px; }
.story-result figure:first-child img { object-position:center 66%; }
.story-result figure:last-child img { object-position:center; }
.discovery-scene[data-scene=bloom] { background:radial-gradient(circle at 50% 75%,#dcc394,#667e6b 65%,#2f5147); }
@media(max-width:720px) {
  .scene-story { width:94%; height:150px; }
  .story-prep,.story-air { gap:6px; grid-template-columns:41% 1fr; }
  .story-prep .story-photo,.story-air .story-real { height:147px; }
  .story-process { height:147px; padding:9px 10px; gap:3px; }
  .story-process strong,.story-callout strong { font-size:19px; }
  .story-process span { font-size:11px; }
  .story-process p { font-size:9px; }
  .story-fuel .story-wide { height:150px; }
  .story-callout { margin-left:10px; padding:9px 12px; }
  .story-air-diagram svg { height:126px; }
  .story-air-diagram span { margin-top:-16px; font-size:7px; letter-spacing:0; }
  .story-result { gap:6px; }
  .story-result figure { height:148px; }
  .scene-story figcaption { font-size:7px; padding:5px 3px; bottom:4px; left:4px; right:4px; }
}
