.first-step-page{background:#f7fbff;color:#0b1f3b}
.first-step-page .panel-nav-links [aria-current="page"]{color:#0756b8;text-decoration:underline;text-underline-offset:6px}
.tool-intro{padding:90px 0 74px;background:radial-gradient(circle at 85% 35%,#d6edff 0,transparent 42%),linear-gradient(120deg,#fff,#f3faff)}
.tool-intro-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(230px,.8fr);gap:40px;align-items:center}
.tool-intro h1{font:400 clamp(58px,7vw,112px)/.99 var(--serif);letter-spacing:-.045em;max-width:900px;margin:0 0 26px}
.tool-intro h1 em{display:block;color:#2255e0}
.tool-lede{max-width:670px;color:#496784;font-size:clamp(20px,1.7vw,25px);line-height:1.48;margin:0 0 20px}
.tool-assurance{font-size:14px;color:#426485;letter-spacing:.05em;margin:0}
.intro-art{min-height:280px;display:flex;align-items:center;justify-content:center;position:relative}
.intro-orb{width:min(29vw,310px);aspect-ratio:1;border-radius:50%;background:#fff url('/images/favicon-source.png') center/cover;box-shadow:0 32px 80px #1479cf2e}
.intro-art p{position:absolute;right:0;bottom:0;font:400 38px/.9 var(--serif);color:#145ba8;transform:rotate(-7deg)}
.tool-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;align-items:start;padding-block:70px}
.tool-form-card,.tool-result{background:white;border:1px solid #d7e7f7;border-radius:28px;padding:40px;box-shadow:0 14px 48px #1d54800d}
.tool-form-card{grid-column:1/-1;max-width:850px;width:100%;margin-inline:auto}
.tool-workspace:has(.tool-result:not([hidden])) .tool-form-card{grid-column:1;max-width:none}
.tool-result[hidden]{display:none}
.tool-form-card h2,.tool-result h2,.tool-guide h2{font:400 clamp(42px,4vw,64px)/1 var(--serif);margin:0 0 16px}
.tool-form-card>p:not(.kicker):not(.tool-privacy){color:#58708a;font-size:18px;margin:0 0 28px}
.task-field{margin:0 0 16px}
.task-field label{display:block;font-weight:600;font-size:15px;margin:0 0 8px}
.task-field input{display:block;width:100%;min-height:58px;padding:14px 17px;border:1px solid #bfd5ea;border-radius:13px;background:#fafdff;color:#0b1f3b;font:18px/1.3 var(--sans)}
.task-field input:focus-visible{outline:3px solid #83bfff;outline-offset:2px}
.task-field input[aria-invalid="true"]{border-color:#b23c5c}
.add-task{border:0;background:none;color:#0756b8;font-weight:650;font-size:16px;padding:10px 0;margin:0 0 28px}
.add-task[hidden]{display:none}
.time-choice{border:0;margin:0 0 30px;padding:0}
.time-choice legend{font-weight:600;font-size:16px;margin-bottom:14px}
.time-choice legend span{font-weight:400;color:#6b829b;font-size:14px;margin-left:6px}
.time-options{display:flex;flex-wrap:wrap;gap:10px}
.time-options label{cursor:pointer}
.time-options input{position:absolute;opacity:0;width:1px;height:1px}
.time-options span{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 17px;border:1px solid #c7dcf0;border-radius:25px;color:#205482;background:#f7fbff;font-size:15px}
.time-options input:checked+span{color:#fff;background:#145aa0;border-color:#145aa0}
.time-options input:focus-visible+span{outline:3px solid #83bfff;outline-offset:3px}
.first-step-page .tool-submit{width:100%;justify-content:space-between;font-weight:650;border:0}
.tool-submit:disabled{opacity:.65;cursor:wait}
.tool-message{min-height:1.5em;margin:16px 0 0;color:#365c7d;font-size:16px}
.tool-message:empty{min-height:0;margin:0}
.tool-privacy{border-top:1px solid #e1ecf5;padding-top:19px;color:#647f9a;font-size:13px;line-height:1.5;margin:24px 0 0}
.tool-privacy a{text-decoration:underline}
.result-heading{display:flex;align-items:center;gap:15px;margin-bottom:24px}
.result-heading img{width:68px;height:68px;object-fit:cover;border-radius:50%}
.result-heading .kicker{margin:0 0 7px;font-size:11px}
.result-heading h2{font-size:45px;margin:0}
#ordered-tasks{list-style:none;counter-reset:tasks;padding:0;margin:0;display:grid;gap:12px}
#ordered-tasks li{counter-increment:tasks;position:relative;border:1px solid #e0ebf5;background:#fbfdff;border-radius:15px;padding:15px 16px 15px 62px;min-height:76px}
#ordered-tasks li::before{content:counter(tasks,decimal-leading-zero);position:absolute;left:17px;top:16px;color:#1462b4;font:32px/1 var(--serif)}
#ordered-tasks strong{display:block;font:600 17px/1.35 var(--sans);overflow-wrap:anywhere}
#ordered-tasks p{color:#58708a;font-size:14px;line-height:1.45;margin:5px 0 0}
.start-card{background:#eaf5ff;border:1px solid #c4e2fb;border-radius:18px;margin-top:20px;padding:20px}
.start-card .kicker{margin-bottom:7px;font-size:11px}
.start-card p:last-child{font:400 23px/1.2 var(--serif);margin:0}
.handoff-card{margin-top:22px;padding-top:22px;border-top:1px solid #dce9f5}
.handoff-card h3{font:400 32px/1.05 var(--serif);margin:0 0 10px}
.handoff-card p{font-size:15px;color:#58708a;margin:0 0 16px}
.first-step-page .handoff-card .panel-button{font-size:15px;min-height:52px;padding:10px 18px;gap:14px}
.tool-guide{padding:75px 0 95px;background:linear-gradient(180deg,#eaf6ff,#fff)}
.tool-guide h2{max-width:720px}
.guide-copy{max-width:780px;display:grid;gap:18px}
.guide-copy p{font-size:19px;line-height:1.62;color:#496784;margin:0}
.tool-footer{border-top:1px solid #d7e7f7;background:#fff;padding:35px 0}
.tool-footer .panel-shell{display:flex;align-items:center;gap:30px;flex-wrap:wrap}
.tool-footer nav{display:flex;gap:20px;margin-left:auto;color:#426485;font-size:14px}
.tool-footer p{width:100%;color:#7690aa;font-size:12px;margin:0}
@media(max-width:900px){.tool-workspace{grid-template-columns:1fr}.tool-workspace:has(.tool-result:not([hidden])) .tool-form-card,.tool-result{grid-column:1}.tool-intro-grid{grid-template-columns:1fr}.intro-art{display:none}}
@media(max-width:600px){.tool-intro{padding:48px 0 45px}.tool-intro h1{font-size:clamp(54px,15vw,76px)}.tool-workspace{padding-block:28px;gap:20px}.tool-form-card,.tool-result{padding:24px 20px;border-radius:20px}.tool-form-card h2{font-size:43px}.time-options{display:grid;grid-template-columns:repeat(2,1fr)}.time-options label,.time-options span{width:100%}.tool-submit{font-size:16px!important}.result-heading h2{font-size:37px}.guide-copy p{font-size:17px}.tool-guide{padding:55px 0 65px}.tool-footer nav{margin-left:0;flex-wrap:wrap}.first-step-page .panel-nav-links{gap:8px;font-size:13px}}
