:root{font-family:Inter,ui-rounded,SF Pro Rounded,SF Pro Display,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#24343b;background:#edf3eb;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #24343b;--muted: #65747a;--sage: #edf3eb;--cream: #fbf7ed;--sky: #9fd7dc;--sky-deep: #5faeb8;--peach: #f8cfa9;--white: #fffefa;--control: #24343b;--control-active: #36535a;--surface-alpha: rgb(255 254 250 / 70%);--metric-primary: #d8ece9;--metric-primary-text: #24343b;--metric-primary-accent: #3f7f88;--shadow-color: rgb(36 52 59 / 16%);--error: #9a4b3f}:root[data-theme=dark]{color:#edf5f3;background:#101c21;--ink: #edf5f3;--muted: #aebcc0;--sage: #101c21;--cream: #203137;--sky: #7fc6cf;--sky-deep: #9adbe2;--peach: #e9ac7e;--white: #f7fbfa;--control: #263a41;--control-active: #39545c;--surface-alpha: rgb(31 47 53 / 82%);--metric-primary: #263a41;--metric-primary-text: #f7fbfa;--metric-primary-accent: #7fc6cf;--shadow-color: rgb(0 0 0 / 28%);--error: #ffb5a8}*{box-sizing:border-box}html{min-height:100%;background:var(--sage)}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;background:radial-gradient(circle at 90% 8%,rgb(159 215 220 / 32%),transparent 30%),radial-gradient(circle at 4% 62%,rgb(248 207 169 / 27%),transparent 26%),var(--sage);transition:background-color .18s ease,color .18s ease}button,select,input{font:inherit}[hidden]{display:none!important}button:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--sky-deep);outline-offset:4px}.app-shell{width:min(100%,560px);min-height:100vh;min-height:100dvh;margin:0 auto;padding:max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));display:flex;flex-direction:column}.topbar{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand-wrap{display:flex;align-items:center;gap:11px;min-width:0}.brand-wrap h1{margin:0;font-size:clamp(1.2rem,5vw,1.55rem);letter-spacing:-.035em}.brand-wrap p{margin:2px 0 0;color:var(--muted);font-size:.72rem}.brand-mark{width:40px;height:40px;flex:0 0 40px;border-radius:14px;display:grid;place-items:center;background:var(--control);box-shadow:0 7px 18px var(--shadow-color)}.brand-mark span{width:19px;height:12px;border:3px solid var(--sky);border-bottom:0;border-radius:18px 18px 0 0;position:relative}.brand-mark span:after{content:"";position:absolute;width:3px;height:10px;background:var(--peach);border-radius:3px;left:10px;top:2px;transform:rotate(38deg);transform-origin:bottom}.settings-menu{position:relative;flex:0 0 auto}.settings-button{width:48px;height:48px;padding:0;border:1px solid rgb(36 52 59 / 10%);border-radius:16px;display:grid;place-items:center;color:var(--ink);background:var(--surface-alpha);box-shadow:0 8px 24px #24343b14;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .16s ease,background .16s ease}.settings-button:active{transform:scale(.95)}.settings-button.is-open{background:var(--metric-primary)}.settings-button svg{width:26px;height:22px;overflow:visible}.settings-button path{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}.settings-button circle{fill:var(--peach);stroke:var(--ink);stroke-width:1.4}.preferences{position:absolute;z-index:12;top:calc(100% + 10px);right:0!important;left:auto!important;inset-inline-start:auto!important;inset-inline-end:0!important;width:min(270px,calc(100vw - 40px));max-width:calc(100vw - 40px);padding:14px;border:1px solid rgb(36 52 59 / 10%);border-radius:22px;display:grid;gap:9px;background:color-mix(in srgb,var(--sage) 92%,transparent);box-shadow:0 20px 48px var(--shadow-color);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.select-wrap{position:relative}.preference-label{display:block;margin:0 0 5px 4px;color:var(--muted);font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.select-wrap select{width:100%;appearance:none;border:1px solid rgb(36 52 59 / 10%);color:var(--ink);background:var(--surface-alpha);border-radius:999px;padding:12px 34px 12px 13px;font-size:.82rem;font-weight:700;cursor:pointer}.select-wrap:after{content:"⌄";position:absolute;right:12px;bottom:10px;pointer-events:none;color:var(--muted)}.measurement-card{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 0 24px}.timer-block{text-align:center}.eyebrow,.metric p{margin:0 0 7px;color:var(--muted);font-weight:750;font-size:.68rem;letter-spacing:.13em;text-transform:uppercase}#timer{display:block;color:var(--ink);font-size:clamp(2.45rem,13vw,4.5rem);font-weight:320;letter-spacing:-.055em;font-variant-numeric:tabular-nums;line-height:1}.measurement-controls{width:100%;display:grid;grid-template-columns:55px minmax(0,200px) 55px;justify-content:center;align-items:center;gap:12px;margin:clamp(26px,6vh,48px) 0 18px}.control-button{grid-column:2;grid-row:1;justify-self:center;width:min(100%,clamp(152px,44vw,200px));aspect-ratio:1;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--white);display:grid;place-items:center;position:relative;cursor:pointer;-webkit-tap-highlight-color:transparent}.control-button.is-new-measurement{transform:scale(1.05);transform-origin:center}.control-button.is-new-measurement .control-label{font-size:calc(.82rem / 1.05)}.button-rings{position:absolute;inset:0;border-radius:50%;display:grid;place-items:center;background:var(--control);border:7px solid var(--cream);box-shadow:0 0 0 6px var(--sky),0 16px 36px #24343b40,inset 0 0 0 1px #ffffff1f;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.control-button:hover .button-rings{transform:translateY(-2px)}.control-button:active .button-rings{transform:scale(.97)}.control-button.is-active .button-rings{background:var(--control-active);box-shadow:0 0 0 6px var(--peach),0 16px 36px #24343b40;animation:breathe 2.4s ease-in-out infinite}.power-icon{width:56px;height:56px;border:6px solid var(--sky);border-top-color:transparent;border-radius:50%;position:relative}.power-icon:before{content:"";position:absolute;width:6px;height:34px;left:19px;top:-14px;border-radius:8px;background:var(--sky);box-shadow:0 0 18px #9fd7dc59}.is-active .power-icon{border-color:var(--peach);border-top-color:transparent}.is-active .power-icon:before{background:var(--peach)}.control-label{position:absolute;bottom:25px;z-index:1;font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.status-text{min-height:2.7em;max-width:360px;margin:0;color:var(--muted);font-size:.88rem;line-height:1.45;text-align:center}.status-text.is-error{color:var(--error)}.accuracy-text{min-height:1.2em;margin:4px 0 0;color:var(--sky-deep);font-size:.75rem;font-weight:700}.metrics{width:100%;margin-top:clamp(20px,4vh,36px);display:grid;grid-template-columns:1fr 1fr;gap:12px}.metric{min-width:0;border:0;padding:19px 18px;border:1px solid rgb(36 52 59 / 7%);border-radius:24px;color:var(--ink);background:var(--surface-alpha);box-shadow:0 9px 30px #24343b0f;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .16s ease,box-shadow .16s ease}.metric:hover{transform:translateY(-2px);box-shadow:0 12px 34px #24343b1c}.metric:active{transform:scale(.98)}.metric-primary{background:var(--metric-primary);color:var(--metric-primary-text)}.metric-primary p{color:var(--metric-primary-accent)}.metric div{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.metric strong{font-size:clamp(1.8rem,8vw,2.65rem);letter-spacing:-.05em;font-variant-numeric:tabular-nums}.metric span{color:var(--muted);font-size:.936rem;font-weight:750}.metric-primary span{color:var(--metric-primary-accent)}.metric .metric-action{display:block;margin-top:13px;font-size:.68rem;letter-spacing:.04em;text-decoration:underline;text-underline-offset:3px}.history-button{width:100%;min-height:58px;margin-top:12px;padding:10px 17px;border:1px solid rgb(36 52 59 / 9%);border-radius:20px;display:flex;align-items:center;gap:12px;color:var(--ink);background:var(--surface-alpha);box-shadow:0 8px 24px #24343b0f;text-align:left;cursor:pointer}.history-button>span:first-child{width:36px;height:36px;flex:0 0 36px;border-radius:12px;display:grid;place-items:center;color:#24343b;background:var(--peach);font-size:1.25rem;font-weight:850}.history-button>span:last-child{display:flex;flex-direction:column;gap:2px}.history-button strong{font-size:.9rem}.history-button small{color:var(--muted);font-size:.68rem}.detail-view{flex:1;padding:26px 0 18px}.detail-heading-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.detail-kicker{min-width:0;flex:1;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 12px;text-align:right}.detail-kicker .eyebrow{margin:0}.back-button{min-height:44px;flex:0 0 auto;padding:0 16px;border:1px solid rgb(36 52 59 / 10%);border-radius:999px;color:var(--ink);background:var(--surface-alpha);font-weight:800;cursor:pointer}.back-button span:first-child{margin-right:5px;font-size:1.15rem}.live-badge{display:inline-flex;align-items:center;gap:7px;color:var(--metric-primary-accent);font-size:.74rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.live-badge i{width:9px;height:9px;border-radius:50%;background:var(--peach);box-shadow:0 0 0 5px #f8cfa93d;animation:live-pulse 1.8s ease-in-out infinite}.detail-title{margin:clamp(20px,4vh,34px) 0 22px}.detail-title .eyebrow{color:var(--metric-primary-accent)}.detail-title h2{margin:0;color:var(--ink);font-size:clamp(3.2rem,15vw,5rem);line-height:.95;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.detail-title h2 small{font-size:.27em;letter-spacing:0;color:var(--muted)}.detail-title>p:last-child,.chart-help-row{margin:12px 0 0;color:var(--muted);font-size:.84rem}.chart-help-row{display:flex;align-items:center;gap:8px}.chart-help-row>p{min-width:0;margin:0}.chart-hint{position:relative;flex:none}.chart-hint summary{width:25px;height:25px;border:1px solid rgb(101 116 122 / 32%);border-radius:50%;display:grid;place-items:center;color:var(--sky-deep);background:var(--surface-alpha);font-size:.76rem;font-weight:900;cursor:pointer;list-style:none}.chart-hint summary::-webkit-details-marker{display:none}.chart-hint summary:focus-visible{outline:3px solid var(--sky-deep);outline-offset:3px}.chart-hint>p{position:fixed;z-index:20;top:50%;left:16px;width:calc(100vw - 32px);max-width:320px;margin:0;padding:11px 13px;border:1px solid rgb(101 116 122 / 22%);border-radius:13px;color:var(--ink);background:var(--cream);box-shadow:0 10px 28px #24343b29;font-size:.75rem;line-height:1.4}.history-title{margin-bottom:16px}.history-list{display:grid;gap:12px}.history-card{padding:18px;border:1px solid rgb(36 52 59 / 7%);border-radius:24px;background:var(--surface-alpha);box-shadow:0 9px 30px #24343b0f}.history-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.history-card-heading>strong{font-size:1rem}.history-status{padding:6px 9px;border-radius:999px;color:var(--metric-primary-accent);background:var(--metric-primary);font-size:.64rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.history-status.interrupted{color:#8b5c44;background:#f8cfa959}.history-range{margin:5px 0 14px;color:var(--muted);font-size:.76rem;font-variant-numeric:tabular-nums}.history-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.history-metrics div{min-width:0;padding:11px;border-radius:15px;background:#9fd7dc1f}.history-metrics span{display:block;color:var(--muted);font-size:.57rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.history-metrics strong{display:block;overflow:hidden;margin-top:5px;font-size:.82rem;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.history-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.history-action{min-height:42px;padding:0 12px;border:1px solid rgb(36 52 59 / 10%);border-radius:14px;display:inline-flex;align-items:center;gap:7px;color:var(--ink);background:var(--surface-alpha);font-size:.68rem;font-weight:800;cursor:pointer}.history-action>span:first-child{color:var(--metric-primary-accent);font-size:1rem}.history-action.delete>span:first-child{color:var(--error)}.history-empty{padding:42px 24px;border-radius:24px;color:var(--muted);background:var(--surface-alpha);text-align:center}.chart-card{position:relative;min-height:280px;overflow:hidden;border:1px solid rgb(36 52 59 / 7%);border-radius:28px;background:var(--surface-alpha);box-shadow:0 12px 36px #24343b12}#speed-chart{display:block;width:100%;height:auto;min-height:280px}#chart-grid line{stroke:#65747a2e;stroke-width:1}#chart-labels text{fill:var(--muted);font-size:11px;font-weight:700}.chart-area{fill:#5faeb829}.chart-line{fill:none;stroke:var(--sky-deep);stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.chart-dot{fill:var(--peach);stroke:var(--white);stroke-width:4}.chart-empty{position:absolute;inset:0;display:grid;place-items:center;padding:30px;color:var(--muted);font-weight:750;text-align:center}.detail-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.detail-summary div,.geo-card div{min-width:0;padding:16px;border-radius:20px;background:var(--surface-alpha)}.detail-summary span,.geo-card span{display:block;color:var(--muted);font-size:.68rem;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.detail-summary strong{display:block;margin-top:6px;font-size:1.12rem;font-variant-numeric:tabular-nums}.geo-card{display:grid;grid-template-columns:1fr 1fr;gap:10px}.geo-card strong{display:block;overflow:hidden;margin-top:7px;font-size:clamp(1rem,4.8vw,1.28rem);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.export-button{width:100%;min-height:78px;margin-top:16px;padding:12px 18px;border:0;border-radius:24px;display:flex;align-items:center;gap:15px;color:var(--white);background:var(--control);box-shadow:0 14px 32px var(--shadow-color);text-align:left;cursor:pointer}.export-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.export-icon{width:46px;height:46px;flex:0 0 46px;border-radius:15px;display:grid;place-items:center;color:#24343b;background:var(--sky);font-size:1.5rem;font-weight:850}.export-button>span:last-child{display:flex;flex-direction:column;gap:4px}.export-button strong{font-size:.96rem}.export-button small{color:var(--sky);font-size:.7rem}.export-feedback{min-height:1.4em;margin:10px 0 0;color:var(--metric-primary-accent);text-align:center;font-size:.76rem;font-weight:750}body[data-view=speed] footer,body[data-view=distance] footer,body[data-view=history] footer{display:none}.reset-button{grid-column:3;grid-row:1;justify-self:end;width:44px;height:44px;padding:0;display:grid;place-items:center;border:1px solid var(--muted);border-radius:50%;color:var(--ink);background:var(--surface-alpha);cursor:pointer;-webkit-tap-highlight-color:transparent}.reset-button:hover{background:var(--cream)}.reset-button:active{transform:scale(.95)}.reset-button:focus-visible{outline:3px solid var(--sky-deep);outline-offset:3px}footer{margin-top:auto}.privacy-note{margin:0 0 12px;color:var(--muted);font-size:.72rem;text-align:center}.privacy-note>span:first-child{color:var(--sky-deep);font-size:1rem}.install-card{border-top:1px solid rgb(36 52 59 / 10%);padding-top:13px;color:var(--muted);font-size:.76rem;line-height:1.45}.install-card summary{color:var(--ink);font-weight:750;cursor:pointer}.install-card p{margin:8px 0 0}.install-card .foreground-note{color:#8b5c44}.update-notice{position:fixed;z-index:10;left:50%;bottom:max(18px,env(safe-area-inset-bottom));width:min(calc(100% - 32px),420px);transform:translate(-50%);display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px 13px 17px;border:1px solid rgb(159 215 220 / 45%);border-radius:18px;color:var(--white);background:var(--control);box-shadow:0 16px 40px var(--shadow-color);font-size:.86rem;font-weight:700}.update-notice[hidden]{display:none}.update-notice button{flex:0 0 auto;min-height:40px;padding:0 16px;border:0;border-radius:999px;color:#24343b;background:var(--sky);font-weight:800;cursor:pointer}.update-notice button:disabled{cursor:wait;opacity:.7}.recovery-dialog{position:fixed;z-index:20;inset:0;padding:max(20px,env(safe-area-inset-top)) 20px max(20px,env(safe-area-inset-bottom));display:grid;place-items:center;background:#101c2194;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.recovery-card{width:min(100%,430px);padding:26px;border:1px solid rgb(159 215 220 / 30%);border-radius:28px;color:var(--ink);background:var(--sage);box-shadow:0 28px 70px #0000004d;text-align:center}.recovery-icon{width:54px;height:54px;margin:0 auto 15px;border-radius:18px;display:grid;place-items:center;color:#24343b;background:var(--peach);font-size:1.75rem;font-weight:850}.recovery-card h2{margin:0;font-size:1.35rem;letter-spacing:-.025em}.recovery-card p{margin:10px 0 20px;color:var(--muted);font-size:.86rem;line-height:1.5}.recovery-actions{display:grid;gap:10px}.recovery-actions button{min-height:52px;border:1px solid rgb(36 52 59 / 12%);border-radius:17px;color:var(--ink);background:var(--surface-alpha);font-weight:850;cursor:pointer}.recovery-actions .recovery-primary{border:0;color:var(--white);background:var(--control)}.recovery-actions .danger-button{border:0;color:var(--white);background:var(--error)}.delete-dialog-icon{color:var(--white);background:var(--error)}.trip-name-field{display:block;margin:0 0 18px;text-align:left}.trip-name-field span{display:block;margin:0 0 7px 3px;color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.trip-name-field input{width:100%;min-height:52px;padding:0 15px;border:1px solid rgb(36 52 59 / 14%);border-radius:16px;color:var(--ink);background:var(--surface-alpha)}.trip-name-field input::placeholder{color:var(--muted);opacity:.8}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes breathe{0%,to{box-shadow:0 0 0 6px var(--peach),0 16px 36px #24343b40}50%{box-shadow:0 0 0 9px #f8cfa98c,0 16px 36px #24343b40}}@keyframes live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.8)}}@media(max-height:720px){.app-shell{padding-top:max(12px,env(safe-area-inset-top))}.brand-wrap p{display:none}.measurement-card{padding:18px 0 14px}.measurement-controls{grid-template-columns:55px minmax(0,139px) 55px;margin:20px 0 12px}.power-icon{transform:scale(.82)}.metrics{margin-top:14px}.metric{padding:14px}.history-button{min-height:52px}.privacy-note{display:none}}@media(max-width:390px){.history-metrics{grid-template-columns:1fr}.history-metrics div{display:flex;align-items:center;justify-content:space-between;gap:12px}.history-metrics strong{margin-top:0}}@media(max-width:560px){.detail-view{padding-top:8px}.detail-title{margin-top:8px}}@media(max-width:560px)and (max-height:950px){.app-shell{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.measurement-card{padding-top:18px;padding-bottom:12px}.measurement-controls{margin-top:20px;margin-bottom:12px}.metrics{margin-top:14px}.install-card{padding-top:8px}}@media(max-width:380px){.topbar{align-items:center;flex-wrap:nowrap}.preferences{width:min(270px,calc(100vw - 40px))}.brand-wrap p{display:none}.brand-mark{width:36px;height:36px;flex-basis:36px}.select-wrap select{width:100%;max-width:none}.metric{padding:16px 13px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}#distance-view .geo-card div{padding:12px;border-radius:18px}#distance-view .geo-card span{font-size:.6rem}#distance-view .geo-card strong{font-size:clamp(.95rem,4vw,1.12rem)}#distance-view .detail-title>p:last-child{font-size:.76rem}.route-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.route-actions .export-button{min-width:0;min-height:62px;margin:0;padding:10px 12px;gap:10px;border-radius:20px}.route-actions .export-icon{width:34px;height:34px;flex-basis:34px;border-radius:11px;font-size:1.2rem}.route-actions strong{font-size:.82rem}.route-actions small{font-size:.62rem}.history-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.history-action{justify-content:center;padding:0 6px;min-height:44px}.history-action:disabled{opacity:.45;cursor:not-allowed}.route-dialog{width:min(760px,calc(100% - 24px));max-height:calc(100dvh - 32px);padding:18px;border:1px solid rgb(159 215 220 / 30%);border-radius:28px;color:var(--ink);background:var(--sage);box-shadow:0 28px 70px var(--shadow-color)}.route-dialog::backdrop{background:#101c21a6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.route-map-heading,.route-map-tools{display:flex;justify-content:space-between;align-items:center;gap:12px}.route-map-heading h2{margin:0;font-size:1.15rem;overflow-wrap:anywhere}.route-map-status,.route-map-help{color:var(--muted);font-size:.75rem;line-height:1.5}.route-map-canvas{width:100%;height:clamp(240px,51dvh,540px);border-radius:20px;background:var(--cream);isolation:isolate}.route-map-tools{margin-top:12px;font-size:.75rem}.route-map-legend{display:flex;flex-wrap:wrap;gap:9px 14px;margin-top:12px;font-size:.7rem}.route-map-legend span{display:inline-flex;align-items:center;gap:5px}.route-map-legend i{width:10px;height:10px;border-radius:50%}.route-map-help{margin-bottom:0}.route-dialog .leaflet-popup-content-wrapper,.route-dialog .leaflet-popup-tip{background:var(--sage);color:var(--ink)}.route-dialog .leaflet-control-zoom a{color:var(--ink);background:var(--sage);width:36px;height:36px;line-height:36px}.about-button{display:flex;justify-content:space-between;align-items:center;min-height:44px;padding:10px 13px;border:1px solid rgb(101 116 122 / 20%);border-radius:16px;color:var(--ink);background:var(--surface-alpha);font-weight:750;cursor:pointer}.about-button small{color:var(--muted)}.about-dialog{width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:24px;border:1px solid rgb(159 215 220 / 30%);border-radius:28px;color:var(--ink);background:var(--sage);box-shadow:0 28px 70px var(--shadow-color)}.about-dialog::backdrop{background:#101c21a6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.about-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.about-heading h2{margin:0;font-size:1.2rem}.about-brand{display:flex;align-items:center;gap:12px;margin-top:24px}.about-brand strong{font-size:1.3rem}.about-brand small{display:block;margin-top:4px;color:var(--metric-primary-accent)}.about-dialog p{color:var(--muted);font-size:.86rem;line-height:1.6}.github-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid rgb(101 116 122 / 30%);border-radius:12px;background:var(--surface-alpha);color:var(--ink);text-decoration:none;font-size:.8rem;transition:color .16s ease,border-color .16s ease}.github-link:hover{color:#a15b00;border-color:#a15b00}:root[data-theme=dark] .github-link:hover{color:#fbbf24;border-color:#fbbf24}.github-link svg{width:20px;height:20px}.github-link:focus-visible{outline:3px solid var(--sky-deep);outline-offset:4px}.chart-switch{display:flex;gap:8px;margin-bottom:14px}.chart-switch [aria-pressed=true]{background:var(--sky-deep);color:#fff}
