.fire-input{width:100%;padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:.75rem;font-size:1rem;transition:all .2s ease;background-color:white}.fire-input:focus{outline:0;border-color:#ec4899;box-shadow:0 0 0 3px rgba(236,72,153,0.1)}.fire-input:hover{border-color:#f9a8d4}.method-btn{transition:all .2s ease;cursor:pointer}.method-btn:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px rgba(0,0,0,0.1)}.method-btn.active{box-shadow:0 4px 6px -1px rgba(236,72,153,0.3)}.method-btn:active{transform:translateY(0)}#resultSection{animation:fadeInUp .5s ease-out}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}#timelineContainer>div{transition:all .2s ease}#timelineContainer>div:hover{transform:translateX(4px)}#milestoneContainer>div{transition:all .2s ease}#milestoneContainer>div:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px rgba(0,0,0,0.1)}input[type="date"]{cursor:pointer}input[type="date"]::-webkit-calendar-picker-indicator{opacity:.6;padding:4px;cursor:pointer}input[type="date"]::-webkit-calendar-picker-indicator:hover{opacity:1}#errorDisplay{animation:slideIn .3s ease-out}@keyframes slideIn{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}@media(max-width:768px){.fire-input{font-size:.875rem;padding:.625rem .875rem}.method-btn{font-size:.75rem;padding:.5rem .75rem}#resultSection .grid.md\:grid-cols-4{grid-template-columns:1fr 1fr}}@media print{.fire-input,button:not(.no-print),.bg-pink-600,.no-print{display:none !important}.fire-input{border:0;background:transparent;padding:0}#resultSection{display:block !important}.hidden{display:block !important}}*:focus-visible{outline:2px solid #ec4899;outline-offset:2px;border-radius:.25rem}button:disabled{opacity:.5;cursor:not-allowed;transform:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}::-webkit-scrollbar-thumb{background:#ec4899;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#db2777}tbody tr{transition:background-color .2s ease}tbody tr:hover{background-color:#fdf2f8}input[type="date"]{position:relative}.result-card{transition:all .2s ease}.result-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px rgba(0,0,0,0.1)}#importantDates>div{transition:all .2s ease}#importantDates>div:hover{background-color:#f3f4f6}#dueDateDisplay{animation:pulseText 2s ease-in-out infinite}@keyframes pulseText{0,100%{opacity:1}50%{opacity:.7}}.text-pink-600{color:#ec4899}.bg-pink-50{background-color:#fdf2f8}.border-pink-200{border-color:#fbcfe8}.hover\:bg-pink-700:hover{background-color:#db2777}