.math-result, .ovulation-summary {
            padding: 18px;
            background-color: #fef9e6;
            border-radius: 16px;
            border-left: 6px solid #e91e63;
            margin: 15px 0;
        }
        .fertility-highlight {
            background: linear-gradient(135deg, #ffe6f0 0%, #ffd9e8 100%);
            border-radius: 16px;
            padding: 1rem;
        }.form-label{font-size:0.9rem}
        .calendar-grid {
            display: grid;
            grid-template-columns: repeat(7, 1fr);
            gap: 6px;
            margin-top: 1.5rem;
            background: white;
            border-radius: 20px;
            padding: 1rem;
            box-shadow: 0 4px 12px rgba(0,0,0,0.05);
            overflow-x: auto;
        }
        .calendar-day {
            background-color: #ffffff;
            border: 1px solid #ffe0e7;
            border-radius: 12px;
            padding: 8px 4px;
            text-align: center;
            transition: all 0.2s;
            font-size: 0.8rem;
            min-width: 40px;
        }
        .calendar-day.fertile-window {
            background: #ffecb3;
            border-left: 4px solid #ff9800;
            font-weight: 500;
        }
        .calendar-day.ovulation-day {
            background: #f9a8d4;
            color: white;
            font-weight: bold;
            border: none;
            box-shadow: 0 4px 8px rgba(233,30,99,0.3);
        }
        .calendar-day.period-day {
            background: #e1f5fe;
            border-left: 4px solid #0288d1;
        }
        .calendar-day.today-highlight {
            outline: 2px solid #2c3e66;
            outline-offset: 0px;
        }
        .calendar-weekday {
            font-weight: 700;
            text-align: center;
            padding: 8px 0;
            color: #b23c6c;
            font-size: 0.85rem;
            background: #fef2f6;
            border-radius: 20px;
        }
        .legend-inline {
            display: flex;
            flex-wrap: wrap;
            gap: 1rem;
            justify-content: center;
            margin: 1rem 0 0.5rem;
        }
        .badge-legend {
            display: inline-flex;
            align-items: center;
            gap: 6px;
            font-size: 0.75rem;
        }
        .legend-color {
            width: 18px;
            height: 18px;
            border-radius: 20px;
        }
        .legend-color.fertile { background-color: #ffecb3; border-left: 3px solid #ff9800; }
        .legend-color.ovulation { background-color: #f9a8d4; }
        .legend-color.period { background-color: #e1f5fe; border-left: 3px solid #0288d1; }
        .cycle-input-group {
            background: #fef2f6;
            border-radius: 24px;
            padding: 1.2rem;
            margin-bottom: 1.5rem;
        }
        .result-value-large {
            font-size: 1.8rem;
            font-weight: 700;
            color: #d81b60;
        }
        .disclaimer-note {
            font-size: 0.75rem;
            background: #fff0f5;
            border-radius: 20px;
            padding: 0.75rem 1rem;
        }
        .btn-outline-fertility {
            border-color: #e91e63;
            color: #e91e63;
        }
        .btn-outline-fertility:hover {
            background-color: #e91e63;
            color: white;
        }
        .section-icon {
            background: #fce4ec;
            width: 48px;
            height: 48px;
            line-height: 48px;
            text-align: center;
            border-radius: 30px;
            display: inline-block;
            margin-right: 12px;
        }
        @media (max-width: 640px) {
            .calendar-day {
                font-size: 0.7rem;
                padding: 6px 2px;
            }
            .calendar-weekday {
                font-size: 0.7rem;
            }
            .result-value-large {
                font-size: 1.4rem;
            }
        }
        .weekday-toggle {
            display: flex;
            justify-content: flex-end;
            margin-bottom: 10px;
        }
        .weekday-toggle .btn-group-sm .btn {
            font-size: 0.75rem;
            padding: 0.2rem 0.5rem;
        }
        .cycle-distribution {
            background: #f0f7ff;
            border-radius: 16px;
            padding: 1rem;
            margin: 1rem 0;
        }
        .comparison-table th, .comparison-table td {
            font-size: 0.85rem;
        }
        .ref-link {
            word-break: break-all;
        }
        .advanced-note {
            font-size: 0.85rem;
            background: #f8f9fa;
            border-radius: 12px;
            padding: 0.5rem;
            margin-top: 0.5rem;
            text-align: center;
        }