.rectify-tool{max-width:680px;margin:0 auto;padding:0 24px 60px}.rectify-steps{justify-content:center;gap:8px;margin-bottom:40px;display:flex}.rectify-step-dot{width:36px;height:36px;color:var(--text-dim,#8a8272);border:2px solid #c9a84c33;border-radius:50%;justify-content:center;align-items:center;font-size:.8rem;transition:all .3s;display:flex}.rectify-step-dot.active{border-color:var(--gold,#c9a84c);color:var(--gold,#c9a84c);background:#c9a84c1a}.rectify-step-dot.done{color:var(--gold,#c9a84c);background:#c9a84c26;border-color:#c9a84c80}.rectify-step-line{background:#c9a84c26;align-self:center;width:32px;height:2px}.rectify-step-line.done{background:#c9a84c66}.rectify-heading{color:var(--gold,#c9a84c);font-family:var(--font-display,"Cormorant Garamond", serif);margin-bottom:8px;font-weight:400}.rectify-subtext{color:var(--text-dim,#8a8272);margin-bottom:24px;font-size:.9rem;line-height:1.6}.rectify-label{color:var(--text-dim,#8a8272);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;font-size:.8rem;display:block}.rectify-input{width:100%;color:var(--text,#e0dcd0);box-sizing:border-box;background:#ffffff0a;border:1px solid #c9a84c26;border-radius:8px;outline:none;padding:12px 16px;font-family:inherit;font-size:16px;transition:border-color .2s}.rectify-input:focus{border-color:var(--gold,#c9a84c)}.rectify-quick-cities{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.rectify-quick-city{color:var(--text-dim,#8a8272);cursor:pointer;background:#ffffff08;border:1px solid #c9a84c1f;border-radius:20px;min-height:36px;padding:6px 14px;font-family:inherit;font-size:.8rem;transition:all .2s}.rectify-quick-city:hover{border-color:var(--gold,#c9a84c);color:var(--text,#e0dcd0)}.rectify-quick-city.selected{border-color:var(--gold,#c9a84c);color:var(--gold,#c9a84c);background:#c9a84c1f}.rectify-coords-display{color:var(--text-dim,#8a8272);text-align:center;margin-bottom:12px;padding:8px;font-size:.8rem}.rectify-row{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px;display:grid}.rectify-field{margin-bottom:20px}.rectify-presets{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-bottom:20px;display:grid}.rectify-preset{color:var(--text,#e0dcd0);cursor:pointer;text-align:center;background:#ffffff08;border:1px solid #c9a84c1f;border-radius:8px;min-height:48px;padding:14px 12px;font-size:.9rem;transition:all .2s}.rectify-preset:hover{border-color:var(--gold,#c9a84c);background:#c9a84c0f}.rectify-preset.selected{border-color:var(--gold,#c9a84c);color:var(--gold,#c9a84c);background:#c9a84c1f}.rectify-preset-label{font-weight:500}.rectify-preset-sub{opacity:.7;margin-top:2px;font-size:.72rem}.rectify-or-text{text-align:center;color:var(--text-dim,#8a8272);margin:16px 0;font-size:.8rem}.rectify-events{flex-direction:column;gap:12px;margin-bottom:24px;display:flex}.rectify-event-row{background:#ffffff08;border:1px solid #c9a84c1a;border-radius:8px;align-items:center;gap:12px;padding:12px 16px;transition:all .2s;display:flex}.rectify-event-row.checked{background:#c9a84c0f;border-color:#c9a84c4d}.rectify-event-row label{cursor:pointer;flex:1;align-items:center;min-height:28px;font-size:.95rem;display:flex}.rectify-event-row input[type=checkbox]{width:20px;height:20px;accent-color:var(--gold,#c9a84c);cursor:pointer;flex-shrink:0}.rectify-event-year{width:90px;color:var(--text,#e0dcd0);text-align:center;background:#ffffff0a;border:1px solid #c9a84c26;border-radius:6px;flex-shrink:0;padding:8px 12px;font-size:16px}.rectify-personality{border-top:1px solid #c9a84c1a;margin-top:24px;padding-top:24px}.rectify-personality h3{color:var(--gold,#c9a84c);margin:0 0 4px;font-size:1rem;font-weight:400}.rectify-personality-hint{color:var(--text-dim,#8a8272);margin-bottom:12px;font-size:.85rem}.rectify-personality-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.rectify-personality-option{cursor:pointer;text-align:center;color:var(--text,#e0dcd0);background:#ffffff08;border:1px solid #c9a84c1f;border-radius:8px;min-height:48px;padding:14px;font-size:.85rem;transition:all .2s}.rectify-personality-option:hover{border-color:var(--gold,#c9a84c)}.rectify-personality-option.selected{border-color:var(--gold,#c9a84c);color:var(--gold,#c9a84c);background:#c9a84c1f}.rectify-personality-option-label{margin-bottom:2px;font-weight:500}.rectify-personality-option-desc{opacity:.7;font-size:.75rem}.rectify-nav{justify-content:space-between;gap:16px;margin-top:32px;display:flex}.rectify-btn{cursor:pointer;border:none;border-radius:8px;min-height:48px;padding:14px 32px;font-family:inherit;font-size:.95rem;transition:all .2s}.rectify-btn-primary{background:var(--gold,#c9a84c);color:#0a0a14;font-weight:600}.rectify-btn-primary:hover{background:#d4b35c}.rectify-btn-primary:disabled{opacity:.4;cursor:not-allowed}.rectify-btn-secondary{color:var(--text,#e0dcd0);background:0 0;border:1px solid #c9a84c4d}.rectify-btn-secondary:hover{border-color:var(--gold,#c9a84c)}.rectify-loading{text-align:center;padding:60px 20px}.rectify-spinner{border:3px solid #c9a84c33;border-top-color:var(--gold,#c9a84c);border-radius:50%;width:40px;height:40px;margin:0 auto 20px;animation:.8s linear infinite rectify-spin}@keyframes rectify-spin{to{transform:rotate(360deg)}}.rectify-loading p{color:var(--text-dim,#8a8272);font-size:.9rem}.rectify-loading-sub{margin-top:8px;font-size:.8rem!important}.rectify-result-card{text-align:center;background:#c9a84c0f;border:1px solid #c9a84c40;border-radius:12px;margin-bottom:24px;padding:32px}.rectify-result-time{font-family:var(--font-display,"Cormorant Garamond", serif);color:var(--gold,#c9a84c);margin:0 0 8px;font-size:2.5rem}.rectify-result-asc{color:var(--text,#e0dcd0);margin:0 0 8px;font-size:1.1rem}.rectify-result-kp{color:var(--text-soft,#b0a998);font-size:.9rem;font-family:var(--font-body);margin:0 0 12px}.rectify-result-method{color:var(--text-dim,#8a8498);letter-spacing:.5px;margin:8px 0 0;font-size:.8rem}.rectify-confidence{letter-spacing:.05em;text-transform:uppercase;border-radius:20px;padding:6px 16px;font-size:.8rem;display:inline-block}.rectify-confidence.high{color:#81c784;background:#4caf5026;border:1px solid #4caf504d}.rectify-confidence.moderate{color:#ffb74d;background:#ffb74d26;border:1px solid #ffb74d4d}.rectify-confidence.low,.rectify-confidence.very_low{color:#e57373;background:#e5737326;border:1px solid #e573734d}.rectify-confidence.insufficient{color:#bdbdbd;background:#9e9e9e26;border:1px solid #9e9e9e4d}.rectify-timeline{background:#ffffff05;border-radius:8px;margin:24px 0;padding:20px}.rectify-timeline-bar{background:#c9a84c26;border-radius:2px;height:4px;margin:30px 16px 8px;position:relative}.rectify-timeline-marker{text-align:center;position:absolute;top:-24px;transform:translate(-50%)}.rectify-timeline-marker-dot{background:var(--gold,#c9a84c);border-radius:50%;width:12px;height:12px;margin:0 auto 4px;position:relative;top:14px}.rectify-timeline-marker-dot.secondary{background:#c9a84c80;width:8px;height:8px;top:16px}.rectify-timeline-marker-label{color:var(--text-dim,#8a8272);white-space:nowrap;font-size:.7rem}.rectify-timeline-marker-label.best{color:var(--gold,#c9a84c);font-weight:600}.rectify-timeline-range{color:var(--text-dim,#8a8272);justify-content:space-between;margin-top:4px;padding:0 8px;font-size:.7rem;display:flex}.rectify-candidates{margin-top:24px}.rectify-candidates h3{color:var(--gold,#c9a84c);margin:0 0 12px;font-size:1rem;font-weight:400}.rectify-candidates-table{border-collapse:collapse;width:100%}.rectify-candidates-table th{text-align:left;text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim,#8a8272);border-bottom:1px solid #c9a84c26;padding:10px 12px;font-size:.75rem}.rectify-candidates-table td{border-bottom:1px solid #ffffff0a;padding:10px 12px;font-size:.9rem}.rectify-candidates-table tr.best td{color:var(--gold,#c9a84c);font-weight:500}.rectify-disclaimer{color:var(--text-dim,#8a8272);background:#ffffff05;border:1px solid #ffffff0f;border-radius:8px;margin-top:32px;padding:16px;font-size:.8rem;line-height:1.6}.rectify-result-actions{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:32px;display:flex}@media (max-width:600px){.rectify-row,.rectify-personality-options{grid-template-columns:1fr}.rectify-presets{grid-template-columns:1fr 1fr}.rectify-result-time{font-size:2rem}.rectify-event-row{flex-wrap:wrap}.rectify-event-year{width:100%;margin-top:4px}}@media (max-width:768px){.rectify-preset-sub,.rectify-timeline-marker-label,.rectify-timeline-range,.rectify-candidates-table th{font-size:.82rem}}
