:root{--ink:#19161f;--muted:#635b70;--purple:#7c3aed;--lilac:#b79cfb;--line:#e4dfeb;--wash:#faf9fd;--radius:24px;color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;color:var(--ink);background:var(--wash)}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b79cfb;outline-offset:3px}input:focus,select:focus,textarea:focus{outline:2px solid #b79cfb;outline-offset:1px;border-color:#7c3aed}a{color:#6d28d9}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-weight:500;letter-spacing:-.04em}h2{font-size:1.7rem;line-height:1.22}h3{font-size:1.2rem;margin:24px 0 14px}p{line-height:1.6}small,.caption{display:block;color:var(--muted);font-size:.82rem;line-height:1.55}.caption{margin:10px 0 14px}.skip-link{position:fixed;top:-100px;left:12px;z-index:20;background:white;padding:12px;border-radius:12px}.skip-link:focus{top:12px}.workspace{display:grid;grid-template-columns:270px minmax(0,1fr);min-height:100vh}.sidebar{background:#101014;color:#f3eff9;padding:46px 22px;position:sticky;top:0;height:100vh;overflow:auto}.eyebrow,.section-label{font-size:.66rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase}.sidebar .section-label{color:#b7a9c7;margin-bottom:24px}.sidebar h2{font-size:1.4rem;color:white;margin-bottom:28px}.purpose{border:0;margin:0 0 18px;padding:0}.purpose legend{font-size:.85rem;margin-bottom:10px}.purpose label{display:flex;gap:8px;align-items:center;font-size:.82rem;margin:8px 0}.purpose input{accent-color:#b79cfb}.sidebar p,.sidebar .caption{color:#c0b5ce;font-size:.78rem}.sidebar-progress{margin:24px 0 20px}.sidebar-progress strong{font-size:.8rem;font-weight:500}.progress-track{height:7px;border-radius:10px;background:#3c3348;margin-top:10px;overflow:hidden}.progress-fill{height:100%;background:#b79cfb;transition:width .35s}.step-nav{display:grid;gap:11px}.step-nav button{background:#19151f;border:1px solid #3b3245;color:#d8cde3;border-radius:16px;padding:14px 10px;font-size:.75rem;min-height:48px}.step-nav button[aria-current=step]{background:#382747;border-color:#b79cfb;box-shadow:inset 3px 0 #b79cfb;color:white}.step-nav button:disabled{opacity:.4}.sidebar-footer{margin-top:24px}.main{max-width:1440px;width:100%;padding:35px 38px 60px;min-width:0}.brandbar{display:flex;align-items:center;gap:12px;padding:18px 24px;background:#101014;border:1px solid #29252f;border-radius:20px;color:#faf8ff}.brand{display:flex;align-items:center;gap:10px;font-size:1.05rem;letter-spacing:-.025em}.mark{width:24px;height:24px;display:grid;grid-template-columns:repeat(2,1fr);gap:3px;transform:rotate(-8deg)}.mark i{background:#b79cfb;border-radius:3px}.mark i:nth-child(2){opacity:.55}.mark i:nth-child(3){opacity:.75}.brand-note{display:flex;align-items:center;gap:10px;margin-left:auto;font-size:.7rem;color:#b3aabd}.tag{border:1px solid #514565;background:#262032;color:#e2d4ff;padding:6px 10px;border-radius:999px;white-space:nowrap}.hero{margin-top:18px;padding:28px 34px;min-height:220px;position:relative;overflow:hidden;border:1px solid #e6def3;border-radius:var(--radius);background:radial-gradient(ellipse at 95% 0%,#e3d5ff,transparent 52%),linear-gradient(115deg,#f0eafb,#faf7ff 65%,white)}.hero-content{position:relative;z-index:1;max-width:85%}.hero .eyebrow{color:#664a91}.hero h1{font-size:clamp(40px,4.5vw,62px);font-weight:400;line-height:1.1;letter-spacing:-.06em;margin:12px 0 8px}.hero p{font-size:1.05rem;color:#554b62}.accent{color:#6d28d9}.meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}.meta span{padding:5px 10px;font-size:.67rem;border:1px solid #dbcee9;background:#ffffffa6;border-radius:999px;color:#554762}.orbit{position:absolute;right:-30px;top:-55px;width:300px;height:300px;opacity:.5}.orbit i{position:absolute;inset:25px;border:1px solid #7c3aed45;border-radius:50%;transform:rotate(-24deg) scaleX(.62)}.orbit i:nth-child(2){inset:52px;transform:rotate(28deg) scaleX(.7)}.orbit i:nth-child(3){inset:84px;transform:rotate(76deg) scaleX(.78)}.hero.compact{min-height:0;padding:19px 28px}.hero.compact h1{font-size:32px;margin:8px 0}.hero.compact .eyebrow{display:none}.hero.compact p{font-size:.9rem}.hero.compact .meta{margin-top:10px}.journey{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin:18px 0;gap:6px;background:#ffffffb3;border:1px solid var(--line);border-radius:var(--radius);padding:20px 12px;overflow:hidden}.journey-item{position:relative;display:flex;align-items:center;flex-direction:column;gap:12px;font-size:.65rem;color:#5b4376;text-align:center;z-index:1}.journey-item:before{content:"";height:3px;background:#ece4f6;position:absolute;left:-50%;right:50%;top:19px;z-index:-1}.journey-item:first-child:before{display:none}.journey-item.reached:before,.journey-item.current:before{background:#a487ee}.journey-number{width:40px;height:40px;border:1px solid #e0d2f2;border-radius:50%;background:#f0e8fb;display:grid;place-items:center}.journey-item.current .journey-number{background:#7c3aed;border-color:#7c3aed;color:white;box-shadow:0 0 0 5px #ede4fc;animation:pulse .7s ease-out}.journey-item.upcoming{opacity:.5}.stage{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;min-height:360px;animation:arrive .3s ease-out}.stage-kicker{display:inline-block;border:1px solid #e0d2f4;background:#f4eefc;color:#6e45b0;font-size:.62rem;padding:7px 10px;border-radius:999px;margin-bottom:17px}.stage-description{color:var(--muted);margin:12px 0 18px}.requirements{border:1px solid #e9e0f2;background:#f8f5fc;border-radius:18px;padding:16px 20px;margin:20px 0 24px}.requirements h4{font-size:.85rem;font-weight:550;margin-bottom:8px}.requirements ul{margin:0;padding-left:18px;color:#63556f;font-size:.84rem;line-height:1.65}.field{display:flex;flex-direction:column;gap:9px;min-width:0;margin:0 0 20px}.field>label,.field>span,.field legend{font-size:.85rem;color:#332b3f}.field input:not([type=checkbox]):not([type=radio]):not([type=range]),.field select,.field textarea{width:100%;min-width:0;min-height:44px;border:1px solid #ded7e7;border-radius:11px;padding:10px 12px;background:#faf9fc;color:#26202e}.field input:disabled,.field select:disabled{background:#f1edf5}.field small{margin-top:-2px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.radio-group{border:0;padding:0;margin:0 0 20px}.radio-group legend{font-size:.85rem;margin-bottom:12px}.radio-options{display:flex;flex-wrap:wrap;gap:12px 23px}.radio-options label{display:flex;gap:8px;font-size:.85rem;align-items:center}.radio-options input{accent-color:#7c3aed;margin:0}.checkbox{display:flex;align-items:flex-start;gap:9px;margin:12px 0 18px;font-size:.85rem;line-height:1.45}.checkbox input{accent-color:#7c3aed;margin:3px 0 0;flex-shrink:0}.slider-label{display:flex;justify-content:space-between;gap:10px}.slider-label output{color:#6d28d9;font-variant-numeric:tabular-nums}.field input[type=range]{width:100%;accent-color:#7c3aed;margin:7px 0}.slider-limits{display:flex;justify-content:space-between;font-size:.7rem;color:var(--muted)}.notice{border:1px solid #e2d5f4;background:#f5f0fd;color:#5d3f83;padding:14px 17px;border-radius:13px;font-size:.85rem;line-height:1.55;margin:15px 0}.notice.warn{background:#fff8ec;border-color:#efdfbd;color:#785b22}.notice.error{background:#fff0f2;border-color:#edc5cf;color:#963e55}.notice.success{background:#eef8f2;border-color:#d3e8db;color:#35644c}details{border:1px solid var(--line);border-radius:14px;margin:18px 0;padding:0 16px;background:#fff}summary{padding:15px 0;font-size:.82rem;cursor:pointer;line-height:1.4}details>.details-body{padding:3px 0 16px}details h3:first-child{margin-top:8px}.navigation{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #f0ebf5;margin-top:28px;padding-top:23px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #ded6e8;border-radius:999px;background:white;padding:11px 21px;color:#473650;min-height:44px;font-size:.83rem;line-height:1.3;text-decoration:none}.button.primary{background:#7c3aed;color:white;border-color:#7c3aed}.button:hover:not(:disabled){border-color:#a281d0;background:#f5effb}.button.primary:hover:not(:disabled){background:#6a2bce}.button.small{padding:7px 12px;font-size:.75rem;min-height:35px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px;margin:14px 0 20px;max-width:100%}table{width:100%;border-collapse:collapse;font-size:.78rem;text-align:left;line-height:1.5}th{background:#f4f0f9;color:#51445f;font-weight:500}th,td{padding:11px 12px;border-bottom:1px solid #eae3f1;white-space:nowrap}tbody tr:last-child td{border-bottom:0}td input{width:115px;min-width:90px;border:1px solid #e0d5eb;border-radius:7px;padding:7px;background:#fff;color:var(--ink);font:inherit}.curve-table th,.curve-table td{width:33.3%}.curve-table td input{width:100%;min-width:90px}.metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:20px 0}.metrics.three{grid-template-columns:repeat(3,minmax(0,1fr))}.metric{padding:23px 22px;border:1px solid var(--line);border-radius:21px;min-width:0;background:#fff}.metric .label{font-size:.75rem;color:#63566f;line-height:1.4}.metric .value{font-size:clamp(23px,2.2vw,34px);margin-top:10px;line-height:1.2;letter-spacing:-.035em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.metric.dark{background:#201a27;border-color:#201a27;color:#fff}.metric.dark .label{color:#d4c6e5}.tabs{display:flex;gap:4px;width:fit-content;max-width:100%;overflow:auto;padding:6px;border-radius:999px;border:1px solid #e4dfeb;background:#eeebf3;margin:24px 0 26px;white-space:nowrap}.tabs button{border:0;background:transparent;color:#665d72;padding:11px 16px;border-radius:999px;font-size:.76rem;min-height:42px}.tabs button[aria-selected=true]{background:#1d1822;color:#fff;box-shadow:0 2px 4px #1d18222a}.tab-panel{min-width:0}.tab-panel>h3:first-child{margin-top:0}.chart{border:1px solid var(--line);background:#fcfaff;border-radius:18px;padding:16px;margin:16px 0;overflow:hidden}.chart svg{width:100%;height:auto;display:block}.chart-legend{display:flex;flex-wrap:wrap;gap:18px;color:var(--muted);font-size:.74rem;margin:10px 0}.chart-legend span:before{content:"";display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:7px;background:#7c3aed}.chart-legend span:last-child:before{background:#9e97b4}.proposal-panel{border:1px solid #ded0ed;background:#f9f5ff;border-radius:20px;padding:23px;margin-top:29px}.proposal-panel h3{margin:10px 0}.button-row{display:flex;gap:11px;flex-wrap:wrap;margin-top:17px}.file-row{display:flex;align-items:end;gap:15px;flex-wrap:wrap}.file-row .field{flex:1;min-width:180px}.file-row .button{margin-bottom:20px}.empty{padding:20px;color:var(--muted)}.page-footer{font-size:.71rem;color:#8b7b98;line-height:1.6;margin:20px 2px 0}.loading{padding:12vh 28px;text-align:center}.loading h1{font-size:2rem;margin:15px}.loading-dot{display:inline-block;width:14px;height:14px;background:#7c3aed;border-radius:50%;animation:pulse .8s infinite alternate}.loading p{color:var(--muted)}@keyframes arrive{from{opacity:.55;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pulse{from{box-shadow:0 0 0 0 #b79cfb00}to{box-shadow:0 0 0 7px #b79cfb55}}@media(min-width:1500px){.main{padding-top:44px}}@media(max-width:1050px){.workspace{grid-template-columns:220px minmax(0,1fr)}.sidebar{padding:35px 16px}.main{padding:26px 24px 45px}.brand-note>span:first-child{display:none}.stage{padding:25px}.hero{padding:26px}.metrics.three{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.workspace{display:block}.sidebar{position:static;height:auto;padding:18px 20px}.sidebar>.section-label,.sidebar>h2,.sidebar>.caption,.sidebar-footer,.sidebar-progress{display:none}.purpose{margin:0;display:flex;align-items:center;gap:17px;flex-wrap:wrap}.purpose legend{float:left;margin:0 10px 0 0}.purpose label{display:inline-flex;margin:0;font-size:.76rem}.step-nav{display:flex;gap:7px;overflow:auto;margin-top:16px;padding-bottom:3px}.step-nav button{white-space:nowrap;flex-shrink:0;padding:10px 12px;min-height:38px;border-radius:12px;font-size:.65rem}.main{padding:18px 16px 32px}.brandbar{padding:15px 17px}.brand{font-size:.85rem}.brand-note{font-size:.6rem}.tag{padding:5px 8px}.hero{min-height:190px;padding:25px 22px}.hero h1{font-size:42px}.hero-content{max-width:100%}.hero p{font-size:.95rem}.hero.compact h1{font-size:29px}.hero.compact{padding:19px 22px}.journey{padding:17px 7px;gap:2px}.journey-number{width:31px;height:31px;font-size:.62rem}.journey-item{font-size:.52rem;gap:9px}.journey-item:before{top:14px}.stage{padding:22px 20px;border-radius:21px}.stage h2{font-size:1.5rem}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:19px 17px}.metric .value{font-size:25px}.requirements{padding:15px 16px}.requirements ul{font-size:.78rem}.navigation{gap:10px}.button{padding:11px 15px;font-size:.76rem}.tabs{margin-left:-3px;margin-right:-3px;width:calc(100% + 6px);max-width:calc(100% + 6px)}.tabs button{padding:10px 12px;font-size:.68rem}.proposal-panel{padding:20px}.file-row{display:block}.file-row .button{margin-top:-5px}}@media(max-width:450px){.brand-note{display:none}.main{padding:14px 12px 28px}.stage{padding:22px 17px}.grid,.grid.three,.metrics,.metrics.three{grid-template-columns:1fr}.hero h1{font-size:37px}.hero.compact h1{font-size:27px}.hero{padding:23px 20px}.journey-item{font-size:.47rem}.journey-number{width:28px;height:28px}.journey-item:before{top:13px}.journey{border-radius:19px}.stage-description{font-size:.9rem}.field{margin-bottom:18px}.metric .value{font-size:29px}.navigation{flex-wrap:wrap}.navigation .primary{margin-left:auto}.button-row{flex-direction:column}.button-row .button{width:100%}.brandbar{border-radius:17px}.hero .meta{gap:5px}.meta span{font-size:.58rem;padding:4px 7px}.requirements{margin:17px 0 22px}.radio-options{gap:12px 17px}.chart{padding:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
