.ov{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.ov>.ov-cal-card,.ov>.ov-cycles-card,.ov>.disclaimer{grid-column:1/-1}@media (width<=860px){.ov{grid-template-columns:minmax(0,1fr)}}.ov .mini-btn{justify-content:center;align-items:center;gap:6px;display:inline-flex}.ov [hidden]{display:none!important}.ov-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ov-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:14px;display:grid}.ov-wide{grid-column:1/-1}.ov-fields select,.ov-fields input[type=date]{width:100%}.ov-count{justify-self:start}.ov-count label{justify-content:center;min-width:52px}.ov-hint{color:var(--muted);margin:0;font-size:.86rem}.ov-err{color:var(--danger);margin:0;font-size:.92rem}.ov-err:empty{display:none}.ov input[type=date]{appearance:none;text-align:left;min-height:44px;line-height:44px;display:block}.ov input[type=date]::-webkit-date-and-time-value{text-align:left}.ov input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.75);cursor:pointer}[data-theme=light] .ov input[type=date]::-webkit-calendar-picker-indicator{filter:none}.ov-hero{gap:4px;display:grid}.ov-big{font-family:var(--font-display);letter-spacing:-.035em;overflow-wrap:anywhere;font-size:clamp(1.6rem,1.15rem + 1.5vw,2.25rem);font-weight:700;line-height:1.1}.ov-sub{color:var(--muted);margin:0;font-size:.92rem}.ov-body{gap:14px;display:grid}.ov-today{border-radius:var(--radius-sm);background:radial-gradient(120% 140% at 0% 0%, var(--primary-soft), transparent 60%), var(--bg-soft);border:1px solid var(--line);color:var(--ink-2);margin:0;padding:12px 14px}.ov-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.ov-stats div{border-radius:var(--radius-sm);background:var(--bg-soft);border:1px solid var(--line);min-width:0;padding:10px 12px}.ov-stats dt{color:var(--muted);font-size:.8rem}.ov-stats dd{font-family:var(--font-display);overflow-wrap:anywhere;margin:2px 0 0;font-size:1.08rem;font-weight:650}.ov-btns{gap:8px;display:flex}.ov-cal-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.ov-nav{gap:6px;display:flex}.ov-arrow{width:44px;padding:0}.ov-months{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}@media (width<=700px){.ov-months{grid-template-columns:minmax(0,1fr)}}.ov-month{border-collapse:separate;border-spacing:3px;table-layout:fixed;width:100%}.ov-month caption{text-align:left;font-family:var(--font-display);color:var(--ink);padding-bottom:6px;font-size:1.1rem;font-weight:650}.ov-month th{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:4px 0;font-size:.68rem;font-weight:400}.ov-month td{text-align:center;padding:0}.ov-day{font-variant-numeric:tabular-nums;height:40px;color:var(--ink-2);border:1.5px solid #0000;border-radius:12px;place-items:center;font-weight:550;display:grid;position:relative}.ov-sw{vertical-align:middle;border:1.5px solid #0000;border-radius:6px;width:22px;height:18px;display:inline-block}.ov-k-period{background:color-mix(in srgb, var(--danger) 26%, transparent);border-color:color-mix(in srgb, var(--danger) 60%, transparent);color:var(--ink)}.ov-day.ov-k-period:after{content:"";background:var(--danger);border-radius:2px;width:12px;height:2px;position:absolute;bottom:5px}.ov-k-fertile{border:1.5px dashed var(--sky);background:color-mix(in srgb, var(--sky) 8%, transparent);color:var(--ink)}.ov-k-peak{background:color-mix(in srgb, var(--sky) 30%, transparent);border-color:var(--sky);color:var(--ink)}.ov-k-ovulation{background:linear-gradient(140deg, var(--electric), var(--deep));border-color:var(--sky);color:#fff;box-shadow:0 0 16px -2px #7cc4ffa6}.ov-day.ov-k-ovulation .ov-num{color:#fff}.ov-star{color:var(--ice);font-size:.62rem;line-height:1;position:absolute;top:1px;right:4px}.ov-k-today{outline:2px solid var(--ink);outline-offset:1px}.ov-day.ov-k-today .ov-num{text-underline-offset:3px;font-weight:800;text-decoration:underline}.ov-sw.ov-k-today{background:0 0}.ov-legend{border-top:1px solid var(--line);color:var(--ink-2);flex-wrap:wrap;gap:8px 18px;margin:0;padding:10px 0 0;font-size:.86rem;list-style:none;display:flex}.ov-legend li{align-items:center;gap:8px;display:inline-flex}.ov-cycles{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:12px;display:grid}.ov-cycle{border-radius:var(--radius-sm);background:var(--bg-soft);border:1px solid var(--line);align-content:start;gap:8px;padding:12px 14px;display:grid}.ov-cycle.is-now{border-color:var(--sky);box-shadow:0 0 22px -10px #7cc4ffb3}.ov-cycle h3{margin:0}.ov-cycle dl{gap:4px;margin:0;display:grid}.ov-cycle dl div{border-top:1px solid var(--line);justify-content:space-between;gap:10px;padding:4px 0;font-size:.9rem;display:flex}.ov-cycle dt{color:var(--muted);align-items:center;gap:6px;display:inline-flex}.ov-cycle dd{text-align:right;color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-weight:600}.ov-cycle dt:before{content:"";border-radius:3px;flex:none;width:10px;height:10px}.ov-r-period dt:before{background:color-mix(in srgb, var(--danger) 50%, transparent)}.ov-r-fertile dt:before{border:1.5px dashed var(--sky)}.ov-r-peak dt:before{background:color-mix(in srgb, var(--sky) 45%, transparent)}.ov-r-ovulation dt:before{background:var(--electric)}.ov-r-ovulation dd{color:var(--accent-text)}.ov-r-due dd{color:var(--ink-2);font-weight:500}
