[hidden]{display:none!important}
.round-panel{position:absolute;z-index:5;border:1px solid #b99c70;border-radius:5px;box-shadow:0 12px 40px #213a3233;color:#143f4b;padding:28px}
.round-panel h2{font-weight:500;font-size:38px;margin:8px 0 14px}.round-panel h3{font-size:23px;font-weight:600;margin:18px 0 7px}.round-panel p{font-size:20px;line-height:1.35;margin:12px 0}
.round-panel .round-note,.round-note{font-family:system-ui,sans-serif;font-size:11px;line-height:1.5;color:#746044}
.welcome{left:50%;top:50%;transform:translate(-50%,-50%);width:min(470px,calc(100% - 36px));text-align:center;max-height:calc(100% - 30px);overflow:auto}
.round-eyebrow,.round-panel .round-eyebrow{font-family:system-ui,sans-serif;font-size:10px;letter-spacing:1.7px;color:#81673e}
.round-action{background:linear-gradient(#987745,#70532e);color:#fff3d9;border:1px solid #674c29;border-radius:4px;padding:12px 22px;min-height:48px;font-size:22px}.round-action:disabled{opacity:.45}
#question-card{position:absolute;z-index:4;top:16px;left:50%;transform:translateX(-50%);width:min(780px,calc(100% - 160px));min-height:108px;border:1px solid #b99c70;border-radius:4px;padding:12px 106px 14px 20px;box-shadow:0 4px 20px #20383025}
#question-card h2{font-size:23px;line-height:1.15;font-weight:500;margin:6px 0 0}#question-card .round-eyebrow{margin:0}
#round-timer{position:absolute;top:8px;right:10px;width:62px;height:62px;border-radius:50%;display:flex;justify-content:center;align-items:center;background:#f9efda;color:#604420;box-shadow:0 2px 8px #614b2320;font-family:system-ui,sans-serif;font-size:25px;font-weight:600;font-variant-numeric:tabular-nums;padding-bottom:8px}
.timer-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);fill:none;stroke-width:2.5;pointer-events:none}.timer-track{stroke:#cfbd98}#timer-progress{stroke:#876331;stroke-dasharray:100;stroke-dashoffset:0;transition:stroke-dashoffset .2s linear}.timer-unit{position:absolute;bottom:12px;font-size:8px;letter-spacing:1.4px;font-weight:500}
#round-timer.urgent{color:#923c2d;background:#fff0dc}#round-timer.urgent #timer-progress{stroke:#a04732}
#question-info{position:absolute;right:28px;bottom:8px;border:1px solid #a58d64;border-radius:50%;background:none;width:24px;height:24px;font-size:17px}#question-info:before{content:'';position:absolute;inset:-8px}
.question-enter{animation:question-arrive 2.2s ease both}.question-enter h2{animation:question-type 2.2s ease both}
@keyframes question-arrive{0%{top:24%;width:min(860px,calc(100% - 36px));padding:36px 106px 36px 32px;opacity:0;transform:translateX(-50%) scale(.9)}12%,72%{top:24%;width:min(860px,calc(100% - 36px));padding:36px 106px 36px 32px;opacity:1;transform:translateX(-50%) scale(1)}100%{top:16px;width:min(780px,calc(100% - 160px));padding:12px 106px 14px 20px;transform:translateX(-50%) scale(1)}}
@keyframes question-type{0%,72%{font-size:34px}100%{font-size:23px}}
/* Once locked, the atlas receives all the space below the masthead. */
body.round-locked{grid-template-rows:82px minmax(0,1fr)}
.round-locked .date-panel,.round-locked #question-card,.round-locked .map-tools,.round-locked .compass,.round-locked .centre-mark{display:none!important}
#reveal-stage{display:flex;align-items:center;gap:12px;color:#6d5735;flex-shrink:0}#reveal-message{font-size:17px}#skip-reveal,.header-result{border:1px solid #b99c70;border-radius:3px;padding:8px 12px;background:#f8edd5;font-size:15px;min-height:44px;color:#72552c;white-space:nowrap}
/* A small illuminated atlas plate: colour has distinct roles, not random decoration. */
.result{left:50%;top:50%;right:auto;transform:translate(-50%,-50%);width:min(720px,calc(100% - 40px));max-height:calc(100% - 36px);overflow:auto;overscroll-behavior:contain;padding:25px 32px 22px;border:1px solid #b89a65;border-radius:7px;box-shadow:0 20px 70px #123f434d,0 0 0 5px #f4e8ce88;background-image:linear-gradient(135deg,#fff9e86b,transparent 45%),url('/grain.svg');scrollbar-color:#ad8b55 #f1e4c8;scrollbar-width:thin}
.result:before{content:'';position:absolute;left:18px;right:18px;top:12px;height:3px;border-top:1px solid #b99b66;border-bottom:1px solid #b99b6655;pointer-events:none}
.result-heading{display:flex;justify-content:center;align-items:center;gap:24px;text-align:center}.result .round-eyebrow{font-size:9px;margin:0 0 5px}.result-heading h2{font-size:30px;margin:0;line-height:1.05}.result-flourish{font-size:32px;color:#aa7c38}
.result-hero{display:grid;grid-template-columns:1fr 142px;gap:25px;align-items:center;padding:17px 14px 13px;border-bottom:1px dashed #bca376;margin-top:10px}
.moment-details .round-eyebrow{font-size:9px;color:#486a63}.date-window{overflow:hidden}.result #result-date{display:block;font-size:60px;line-height:1.05;font-weight:500;color:#226a70;letter-spacing:-1.5px}.result #result-answer{font-size:24px;font-weight:500;line-height:1.15;margin:8px 0 0;color:#284a43}
.score-panel{min-height:142px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:18px 12px;border:1px solid #b59a66;border-radius:4px;background:linear-gradient(145deg,#fff9e8,#eee0be);color:#72522a;box-shadow:0 3px 12px #74551f12}.score-label{font-family:system-ui,sans-serif;font-size:9px;line-height:1.5;letter-spacing:1.5px}.result #result-score{display:block;font-size:60px;line-height:1;font-weight:600;font-variant-numeric:tabular-nums}.score-caption{font-family:system-ui,sans-serif;font-size:11px;line-height:1.5;color:#796344}
.result .distance-note{font-family:system-ui,sans-serif;font-size:12px;line-height:1.6;text-align:center;color:#786342;margin:12px 0}
.score-parts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0 18px}.score-tile{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 7px;border:1px solid #b1bba0;border-radius:4px;background:#e0e7cc;color:#385b42;font-family:system-ui,sans-serif;font-size:12px;font-weight:500}.score-tile>span:first-child{font-family:Atlas,Georgia,serif;font-size:27px;line-height:1;font-weight:400}.year-tile{background:#dce9e5;border-color:#9abbb3;color:#245d62}.bonus-tile{background:#f1dfb4;border-color:#c3a361;color:#785526}
.history-note{display:flex;gap:15px;align-items:flex-start;padding:16px 20px;background:#e5dcc33f;border-left:3px solid #698979;border-radius:0 4px 4px 0}.history-ornament{color:#64816b;font-size:35px;line-height:1.25}.result .history-note h3{font-size:24px;margin:0 0 5px;font-weight:500;color:#355e51}.result .history-note p{font-size:19px;margin:0;line-height:1.35;color:#4c5944}
.result details{font-size:17px;margin:17px 0 10px}.result summary{cursor:pointer;min-height:36px;color:#77562e;text-underline-offset:4px}.result details p{font-size:15px}.result table{width:100%;font-family:system-ui,sans-serif;font-size:12px;border-collapse:collapse}.result th,.result td{padding:7px;text-align:left;border-bottom:1px solid #bea783}
#result-sources{display:flex;flex-wrap:wrap;gap:5px 16px}#result-sources a{font-family:system-ui,sans-serif;font-size:10px;color:#567568;text-underline-offset:3px}
.result-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid #c9b58e;padding-top:16px;margin-top:17px}.secondary-action{background:none;border:0;color:#6e5734;font-size:16px;min-height:44px;padding:5px}.result-actions .round-action{margin-left:auto;font-size:19px;padding:10px 17px}
.round-connection{position:absolute;left:12px;bottom:24px;z-index:8;max-width:360px;font-family:system-ui,sans-serif;font-size:12px}.round-connection p{background:#fff1d7;border:1px solid #b4834a;padding:12px;margin:0 0 6px}.round-connection button{border:1px solid #b99c70;background:#f4e8ce;padding:8px;font-size:11px}.round-connection:has(#round-error[hidden]){display:none}
.answer-marker{background:#326c57;color:#fff3d9;border:3px solid #fff3d9;border-radius:50%;width:34px;height:34px;text-align:center;font:20px/28px system-ui;box-shadow:0 0 0 1px #326c57,0 3px 10px #183c3240}
.result-arrive{animation:plate-arrive .8s cubic-bezier(.2,.7,.25,1) both}.result-arrive #result-date{animation:date-settle 1.2s cubic-bezier(.2,.7,.25,1) .2s both}.result-arrive .score-panel{animation:score-settle .95s cubic-bezier(.2,.7,.25,1) .55s both}.result-arrive .score-tile{animation:detail-arrive .65s ease .65s both}.result-arrive .year-tile{animation-delay:.8s}.result-arrive .bonus-tile{animation-delay:.95s}.result-arrive .history-note{animation:detail-arrive .8s ease 1s both}.answer-marker-arrive{animation:answer-bloom .85s ease-out}
@keyframes plate-arrive{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}@keyframes date-settle{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}@keyframes score-settle{from{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@keyframes detail-arrive{from{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}@keyframes answer-bloom{from{box-shadow:0 0 0 15px #fff3d900,0 3px 10px #183c3240}40%{box-shadow:0 0 0 12px #fff3d966,0 3px 10px #183c3240}to{box-shadow:0 0 0 1px #326c57,0 3px 10px #183c3240}}
@media(max-width:700px){
 body.round-locked{grid-template-rows:68px minmax(0,1fr)}#question-card{width:calc(100% - 26px);top:10px;padding:10px 82px 12px 14px;min-height:104px}#question-card h2{font-size:20px}.round-eyebrow{font-size:8px}#round-timer{width:54px;height:54px;font-size:22px}.timer-unit{bottom:9px;font-size:7px}#question-info{right:25px}.map-tools,.compass{top:130px}.welcome{padding:22px}.round-panel h2{font-size:29px}.round-panel p{font-size:18px}.round-connection{max-width:calc(100% - 24px)}
 #reveal-message{display:none}#skip-reveal,.header-result{font-size:13px;padding:6px 8px}.masthead:has(#reveal-stage:not([hidden])) .heading h1,.masthead:has(.header-result:not([hidden])) .heading h1{font-size:20px}
 .result{width:calc(100% - 24px);max-height:calc(100% - 24px);padding:22px 18px 16px}.result-heading{gap:15px}.result-heading h2{font-size:27px}.result-hero{grid-template-columns:1fr 103px;gap:12px;padding:14px 0}.result #result-date{font-size:46px}.result #result-answer{font-size:21px}.score-panel{min-height:122px;padding:14px 8px;gap:5px}.result #result-score{font-size:46px}.score-label{font-size:8px;letter-spacing:1px}.score-caption{font-size:10px}.score-parts{gap:6px}.score-tile{flex-direction:column;gap:5px;font-size:10px;padding:10px 3px}.history-note{padding:13px;gap:10px}.result .history-note p{font-size:18px}.result .history-note h3{font-size:23px}.result-actions{gap:5px 15px}.result-actions .round-action{width:100%;margin-left:0}.secondary-action{font-size:15px}
 .question-enter{animation:question-arrive-mobile 2.2s ease both}.question-enter h2{animation:question-type-mobile 2.2s ease both}
}
@keyframes question-arrive-mobile{0%{top:18%;padding-top:30px;padding-bottom:30px;opacity:0;transform:translateX(-50%) scale(.9)}12%,72%{top:18%;padding-top:30px;padding-bottom:30px;opacity:1;transform:translateX(-50%) scale(1)}100%{top:10px;padding-top:10px;padding-bottom:12px;transform:translateX(-50%) scale(1)}}@keyframes question-type-mobile{0%,72%{font-size:27px}100%{font-size:20px}}
@media(prefers-reduced-motion:reduce){#timer-progress{transition:none}.question-enter,.question-enter h2,.result-arrive,.result-arrive #result-date,.result-arrive .score-panel,.result-arrive .score-tile,.result-arrive .history-note,.answer-marker-arrive{animation:none}}

@media(max-width:700px){.masthead:has(#reveal-stage:not([hidden])) .heading p,.masthead:has(.header-result:not([hidden])) .heading p{display:none}}

/* Keep the way back visible while inspecting the answer map. */
#show-result:not([hidden]),#return-summary:not([hidden]){position:fixed;z-index:20;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translateX(-50%);min-height:54px;padding:13px 28px;background:linear-gradient(145deg,#fff9e8,#eee0be);color:#72522a;border:2px solid #b59a66;border-radius:7px;font:600 18px/1.3 system-ui,sans-serif;box-shadow:0 4px 18px #123b4655;}
#show-result:hover,#return-summary:hover{background:#fff4d9}
@media(max-width:700px){#show-result:not([hidden]),#return-summary:not([hidden]){width:calc(100% - 40px);max-width:360px;bottom:max(20px,env(safe-area-inset-bottom));}}


button.journey-map-pin{cursor:pointer;padding:0;min-width:36px;min-height:36px;}
button.journey-map-pin:focus-visible{outline:3px solid #123b46;outline-offset:3px;}

#results-map-actions{position:fixed;z-index:20;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;gap:10px;width:min(560px,calc(100% - 40px));pointer-events:none;}
#results-map-actions:has(#return-summary[hidden]){display:none}
#results-map-actions:has(#map-all-answers[hidden]){width:min(360px,calc(100% - 40px))}
#results-map-actions #return-summary:not([hidden]),#results-map-actions #map-all-answers:not([hidden]){position:static;transform:none;flex:1 1 0;min-width:0;width:auto;max-width:none;min-height:54px;padding:13px 18px;background:linear-gradient(145deg,#fff9e8,#eee0be);color:#72522a;border:2px solid #b59a66;border-radius:7px;font:600 18px/1.3 system-ui,sans-serif;box-shadow:0 4px 18px #123b4655;pointer-events:auto;white-space:normal;cursor:pointer;}
#results-map-actions button:hover{background:#fff4d9!important}
@media(max-width:700px){#results-map-actions{bottom:max(20px,env(safe-area-inset-bottom));gap:8px;}#results-map-actions #return-summary:not([hidden]),#results-map-actions #map-all-answers:not([hidden]){padding:12px 8px;font-size:15px;}}
