@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@400;500;600;700;800&display=swap');
:root{font-family:Cairo,Tahoma,Arial,sans-serif;color:#102d34;background:#eff5f3;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:4px solid #f5b53d;outline-offset:3px}.skip-link{position:absolute;top:-80px;right:1rem;z-index:50;background:#fff;padding:.75rem 1rem}.skip-link:focus{top:1rem}.topbar{background:#092a31;color:white;padding:1rem max(1rem,calc((100vw - 1050px)/2));display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.65rem;font-size:1.4rem;font-weight:800;line-height:1.2}.brand small{display:block;font-size:.68rem;letter-spacing:.04em;font-weight:600;color:#b9d9d1}.brand-mark{display:grid;place-items:center;background:#daf4e3;color:#155b50;border-radius:13px;width:42px;height:42px;font-size:1.5rem}.top-action{border:1px solid #8fbab1;color:#fff;background:transparent;border-radius:11px;padding:.45rem .85rem;font-weight:700}.top-action:hover{background:#16444a}.shell{max-width:1050px;margin:0 auto;padding:2.25rem 1rem 4rem}.intro{margin-bottom:1.5rem}.eyebrow{display:inline-block;color:#116759;font-weight:800;font-size:.85rem;letter-spacing:.04em}.intro h1{font-size:clamp(2.5rem,7vw,4.4rem);line-height:1.2;margin:.25rem 0 .35rem;letter-spacing:-.055em}.intro p{font-size:1.1rem;margin:.35rem 0 0;color:#48616a}.notice{background:#fff7e6;border-right:6px solid #df9a22;padding:1rem 1.25rem;border-radius:13px;line-height:1.9;margin-bottom:1.2rem;font-size:.95rem}.card{background:white;border:1px solid #d6e6e2;box-shadow:0 10px 30px #0c30300a;border-radius:20px;padding:1.5rem;margin-bottom:1.1rem}.section-heading,.section-heading>div{display:flex;align-items:center;justify-content:space-between;gap:.65rem}.section-heading{margin-bottom:1.2rem}.section-heading h2{margin:0;font-size:1.35rem;letter-spacing:-.03em}.section-num{color:#0e7761;border:1px solid #b4d7ca;border-radius:100px;min-width:34px;height:34px;display:grid;place-items:center;font-size:.75rem;font-weight:800}.section-hint,.subtle{color:#5c7376;font-size:.88rem}.destination-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem}.destination{border:2px solid #d8e9e4;background:#f8fbfa;border-radius:16px;min-height:126px;text-align:right;padding:1rem;display:flex;flex-direction:column;justify-content:space-between;transition:transform .15s,border-color .15s,background .15s}.destination:hover{transform:translateY(-2px);border-color:#0c755e}.destination[aria-pressed=true]{background:#e4f5ed;border-color:#00785d;box-shadow:inset 0 0 0 1px #00785d}.destination-letter{display:block;color:#08634f;font-weight:800;font-size:2rem;line-height:1}.destination-name{font-weight:800;font-size:1rem}.destination-desc{font-size:.7rem;color:#5c7376;line-height:1.5}.voice-button{width:100%;margin-top:1rem;border:0;border-radius:15px;background:#116b58;color:white;min-height:66px;font-size:1.15rem;font-weight:800;box-shadow:0 5px 0 #074536}.voice-button:hover{background:#0a5c4b}.voice-button.listening{background:#a94c28;box-shadow:0 5px 0 #703118}.voice-button span{margin-left:.35rem}.subtle{line-height:1.7}.destinations>.subtle{margin-bottom:0}.mode-badge{border-radius:50px;background:#e0f4e8;color:#11624b;font-size:.75rem;font-weight:800;padding:.35rem .75rem;white-space:nowrap}.mode-badge.muted{background:#edf1f1;color:#526b70}.route-header{display:flex;align-items:center;justify-content:space-between;background:#f2f8f5;padding:.85rem 1rem;border-radius:12px;margin-bottom:1rem}.route-header strong{display:block;font-size:1.3rem}.step-count{font-weight:800;color:#1a6b56}.instruction{background:#092a31;color:#fff;border-radius:17px;padding:1.4rem 1.6rem;font-size:clamp(1.3rem,3vw,1.9rem);font-weight:800;line-height:1.8;min-height:132px;display:flex;align-items:center}.status{font-weight:700;color:#175a4c;min-height:1.7rem;line-height:1.7}.guide-actions{display:grid;grid-template-columns:1.2fr 1.2fr 1fr;gap:.7rem}.action-button{border:2px solid #0c6958;background:#fff;color:#084e42;border-radius:13px;padding:.7rem 1rem;min-height:58px;font-weight:800;font-size:1rem}.action-button:hover{background:#e8f6ee}.action-button.primary{background:#0d6c56;color:white}.action-button.primary:hover{background:#07513f}.action-button.quiet{border-color:#cfdbd9;color:#3e5c60}.small-note{font-size:.83rem;color:#50666a;line-height:1.8;margin-bottom:0}.location>p{line-height:1.8}.gps-button{min-width:250px}.gps-readout{color:#144b54;font-weight:700;min-height:1.6rem}.calibration{border-top:1px solid #dce8e3;margin-top:1.3rem;padding-top:.9rem;color:#475e61}.calibration summary,.map-panel summary{cursor:pointer;font-weight:800;color:#0e584d}.calibration label{display:block;font-weight:700;margin-bottom:.35rem}.calibration select{width:100%;max-width:400px;display:block;margin-bottom:.7rem;padding:.7rem;border:2px solid #a8c8bd;border-radius:9px;background:#fff}.calibration button{margin:.2rem .2rem .2rem 0}.text-button{background:transparent;border:0;color:#0a6553;text-decoration:underline;font-weight:800;padding:.75rem}.map-panel{padding:1.25rem 1.5rem}.map-panel>p{color:#52666a}.map-wrap{position:relative;width:100%;overflow:hidden;border-radius:10px;direction:ltr}.map-wrap img{display:block;width:100%;height:auto}.map-wrap svg{position:absolute;inset:0;width:100%;height:100%}.map-wrap polyline{fill:none;stroke:#0bffe0;stroke-width:9;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 3px #073c30)}footer{text-align:center;color:#567076;padding:0 1rem 2rem;font-size:.82rem}dialog{max-width:560px;width:calc(100% - 2rem);border:0;border-radius:20px;padding:0;box-shadow:0 25px 75px #092a3166}.dialog-content{padding:1.5rem 1.8rem;line-height:1.9}.dialog-content h2{margin-top:0}.dialog-content li{margin-bottom:.4rem}.confirm-label{display:flex!important;align-items:flex-start;gap:.55rem;max-width:690px;line-height:1.7;margin:.8rem 0}.confirm-label input{width:22px;height:22px;flex:0 0 auto;margin-top:.3rem;accent-color:#0d6c56}@media(max-width:750px){.destination-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.destination{min-height:104px}.guide-actions{grid-template-columns:1fr}.card{padding:1.1rem}.shell{padding-top:1.5rem}.section-hint{display:none}}@media(max-width:400px){.destination-grid{gap:.5rem}.destination{padding:.7rem}.topbar{padding:.85rem}.brand{font-size:1.1rem}.top-action{font-size:.78rem}.instruction{padding:1rem}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
