.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{outline-offset:1px;touch-action:pan-x pan-y;background:#d9e8ee;width:100%;height:100%;font-family:inherit;overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:auto;float:left;clear:both;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:grab}.leaflet-dragging .leaflet-grab{cursor:move}.leaflet-control-zoom a,.leaflet-control-zoom a:hover{text-align:center;color:#101828;background:#fffaf0;border-bottom:1px solid #dacfbf;width:32px;height:32px;font-size:20px;font-weight:900;line-height:30px;text-decoration:none;display:block}.leaflet-control-zoom{border:1px solid #dacfbf;border-radius:12px;overflow:hidden;box-shadow:0 6px 18px #1018282e}.leaflet-control-zoom a:last-child{border-bottom:0}.leaflet-control-attribution{color:#667085;background:#fffaf0d1;margin:0;padding:2px 6px;font-size:10px}.leaflet-control-attribution a{color:#123f73;text-decoration:none}.leaflet-tooltip{color:#101828;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background:#fffaf0;border:1px solid #dacfbf;border-radius:999px;padding:3px 7px;font-size:11px;font-weight:900;position:absolute;box-shadow:0 4px 12px #10182829}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}:root{--bg:#f5efe4;--card:#fff9f0;--ink:#101828;--muted:#667085;--border:#dacfbf;--navy:#101828;--blue:#123f73;--green:#23834f;--yellow:#c7a331;--orange:#d07a32;--red:#b54747;--sand:#ebe0cf;--shadow:0 18px 42px #10182821}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:radial-gradient(circle at top left, #c7a33142, transparent 28rem), radial-gradient(circle at bottom right, #123f731a, transparent 34rem), var(--bg);min-height:100vh;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,a{font:inherit}.page-shell{width:min(760px,100%);margin:0 auto;padding:18px 14px 30px}.header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.header h1{letter-spacing:-.085em;margin:0;font-size:clamp(2rem,8vw,3rem);line-height:.86}.header p{color:var(--muted);text-transform:uppercase;letter-spacing:.09em;margin:8px 0 0;font-size:.82rem;font-weight:950}.date-pill{border:1px solid var(--border);background:#fff9f0c2;border-radius:999px;flex:none;padding:10px 14px;font-size:.86rem;font-weight:950}.card{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff9f0f0;border-radius:24px;padding:clamp(16px,4vw,24px)}.badge{border:1px solid var(--border);color:var(--blue);background:#123f730f;border-radius:999px;align-items:center;padding:8px 11px;font-size:.84rem;font-weight:950;display:inline-flex}.start-screen{text-align:center}.start-screen h2{letter-spacing:-.09em;max-width:620px;margin:14px auto 10px;font-size:clamp(2.3rem,10vw,4.2rem);line-height:.86}.start-screen p{color:var(--muted);max-width:520px;margin:0 auto 18px;line-height:1.45}.rules-grid{text-align:left;gap:10px;margin:18px 0;display:grid}.rule{border:1px solid var(--border);background:#ffffff61;border-radius:16px;grid-template-columns:34px 1fr;align-items:start;gap:11px;padding:12px;display:grid}.rule span{background:var(--navy);color:#fff;border-radius:999px;place-items:center;width:30px;height:30px;font-weight:950;display:grid}.rule strong{display:block}.rule small{color:var(--muted);margin-top:3px;line-height:1.35;display:block}.progress{grid-template-columns:repeat(5,1fr);gap:9px;margin-bottom:18px;display:grid}.progress-step{background:#ded3c1;border-radius:999px;height:9px}.progress-step.active{background:var(--navy)}.progress-step.done{background:var(--green)}.round-label{color:var(--blue);text-transform:uppercase;letter-spacing:.09em;margin-bottom:10px;font-size:.82rem;font-weight:1000}.question{letter-spacing:-.075em;margin:0 0 10px;font-size:clamp(1.65rem,6vw,2.25rem);line-height:.96}.subtext{color:var(--muted);margin:0 0 14px;line-height:1.45}.map-card{border:1px solid var(--border);background:#d9e8ee;border-radius:18px;overflow:hidden}.map-topline{height:34px;color:var(--blue);background:#fff9f0e0;justify-content:space-between;align-items:center;gap:12px;padding:0 12px;font-size:.78rem;font-weight:950;display:flex}#map{background:#d9e8ee;width:100%;height:min(55vh,430px);min-height:330px}.map-error{text-align:center;min-height:330px;color:var(--muted);place-items:center;padding:24px;display:grid}.map-error strong{color:var(--ink);margin-bottom:6px;display:block}.button-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.button-grid.single{grid-template-columns:1fr}button,.button-link{cursor:pointer;text-align:center;border:0;border-radius:15px;justify-content:center;align-items:center;min-height:50px;padding:13px 15px;font-weight:1000;text-decoration:none;display:inline-flex}button:disabled{opacity:.46;cursor:not-allowed}.primary{background:var(--navy);color:#fff}.secondary{color:var(--ink);border:1px solid var(--border);background:0 0}.ghost{color:var(--ink);background:#10182812}.wide{width:100%}.spaced{margin-top:12px}.choices{gap:10px;margin-top:18px;display:grid}.choice{color:var(--ink);border:1px solid var(--border);text-align:left;background:#fff5e6;justify-content:flex-start;line-height:1.25}.choice.correct{border-color:var(--green);color:var(--green);background:#23834f1f}.choice.incorrect{border-color:var(--red);color:var(--red);background:#b547471f}.feedback{background:#1018280e;border:1px solid #10182817;border-radius:16px;margin-top:14px;padding:13px;font-weight:700;line-height:1.45}.feedback strong{color:var(--blue)}.hidden{display:none!important}.ticker-panel{border:1px solid var(--border);background:#123f730f;border-radius:18px;margin-top:14px;padding:14px}.ticker-clue-label{color:var(--blue);text-transform:uppercase;letter-spacing:.09em;font-size:.78rem;font-weight:1000}.ticker-clue{margin:6px 0 0;font-weight:800;line-height:1.4}.ticker-board{justify-content:center;gap:8px;margin:18px 0;display:grid}.ticker-row{justify-content:center;gap:7px;display:grid}.tile{background:#efe3d1;border:2px solid #d2c7b4;border-radius:11px;place-items:center;width:48px;height:48px;font-size:1.16rem;font-weight:1000;display:grid}.tile.right{background:var(--green);border-color:var(--green);color:#fff}.tile.close{background:var(--yellow);border-color:var(--yellow);color:#fff}.tile.wrong{color:#fff;background:#697386;border-color:#697386}.ticker-input-row{grid-template-columns:1fr auto;gap:10px;display:grid}input{border:1px solid var(--border);letter-spacing:.14em;text-transform:uppercase;background:#fff9f0;border-radius:15px;outline:none;width:100%;min-height:50px;padding:0 14px;font-size:1.15rem;font-weight:1000}input:focus{border-color:var(--navy)}.small-note{color:var(--muted);margin-top:8px;font-size:.88rem}.score-hero{text-align:center}.big-mark{letter-spacing:-.12em;color:var(--navy);font-size:clamp(4.8rem,22vw,8rem);font-weight:1000;line-height:.78}.score-hero h2{letter-spacing:-.07em;margin:12px 0 4px;font-size:clamp(1.75rem,7vw,2.7rem);line-height:.9}.score-hero p{color:var(--muted);margin:0 auto 18px;line-height:1.45}.breakdown{gap:10px;margin:18px 0;display:grid}.breakdown-row{background:#1018280e;border:1px solid #10182817;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.breakdown-row strong{display:block}.breakdown-row small{color:var(--muted);margin-top:3px;display:block}.points{color:var(--blue);white-space:nowrap;font-weight:1000}.share-box{background:var(--navy);color:#fff;white-space:pre-wrap;border-radius:18px;padding:15px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem;line-height:1.42}.toast{background:var(--navy);color:#fff;opacity:0;pointer-events:none;box-shadow:var(--shadow);z-index:9999;border-radius:999px;padding:11px 15px;font-weight:900;transition:all .2s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(10px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}@media (width<=560px){.page-shell{padding:12px 10px 22px}.header{align-items:center}.date-pill{padding:8px 10px;font-size:.76rem}.card{border-radius:20px}#map{height:54vh;min-height:315px}.button-grid,.ticker-input-row{grid-template-columns:1fr}.tile{width:44px;height:44px}}
