.gth-ovulation-calculator .gth-form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--gth-space-4); margin-bottom: var(--gth-space-4); }
.gth-ovulation-calculator .gth-ovulation-summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: var(--gth-space-4); margin-bottom: var(--gth-space-4); }
.gth-ovulation-calculator .gth-summary-card { text-align: center; padding: var(--gth-space-4); background: var(--gth-bg-secondary); border-radius: var(--gth-radius-lg); }
.gth-ovulation-calculator .gth-summary-card.gth-fertile { background: #dcfce7; border: 2px solid #22c55e; }
.gth-ovulation-calculator .gth-summary-card.gth-ovulation { background: #fef3c7; border: 2px solid #f59e0b; }
.gth-ovulation-calculator .gth-summary-card .gth-label { font-size: var(--gth-text-sm); margin-bottom: var(--gth-space-1); }
.gth-ovulation-calculator .gth-summary-card .gth-value { font-size: var(--gth-text-lg); font-weight: 700; }
.gth-ovulation-calculator .gth-ovulation-calendar { display: flex; flex-wrap: wrap; gap: var(--gth-space-2); margin-bottom: var(--gth-space-3); }
.gth-ovulation-calculator .gth-calendar-day { width: 60px; padding: var(--gth-space-2); text-align: center; background: var(--gth-bg-secondary); border-radius: var(--gth-radius-md); font-size: var(--gth-text-sm); }
.gth-ovulation-calculator .gth-calendar-day.gth-fertile { background: #dcfce7; }
.gth-ovulation-calculator .gth-calendar-day.gth-ovulation { background: #fef3c7; font-weight: 700; }
.gth-ovulation-calculator .gth-calendar-day.gth-period { background: #fee2e2; }
.gth-ovulation-calculator .gth-calendar-day .gth-day { font-weight: 600; }
.gth-ovulation-calculator .gth-calendar-day .gth-month { font-size: var(--gth-text-xs); color: var(--gth-text-secondary); }
.gth-ovulation-calculator .gth-note { font-size: var(--gth-text-xs); color: var(--gth-text-secondary); text-align: center; }
@media (max-width: 480px) { .gth-ovulation-calculator .gth-form-grid { grid-template-columns: 1fr; } }
