body:has(.calculator-lab){--ink:#203c31;--muted:#64746b;--surface:#fff;--line:#dce5df;background:#fff;color:var(--aurora-203c31,#203c31);color-scheme:light}main.tool-page:has(.calculator-lab){width:min(1120px,calc(100% - 48px));margin-inline:auto;padding-inline:0}.calculator-lab{--accent:var(--aurora-116650,#116650);color:var(--aurora-203c31,#203c31);background:#fff;border:1px solid #dce5df;border-radius:20px;overflow:hidden;font-size:14px}.calculator-lab.cl-love{--accent:#b84568}.calculator-lab.cl-ovulation{--accent:#8b5273}.cl-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);min-width:0;align-items:start}.cl-input,.cl-output{padding:24px;min-width:0;background:#fff}.cl-input{border-right:1px solid #dce5df}.cl-output{display:grid;align-content:start;gap:20px}.calculator-lab :is(button,input,select){box-sizing:border-box;min-height:44px;color:var(--aurora-203c31,#203c31);background:#fff;border:1px solid #dce5df;border-radius:10px;font:inherit}.calculator-lab button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 12px;cursor:pointer}.calculator-lab button:hover{background:#fff;border-color:var(--accent)}.calculator-lab :is(button,input,select):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.calculator-lab :disabled{opacity:.45;cursor:default}.cl-panel-heading{justify-content:space-between;margin-bottom:10px}.cl-panel-heading,.cl-panel-heading h2{display:flex;align-items:center;gap:8px}.cl-panel-heading h2{font-size:16px;margin:0;letter-spacing:-.025em}.cl-panel-heading>button{width:44px;padding:8px;flex:none}.cl-note,.cl-private{color:#64746b;font-size:12px;line-height:1.6;margin:0}.cl-private{display:flex;gap:6px;align-items:flex-start;margin-top:18px}.cl-private svg{flex:none;margin-top:3px}.cl-segments{display:flex;gap:6px;padding-block:14px;flex-wrap:wrap}.cl-segments button{flex:1;font-size:12px;min-width:0;padding-inline:8px}.cl-segments button[aria-pressed=true]{color:var(--accent);border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);font-weight:700}.cl-input fieldset,.cl-input form{display:grid;gap:16px;min-width:0;border:0;padding:0;margin:0}.cl-input legend{font-size:13px;font-weight:700;margin-bottom:14px}.cl-field{display:grid;gap:7px;min-width:0;font-size:12px;font-weight:600}.cl-field input,.cl-field select{width:100%;min-width:0;padding:10px 12px;font-size:16px;font-weight:500}.cl-field small{font-size:11px;line-height:1.5;font-weight:400;color:#64746b}.cl-field [aria-invalid=true]{border-color:#b5443b}.cl-check{display:flex;align-items:center;gap:9px;min-height:44px;font-size:12px;line-height:1.5}.cl-check input{width:18px;height:18px;min-height:18px;accent-color:var(--accent);flex:none}.cl-quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.cl-quick button{padding-inline:3px;font-size:11px}.cl-details{border-top:1px solid #dce5df;margin-top:18px;padding-top:12px;font-size:12px;line-height:1.6}.cl-details summary{cursor:pointer;min-height:32px;font-weight:650}.cl-details[open]{display:grid;gap:12px}.cl-details p{margin:8px 0}.cl-details a{display:block;margin-block:8px;color:var(--accent);overflow-wrap:anywhere}.calculator-lab .cl-primary{width:100%;border-color:var(--accent);color:var(--accent);font-weight:750}.cl-error,.cl-field small.cl-error{color:#a53530;font-size:12px;line-height:1.5}.cl-caution{border-left:2px solid var(--accent);padding-left:10px;color:#6b4b56;font-size:12px;line-height:1.6;margin:0}.cl-kicker{display:block;color:var(--accent);font-size:10px;font-weight:750;letter-spacing:.12em}.cl-result-heading h2{font-size:26px;line-height:1.25;letter-spacing:-.04em;margin:9px 0;overflow-wrap:anywhere}.cl-result-heading p{font-size:12px;color:#64746b;line-height:1.6;margin:0}.cl-tax-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cl-tax-card{padding:16px 12px;border:1px solid #dce5df;border-radius:14px;min-width:0}.cl-tax-card.is-best{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.cl-tax-card>div:first-child{display:grid;gap:5px;min-height:40px;font-size:12px}.cl-tax-card>div>span{display:flex;align-items:center;gap:3px;color:var(--accent);font-size:9px}.cl-tax-card>b{display:block;font-size:clamp(17px,2.1vw,25px);font-variant-numeric:tabular-nums;letter-spacing:-.035em;overflow-wrap:anywhere;margin-top:12px}.cl-tax-card>small{font-size:10px;color:#64746b}.cl-tax-card dl{display:grid;gap:5px;font-size:10px;margin:10px 0 0}.cl-tax-card dl div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px}.calculator-lab dd{margin:0;font-variant-numeric:tabular-nums;font-weight:650}.cl-tax-meter{height:3px;margin-top:14px;background:#e5ebe7;border-radius:3px;overflow:hidden}.cl-tax-meter i{display:block;height:100%;background:var(--accent)}.cl-health-hero,.cl-income-summary{display:flex;align-items:center;gap:16px;min-width:0}.cl-ring{width:145px;height:145px;flex:0 0 145px;color:var(--accent)}.cl-health-hero>div,.cl-income-summary>div{min-width:0}.cl-health-hero span,.cl-income-summary span{font-size:12px;color:#64746b}.cl-income-summary strong{display:block;font-size:24px;letter-spacing:-.04em;overflow-wrap:anywhere}.cl-income-summary strong small{font-size:12px;font-weight:500}.cl-health-hero p,.cl-income-summary p{font-size:11px;color:#64746b;line-height:1.5}.cl-income-summary .cl-balance{display:flex;align-items:flex-start;gap:4px;font-size:11px;color:var(--accent)}.cl-balance svg{flex:none}.cl-ledger{display:grid;margin:0;gap:0;font-size:12px}.cl-ledger>div{display:flex;justify-content:space-between;gap:14px;padding-block:10px;border-bottom:1px solid #edf0ee}.cl-ledger dd{text-align:right;white-space:nowrap}.cl-table-wrap{min-width:0;max-width:100%;overflow:auto}.cl-table{width:100%;border-collapse:collapse;font-size:11px}.cl-table caption{text-align:left;font-weight:700;padding-block:12px}.cl-table td,.cl-table th{text-align:left;padding:9px 4px;border-bottom:1px solid #e5ebe7}.cl-table td:first-child{overflow-wrap:anywhere}.cl-exports{display:grid;gap:6px;padding-top:16px;border-top:1px solid #dce5df}.cl-exports>div{display:flex;flex-wrap:wrap;gap:6px}.cl-exports button{flex:1 1 auto;font-size:12px;padding-inline:8px}.cl-exports small{min-height:16px;font-size:11px;color:#64746b}.cl-empty{min-height:360px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:18px;padding:20px;box-sizing:border-box;color:var(--accent)}.cl-empty h2{font-size:22px;line-height:1.3;letter-spacing:-.03em;margin:0}.cl-empty p{font-size:13px;line-height:1.6;color:#64746b;max-width:270px;margin:0}.cl-health-hero h2{font-size:27px;line-height:1.25;letter-spacing:-.04em;margin:8px 0}.cl-trimesters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.cl-trimesters i{display:block;height:3px;background:#dce5df;margin-bottom:10px}.cl-trimesters .is-active i{background:var(--accent)}.cl-trimesters span{display:block;font-size:11px;font-weight:650}.cl-trimesters small{color:#64746b;font-size:10px}.cl-calendar{min-width:0;border:1px solid #dce5df;padding:14px 8px;border-radius:14px}.cl-calendar>strong{display:block;text-align:center;margin-bottom:12px;font-size:14px}.cl-calendar table{width:100%;table-layout:fixed;border-collapse:collapse;text-align:center}.cl-calendar th{font-size:9px;color:#64746b;font-weight:500;padding-bottom:8px}.cl-calendar td{padding:3px 1px}.cl-day{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-size:12px;border:1px solid transparent;box-sizing:border-box}.cl-day.is-period{color:#b64d68;border-color:#ce8497;border-style:dashed}.cl-day.is-fertile{color:#765084;border-color:#b79abf}.cl-day.is-ovulation{color:#8b5273;border:2px solid #8b5273;font-weight:800}.cl-day.is-due{color:var(--aurora-116650,#116650);border:2px solid var(--aurora-116650,#116650);font-weight:800}.cl-month-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px}.cl-month-controls button{width:44px}.cl-calendar-key{display:flex;gap:8px 12px;flex-wrap:wrap;font-size:10px;color:#64746b}.cl-calendar-key span:before{content:"";display:inline-block;width:8px;height:8px;border:1px solid;border-radius:50%;margin-right:4px}.cl-calendar-key .is-period{color:#b64d68}.cl-calendar-key .is-fertile{color:#765084}.cl-calendar-key .is-ovulation{color:#8b5273;font-weight:700}.cl-cycle-result{text-align:center;color:var(--accent)}.cl-cycle-result h2{font-size:25px;letter-spacing:-.04em;line-height:1.3;margin:10px 0}.cl-cycle-result>p{font-size:12px;line-height:1.6;color:#64746b}.cl-love-result{position:relative;text-align:center;padding-block:10px}.cl-love-names{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);align-items:center;gap:10px;color:var(--accent)}.cl-love-names span{font-size:17px;font-weight:700;overflow-wrap:anywhere}.cl-heart-score{position:relative;width:min(250px,100%);aspect-ratio:260/230;margin:24px auto;color:var(--accent)}.cl-heart-score svg{display:block;width:100%;height:100%}.cl-heart-score strong{position:absolute;inset:35% 0 auto;display:block;font-size:58px;line-height:1;letter-spacing:-.065em}.cl-heart-score small{font-size:28px}.cl-love-result h2{font-size:24px;line-height:1.3;letter-spacing:-.035em;margin:0 0 12px}.cl-love-result>p{font-size:12px;color:#64746b;line-height:1.6;margin:0}.cl-sparks{position:absolute;left:50%;top:45%;pointer-events:none;width:0;height:0}.cl-sparks i{position:absolute;width:4px;height:10px;border-radius:4px;border:1px solid var(--accent);opacity:0;animation:cl-spark .8s ease-out}.cl-heart-score svg{animation:cl-heart-pop .6s ease-out}@keyframes cl-spark{15%{opacity:.7}to{opacity:0}}@keyframes cl-heart-pop{0%{transform:scale(.92);opacity:.3}70%{transform:scale(1.025);opacity:1}to{transform:scale(1)}}@media(max-width:760px){main.tool-page:has(.calculator-lab){width:100%;max-width:none;padding-inline:0}main.tool-page:has(.calculator-lab)>:is(.back-link,.tool-intro,.tool-instructions,.faq,.related-tools){padding-inline:12px;box-sizing:border-box}.calculator-lab{border-radius:0;border-inline:0}.cl-layout{grid-template-columns:minmax(0,1fr)}.cl-input,.cl-output{padding:18px max(12px,env(safe-area-inset-left)) 18px max(12px,env(safe-area-inset-right))}.cl-input{border-right:0;border-bottom:1px solid #dce5df}.cl-output{gap:16px}.cl-empty{min-height:220px}.cl-tax-card>b{font-size:24px}.cl-ring{width:120px;height:120px;flex-basis:120px}.cl-result-heading h2{font-size:24px}.cl-health-hero h2{font-size:25px}.cl-love-result{padding-block:14px}}@media(max-width:360px){.cl-health-hero,.cl-income-summary{gap:8px}.cl-ring{width:100px;height:100px;flex-basis:100px}.cl-income-summary strong{font-size:21px}.cl-tax-card{padding:12px 9px}.cl-tax-card>b{font-size:21px}.cl-day{width:29px;height:29px}.cl-calendar{padding-inline:4px}}@media(prefers-reduced-motion:reduce){.cl-heart-score svg,.cl-sparks i{animation:none}}