html,body{margin:0}
:root{padding-top:env(safe-area-inset-top,0px)}
[hidden]{display:none!important}
.logo{height:22px;width:auto;display:block}
/* calendar */
.calnav{width:40px;height:40px;padding:0;border-radius:12px}
.calnav svg{width:18px;height:18px}
.cal{display:flex;flex-direction:column;gap:8px}
.cal-h,.cal-g{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.cal-h span{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;color:var(--text-3);text-align:center}
.cal-d{aspect-ratio:1/1.18;border-radius:12px;background:var(--surface);border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;padding:6px 2px;min-width:0}
.cal-d .n{font-family:var(--display);font-stretch:108%;font-weight:700;font-size:13px;line-height:1}
.cal-d.out{opacity:.35}
.cal-d.today{border-color:var(--volt);box-shadow:inset 0 0 0 1px var(--volt)}
.cal-d.today .n{color:var(--volt-hi)}
.cal-d.sel{background:var(--surface-2);border-color:var(--text-2)}
.cs{display:flex;flex-direction:column;gap:3px;align-items:center;width:100%}
.cc{display:inline-grid;place-items:center;min-width:20px;max-width:100%;height:15px;padding:0 4px;border-radius:5px;font-style:normal;font-family:var(--mono);font-size:8.5px;font-weight:600;overflow:hidden;white-space:nowrap}
.cc.running{border:1.2px solid var(--volt);color:var(--volt-hi)}
.cc.training{background:var(--text);color:var(--ink)}
.cc.done.running{background:var(--volt);color:#fff;border-color:var(--volt)}
.cc.done.training{background:var(--ok);color:var(--ink)}
.cc.miss{opacity:.45;text-decoration:line-through}
.cc.miss.running{border-style:dashed}
.cc.rest{color:var(--text-3);font-size:10px;height:12px}
.cal-legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:11.5px;color:var(--text-2);margin-top:4px}
.cal-legend span{display:inline-flex;align-items:center;gap:6px}
.cal-legend .cc{min-width:16px;height:12px}
