.duedate-calculator{--dd-primary: #8b5cf6;--dd-secondary: #a78bfa;--dd-accent: #c4b5fd;--dd-dark: #5b21b6;--dd-light: #f5f3ff;--dd-gradient: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 50%, #6d28d9 100%);--dd-card-bg: #ffffff;--dd-border: #e5e7eb;--dd-text: #1f2937;--dd-text-muted: #6b7280;max-width:900px;margin:0 auto;font-family:system-ui,-apple-system,sans-serif}.duedate-header{text-align:center;margin-bottom:2rem;padding:2rem;background:var(--dd-gradient);border-radius:20px;color:#fff;position:relative;overflow:hidden}.duedate-header:before{content:"👶";position:absolute;font-size:8rem;opacity:.1;right:-1rem;top:50%;transform:translateY(-50%)}.duedate-title{font-size:2rem;font-weight:800;margin:0 0 .5rem;position:relative}.duedate-description{font-size:1.1rem;opacity:.95;margin:0;position:relative}.duedate-formula-container{background:var(--dd-card-bg);border-radius:16px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 4px 20px #8b5cf61a;border:1px solid var(--dd-border)}.duedate-formula-title{font-size:1.1rem;font-weight:700;color:var(--dd-dark);margin:0 0 1rem;text-align:center}.duedate-formula-grid{display:grid;grid-template-columns:1fr;gap:1rem}.duedate-formula-card{background:linear-gradient(135deg,#f5f3ff,#ede9fe);border-radius:12px;padding:1.25rem;text-align:center}.duedate-formula-label{font-size:.875rem;font-weight:600;color:var(--dd-primary);margin:0 0 .75rem;text-transform:uppercase}.duedate-formula-display{min-height:3rem;display:flex;align-items:center;justify-content:center;overflow-x:auto}.duedate-form-container{background:var(--dd-card-bg);border-radius:16px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 4px 20px #8b5cf61a;border:1px solid var(--dd-border)}.duedate-mode-toggle{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:1.5rem}.duedate-mode-btn{padding:.75rem .5rem;border:2px solid var(--dd-border);background:#fff;border-radius:10px;cursor:pointer;font-weight:600;font-size:.8rem;color:var(--dd-text-muted);transition:all .3s ease}.duedate-mode-btn.active{border-color:var(--dd-primary);background:var(--dd-light);color:var(--dd-primary)}.duedate-form{display:flex;flex-direction:column;gap:1.25rem}.duedate-input-group{display:flex;flex-direction:column;gap:.5rem}.duedate-input-group.hidden{display:none}.duedate-label{font-weight:600;font-size:.9rem;color:var(--dd-text)}.duedate-label-inline{font-weight:600;font-size:.85rem;color:var(--dd-text);margin-right:.5rem}.duedate-input{padding:.875rem 1rem;border:2px solid var(--dd-border);border-radius:10px;font-size:1rem;transition:all .2s ease;background:#fff}.duedate-input:focus{outline:none;border-color:var(--dd-primary);box-shadow:0 0 0 4px #8b5cf61a}.duedate-input-small{width:5rem;padding:.5rem}.duedate-cycle-row{display:flex;align-items:center;margin-top:.5rem}.duedate-us-weeks-row{display:flex;gap:1rem;margin-top:.75rem}.duedate-us-field{display:flex;flex-direction:column;gap:.25rem}.duedate-buttons{display:grid;grid-template-columns:2fr 1fr;gap:.75rem;margin-top:.5rem}.duedate-calculate-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:var(--dd-gradient);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;box-shadow:0 4px 15px #8b5cf64d}.duedate-calculate-btn:hover{transform:translateY(-2px)}.duedate-btn-icon{font-size:1.25rem}.duedate-reset-btn{padding:1rem;background:var(--dd-light);color:var(--dd-primary);border:none;border-radius:12px;font-weight:600;cursor:pointer}.duedate-results{background:var(--dd-card-bg);border-radius:16px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 4px 20px #8b5cf61a;border:1px solid var(--dd-border)}.duedate-results.hidden{display:none}.duedate-results-title{font-size:1.25rem;font-weight:700;color:var(--dd-dark);margin:0 0 1.25rem;text-align:center}.duedate-main-result{display:flex;align-items:center;justify-content:center;gap:1rem;background:var(--dd-gradient);border-radius:16px;padding:1.5rem;color:#fff;margin-bottom:1.5rem}.duedate-main-icon{font-size:3rem}.duedate-main-content{display:flex;flex-direction:column;gap:.25rem}.duedate-main-label{font-size:.85rem;opacity:.9;text-transform:uppercase}.duedate-main-value{font-size:1.25rem;font-weight:700}.duedate-window{background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:12px;padding:1.25rem;margin-bottom:1.5rem;text-align:center}.duedate-window-title{font-size:.9rem;font-weight:700;color:#92400e;margin:0 0 .25rem}.duedate-window-desc{font-size:.8rem;color:#a16207;margin:0 0 .75rem}.duedate-window-dates{display:flex;align-items:center;justify-content:center;gap:.75rem}.duedate-window-start,.duedate-window-end{font-size:1.1rem;font-weight:700;color:#78350f}.duedate-window-sep{color:#a16207}.duedate-dates-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.5rem}.duedate-date-card{display:flex;flex-direction:column;align-items:center;gap:.25rem;background:var(--dd-light);border-radius:12px;padding:1rem;text-align:center}.duedate-date-icon{font-size:1.5rem}.duedate-date-label{font-size:.7rem;font-weight:600;color:var(--dd-text-muted);text-transform:uppercase}.duedate-date-value{font-size:.9rem;font-weight:700;color:var(--dd-dark)}.duedate-status{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.duedate-status.hidden{display:none}.duedate-status-card{background:#f9fafb;border-radius:12px;padding:1rem;text-align:center}.duedate-status-label{display:block;font-size:.7rem;font-weight:600;color:var(--dd-text-muted);text-transform:uppercase;margin-bottom:.25rem}.duedate-status-value{font-size:1.1rem;font-weight:700;color:var(--dd-dark)}.duedate-content{margin-top:3rem}.duedate-section{margin-bottom:2.5rem}.duedate-section-title{font-size:1.5rem;font-weight:800;color:var(--dd-dark);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:3px solid var(--dd-accent)}.duedate-paragraph{color:var(--dd-text);line-height:1.7;margin-bottom:1rem}.duedate-features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1.5rem}.duedate-feature-card{background:var(--dd-card-bg);border-radius:12px;padding:1.25rem;text-align:center;border:1px solid var(--dd-border)}.duedate-feature-icon{font-size:2rem;display:block;margin-bottom:.75rem}.duedate-feature-title{font-size:1rem;font-weight:700;color:var(--dd-dark);margin:0 0 .5rem}.duedate-feature-description{font-size:.875rem;color:var(--dd-text-muted);margin:0}.duedate-tips-list{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.duedate-tip-card{display:flex;gap:1rem;background:var(--dd-card-bg);border-radius:12px;padding:1.25rem;border:1px solid var(--dd-border)}.duedate-tip-icon{font-size:1.5rem;flex-shrink:0}.duedate-tip-content{flex:1}.duedate-tip-title{font-size:1rem;font-weight:700;color:var(--dd-dark);margin:0 0 .375rem}.duedate-tip-text{font-size:.9rem;color:var(--dd-text-muted);margin:0;line-height:1.6}.duedate-table-wrapper{overflow-x:auto;margin-top:1.5rem;border-radius:12px;border:1px solid var(--dd-border)}.duedate-table{width:100%;border-collapse:collapse;font-size:.85rem}.duedate-table th{background:var(--dd-light);padding:.875rem .75rem;text-align:left;font-weight:700;color:var(--dd-dark);border-bottom:2px solid var(--dd-border)}.duedate-table td{padding:.875rem .75rem;border-bottom:1px solid var(--dd-border)}.duedate-table-row.full{background:#8b5cf60d}.duedate-faq-list{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}.duedate-faq-item{background:var(--dd-card-bg);border-radius:12px;border:1px solid var(--dd-border);overflow:hidden}.duedate-faq-question{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;cursor:pointer;font-weight:600;color:var(--dd-dark);list-style:none}.duedate-faq-question::-webkit-details-marker{display:none}.duedate-faq-icon{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;background:var(--dd-gradient);color:#fff;border-radius:6px;font-size:.75rem;font-weight:800}.duedate-faq-item[open] .duedate-faq-question{border-bottom:1px solid var(--dd-border)}.duedate-faq-answer{padding:1rem 1.25rem;background:#fafafa}.duedate-faq-answer p{margin:0;line-height:1.7}@media (max-width: 768px){.duedate-title{font-size:1.5rem}.duedate-mode-toggle{grid-template-columns:repeat(2,1fr)}.duedate-dates-grid,.duedate-features-grid,.duedate-buttons{grid-template-columns:1fr}}.hidden{display:none!important}
