:root{--ivory:#f4efe6;--paper:#fcfaf6;--paper-strong:#fffdf9;--navy:#17324d;--navy-soft:#31506b;--wine:#7a273a;--wine-dark:#641d2e;--terracotta:#b7654b;--graphite:#2e3338;--muted:#6f7275;--line:#d7ccc0;--line-light:#e7ded5;--success:#287258;--success-soft:#edf7f2;--warning:#a96723;--warning-soft:#fff7e9;--shadow:0 16px 42px #36271c14, 0 2px 8px #36271c0d}*{box-sizing:border-box}html{background:var(--ivory);color:var(--graphite);scroll-behavior:smooth}body{background:radial-gradient(circle at 8% 0%, #ffffffc7, transparent 30rem), linear-gradient(180deg, #f9f5ee 0%, var(--ivory) 100%);color:var(--graphite);min-width:320px;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}button,select{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #7a273a38}.app-shell{min-height:100vh}.topbar{border-bottom:1px solid var(--line);z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fcfaf6f0;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:24px;width:min(1320px,100% - 72px);min-height:78px;margin:0 auto;display:flex}.brand{appearance:none;color:var(--navy);letter-spacing:-.025em;background:0 0;border:0;align-items:center;gap:13px;padding:8px 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.25rem,2vw,1.7rem);font-weight:700;display:inline-flex}.brand-mark{border:1px solid var(--navy);letter-spacing:.08em;border-radius:12px 12px 17px 17px;place-items:center;width:43px;height:43px;font-family:Inter,sans-serif;font-size:.69rem;display:grid;box-shadow:inset 0 -4px #17324d14}.topbar-actions{align-items:center;gap:16px;display:flex}.text-button{color:var(--wine);background:0 0;border:0;padding:8px 2px;font-size:.86rem;font-weight:700}.text-button:hover{color:var(--wine-dark);text-underline-offset:4px;text-decoration:underline}.text-button.muted{color:var(--muted)}.product-badge{color:var(--wine);white-space:nowrap;border:1px solid #7a273aa6;border-radius:10px;padding:11px 17px;font-size:.83rem;font-weight:650}.product-badge b{color:var(--terracotta);margin:0 3px}.page-container{width:min(1320px,100% - 72px);margin:0 auto}.hero{padding:52px 4px 34px}.eyebrow,.section-kicker,.verdict-label{color:var(--wine);text-transform:uppercase;letter-spacing:.13em;margin:0 0 11px;font-size:.7rem;font-weight:800;display:block}.hero h1,.section-heading h2,.summary-card h2,.result-header h2,.rules-heading h3,.memory-section h3,.legal-sources h3{color:var(--navy);letter-spacing:-.03em;font-family:Georgia,Times New Roman,serif}.hero h1{max-width:1050px;margin:0;font-size:clamp(2.25rem,4.1vw,3.65rem);font-weight:700;line-height:1.04}.hero>p:last-child{color:#555a5e;max-width:820px;margin:18px 0 0;font-size:1.05rem;line-height:1.7}.stepper{grid-template-columns:repeat(4,1fr);gap:0;margin:0 0 30px;display:grid;position:relative}.step{appearance:none;border:0;border-bottom:2px solid var(--line);color:#595a5b;text-align:left;background:0 0;justify-content:flex-start;align-items:center;gap:13px;min-height:73px;padding:13px 10px 18px;font-size:.93rem;font-weight:600;transition:color .18s,border-color .18s,background .18s;display:flex;position:relative}.step:hover{color:var(--wine);background:#ffffff47}.step.active{color:var(--wine);border-color:var(--wine)}.step.complete{color:var(--navy-soft)}.step-number{width:34px;height:34px;color:inherit;background:#ffffff73;border:1px solid #bcb1a6;border-radius:50%;flex:none;place-items:center;font-family:Georgia,serif;font-size:1rem;display:grid}.step.active .step-number{border-color:var(--wine);background:var(--wine);color:#fff}.step.complete .step-number{border-color:var(--navy-soft);background:var(--navy-soft);color:#fff;font-family:Inter,sans-serif}.notice{border-left:4px solid var(--terracotta);color:var(--navy);background:#fffdf9e6;border-radius:0 8px 8px 0;margin:-12px 0 22px;padding:13px 16px;font-size:.88rem;box-shadow:0 2px 10px #36271c0d}.workspace-grid{grid-template-columns:minmax(0,2.1fr) minmax(300px,.9fr);align-items:start;gap:28px;display:grid}.main-card,.summary-card{border:1px solid var(--line-light);box-shadow:var(--shadow);background:#fffdf9eb;border-radius:11px}.main-card{overflow:hidden}.step-panel{min-height:460px;padding:34px 36px 30px;animation:.22s ease-out panel-in}@keyframes panel-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.section-heading,.result-header,.rules-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:24px;margin:0 0 25px;padding:0 0 20px;display:flex}.section-heading h2,.result-header h2{margin:0;font-size:clamp(1.75rem,3vw,2.2rem);line-height:1.1}.section-heading p,.result-header p{color:var(--muted);margin:8px 0 0;font-size:.88rem;line-height:1.55}.autosave{color:var(--success);background:var(--success-soft);white-space:nowrap;border-radius:999px;padding:7px 11px;font-size:.72rem;font-weight:700}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:21px 20px;display:grid}.form-grid.compact{gap:16px}.span-2{grid-column:span 2}.field{min-width:0;color:var(--graphite);flex-direction:column;gap:8px;display:flex}.field>span{font-size:.82rem;font-weight:700}.field>span small{color:#94908d;margin-left:5px;font-size:.72rem;font-weight:500}.field>small{color:var(--muted);font-size:.72rem;line-height:1.45}.field input,.field select,.money-input{width:100%;min-height:50px;color:var(--graphite);background:#ffffffc7;border:1px solid #b9b1aa;border-radius:7px;transition:border-color .16s,box-shadow .16s,background .16s}.field input,.field select{padding:0 14px}.field input::placeholder{color:#a39f9b}.field input:hover,.field select:hover,.money-input:hover{border-color:var(--navy-soft)}.field input:focus,.field select:focus,.money-input:focus-within{border-color:var(--navy);background:#fff;outline:none;box-shadow:0 0 0 3px #17324d17}.field input:disabled,.field select:disabled{cursor:not-allowed;color:#8d8986;background:#f1ede8}.card-footer{border-top:1px solid var(--line-light);background:#f8f3eca6;justify-content:space-between;align-items:center;gap:16px;min-height:88px;padding:18px 36px;display:flex}.primary-button,.secondary-button,.back-button,.add-period-wide,.remove-button{border-radius:7px;font-weight:750;transition:transform .16s,box-shadow .16s,background .16s,border-color .16s}.primary-button{border:1px solid var(--wine);background:var(--wine);color:#fff;justify-content:center;align-items:center;gap:17px;min-height:52px;padding:0 23px;display:inline-flex;box-shadow:0 8px 18px #7a273a30}.primary-button:hover{background:var(--wine-dark);transform:translateY(-1px);box-shadow:0 10px 24px #7a273a3d}.secondary-button{border:1px solid var(--wine);color:var(--wine);white-space:nowrap;background:0 0;min-height:42px;padding:0 15px}.secondary-button:hover{background:#7a273a0f}.back-button{color:var(--navy-soft);background:0 0;border:0;padding:12px 0}.back-button:hover{color:var(--wine)}.summary-card{padding:0 28px 28px;position:sticky;top:104px;overflow:hidden}.summary-accent{background:var(--terracotta);height:5px;margin:0 -28px 25px}.summary-card h2{border-bottom:1px solid var(--line);margin:0;padding:0 0 19px;font-size:1.55rem}.summary-list{margin-top:7px}.summary-list>div{border-bottom:1px solid var(--line-light);justify-content:space-between;align-items:center;gap:16px;min-height:68px;display:flex}.summary-list span{color:#5c5c5d;font-size:.79rem}.summary-list strong{color:var(--wine);text-align:right;font-family:Georgia,serif;font-size:1rem}.summary-info{color:var(--muted);align-items:flex-start;gap:12px;margin-top:23px;display:flex}.summary-info>span,.callout-icon{width:29px;height:29px;color:var(--navy-soft);border:1px solid #7991a8;border-radius:50%;flex:none;place-items:center;font-family:Georgia,serif;font-weight:700;display:grid}.summary-info p{margin:3px 0 0;font-size:.77rem;line-height:1.55}.summary-best{background:#fff8fa;border:1px solid #d8b6be;border-radius:9px;flex-direction:column;gap:5px;margin-top:22px;padding:15px;display:flex}.summary-best span{color:var(--wine);text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;font-weight:800}.summary-best strong{color:var(--navy);font-family:Georgia,serif;font-size:1.35rem}.summary-best small{color:var(--muted);line-height:1.4}.period-list{flex-direction:column;gap:18px;display:flex}.period-card{border:1px solid var(--line);background:#ffffff8a;border-radius:9px;padding:19px}.period-title-row{justify-content:space-between;align-items:flex-start;gap:16px;margin:0 0 18px;display:flex}.period-title-row>div{flex-direction:column;gap:4px;display:flex}.period-index{color:var(--wine);text-transform:uppercase;letter-spacing:.11em;font-size:.65rem;font-weight:800}.period-title-row strong{color:var(--navy);font-family:Georgia,serif;font-size:1.03rem}.remove-button{color:#95606b;background:0 0;border:0;padding:5px 0;font-size:.74rem}.remove-button:hover{color:var(--wine);text-decoration:underline}.checkbox-row{color:var(--navy-soft);cursor:pointer;align-items:center;gap:9px;margin-top:16px;font-size:.77rem;font-weight:600;display:inline-flex}.checkbox-row input{width:17px;height:17px;accent-color:var(--wine)}.add-period-wide{width:100%;color:var(--wine);background:0 0;border:1px dashed #b69fa4;min-height:49px;margin-top:18px}.add-period-wide:hover{border-color:var(--wine);background:#7a273a09}.add-period-wide span{margin-right:7px;font-size:1.15rem}.parameter-callout{background:#f1f5f7;border:1px solid #d4dee4;border-radius:8px;align-items:flex-start;gap:14px;margin:0 0 24px;padding:16px;display:flex}.parameter-callout strong{color:var(--navy);font-size:.87rem}.parameter-callout p{color:#56636c;margin:4px 0 0;font-size:.77rem;line-height:1.55}.salary-grid{align-items:start}.money-input{align-items:center;display:flex;overflow:hidden}.money-input b{color:var(--navy-soft);padding-left:14px;font-size:.82rem}.money-input input{background:0 0;border:0;border-radius:0;box-shadow:none!important}.rule-note{border-top:1px solid var(--line);color:var(--muted);margin-top:28px;padding-top:20px}.rule-note strong{color:var(--navy);font-family:Georgia,serif}.rule-note p{margin:6px 0 0;font-size:.8rem;line-height:1.55}.result-panel{padding-bottom:36px}.result-header{align-items:center}.print-button{min-width:150px}.verdict{border:1px solid;border-radius:10px;justify-content:space-between;align-items:stretch;gap:28px;margin-bottom:22px;padding:23px;display:flex}.verdict.positive{background:var(--success-soft);border-color:#add2c2}.verdict.pending{background:var(--warning-soft);border-color:#e5c9a6}.verdict-label{color:var(--success);margin-bottom:7px}.verdict.pending .verdict-label{color:var(--warning)}.verdict>div:first-child>strong{color:var(--navy);font-family:Georgia,serif;font-size:1.35rem;display:block}.verdict p{color:#5b6560;margin:7px 0 0;font-size:.79rem;line-height:1.5}.verdict-value{text-align:right;border-left:1px solid #28725840;flex-direction:column;justify-content:center;align-items:flex-end;min-width:210px;padding-left:24px;display:flex}.verdict-value span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:800}.verdict-value b{color:var(--navy);margin:5px 0;font-family:Georgia,serif;font-size:1.45rem}.verdict-value small{max-width:240px;color:var(--muted);font-size:.64rem;line-height:1.35}.metrics-row{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px;display:grid}.metrics-row>div{border:1px solid var(--line-light);background:#fbf8f3;border-radius:8px;min-width:0;padding:14px}.metrics-row span,.memory-grid span{color:var(--muted);margin-bottom:6px;font-size:.66rem;line-height:1.35;display:block}.metrics-row strong,.memory-grid strong{color:var(--navy);font-family:Georgia,serif;font-size:.95rem}.result-alert{border-left:4px solid var(--navy-soft);color:#4e606b;background:#eef4f7;margin-bottom:12px;padding:11px 13px;font-size:.75rem;line-height:1.45}.result-alert.warning{border-color:var(--warning);background:var(--warning-soft)}.rules-section{margin-top:28px}.rules-heading{align-items:center;margin-bottom:13px;padding-bottom:12px}.rules-heading h3{margin:0;font-size:1.4rem}.rules-heading span{color:var(--muted);font-size:.72rem;font-weight:700}.rules-list{flex-direction:column;gap:10px;display:flex}.rule-card{border:1px solid var(--line);background:#ffffff7a;border-radius:8px;overflow:hidden}.rule-card.eligible{border-color:#9fc7b6}.rule-card summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:13px;min-height:91px;padding:14px 16px;list-style:none;display:grid}.rule-card summary::-webkit-details-marker{display:none}.rule-card summary:hover{background:#f4efe694}.rule-status{background:var(--warning-soft);width:31px;height:31px;color:var(--warning);border-radius:50%;place-items:center;font-weight:900;display:grid}.eligible .rule-status{background:var(--success-soft);color:var(--success)}.rule-summary-text{flex-direction:column;gap:3px;min-width:0;display:flex}.status-text{color:var(--warning);text-transform:uppercase;letter-spacing:.08em;font-size:.61rem;font-weight:850}.eligible .status-text{color:var(--success)}.rule-summary-text strong{color:var(--navy);font-family:Georgia,serif;font-size:.96rem;line-height:1.3}.rule-summary-text small{color:var(--muted);font-size:.66rem;line-height:1.35}.rule-value{text-align:right;min-width:115px}.rule-value span{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:.61rem;display:block}.rule-value b{color:var(--navy);font-family:Georgia,serif;font-size:.92rem}.disclosure{color:var(--wine);font-size:1.2rem;transition:transform .18s}.rule-card[open] .disclosure{transform:rotate(180deg)}.rule-details{border-top:1px solid var(--line-light);background:#fbf8f3;grid-template-columns:1.3fr 1fr;gap:24px;padding:17px 61px;display:grid}.rule-details h4{color:var(--navy);margin:0 0 8px;font-size:.74rem}.rule-details ul,.rule-details p{color:#61676b;margin:0;font-size:.71rem;line-height:1.65}.rule-details ul{padding-left:17px}.rule-details li::marker{color:var(--success)}.missing-list li::marker{color:var(--warning)}.memory-section,.legal-sources{border-top:1px solid var(--line);margin-top:31px;padding-top:24px}.memory-section h3,.legal-sources h3{margin:0 0 15px;font-size:1.35rem}.memory-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.memory-grid>div{background:#f7f2eb;border-radius:6px;padding:12px}.source-links{flex-wrap:wrap;gap:9px;display:flex}.source-links a{color:var(--wine);border:1px solid #d5b7be;border-radius:999px;padding:8px 12px;font-size:.69rem;font-weight:700;text-decoration:none}.source-links a:hover{border-color:var(--wine);background:#fff5f7}.disclaimer{background:#fffaf0;border:1px solid #dec8a9;border-radius:7px;margin-top:27px;padding:15px 17px}.disclaimer strong{color:#785325;font-size:.74rem}.disclaimer p{color:#72644e;margin:5px 0 0;font-size:.68rem;line-height:1.55}.page-footer{color:#8a8580;justify-content:space-between;gap:20px;padding:27px 3px 40px;font-size:.68rem;display:flex}@media (width<=1040px){.topbar-inner,.page-container{width:min(100% - 40px,920px)}.topbar-actions .text-button{display:none}.workspace-grid{grid-template-columns:1fr}.summary-card{order:-1;position:static}.summary-list{grid-template-columns:repeat(3,1fr);gap:0 18px;display:grid}.summary-list>div{flex-direction:column;justify-content:center;align-items:flex-start;gap:4px}.summary-list strong{text-align:left}}@media (width<=720px){.topbar-inner,.page-container{width:min(100% - 24px,680px)}.topbar-inner{min-height:67px}.brand{font-size:1.08rem}.brand-mark{width:36px;height:36px}.product-badge{display:none}.hero{padding-top:34px}.hero h1{font-size:2.05rem}.stepper{grid-template-columns:repeat(4,minmax(0,1fr))}.step{justify-content:center;min-height:62px;padding:10px 4px 13px}.step>span:last-child{display:none}.step-panel{padding:25px 20px}.card-footer{padding:15px 20px}.form-grid,.rule-details,.memory-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.section-heading,.result-header,.verdict{flex-direction:column}.section-heading .secondary-button,.print-button{width:100%}.summary-list,.metrics-row{grid-template-columns:repeat(2,1fr)}.verdict-value{text-align:left;border-top:1px solid #28725840;border-left:0;align-items:flex-start;width:100%;min-width:0;padding:16px 0 0}.rule-card summary{grid-template-columns:auto minmax(0,1fr) auto}.rule-value{display:none}.rule-details{padding:16px}.page-footer{flex-direction:column}}@media (width<=440px){.topbar-actions{display:none}.summary-list,.metrics-row{grid-template-columns:1fr}.card-footer{flex-direction:column-reverse;align-items:stretch}.primary-button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media print{@page{size:A4;margin:14mm}body{color:#000;background:#fff}.topbar,.hero,.stepper,.summary-card,.card-footer,.notice,.print-button,.page-footer{display:none!important}.page-container{width:100%}.workspace-grid{display:block}.main-card{box-shadow:none;border:0}.step-panel{min-height:0;padding:0}.rule-card,.verdict,.metrics-row>div,.memory-grid>div{break-inside:avoid}.rule-card details,.rule-card[open]{display:block}.rule-card:not([open]) .rule-details{display:grid}.source-links a{color:#000}}
