.cpstr{--ink:#16161a;--accent:#2e5cff;--paper:#f7f6f2;--ink-60:#16161a99;--ink-42:#16161a6b;--line:#16161a1f;--t0:#8d94a6;--t1:#2e8fd1;--t2:#1fa37a;--t3:#e08a2b;--t4:#c23b4f;--t5:#7b3fe4;color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Hanken Grotesk,system-ui,-apple-system,sans-serif;line-height:1.5}.cpstr *{box-sizing:border-box;margin:0;padding:0}.cpstr-band{background:#fff;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:clamp(6px,1.4vw,16px) 0 clamp(30px,4.6vw,60px)}.cpstr-inner{max-width:1080px;margin:0 auto;padding:0 clamp(16px,4vw,32px)}.cpstr-crumb{color:var(--ink-42);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:16px;font-size:12.5px;font-weight:600;display:flex}.cpstr-crumb a{transition:color .14s;color:var(--ink-60)!important;text-decoration:none!important}.cpstr-crumb a:hover{color:var(--accent)!important}.cpstr-crumb span.sep{opacity:.5}.cpstr-crumb span.here{color:var(--ink)!important}.cpstr h1{letter-spacing:-.025em;font-family:Bricolage Grotesque,sans-serif;color:var(--ink)!important;margin:0 0 clamp(20px,3vw,28px)!important;font-size:clamp(30px,5vw,46px)!important;font-weight:800!important;line-height:1.05!important}.cpstr h1 b{font-weight:800;color:var(--accent)!important}.cpstr-card{border:1px solid var(--line);background:#fff;border-radius:22px;grid-template-columns:1fr 1fr;align-items:start;gap:clamp(20px,3.4vw,40px);padding:clamp(20px,3vw,32px);display:grid;box-shadow:0 2px 4px #16161a0a,0 18px 40px -18px #16161a42,0 44px 80px -50px #2e5cff47}@media (max-width:760px){.cpstr-card{grid-template-columns:1fr;gap:24px}}.cpstr-fields{flex-direction:column;gap:16px;display:flex}.cpstr-field{flex-direction:column;gap:8px;display:flex}.cpstr-field.hide{display:none!important}.cpstr-lab{letter-spacing:.09em;text-transform:uppercase;color:var(--ink-42);font-size:11px;font-weight:700}.cpstr-seg{border:1px solid var(--line);background:#16161a0d;border-radius:12px;gap:3px;width:100%;padding:3px;display:inline-flex}.cpstr-seg button{appearance:none;cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1;padding:9px 10px;font-family:inherit;font-size:13.5px;font-weight:700;transition:all .16s;color:var(--ink-60)!important}.cpstr-seg button.on{background:var(--accent);box-shadow:0 4px 12px -4px #2e5cff99;color:#fff!important}.cpstr-selwrap{border:1.5px solid var(--line);background:#fff;border-radius:12px;align-items:center;height:50px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.cpstr-selwrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px #2e5cff26}.cpstr-selwrap select{appearance:none;cursor:pointer;flex:1;height:100%;padding:0 36px 0 15px;font-family:inherit;font-size:15px;font-weight:600;color:var(--ink)!important;background:0 0!important;border:0!important}.cpstr-selwrap select:focus{outline:0}.cpstr-selwrap svg.chev{pointer-events:none;width:13px;height:13px;color:var(--ink-42);position:absolute;right:14px}.cpstr-inwrap{border:1.5px solid var(--line);background:#fff;border-radius:12px;flex:1;align-items:center;height:50px;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.cpstr-inwrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px #2e5cff26}.cpstr-inwrap input{-moz-appearance:textfield;flex:1;min-width:0;height:100%;padding:0 6px 0 15px;font-family:inherit;font-size:17px;font-weight:600;color:var(--ink)!important;background:0 0!important;border:0!important}.cpstr-inwrap input:focus{outline:0;box-shadow:none!important}.cpstr-inwrap input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.cpstr-inwrap input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cpstr-unit{color:var(--ink-42);white-space:nowrap;padding-right:4px;font-size:13px;font-weight:700}.cpstr-step{border-left:1.5px solid var(--line);flex-direction:column;flex:none;height:100%;display:flex}.cpstr-step button{appearance:none;cursor:pointer;background:#fff;border:0;flex:1;justify-content:center;align-items:center;width:36px;padding:0;transition:background .12s,color .12s;display:flex;color:var(--ink-60)!important}.cpstr-step button:hover{background:#2e5cff1a;color:var(--accent)!important}.cpstr-step button:first-child{border-bottom:1px solid var(--line)}.cpstr-step svg{pointer-events:none;width:13px;height:13px}.cpstr-result{text-align:center;flex-direction:column;align-items:center;padding:6px 0;display:flex}.cpstr-gauge{width:100%;max-width:300px}.cpstr-gauge svg{width:100%;height:auto;display:block;overflow:visible}.cpstr-needle{transform-origin:100px 100px;transition:transform .5s cubic-bezier(.34,1.2,.5,1)}.cpstr-arc{transition:stroke .3s}.cpstr-tiername{letter-spacing:-.02em;margin-top:-4px;font-family:Bricolage Grotesque,sans-serif;font-size:clamp(28px,5vw,38px);font-weight:800;line-height:1.05}.cpstr-tierlab{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-42);margin-top:4px;font-size:12px;font-weight:700}.cpstr-chip{border:1.5px solid #0000;border-radius:30px;align-items:center;gap:8px;max-width:280px;margin-top:14px;padding:9px 16px;font-size:13.5px;font-weight:700;transition:all .3s;display:inline-flex}.cpstr-chip .cpstr-cdot{background:currentColor;border-radius:50%;flex:none;width:9px;height:9px}.cpstr-stats{grid-template-columns:1fr;gap:8px;width:100%;margin-top:16px;display:grid}.cpstr-stats.two{grid-template-columns:1fr 1fr}.cpstr-stat{border:1px solid var(--line);text-align:center;background:#16161a09;border-radius:14px;padding:10px 14px}.cpstr-stat .k{letter-spacing:.07em;text-transform:uppercase;color:var(--ink-42);margin-bottom:3px;font-size:10.5px;font-weight:700}.cpstr-stat .v{color:var(--ink);font-family:Bricolage Grotesque,sans-serif;font-size:19px;font-weight:800}.cpstr-stat .v small{color:var(--ink-42);font-family:Hanken Grotesk,sans-serif;font-size:11px;font-weight:700}.cpstr-prog{width:100%;margin-top:16px}.cpstr-progtrack{background:#16161a14;border-radius:5px;width:100%;height:8px;overflow:hidden}.cpstr-progfill{border-radius:5px;height:100%;transition:width .5s,background .3s}.cpstr-prognote{color:var(--ink-60);margin-top:9px;font-size:12.5px;line-height:1.5}.cpstr-prognote b{color:var(--ink);font-weight:700}.cpstr-maxed{color:var(--ink-60);max-width:280px;margin-top:14px;font-size:12.5px;line-height:1.5}.cpstr-maxed b{color:var(--ink);font-weight:700}.cpstr-note{border-top:1px solid var(--line);color:var(--ink-42);grid-column:1/-1;margin-top:6px;padding-top:16px;font-size:11.5px;line-height:1.5}.cpstr-note a{text-underline-offset:2px;color:var(--ink-60)!important;text-decoration:underline!important}.cpstr-note a:hover{color:var(--accent)!important}
