.mm-shell{max-width:1200px;padding-bottom:70px}.mm-heading{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:14px 0 18px}.mm-heading h1{font-size:clamp(1.8rem,4vw,2.5rem);letter-spacing:-.04em;margin:2px 0}.mm-eyebrow{color:var(--accent);font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.mm-freshness{color:var(--muted);font-size:.85rem;text-align:right}.mm-nav{display:flex;gap:6px;overflow-x:auto;padding:3px 0 15px;margin-bottom:10px;scrollbar-width:thin}.mm-nav button{flex:none;width:auto;min-width:0;padding:10px 14px;margin:0;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);font-weight:750;white-space:nowrap}.mm-nav button[aria-current=page]{background:var(--card-alt);border-color:var(--border);color:var(--text);box-shadow:inset 0 -2px var(--accent)}.mm-nav button:hover{color:var(--text)}.mm-notice{padding:12px 15px;margin-bottom:14px;border:1px solid var(--border);border-radius:12px;background:var(--card)}.mm-notice.error{border-color:var(--danger)}.mm-demo{display:inline-block;padding:4px 8px;border:1px solid #88501d;border-radius:7px;background:#382719;color:#ffba7b;font-size:.72rem;font-weight:800;letter-spacing:.05em}.mm-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}.mm-panel{min-width:0;background:var(--card);border:1px solid var(--border);border-radius:16px;padding:20px}.mm-panel.alt{background:var(--card-alt)}.mm-span-3{grid-column:span 3}.mm-span-4{grid-column:span 4}.mm-span-5{grid-column:span 5}.mm-span-6{grid-column:span 6}.mm-span-7{grid-column:span 7}.mm-span-8{grid-column:span 8}.mm-span-12{grid-column:span 12}.mm-panel h2{font-size:1.04rem;margin:0 0 5px}.mm-panel h3{font-size:1rem;margin:0 0 8px}.mm-label{color:var(--muted);font-size:.78rem;font-weight:700}.mm-value{font-size:clamp(1.55rem,3vw,2.2rem);font-weight:800;letter-spacing:-.04em;line-height:1.15;margin:8px 0}.mm-sub{color:var(--muted);font-size:.83rem;line-height:1.45}.mm-lead{display:flex;align-items:center;justify-content:space-between;gap:14px}.mm-status{display:inline-flex;align-items:center;gap:8px;border:1px solid #3d684b;background:#203428;color:#7fe29a;border-radius:99px;padding:6px 10px;font-size:.75rem;font-weight:800;white-space:nowrap}.mm-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.mm-status.quiet{border-color:var(--border);background:var(--card-alt);color:var(--muted)}.mm-rule{border:0;border-top:1px solid var(--border);margin:16px 0}.mm-split{display:flex;align-items:center;justify-content:space-between;gap:10px}.mm-section{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:30px 0 12px}.mm-section h2{font-size:1.35rem;letter-spacing:-.02em;margin:0}.mm-section p{margin:4px 0 0;color:var(--muted);font-size:.85rem}.mm-link,.mm-text-button{background:none;border:0;color:var(--accent);font:inherit;font-weight:750;cursor:pointer;text-decoration:none;width:auto;min-width:0;padding:0}.mm-link:hover,.mm-text-button:hover{text-decoration:underline}.mm-mini{display:flex;flex-wrap:wrap;gap:6px}.mm-pill{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid var(--border);border-radius:99px;background:#1d1d1d;color:var(--muted);font-size:.74rem}.mm-pill.green{color:#83db97;border-color:#33533b}.mm-pill.orange{color:#ffab70;border-color:#6e4b31}.mm-bar{height:7px;border-radius:99px;background:#171717;overflow:hidden;border:1px solid #353535}.mm-bar>span{display:block;height:100%;background:var(--accent);border-radius:inherit}.mm-bar.green>span{background:#68c882}.mm-area{display:block;width:100%;text-align:left;color:var(--text);cursor:pointer}.mm-area:hover,.mm-area:focus-visible{border-color:var(--accent);background:#292929}.mm-area .mm-value{font-size:1.65rem}.mm-area .mm-bar{margin:12px 0}.mm-map{position:relative;overflow:hidden;border-radius:12px;border:1px solid var(--border);background:#151515;aspect-ratio:761/829;max-height:570px}.mm-map svg{display:block;width:100%;height:100%}.mm-map image{opacity:.8}.mm-map .route-context{fill:none;stroke:#f5f5f5;stroke-width:2.5;opacity:.48;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.mm-map .route-main{fill:none;stroke:#ff7b1c;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.mm-map .route-dot{fill:#7bdc98;stroke:#102416;stroke-width:2;vector-effect:non-scaling-stroke}.mm-map-badge{position:absolute;left:12px;top:12px;padding:7px 10px;border:1px solid #555;background:#191919dc;border-radius:8px;font-size:.73rem;font-weight:750}.mm-map-north{position:absolute;right:12px;top:12px;padding:7px 10px;background:#191919bb;border-radius:8px;font-size:.8rem;font-weight:800}.mm-map-empty{display:grid;place-items:center;padding:22px;text-align:center;color:var(--muted);height:100%}.mm-chart{width:100%;height:auto;display:block;margin-top:12px}.mm-events{list-style:none;padding:0;margin:0}.mm-events li{display:flex;gap:14px;padding:11px 0;border-bottom:1px solid var(--border)}.mm-events li:last-child{border:0}.mm-events time{flex:none;width:76px;color:var(--muted);font-size:.8rem}.mm-events strong{display:block;font-size:.86rem}.mm-events small{color:var(--muted);font-size:.74rem}.mm-toolbar{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-bottom:15px}.mm-toolbar label{font-size:.8rem;color:var(--muted);font-weight:700}.mm-toolbar input,.mm-toolbar select{display:block;background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:9px;padding:9px 11px;margin-top:5px;font:inherit}.mm-toolbar button{width:auto;min-width:0;margin:0;padding:10px 14px}.mm-empty{padding:24px;border:1px dashed var(--border);border-radius:12px;color:var(--muted);background:#202020}.mm-table{width:100%;border-collapse:collapse;font-size:.85rem}.mm-table th,.mm-table td{padding:11px 8px;border-bottom:1px solid var(--border);text-align:left}.mm-table th{color:var(--muted);font-size:.75rem}.mm-table tr:last-child td{border-bottom:0}.mm-table-wrap{overflow:auto}.mm-battery{display:inline-flex;align-items:center;gap:6px}.mm-battery-icon{position:relative;width:26px;height:14px;border:2px solid #8bd59f;border-radius:3px;padding:1px}.mm-battery-icon:after{content:"";position:absolute;right:-5px;top:3px;width:3px;height:5px;border-radius:0 2px 2px 0;background:#8bd59f}.mm-battery-icon span{display:block;height:100%;background:#8bd59f}.mm-footnote{color:var(--muted);font-size:.76rem;line-height:1.5;margin:12px 0 0}.mm-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.mm-day{padding:13px 4px;text-align:center;border-radius:10px;border:1px solid var(--border);background:#1c1c1c;color:var(--text);cursor:pointer}.mm-day:hover{border-color:var(--accent)}.mm-day strong{display:block;font-size:1.1rem;margin:4px}.mm-day span{color:var(--muted);font-size:.65rem}.mm-day.good strong{color:#81d899}.mm-day.partial strong{color:#ffad70}.mm-day.none strong{color:var(--muted)}.mm-progress-large{font-size:2.4rem;font-weight:800;letter-spacing:-.05em}.mm-pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.73rem;color:var(--muted)}@media(max-width:850px){.mm-span-3{grid-column:span 6}.mm-span-4,.mm-span-5,.mm-span-6,.mm-span-7,.mm-span-8{grid-column:span 12}.mm-map{max-height:620px}}@media(max-width:600px){.mm-shell{padding:12px 14px 55px}.site-logo{height:38px;max-width:48vw}.site-app-name{font-size:1rem}.mm-heading{display:block}.mm-freshness{display:block;text-align:left;margin-top:7px}.mm-grid{gap:10px}.mm-panel{padding:16px}.mm-span-3{grid-column:span 6}.mm-days{gap:3px}.mm-day{padding:9px 1px}.mm-day span{font-size:.58rem}.mm-events time{width:65px}.mm-section{align-items:start}.mm-section h2{font-size:1.17rem}}@media(max-width:360px){.mm-span-3{grid-column:span 12}}
.mm-map{aspect-ratio:801/880}

.mm-map .route-visit{fill:none;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.mm-route-legend{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:12px;font-size:.78rem;color:var(--text)}
.mm-route-legend span{display:inline-flex;align-items:center;gap:6px}
.mm-route-legend i,.mm-visit-swatch{display:inline-block;flex:none;width:11px;height:11px;border-radius:50%}
.mm-visit-list{list-style:none;margin:0;padding:0}
.mm-visit{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}
.mm-visit:last-child{border-bottom:0}
.mm-visit-time{flex:none;width:72px;padding-top:5px;color:var(--muted);font-size:.8rem}
.mm-visit-button{display:flex;align-items:flex-start;gap:9px;width:100%;min-width:0;margin:0;padding:5px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.mm-visit-button:hover,.mm-visit-button.selected{border-color:var(--accent);background:var(--card-alt)}
.mm-visit-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.mm-visit-button .mm-visit-swatch{margin-top:3px}
.mm-visit strong{display:block;font-size:.9rem}
.mm-visit small{display:block;color:var(--muted);font-size:.76rem;line-height:1.4}
.mm-visit.completion strong{color:#83db97}

/* Touch and narrow-screen refinements for iPhone and iPad. */
.header-reload-button,.mm-nav button,.mm-day{min-height:44px}
.mm-nav,.mm-table-wrap{-webkit-overflow-scrolling:touch}
.mm-section{flex-wrap:wrap}
.mm-split strong,.mm-value{overflow-wrap:anywhere}
.mm-area-times{margin-top:12px;color:#83db97;font-size:.84rem;font-weight:750;line-height:1.4}
.mm-visit-progress>.mm-progress-parts{display:flex;width:100%;height:100%;background:none;border-radius:0}
.mm-progress-parts>span{display:block;flex:none;height:100%}
.mm-text-button:focus-visible,.mm-nav button:focus-visible,.mm-day:focus-visible,.mm-area:focus-visible,.header-reload-button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:600px){
  .mm-shell{padding-bottom:max(55px,calc(env(safe-area-inset-bottom) + 24px))}
  .site-header-top{min-width:0}
  .site-logo-link{flex:1 1 auto;min-width:0}
  .site-logo{max-width:100%;object-fit:contain;object-position:left}
  .site-app-name{flex:0 1 auto;min-width:0;max-width:45%;white-space:normal;text-align:right;line-height:1.2}
  .mm-nav{margin-right:-14px;padding-right:14px}
  .mm-toolbar input,.mm-toolbar select{font-size:16px;min-height:44px}
  .mm-toolbar button{min-height:44px}
  .mm-text-button{min-height:44px;display:inline-flex;align-items:center}
  .mm-table .mm-text-button{white-space:normal;text-align:left}
}
.mm-map-badge{display:none}
.mm-area-schedule{margin-top:9px;color:#9ed9ae;font-size:.79rem;line-height:1.4}
.mm-map-controls{margin-top:12px;color:var(--muted);font-size:.82rem}
.mm-map-controls summary{cursor:pointer;color:var(--accent);font-weight:750}
.mm-map-control-buttons{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.mm-map-control-buttons button{width:auto;min-width:65px;margin:0;padding:9px 11px;border:1px solid var(--border);border-radius:8px;background:var(--card-alt);color:var(--text);font:inherit;cursor:pointer}
.mm-map-control-buttons button[data-map-save]{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:750}
