:root{--primary-color: #6366f1;--primary-light: #818cf8;--primary-dark: #4f46e5;--secondary-color: #f472b6;--accent-color: #fbbf24;--success-color: #34d399;--warning-color: #fb923c;--error-color: #f87171;--bg-gradient-start: #e0e7ff;--bg-gradient-end: #fce7f3;--card-bg: rgba(255, 255, 255, .95);--card-shadow: 0 10px 40px rgba(99, 102, 241, .15);--text-primary: #1e1b4b;--text-secondary: #6b7280;--text-muted: #9ca3af;--border-color: #e5e7eb;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--radius-xl: 24px;--spacing-xs: 8px;--spacing-sm: 12px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px}:root.dark-mode{--bg-gradient-start: #1e1b4b;--bg-gradient-end: #312e81;--card-bg: rgba(30, 27, 75, .95);--card-shadow: 0 10px 40px rgba(0, 0, 0, .3);--text-primary: #e0e7ff;--text-secondary: #a5b4fc;--text-muted: #818cf8;--border-color: #4338ca}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:var(--text-primary);min-height:100vh;line-height:1.6}.app{min-height:100vh;padding:20px;position:relative}.container{max-width:430px;margin:0 auto;padding-bottom:40px}.dark-mode-toggle{position:fixed;top:20px;right:20px;width:48px;height:48px;border-radius:50%;border:none;background:var(--card-bg);box-shadow:var(--card-shadow);font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:100}.dark-mode-toggle:hover{transform:scale(1.1);box-shadow:0 12px 48px #6366f140}.input-form{background:var(--card-bg);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--card-shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2)}.form-header{text-align:center;margin-bottom:var(--spacing-xl)}.form-header h2{font-size:28px;font-weight:700;background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:4px}.form-header .subtitle{font-size:14px;color:var(--text-secondary)}.form-group{margin-bottom:var(--spacing-lg)}.form-label{display:block;font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.radio-group{display:flex;gap:var(--spacing-sm)}.radio-group.vertical{flex-direction:column}.radio-option{flex:1;display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md);background:#6366f10d;border:2px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all .3s ease;font-size:15px}.radio-option:hover{background:#6366f11a;border-color:var(--primary-light)}.radio-option.active{background:linear-gradient(135deg,#6366f126,#f472b61a);border-color:var(--primary-color);box-shadow:0 4px 12px #6366f133}.radio-option input[type=radio]{display:none}.radio-icon{font-size:20px}.date-select-group{display:flex;gap:var(--spacing-sm)}.form-select{flex:1;padding:var(--spacing-md);border:2px solid var(--border-color);border-radius:var(--radius-md);background:var(--card-bg);color:var(--text-primary);font-size:15px;cursor:pointer;transition:all .3s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:36px}.form-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #6366f133}.error-message{padding:var(--spacing-md);background:#f871711a;border:1px solid rgba(248,113,113,.3);border-radius:var(--radius-md);color:var(--error-color);font-size:14px;margin-bottom:var(--spacing-md);text-align:center}.button-group{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.btn{padding:var(--spacing-md) var(--spacing-lg);border:none;border-radius:var(--radius-md);font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.btn:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#fff3;border-radius:50%;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.btn:active:after{width:300px;height:300px}.btn-primary{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-dark) 100%);color:#fff;box-shadow:0 4px 16px #6366f159}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #6366f173}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn-secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border-color)}.btn-secondary:hover{background:#0000000d;border-color:var(--text-secondary)}.btn-share{width:100%;background:linear-gradient(135deg,var(--accent-color) 0%,#f59e0b 100%);color:#78350f;box-shadow:0 4px 16px #fbbf2459;margin-top:var(--spacing-md)}.btn-share:hover{transform:translateY(-2px);box-shadow:0 8px 24px #fbbf2473}.result-wrapper{margin-top:var(--spacing-lg)}.result-card{background:var(--card-bg);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--card-shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);position:relative;overflow:hidden}.result-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-color) 0%,var(--secondary-color) 50%,var(--accent-color) 100%)}.result-header{text-align:center;margin-bottom:var(--spacing-lg)}.result-emoji{font-size:48px;margin-bottom:var(--spacing-sm);animation:bounce 2s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.result-header h3{font-size:22px;font-weight:700;color:var(--text-primary)}.retired-message{font-size:15px;color:var(--text-secondary);margin-top:var(--spacing-sm);font-style:italic}.result-body{display:flex;flex-direction:column;gap:var(--spacing-md)}.result-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:#6366f10d;border-radius:var(--radius-md)}.result-item.highlight{background:linear-gradient(135deg,#6366f126,#f472b61a);border:1px solid rgba(99,102,241,.2)}.result-label{font-size:14px;color:var(--text-secondary)}.result-value{font-size:16px;font-weight:600;color:var(--text-primary)}.days-value{color:var(--primary-color);font-size:18px}.result-item.countdown{flex-direction:column;gap:var(--spacing-sm);align-items:flex-start}.countdown-values{display:flex;gap:var(--spacing-md);width:100%}.countdown-item{flex:1;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm);background:var(--card-bg);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000000d}.countdown-number{font-size:32px;font-weight:700;background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.countdown-unit{font-size:12px;color:var(--text-muted)}.life-advice-card{margin-top:var(--spacing-lg);padding:var(--spacing-lg);background:linear-gradient(135deg,#34d3991a,#6366f11a);border-radius:var(--radius-md);border:1px solid rgba(52,211,153,.2)}.life-advice-card.retired-advice{background:linear-gradient(135deg,#fbbf241a,#f472b61a);border-color:#fbbf2433}.advice-icon{font-size:24px;margin-bottom:var(--spacing-xs)}.life-advice-card p{font-size:14px;color:var(--text-secondary);line-height:1.6}.quote-section{margin-top:var(--spacing-lg);padding:var(--spacing-lg);background:linear-gradient(135deg,#fbbf241a,#f472b61a);border-radius:var(--radius-md);border-left:4px solid var(--accent-color)}.quote-text{font-size:15px;color:var(--text-primary);font-style:italic;line-height:1.6}.progress-container{margin-top:var(--spacing-lg)}.progress-label{font-size:14px;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.progress-bar-wrapper{height:12px;background:#6366f11a;border-radius:6px;overflow:hidden;position:relative}.progress-bar{height:100%;background:linear-gradient(90deg,var(--primary-color) 0%,var(--secondary-color) 50%,var(--accent-color) 100%);border-radius:6px;transition:width 1s ease-out;position:relative;overflow:hidden}.progress-bar-glow{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-text{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-xs)}.progress-percentage{font-size:20px;font-weight:700;color:var(--primary-color)}.progress-hint{font-size:12px;color:var(--text-muted)}.disclaimer{margin-top:var(--spacing-xl);padding:var(--spacing-lg);background:#00000005;border-radius:var(--radius-md)}.dark-mode .disclaimer{background:#ffffff0d}.disclaimer p{font-size:12px;color:var(--text-muted);line-height:1.6;text-align:center}.disclaimer .copyright{margin-top:var(--spacing-sm);font-size:11px;opacity:.7}.fade-in{animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 430px){.app{padding:12px}.input-form,.result-card{padding:var(--spacing-lg)}.form-header h2{font-size:24px}.countdown-number{font-size:28px}}@media (min-width: 431px){.app{display:flex;justify-content:center;align-items:flex-start;padding-top:40px}.container{width:100%}}select{color:var(--text-primary);background-color:var(--card-bg)}option{background:var(--card-bg);color:var(--text-primary)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#6366f14d;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#6366f180}
