:root{--bg:#f4f6f8;--surface:#fff;--ink:#19313d;--muted:#657580;--line:#e5ebef;--teal:#18766f;--teal-dark:#105d57;--tint:#e9f3f0;--accent:#d99859;--warn-bg:#fff6ea;--warn-ink:#845421;--radius:18px;--shadow:0 3px 18px #18324004;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Noto Sans CJK JP",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none;-webkit-text-size-adjust:100%;font-size:14px}*{box-sizing:border-box}body{margin:0;line-height:1.65}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button{border:0;background:none;padding:0}button:disabled{opacity:.48;cursor:not-allowed}input,select,textarea{border:1px solid #d9e2e5;border-radius:10px;background:#fff;min-height:44px;padding:9px 12px;max-width:100%}select{padding-right:22px}input::placeholder,textarea::placeholder{color:#85939b}textarea{resize:vertical;width:100%}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #62a39b;outline-offset:3px}input[type=checkbox]{width:18px;height:18px;min-height:18px;padding:0;accent-color:var(--teal);flex-shrink:0;cursor:pointer}h1,h2,h3,p{margin:0}h1{font-size:30px;font-weight:750;letter-spacing:.035em;line-height:1.5}h2{font-size:18px;font-weight:700;line-height:1.5}h3{font-size:16px;line-height:1.55}small{font-size:12px}.muted,.caption{color:var(--muted)}.caption{font-size:12px;line-height:1.9;margin:10px 0}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:750;color:var(--teal);margin-bottom:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #d7e2e3;min-height:44px;padding:10px 16px;border-radius:10px;background:#fff;font-weight:650;font-size:13px;text-decoration:none;transition:background .15s}.btn:hover{background:#f4f8f7}.btn.primary{background:var(--teal);border-color:var(--teal);color:#fff}.btn.primary:hover{background:var(--teal-dark)}.btn.small{min-height:42px;padding:9px 14px;font-size:12px}.btn.full{width:100%;margin-top:15px}.btn.danger{border-color:#e9cfcd;color:#a2433b;background:#fffafa}.icon-btn{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:44px;border-radius:9px;flex-shrink:0}.icon-btn:hover{background:#132e4008}.text-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:44px;font-size:12px;font-weight:650;color:var(--teal);white-space:nowrap}.brand{display:flex;align-items:center;gap:11px;white-space:nowrap}.brandmark{width:42px;height:42px;border-radius:13px;background:var(--teal);display:grid;place-items:center;color:#fff}.brand b{font-size:18px;letter-spacing:.065em;line-height:1.3;display:block}.brand small{display:block;font-size:10px;letter-spacing:.1em;color:var(--muted);margin-top:2px}.sidebar{position:fixed;left:0;top:0;bottom:0;width:234px;border-right:1px solid var(--line);background:#fff;padding:34px 23px;display:flex;flex-direction:column;z-index:20}.sidebar .brand{margin-bottom:52px}.nav-caption{font-size:9px;color:#87939c;letter-spacing:.13em;margin:0 0 14px 12px}.nav-link{width:100%;display:flex;align-items:center;text-align:left;gap:15px;padding:13px 16px;margin-bottom:8px;border-radius:12px;color:#6e7e87;min-height:62px}.nav-link>span{font-size:14px;font-weight:600}.nav-link small{display:block;font-size:8px;letter-spacing:.12em;font-weight:500;margin-top:2px}.nav-link.active{background:var(--tint);color:var(--teal)}.nav-link:hover{background:#f2f7f5}.nav-link i{width:5px;height:5px;border-radius:50%;background:var(--teal);margin-left:auto}.sidebar-bottom{margin-top:auto;padding:25px 8px 0;color:#7a898f}.sidebar-bottom>svg{color:var(--teal);margin-bottom:12px}.sidebar-bottom b{display:block;font-size:11px}.sidebar-bottom p{font-size:10px;line-height:1.9;margin-top:9px}.sidebar-bottom>span{display:block;font-size:8px;letter-spacing:.14em;margin-top:30px}.workspace{margin-left:234px;min-width:0}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 38px;border-bottom:1px solid var(--line);background:#ffffffb8}.topbar-info{display:flex;align-items:center;gap:9px;font-size:9px;letter-spacing:.085em;color:#7b8b93;white-space:nowrap}.status-dot{height:6px;width:6px;background:#479789;border-radius:50%}.topbar-separator{height:12px;width:1px;background:var(--line);margin:0 7px}.topbar-actions{display:flex;align-items:center;gap:15px}.runner-filter{display:flex;gap:5px;align-items:center;color:var(--muted);font-size:11px}.runner-filter select{border:0;background:transparent;padding-left:5px;font-size:11px;max-width:175px}.mobile-brand{display:none}main{max-width:1340px;margin:auto;padding:34px 38px 20px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.page-subtitle{font-size:12px;color:var(--muted);margin-top:8px}.month-picker{display:inline-flex;align-items:center;border:1px solid var(--line);background:#fff;border-radius:10px;flex-shrink:0;box-shadow:var(--shadow)}.month-picker .icon-btn{min-width:34px}.month-input{position:relative;min-width:113px;text-align:center;font-size:13px;font-weight:650;display:flex;align-items:center;justify-content:center;min-height:44px}.month-input input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;padding:0;min-width:0}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0}.review-banner{display:flex;align-items:center;gap:12px;padding:12px 18px;margin-bottom:20px;border:1px solid #eddfca;background:#fff9ef;border-radius:12px}.review-symbol{color:#ae783b;flex-shrink:0;display:flex}.review-banner>div{flex:1}.review-banner b{font-size:12px;color:#7e602c}.review-banner p{font-size:11px;color:#96805a;margin-top:2px}.review-banner .text-btn{color:#8b642b}.hero{display:grid;grid-template-columns:285px minmax(0,1fr);overflow:hidden;min-height:268px}.hero-total{padding:28px 32px;border-right:1px solid var(--line);background:linear-gradient(130deg,#fcfefd,#f3f9f6)}.hero-total h2{font-size:13px;color:#536a72;font-weight:550}.hero-total .eyebrow{font-size:9px;margin-bottom:10px;letter-spacing:.16em}.hero-number{font-size:70px;line-height:1.12;letter-spacing:-.055em;font-weight:720;font-variant-numeric:tabular-nums;margin:14px 0 15px;color:#163f3d;white-space:nowrap}.hero-number>span{font-size:20px;font-weight:450;letter-spacing:0;margin-left:8px;color:#5b7c74}.hero-badge{display:inline-flex;align-items:center;gap:6px;font-size:10px;color:#54756c}.hero-badge i{display:inline-block;height:5px;width:5px;border-radius:50%;background:#71a297}.hero-caption{font-size:10px;color:#71887f;margin-top:8px}.hero-chart{padding:29px 26px 18px;min-width:0;align-self:center}.chart-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:11px}.chart-heading>span{font-size:9px;color:#8a999f}.hero-chart .caption{font-size:10px;margin:6px 0 0;line-height:1.8}.daily-chart,.year-chart,.pace-chart{display:block;width:100%;overflow:visible}.gridline{stroke:#e8edef;stroke-dasharray:3 4;stroke-width:1}.axis-label{font-size:11px;fill:#788a94;font-variant-numeric:tabular-nums}.bar{fill:#398e83;cursor:pointer;transition:fill .15s}.bar:hover{fill:#125f58}.bar-track{fill:#e2ece8}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0 26px}.stat{padding:19px 22px;background:#fff;border:1px solid var(--line);border-radius:13px;min-width:0}.stat-label{display:flex;align-items:center;gap:6px;font-size:11px;color:#647a83}.stat-label>svg{color:#719089}.stat-value{font-size:29px;line-height:1.5;margin-top:7px;font-weight:680;letter-spacing:-.025em;font-variant-numeric:tabular-nums;white-space:nowrap}.stat-value>span{font-size:12px;letter-spacing:0;margin-left:5px;color:#6f858a;font-weight:400}.stat>small{font-size:9px;color:#87979f;display:block;margin-top:2px}.home-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:24px;align-items:start}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.section-heading .eyebrow{font-size:9px;margin-bottom:6px}.days-card{padding:22px 25px 8px}.day-bundle{border-top:1px solid var(--line)}.day-heading{display:flex;align-items:center;gap:13px;width:100%;padding:17px 0;text-align:left}.day-icon{width:43px;height:50px;flex-shrink:0;border-radius:11px;background:#f1f5f5;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.3;color:#6a7f87}.day-icon b{font-size:19px;color:#395562}.day-icon small{font-size:8px;letter-spacing:.08em}.day-name{flex:1;min-width:0}.day-name>b{display:block;font-size:13px}.day-name>small{display:block;font-size:10px;color:#849198;margin-top:4px}.day-distance{white-space:nowrap;text-align:right}.day-distance b{font-size:24px;font-weight:650;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.day-distance small{font-size:11px;color:#7e9097}.day-heading>span:last-child{display:flex;color:#90a1a8;transition:transform .2s}.rotated{transform:rotate(180deg)}.day-content{background:#f9fbfa;border-radius:10px;margin-bottom:14px;padding:0 5px}.record-row{display:grid;grid-template-columns:24px minmax(105px,1fr) 74px 74px 62px 24px;align-items:center;column-gap:6px;padding:12px 14px;min-height:73px;border-top:1px solid #eef1f3;min-width:0}.record-row:hover{background:#f8fbfa}.record-row.selected{background:#edf6f3}.record-row.excluded{opacity:.62}.record-info{grid-column:2;min-width:0;text-align:left;min-height:44px;display:flex;flex-direction:column;justify-content:center}.record-info small{font-size:10px;color:#829199;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.record-date{font-size:13px;display:flex;gap:6px;align-items:center;white-space:nowrap;font-weight:600;line-height:1.8}.record-date .muted{font-size:11px;font-weight:400}.record-value{min-height:44px;text-align:right;min-width:0}.record-value b{display:block;font-size:16px;font-weight:620;font-variant-numeric:tabular-nums;line-height:1.6}.record-value small{display:block;font-size:9px;color:#8a979e}.record-more{grid-column:6;min-width:24px;color:#92a2aa}.check-wrap{grid-column:1;display:flex;align-items:center;justify-content:center;min-height:44px;width:24px}.flag-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#d79d59;flex-shrink:0}.day-content .record-row{grid-template-columns:0 minmax(88px,1fr) 67px 67px 54px 20px;padding:9px 7px;column-gap:5px;min-height:62px}.day-content .record-date{font-size:11px}.day-content .record-value b{font-size:14px}.home-aside{display:grid;gap:18px}.bands-card{padding:24px}.bands-card .caption{font-size:10px}.bands-card .eyebrow{font-size:9px}.band-row{width:100%;text-align:left;padding:11px 0;min-height:57px}.band-row>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px;margin-bottom:8px}.band-row b{font-size:11px;font-weight:600}.band-row span{font-size:10px;color:#819099;white-space:nowrap}.band-track{height:5px;border-radius:4px;background:#eff3f4;overflow:hidden}.band-track i{display:block;height:100%;background:#7aaca1;border-radius:4px}.band-row:hover .band-track i{background:var(--teal)}.note-card{padding:23px 25px;border:1px solid #dee9e5;border-radius:var(--radius);background:#edf4f0;color:#4e7166}.note-card>svg{color:#588776;margin-bottom:12px}.note-card h3{font-size:15px;color:#315b4e}.note-card p{font-size:11px;line-height:1.9;margin-top:9px}.note-card .text-btn{font-size:10px;margin-top:5px;color:#3c7764}.page-footer{display:flex;gap:17px;justify-content:space-between;flex-wrap:wrap;color:#8b9ba3;font-size:9px;border-top:1px solid var(--line);padding:22px 0 5px;margin-top:30px}.page-footer span{display:flex;align-items:center;gap:5px}.filter-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:19px}.filter-bar>select{font-size:12px}.search-box{flex:1;min-width:230px;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #d9e2e5;border-radius:10px;padding-left:12px;color:#80929a}.search-box input{border:0;min-width:0;width:100%;background:none;padding-left:0;outline-offset:-4px;font-size:12px}.records-card{overflow:hidden}.records-toolbar{padding:14px 19px;display:flex;justify-content:space-between;align-items:center;gap:12px}.records-toolbar select{font-size:11px;min-height:38px;padding-top:6px;padding-bottom:6px;border-color:var(--line)}.checkbox-line{display:flex;align-items:center;gap:8px;font-size:12px;min-height:44px}.records-colheads{display:grid;grid-template-columns:24px minmax(105px,1fr) 74px 74px 62px 24px;gap:6px;font-size:10px;color:#8b9aa2;padding:9px 14px;background:#f7f9fa;border-top:1px solid var(--line)}.records-colheads span{text-align:right}.records-colheads span:first-child{grid-column:2;text-align:left}.below-records{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:14px;flex-wrap:wrap}.below-records .caption{font-size:10px}.segmented{display:inline-flex;background:#e8edef;border:1px solid #e2e8ec;border-radius:11px;padding:4px;margin-bottom:22px;gap:3px;max-width:100%}.segmented button{padding:10px 20px;min-height:42px;font-size:12px;color:#70818b;font-weight:600;border-radius:8px;white-space:nowrap}.segmented button.active{background:#fff;box-shadow:0 2px 6px #18343a0b;color:var(--teal)}.segmented button span{font-size:10px;background:var(--tint);border-radius:5px;padding:1px 5px;margin-left:4px}.compare-card{padding:27px}.compare-card .section-heading select{font-size:12px}.pace-point{fill:#4e968b;stroke:#fff;stroke-width:1.4;opacity:.85;cursor:pointer}.pace-point:hover{r:7;opacity:1;fill:#145f58}.year-series{stroke:#277f74;fill:#277f74}.year-series.series-1{stroke:#b57e4d;fill:#b57e4d}.legend{display:flex;gap:25px;flex-wrap:wrap;margin:16px 0}.legend>span{display:inline-flex;gap:8px;align-items:center;font-size:12px}.legend b{font-size:13px;margin-left:3px}.dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#277f74}.series-dot-1{background:#b57e4d}.insight-note{margin-top:18px;padding:14px 17px;background:#f4f7f8;border-radius:10px;font-size:11px;line-height:1.9;color:#6a7d86}.compact-list{margin-top:20px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.compact-list .record-row:first-child{border-top:0}.year-controls{display:flex;gap:12px;align-items:end;margin:16px 0 24px}.year-controls label{display:flex;flex-direction:column;gap:5px;font-size:10px;color:#74868f;min-width:0}.year-controls select{font-size:13px;color:var(--ink);min-width:145px}.year-controls>span{padding-bottom:10px;font-size:12px;color:#84969b}.coverage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:20px}.coverage-grid>div{padding:17px;background:#f5f8f7;border:1px solid #e5ece9;border-radius:11px}.coverage-grid b{font-size:12px;color:#69837a}.coverage-grid strong{display:block;font-size:23px;margin:5px 0}.coverage-grid small{font-size:10px;display:block;color:#8a9b93}.table-scroll{overflow-x:auto;overscroll-behavior-x:contain;margin:15px 0}.compare-table{border-collapse:separate;border-spacing:0;width:100%;font-size:12px;table-layout:auto}.compare-table th,.compare-table td{min-width:140px;max-width:200px;padding:14px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left;overflow-wrap:anywhere}.compare-table th:first-child{position:sticky;left:0;background:#f6f9f8;z-index:1;min-width:100px;max-width:130px;color:#638076;font-weight:550}.compare-table thead th{background:#f0f5f3;border-top:1px solid var(--line)}.compare-table thead th small{display:block;font-size:10px;font-weight:400;color:#89988f;margin-top:4px}.compare-table tbody tr:nth-child(even) td{background:#fcfdfd}.calendar-card{padding:25px}.calendar-summary{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:20px}.calendar-summary span:last-child{font-size:12px;color:#71868e}.calendar-summary b{font-size:28px;margin-right:4px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.weekday{text-align:center;padding:8px 0 13px;font-size:11px;color:#8b9aa1}.calendar-day{min-height:105px;border-radius:12px;border:1px solid #ecf0f2;background:#fbfcfd;text-align:left;padding:11px 12px;position:relative;display:flex;flex-direction:column}.calendar-day.has-run{background:#edf6f2;border-color:#d9e9e1}.calendar-day:hover{border-color:#8db3a5}.calendar-number{font-size:12px;color:#81948e;display:flex;gap:5px;align-items:center}.calendar-day>b{font-size:19px;font-weight:650;margin-top:5px;color:#2d695b;white-space:nowrap;line-height:1.5}.calendar-day>b small{font-size:9px;margin-left:4px;font-weight:400}.calendar-count{font-size:9px;color:#80a094}.calendar-bar{height:3px;background:#dcebe4;border-radius:5px;margin-top:auto;overflow:hidden}.calendar-bar i{display:block;height:100%;background:#6b9f8d}.data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.data-card{padding:26px}.data-card .section-heading{justify-content:flex-start;gap:10px}.data-card .section-heading>svg{color:var(--teal)}.data-card h2{font-size:16px}.import-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.import-stats .stat{background:#f6f9f8;border:1px solid #e3ece7}.button-stack{display:flex;flex-direction:column;gap:10px;margin:20px 0}.definition{margin:17px 0;font-size:12px}.definition>div{display:flex;justify-content:space-between;align-items:start;gap:15px;padding:10px 0;border-bottom:1px solid #edf1f3}.definition dt{color:#7b8d93;min-width:0;flex:1}.definition dd{margin:0;text-align:right;overflow-wrap:anywhere;max-width:60%}.profile-add{display:flex;gap:9px;margin:18px 0}.profile-add input{min-width:0;flex:1;font-size:12px}.profile-list{margin:15px 0}.profile-list>div{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.profile-list b{font-weight:500;color:#87a093}.rules p{font-size:11px;line-height:1.9;color:#798b93;margin-top:15px}.rules b{display:block;color:#456d60;font-size:12px;margin-bottom:3px}.history-row{display:flex;gap:16px;justify-content:space-between;font-size:12px;padding:17px 0;border-bottom:1px solid var(--line)}.history-row b{font-size:12px;font-weight:550;overflow-wrap:anywhere}.history-row small{display:block;font-size:9px;color:#889c9f;margin-top:4px}.history-row>span{text-align:right;white-space:nowrap;color:#51846f}.danger-card{background:#fdfcfb}.danger-card h2{color:#8d6660}.notice{display:flex;gap:11px;align-items:flex-start;border-radius:11px;padding:15px;margin:15px 0;font-size:12px;line-height:1.8;background:#edf5f4;color:#476d63;overflow-wrap:anywhere}.notice>svg{flex-shrink:0;margin-top:2px}.notice p{font-size:11px;margin-top:3px}.notice.warn{color:#8a662e;background:#fff6e8;border:1px solid #f0e2ca}.notice.error{color:#97403b;background:#fff0ee;border:1px solid #f2d6d1}.notice.info{background:#eef4f7;color:#536f80;border:1px solid #dde8ed}.empty{padding:45px 15px;text-align:center;max-width:650px;margin:auto}.empty-icon{display:inline-flex;align-items:center;justify-content:center;width:65px;height:65px;border-radius:19px;background:#edf5f1;color:#629381;margin-bottom:18px}.empty h3{font-size:18px;margin-bottom:10px}.empty p{font-size:12px;color:#87969c;line-height:2}.empty .btn{margin-top:22px}.welcome{padding:35px 25px 24px;margin:25px 0}.welcome-steps{display:flex;justify-content:center;gap:28px;padding:22px 0 7px;border-top:1px solid var(--line);color:#7e9596;font-size:11px}.welcome-steps b{color:#579b83;font-size:14px;margin-right:6px}.modal{padding:0;border:1px solid #dee7e8;border-radius:23px;width:600px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 48px);color:var(--ink);background:#fff;box-shadow:0 25px 100px #112b3f40;overflow-y:auto;overscroll-behavior:contain}.modal.wide{width:800px}.modal::backdrop{background:#16323877;backdrop-filter:blur(4px)}.modal-head{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fffffff5;padding:13px 20px 13px 25px;border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}.modal-head h2{font-size:16px}.modal-body{padding:22px 25px 26px}.modal-body>p:not(.caption):not(.privacy-note){font-size:13px;line-height:1.9;margin-bottom:15px}.file-label{display:flex;gap:10px;align-items:center;border-radius:10px;background:#f3f7f5;padding:13px;font-weight:650;color:#5f8574;overflow-wrap:anywhere}.file-label span{min-width:0;overflow-wrap:anywhere}.field{display:flex;flex-direction:column;gap:7px;margin-top:17px;min-width:0}.field>span{font-size:12px;font-weight:600;color:#5c747c}.field>small{font-size:11px;color:#91a099;line-height:1.8}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.privacy-note{display:flex;gap:6px;justify-content:center;align-items:center;color:#8da298;font-size:10px;margin:18px 0 0}.detail-title{text-align:center;padding:9px 0 22px}.detail-title>span{font-size:10px;color:#84968f;letter-spacing:.08em}.detail-title h3{font-size:14px;font-weight:500;margin:6px 0;color:#597867}.detail-distance{font-size:60px;letter-spacing:-.05em;color:#1d5c4d;font-weight:700;line-height:1.45}.detail-distance small{font-size:18px;margin-left:6px;letter-spacing:0;font-weight:400}.detail-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 0;gap:0}.detail-stats .stat{padding:13px 7px;border:0;border-radius:0}.detail-stats .stat-value{font-size:23px}.detail-stats .stat-label{font-size:10px}.detail-stats .stat-value>span{font-size:10px;margin-left:3px}.raw-details{margin-top:20px;border-top:1px solid var(--line);font-size:12px}.raw-details summary{cursor:pointer;padding:15px 0;color:#6b817d;min-height:44px}.raw{font-size:10px}.raw dt{max-width:62%;flex:auto}.raw dd{max-width:48%;font-variant-numeric:tabular-nums}.day-modal-total{display:flex;align-items:baseline;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--line);gap:10px}.day-modal-total>b{font-size:36px;line-height:1.4;letter-spacing:-.03em;color:#225d4c}.day-modal-total small{font-size:14px;margin-left:5px;font-weight:400}.day-modal-total>span{font-size:11px;color:#8ba294}.review-group{border:1px solid var(--line);border-radius:12px;margin:18px 0;overflow:hidden}.review-group>.section-heading{padding:10px 15px;margin:0;background:#f9faf9}.review-group>.section-heading b{font-size:12px}.review-group .text-btn{font-size:10px}.selection-bar{position:fixed;left:calc(50% + 117px);bottom:25px;transform:translateX(-50%);display:flex;align-items:center;gap:12px;background:#193e34;color:#fff;box-shadow:0 8px 25px #163c3930;z-index:30;padding:9px 12px 9px 20px;border-radius:14px;white-space:nowrap}.selection-bar b{font-size:13px;min-width:70px;font-weight:550}.selection-bar .btn{background:#ffffff12;border-color:#ffffff30;color:#fff}.selection-bar .btn:hover{background:#ffffff25}.has-selection main{padding-bottom:100px}.toast{position:fixed;bottom:95px;left:calc(50% + 117px);transform:translateX(-50%);background:#263f3ef5;color:#fff;border-radius:12px;box-shadow:0 8px 30px #14363433;padding:10px 13px 10px 20px;max-width:min(600px,calc(100vw - 40px));font-size:12px;display:flex;align-items:center;gap:10px;z-index:100}.toast .icon-btn{min-width:30px;min-height:32px}.bottom-nav{display:none}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:absolute;left:10px;top:-100px;padding:10px;background:#fff;color:var(--teal);z-index:100}.skip-link:focus{top:10px}.loading,.fatal{max-width:650px;margin:15vh auto;padding:24px}.loading>p{margin-top:25px;color:var(--muted)}.fatal h1{margin-top:30px}.fatal p{margin:15px 0}
@media(min-width:1550px){main{padding-top:44px}.hero{grid-template-columns:325px 1fr}.hero-number{font-size:82px}.hero-total{padding:30px 36px}}
@media(max-width:1200px){.sidebar{width:207px;padding-left:17px;padding-right:17px}.workspace{margin-left:207px}.topbar{padding:0 26px}.topbar-info{font-size:8px}.topbar-separator,.topbar-info{gap:6px}.topbar-actions{gap:8px}main{padding:28px 26px 20px}.hero{grid-template-columns:240px 1fr}.hero-total{padding:27px 24px}.hero-number{font-size:62px}.home-grid{grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);gap:18px}.days-card{padding-left:18px;padding-right:18px}.stat{padding:17px}.stat-value{font-size:26px}.selection-bar,.toast{left:calc(50% + 103px)}.topbar-info .topbar-separator{display:none}.topbar-info{font-size:0}.topbar-info .status-dot{display:none}}
@media(max-width:1000px){.sidebar{display:none}.workspace{margin-left:0}.mobile-brand{display:block}.topbar-info{display:none}.topbar{padding:0 25px}.mobile-brand .brandmark{width:35px;height:35px;border-radius:11px}.mobile-brand .brand b{font-size:16px}.mobile-brand .brand small{font-size:9px}.home-grid{grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr)}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;border-top:1px solid #e1e9e6;background:#fffffff5;backdrop-filter:blur(18px);z-index:40;padding:7px 18px calc(7px + env(safe-area-inset-bottom))}.bottom-nav button{display:flex;flex:1;align-items:center;justify-content:center;flex-direction:column;gap:4px;min-height:49px;color:#98a8a8;border-radius:10px}.bottom-nav button.active{color:var(--teal)}.bottom-nav button span{font-size:10px;font-weight:550}.bottom-nav button.active svg{stroke-width:2.1}main{padding-bottom:110px}.selection-bar{left:50%;bottom:calc(80px + env(safe-area-inset-bottom))}.toast{left:50%;bottom:calc(145px + env(safe-area-inset-bottom))}.has-selection main{padding-bottom:170px}.page-footer{font-size:9px}}
@media(max-width:700px){:root{--radius:16px}.topbar{height:auto;padding:18px 19px 11px;display:grid;grid-template-columns:minmax(0,1fr) auto;row-gap:10px;column-gap:10px}.topbar-actions{display:contents}.topbar-actions>.btn{grid-column:2;grid-row:1;min-height:40px;padding:8px 12px;font-size:11px}.runner-filter{grid-column:1/-1;grid-row:2;justify-self:start;margin-left:0;font-size:11px;min-height:30px}.runner-filter select{min-height:32px;padding-top:2px;padding-bottom:2px;font-size:11px;max-width:260px}.runner-filter>svg{width:14px}.brand{gap:9px}.mobile-brand .brand b{font-size:15px}.mobile-brand .brand small{font-size:8px}.mobile-brand .brandmark{width:34px;height:34px}.mobile-brand .brandmark svg{width:23px}main{padding:23px 17px 110px}.page-heading{display:block;margin-bottom:19px}.page-heading h1{font-size:25px;letter-spacing:.025em}.page-heading .eyebrow{font-size:9px;margin-bottom:6px}.page-subtitle{font-size:11px;line-height:1.9;margin-top:5px}.month-picker{margin-top:15px}.month-picker .icon-btn{min-height:40px;min-width:34px}.month-input{min-height:40px;min-width:110px;font-size:12px}.review-banner{padding:10px 12px;gap:9px;margin-bottom:17px;align-items:center}.review-banner b{font-size:11px;line-height:1.7;display:block}.review-banner p{font-size:10px;line-height:1.7;margin-top:3px}.review-symbol{display:none}.review-banner .text-btn{font-size:10px;gap:2px}.review-banner .text-btn svg{width:12px}.hero{display:block}.hero-total{padding:23px 23px 20px;border-right:0;border-bottom:1px solid var(--line);position:relative}.hero-total h2{font-size:12px}.hero-total .eyebrow{font-size:8px;letter-spacing:.14em;margin-bottom:7px}.hero-number{font-size:66px;margin:10px 0 11px;line-height:1.08;letter-spacing:-.05em}.hero-number span{font-size:18px}.hero-badge{font-size:10px}.hero-caption{font-size:10px;position:absolute;right:21px;bottom:22px;max-width:100px;line-height:1.8;text-align:right}.hero-chart{padding:19px 18px 16px}.chart-heading{font-size:11px;margin-bottom:10px}.hero-chart .caption{font-size:9px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:14px 0 20px}.stat{padding:16px 16px 14px;border-radius:12px}.stat-value{font-size:29px;margin-top:5px}.stat-label{font-size:11px;gap:4px}.stat-label svg{width:15px}.stat-value>span{font-size:11px}.stat>small{font-size:9px}.home-grid{grid-template-columns:1fr;gap:17px}.home-aside{gap:17px}.days-card{padding:20px 17px 7px}.section-heading{gap:8px}.section-heading h2{font-size:16px}.section-heading .eyebrow{font-size:8px}.day-heading{padding:16px 0;gap:10px}.day-icon{width:38px;height:46px;border-radius:10px}.day-icon b{font-size:18px}.day-name>b{font-size:12px}.day-name>small{font-size:9px;line-height:1.8}.day-distance b{font-size:23px}.day-distance small{font-size:10px}.day-heading>span svg{width:15px}.bands-card{padding:21px}.bands-card h2{font-size:16px}.band-row{padding:12px 0}.band-row>div:first-child{font-size:12px}.band-row b{font-size:12px}.band-row span{font-size:11px}.note-card{padding:21px}.note-card p{font-size:12px}.note-card .text-btn{font-size:11px}.filter-bar{gap:8px}.search-box{min-width:100%;font-size:12px}.search-box input{font-size:16px;padding-top:9px;padding-bottom:9px}.filter-bar select{font-size:12px;flex:1;min-width:100px;padding:8px 10px;max-width:100%;min-height:44px}.records-toolbar{padding:10px 10px;gap:5px}.records-toolbar .checkbox-line{font-size:10px;gap:5px;white-space:nowrap}.records-toolbar .checkbox-line b{font-size:10px}.records-toolbar select{font-size:10px;max-width:106px;padding:5px 5px;min-height:44px}.record-row{grid-template-columns:23px minmax(70px,1fr) 53px 53px 42px 17px;gap:4px;padding:10px 10px;min-height:70px}.record-date{font-size:11px;gap:4px;flex-wrap:wrap;line-height:1.6}.record-date .muted{font-size:10px}.record-info small{font-size:9px;line-height:1.7}.record-value b{font-size:15px;font-weight:630}.record-value small{font-size:9px}.record-more{min-width:17px;width:17px}.record-more svg{width:14px}.records-colheads{grid-template-columns:23px minmax(70px,1fr) 53px 53px 42px 17px;gap:4px;padding:8px 10px;font-size:9px}.day-content .record-row{grid-template-columns:0 minmax(66px,1fr) 51px 51px 42px 16px;gap:4px;padding:7px 5px}.day-content .record-value b{font-size:14px}.day-content .record-date{font-size:11px}.day-content .record-more{min-width:16px}.below-records{gap:4px;margin-top:10px}.below-records .checkbox-line{font-size:11px}.below-records .caption{font-size:9px;margin:0}.segmented{width:100%;padding:3px;margin-bottom:17px;gap:2px}.segmented button{padding:9px 5px;flex:1;font-size:11px;min-height:43px}.segmented button span{font-size:9px;padding:1px 3px}.compare-card{padding:20px 16px}.compare-card .section-heading{align-items:start}.compare-card .section-heading h2{font-size:16px}.compare-card .section-heading select{font-size:11px;max-width:125px;padding:5px 7px;min-height:44px}.compare-card .caption{font-size:11px}.insight-note{font-size:10px;padding:13px;line-height:1.9}.compact-list{margin-left:-7px;margin-right:-7px}.year-controls{gap:8px;align-items:end}.year-controls label{flex:1;font-size:10px}.year-controls select{font-size:12px;min-width:0;width:100%;padding:8px}.coverage-grid{gap:9px}.coverage-grid>div{padding:13px}.coverage-grid strong{font-size:20px}.coverage-grid small{font-size:9px;line-height:1.7}.legend{gap:18px}.legend>span{font-size:11px;gap:6px}.legend b{font-size:12px}.calendar-card{padding:16px 12px}.calendar-summary{padding:0 4px;margin-bottom:12px}.calendar-summary b{font-size:25px}.calendar-summary span:last-child{font-size:10px}.calendar-grid{gap:4px}.weekday{font-size:10px;padding:6px 0 11px}.calendar-day{min-height:80px;border-radius:8px;padding:7px 4px}.calendar-number{font-size:10px;gap:3px}.calendar-day>b{font-size:14px;line-height:1.5;margin-top:5px;letter-spacing:-.03em}.calendar-day>b small{font-size:7px;margin-left:1px;letter-spacing:0}.calendar-count{font-size:8px}.calendar-bar{height:2px}.calendar-card>.caption{font-size:10px;padding:0 3px;margin-top:15px}.data-grid{grid-template-columns:1fr;gap:17px}.data-card{padding:21px}.data-card .caption{font-size:11px}.definition{font-size:11px}.profile-add input{font-size:16px}.notice{padding:12px;gap:9px;font-size:11px}.notice p{font-size:10px}.notice .checkbox-line{font-size:10px;line-height:1.6;margin-top:8px}.button-stack .btn{font-size:12px}.page-footer{gap:9px;justify-content:flex-start;margin-top:25px;padding-top:19px;font-size:8px}.page-footer span:last-child{margin-left:auto}.bottom-nav{padding:7px 10px calc(7px + env(safe-area-inset-bottom))}.bottom-nav button{min-height:48px}.bottom-nav button span{font-size:9px}.bottom-nav button.active{background:#f3f8f4}.selection-bar{max-width:calc(100vw - 24px);width:max-content;gap:7px;padding:8px 8px 8px 13px;bottom:calc(78px + env(safe-area-inset-bottom))}.selection-bar b{min-width:46px;font-size:11px}.selection-bar .selected-label{display:none}.selection-bar .btn{min-height:40px;padding:8px 10px;font-size:11px}.selection-bar .icon-btn{min-width:32px;min-height:40px}.toast{font-size:11px;max-width:calc(100vw - 28px);padding:10px 10px 10px 14px;width:max-content;bottom:calc(140px + env(safe-area-inset-bottom))}.modal{max-width:calc(100vw - 16px);width:calc(100vw - 16px);max-height:calc(100dvh - 26px);border-radius:19px}.modal-head{padding:10px 13px 10px 19px}.modal-head h2{font-size:15px}.modal-body{padding:17px 17px 24px}.modal-body .record-row{margin-left:-10px;margin-right:-10px}.modal-body .caption{font-size:10px}.field input,.field select,.field textarea{font-size:16px}.form-grid{gap:11px}.detail-title{padding:7px 0 15px}.detail-distance{font-size:54px}.detail-stats .stat{padding:11px 4px}.detail-stats .stat-value{font-size:21px}.detail-stats .stat-value>span{font-size:9px}.detail-stats .stat-label{font-size:9px}.detail-stats{padding:6px 0}.modal .checkbox-line{font-size:11px}.review-group>.section-heading{padding:7px 10px}.review-group>.section-heading b{font-size:11px}.review-group .text-btn{font-size:9px}.review-group .record-row{margin:0}.raw{font-size:10px}.raw-details summary{font-size:11px}.day-modal-total>b{font-size:33px}.day-modal-total>span{font-size:10px}.empty{padding:33px 8px}.empty h3{font-size:16px}.empty p{font-size:11px}.welcome{padding:15px 15px 20px}.welcome-steps{gap:10px;font-size:9px;flex-wrap:wrap}.welcome-steps b{font-size:12px}.loading,.fatal{margin:10vh auto}.fatal h1{font-size:21px}}
@media(max-width:365px){main{padding-left:12px;padding-right:12px}.hero-total{padding-left:19px}.hero-caption{right:15px;max-width:90px;font-size:9px}.hero-number{font-size:59px}.record-row{grid-template-columns:20px minmax(65px,1fr) 48px 48px 35px 16px;column-gap:3px;padding-left:8px;padding-right:8px}.records-colheads{grid-template-columns:20px minmax(65px,1fr) 48px 48px 35px 16px;column-gap:3px;padding-left:8px;padding-right:8px}.day-distance b{font-size:21px}.stat-value{font-size:26px}.modal-body{padding-left:14px;padding-right:14px}.calendar-day>b{font-size:12px}.calendar-count{font-size:7px}.day-name>small{max-width:145px}.month-picker{margin-top:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
@media print{.sidebar,.topbar,.bottom-nav,.selection-bar,.toast,.filter-bar,.page-footer{display:none!important}.workspace{margin:0}main{padding:0}.card{break-inside:avoid}.app{background:#fff}button{color:inherit}.page-heading{margin-bottom:15px}}
