:root{--color-navy:#1b3a5c;--color-navy-deep:#12283f;--color-mint:#2ec4a0;--color-mint-deep:#229c80;--color-mint-soft:#e5f7f2;--color-ink:#0d0d1a;--color-paper:#f6f8fb;--color-surface:#fff;--color-line:#e3e8ef;--color-text:#16233a;--color-muted:#5b6b84;--color-amber-soft:#fbeee0;--color-amber:#c97a3a;--font-display:"Space Grotesk", "Inter", sans-serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--shadow-card:0 1px 2px #12283f0a, 0 12px 32px -16px #12283f29;--shadow-float:0 20px 48px -20px #12283f47;--container-w:760px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-body);background:var(--color-paper);color:var(--color-text);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 12% 8%,#2ec4a014,#0000 40%),radial-gradient(circle at 88% 92%,#1b3a5c0f,#0000 45%);background-attachment:fixed}#root{min-height:100vh}h1,h2,h3{font-family:var(--font-display);color:var(--color-navy);letter-spacing:-.01em;margin:0}p{margin:0}button{font-family:inherit}::selection{background:var(--color-mint-soft);color:var(--color-navy-deep)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}:focus-visible{outline:2px solid var(--color-mint-deep);outline-offset:2px}.page{flex-direction:column;min-height:100vh;display:flex}.app-header{text-align:center;padding:28px 20px 8px}.app-header__brand{font-family:var(--font-display);color:var(--color-navy);letter-spacing:-.01em;align-items:center;gap:8px;font-size:1.05rem;font-weight:700;display:inline-flex}.app-header__logo-dot{background:linear-gradient(135deg, var(--color-mint), var(--color-navy));border-radius:50%;width:10px;height:10px}.app-header__tagline{color:var(--color-muted);margin-top:6px;font-size:.95rem}.app-main{width:100%;max-width:var(--container-w);flex:1;margin:0 auto;padding:12px 20px 64px}.app-footer{text-align:center;color:var(--color-muted);padding:24px 20px 32px;font-size:.8rem}.progress{margin:12px 0 32px}.progress__track{background:var(--color-line);border-radius:999px;height:4px;margin:0 6px 14px;position:relative}.progress__fill{background:linear-gradient(90deg, var(--color-navy), var(--color-mint));border-radius:999px;height:100%;transition:width .5s cubic-bezier(.22,1,.36,1);position:absolute;inset:0 auto 0 0}.progress__marker{background:var(--color-mint);border:3px solid var(--color-surface);width:14px;height:14px;box-shadow:0 0 0 1px var(--color-mint);border-radius:50%;transition:left .5s cubic-bezier(.22,1,.36,1);position:absolute;top:50%;transform:translate(-50%,-50%)}.progress__labels{grid-template-columns:repeat(4,1fr);margin:0;padding:0;list-style:none;display:grid}.progress__label{color:var(--color-muted);text-align:center;justify-content:center;align-items:center;gap:6px;font-size:.75rem;display:flex}.progress__label.is-active{color:var(--color-navy);font-weight:600}.progress__label.is-done{color:var(--color-mint-deep)}.progress__dot{display:none}@media (width>=560px){.progress__label:first-child{text-align:left;justify-content:flex-start}.progress__label:last-child{text-align:right;justify-content:flex-end}}.card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:28px 22px}@media (width>=640px){.card{padding:40px 44px}}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--color-mint-deep);margin-bottom:8px;font-size:.75rem;font-weight:700}.card h2{margin-bottom:6px;font-size:1.5rem}@media (width>=640px){.card h2{font-size:1.8rem}}.subtitle{color:var(--color-muted);margin-bottom:24px;font-size:.95rem}.section-title{margin:28px 0 14px;font-size:1.1rem}.fade-in{animation:.4s both fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.field{margin-bottom:26px}.field label{color:var(--color-text);margin-bottom:12px;font-size:.95rem;font-weight:600;display:block}.hint{color:var(--color-muted);margin-top:10px;font-size:.82rem;line-height:1.5}.hint--above{margin-top:-4px;margin-bottom:14px}.pills{flex-wrap:wrap;gap:8px;display:flex}.pill{border:1.5px solid var(--color-line);background:var(--color-surface);color:var(--color-text);cursor:pointer;border-radius:999px;padding:10px 16px;font-size:.9rem;font-weight:500;transition:all .15s}.pill:hover{border-color:var(--color-mint)}.pill.is-active{background:var(--color-navy);border-color:var(--color-navy);color:#fff}.stepper{border:1.5px solid var(--color-line);background:var(--color-surface);border-radius:999px;align-items:center;gap:0;width:fit-content;display:inline-flex;overflow:hidden}.stepper__btn{background:var(--color-paper);width:44px;height:44px;color:var(--color-navy);cursor:pointer;border:none;justify-content:center;align-items:center;font-size:1.2rem;font-weight:600;transition:background .15s;display:flex}.stepper__btn:hover{background:var(--color-mint-soft);color:var(--color-mint-deep)}.stepper__input{text-align:center;-moz-appearance:textfield;background:0 0;border:none;width:64px;padding:10px 4px;font-size:1rem;font-weight:600}.stepper__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.stepper__input:focus{outline:none}.stepper__suffix{color:var(--color-muted);white-space:nowrap;padding-right:16px;font-size:.85rem}.domain-headcounts{flex-direction:column;gap:14px;display:flex}.domain-headcount-block{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-paper);padding:16px 18px}.domain-headcount-block__title{color:var(--color-navy);margin-bottom:8px;font-size:.95rem;font-weight:700}.domain-headcount-block__question{color:var(--color-muted);margin-bottom:12px;font-size:.85rem;display:block}.soft-warning{border-radius:var(--radius-sm);background:var(--color-amber-soft);color:#7a4420;margin-top:18px;padding:12px 16px;font-size:.85rem;line-height:1.5}.custom-rate{align-items:center;gap:10px;margin-top:12px;display:flex}.custom-rate input{width:140px}.custom-rate span{color:var(--color-muted);font-size:.9rem}input[type=number],input[type=text],input[type=email],input[type=tel]{font-family:var(--font-body);border-radius:var(--radius-sm);border:1.5px solid var(--color-line);background:var(--color-paper);color:var(--color-text);width:100%;padding:12px 14px;font-size:1rem;transition:border-color .15s}input:focus{border-color:var(--color-mint);background:var(--color-surface);outline:none}.actions{justify-content:space-between;gap:12px;margin-top:32px;display:flex}.actions--end{justify-content:flex-end}.actions--center{flex-wrap:wrap;justify-content:center}.btn{cursor:pointer;border:none;border-radius:999px;padding:13px 24px;font-size:.95rem;font-weight:600;transition:transform .15s,box-shadow .15s,opacity .15s}.btn:active{transform:scale(.98)}.btn--primary{background:var(--color-mint);color:var(--color-navy-deep);box-shadow:0 8px 20px -8px #2ec4a099}.btn--primary:hover:not(:disabled){background:var(--color-mint-deep);color:#fff}.btn--primary:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn--lg{padding:15px 32px;font-size:1rem}.btn--ghost{color:var(--color-muted);border:1.5px solid var(--color-line);background:0 0}.btn--ghost:hover{border-color:var(--color-navy);color:var(--color-navy)}.btn--secondary{background:var(--color-navy);color:#fff}.btn--secondary:hover{background:var(--color-navy-deep)}.domain-group{margin-bottom:22px}.domain-group:last-child{margin-bottom:0}.domain-group__heading{letter-spacing:.03em;text-transform:uppercase;color:var(--color-navy);opacity:.7;margin-bottom:10px;font-size:.78rem;font-weight:700}.time-list{flex-direction:column;gap:16px;display:flex}.time-row{border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-paper);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.time-row__info{flex:1;align-items:flex-start;gap:12px;min-width:200px;display:flex}.time-row__icon{font-size:1.3rem;line-height:1}.time-row__label{font-size:.95rem;font-weight:600}.time-row__desc{color:var(--color-muted);margin-top:2px;font-size:.8rem}.time-row__input{flex-shrink:0;align-items:center;gap:8px;display:flex}.time-row__input input{text-align:center;width:76px;padding:10px 8px}.time-row__input span{color:var(--color-muted);white-space:nowrap;font-size:.8rem}.task-grid{grid-template-columns:1fr;gap:14px;display:grid}@media (width>=560px){.task-grid{grid-template-columns:1fr 1fr}}.task-card{text-align:left;border:1.5px solid var(--color-line);background:var(--color-paper);border-radius:var(--radius-md);cursor:pointer;padding:18px;transition:border-color .15s,background .15s,transform .15s}.task-card:hover{border-color:var(--color-mint);transform:translateY(-2px)}.task-card.is-active{border-color:var(--color-mint);background:var(--color-mint-soft)}.task-card__top{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.task-card__icon{font-size:1.4rem}.task-card__check{border:1.5px solid var(--color-line);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.75rem;display:flex}.task-card__check.is-active{background:var(--color-mint);border-color:var(--color-mint)}.task-card__label{margin-bottom:4px;font-size:.98rem;font-weight:600}.task-card__desc{color:var(--color-muted);font-size:.82rem;line-height:1.4}.task-card__hours{color:var(--color-navy);margin-top:10px;font-size:.78rem;font-weight:600}.card--result{padding-top:24px}.result-hero{background:linear-gradient(160deg, var(--color-navy-deep), var(--color-navy));border-radius:var(--radius-lg);color:#fff;flex-direction:column-reverse;align-items:center;gap:24px;margin:18px 0 20px;padding:26px 20px;display:flex}@media (width>=640px){.result-hero{flex-direction:row;justify-content:space-between;padding:32px 36px}}.result-hero__figures{flex:1;min-width:0}.result-hero__kicker{color:#ffffffb3;margin-bottom:4px;font-size:.8rem}.result-hero__value{font-family:var(--font-display);word-break:break-word;margin-bottom:20px;font-size:2rem;font-weight:700;line-height:1.1}@media (width>=480px){.result-hero__value{font-size:2.5rem}}.result-hero__value span{font-family:var(--font-body);color:#ffffffb3;margin-left:4px;font-size:1rem;font-weight:500}.result-hero__row{flex-wrap:wrap;gap:20px;display:flex}.result-hero__sub{font-size:1.05rem;font-weight:600}.gauge{flex-direction:column;flex-shrink:0;align-items:center;display:flex}.gauge__svg{width:200px;max-width:60vw}.gauge__readout{text-align:center;flex-direction:column;align-items:center;margin-top:-18px;display:flex}.gauge__value{font-family:var(--font-display);font-size:1.7rem;font-weight:700}.gauge__label{color:#ffffffbf;max-width:160px;margin-top:2px;font-size:.75rem;line-height:1.3}.gauge__sublabel{color:#ffffff80;margin-top:2px;font-size:.68rem}.disclaimer{color:var(--color-muted);background:var(--color-paper);border-radius:var(--radius-sm);border:1px dashed var(--color-line);padding:14px 16px;font-size:.82rem;line-height:1.6}.breakdown{flex-direction:column;gap:16px;display:flex}.breakdown-row__head{flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:6px;font-size:.9rem;font-weight:600;display:flex}.breakdown-row__hours{color:var(--color-muted);font-size:.8rem;font-weight:500}.breakdown-row__bar{background:var(--color-line);border-radius:999px;height:8px;overflow:hidden}.breakdown-row__bar-fill{background:linear-gradient(90deg, var(--color-navy), var(--color-mint));border-radius:999px;height:100%;transition:width .6s}.breakdown-row__range{color:var(--color-muted);margin-top:6px;font-size:.8rem}.methodology{border-top:1px solid var(--color-line);margin-top:28px;padding-top:16px;font-size:.85rem}.methodology summary{cursor:pointer;color:var(--color-navy);font-weight:600}.methodology p{color:var(--color-muted);margin-top:10px;line-height:1.6}.cta-block{text-align:center;background:var(--color-mint-soft);border-radius:var(--radius-lg);margin-top:32px;padding:28px 16px}.cta-block__headline{font-family:var(--font-display);color:var(--color-navy);margin-bottom:6px;font-size:1.15rem;font-weight:700}
