@keyframes ctFadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes ctGradientShift{0%,to{background-position:0%}50%{background-position:100%}}@keyframes ctEstimateIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.ct-main{width:100%;animation:ctFadeUp .5s var(--ease,cubic-bezier(.16,1,.3,1))both;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);display:grid}.ct-left{border-right:1px solid var(--b);flex-direction:column;align-self:start;gap:0;min-height:calc(100dvh - 56px);padding:16px;display:flex;position:sticky;top:56px}.ct-back{color:var(--t4);align-items:center;gap:5px;margin-bottom:20px;font-size:.76rem;text-decoration:none;transition:all .15s;display:inline-flex}.ct-back:hover{color:var(--accent);gap:7px}.ct-kicker{background:var(--accent-dim);border:1px solid var(--accent-border);height:28px;color:var(--accent-text);align-items:center;gap:6px;width:fit-content;margin-bottom:14px;padding:0 10px;font-size:.72rem;font-weight:600;display:inline-flex}.ct-hero-title{font-family:var(--font-display);letter-spacing:-.04em;color:var(--t1);margin-bottom:10px;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:800;line-height:1.08}.ct-hero-accent{color:var(--accent,#3cd788)}@supports (color:lab(0% 0 0)){.ct-hero-accent{color:var(--accent,lab(76.6915% -54.8967 26.899))}}.ct-hero-desc{color:var(--t3);margin-bottom:24px;font-size:.86rem;line-height:1.6}.ct-steps{flex-direction:column;margin-bottom:16px;display:flex;position:relative}.ct-steps:before{content:"";background:var(--b);width:1px;position:absolute;top:24px;bottom:6px;left:12px}.ct-step{color:var(--t4);align-items:center;gap:10px;padding:7px 0;font-size:.78rem;transition:color .2s;display:flex;position:relative}.ct-step--done{color:var(--t2)}.ct-step-num{border:1px solid var(--b);width:24px;height:24px;font-size:.66rem;font-weight:700;font-family:var(--font-mono);color:var(--t4);background:var(--bg);z-index:1;flex-shrink:0;justify-content:center;align-items:center;transition:all .25s;display:flex;position:relative}.ct-step--done .ct-step-num{background:var(--accent);border-color:var(--accent);color:#000;box-shadow:0 0 8px #00d6a840;box-shadow:0 0 8px lab(76.5855% -56.1552 10.2111/.25)}.ct-benefits{flex-direction:column;display:flex}.ct-benefit{border-top:1px solid var(--b2,#94a3b821);gap:10px;padding:12px 0;display:flex}.ct-benefit:first-child{border-top:none}.ct-benefit-icon{width:28px;height:28px;color:var(--accent);background:#00d6a80f;background:lab(76.5855% -56.1552 10.2111/.06);border:1px solid #00d6a81a;border:1px solid lab(76.5855% -56.1552 10.2111/.1);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ct-benefit strong{color:var(--t1);margin-bottom:2px;font-size:.8rem;display:block}.ct-benefit span:last-child{color:var(--t4);font-size:.74rem;line-height:1.5}.ct-card{flex-direction:column;display:flex}.ct-card-head{border-bottom:1px solid var(--b);justify-content:space-between;align-items:flex-start;gap:10px;padding:14px 16px;display:flex}.ct-card-kicker{color:var(--accent-text);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px;font-size:.68rem;display:block}.ct-card-title{color:var(--t1);font-size:1.05rem;font-family:var(--font-display);letter-spacing:-.02em}.ct-card-badge{border:1px solid var(--b2);height:28px;color:var(--t3);white-space:nowrap;align-items:center;padding:0 10px;font-size:.74rem;display:inline-flex}.ct-upload{cursor:pointer;border-bottom:1px solid var(--b);justify-content:center;align-items:center;min-height:140px;transition:background .15s;display:flex;position:relative;overflow:hidden}.ct-upload:hover{background:var(--s-hover,#ffffff0a)}.ct-upload--drag{background:#00d6a80a;background:lab(76.5855% -56.1552 10.2111/.04)}.ct-upload--has-image{height:180px;min-height:0}.ct-upload-empty{flex-direction:column;align-items:center;gap:8px;padding:20px;display:flex}.ct-upload-icon{width:44px;height:44px;color:var(--accent);background:#00d6a80f;background:lab(76.5855% -56.1552 10.2111/.06);border:1px solid #00d6a81a;border:1px solid lab(76.5855% -56.1552 10.2111/.1);justify-content:center;align-items:center;transition:all .2s;display:flex}.ct-upload:hover .ct-upload-icon{background:#00d6a81a;background:lab(76.5855% -56.1552 10.2111/.1)}.ct-upload-text{color:var(--t2);font-size:.82rem;font-weight:500}.ct-upload-hint{color:var(--t4);font-size:.7rem}.ct-upload-preview{background:#0000004d;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.ct-upload-preview img{object-fit:contain;max-width:100%;max-height:100%}.ct-upload-change{color:var(--t2);opacity:0;background:#00000080;justify-content:center;align-items:center;gap:5px;font-size:.78rem;font-weight:500;transition:opacity .15s;display:flex;position:absolute;inset:0}.ct-upload:hover .ct-upload-change{opacity:1}.ct-field{border-bottom:1px solid var(--b2);flex-direction:column;gap:5px;padding:10px 16px;display:flex}.ct-label{color:var(--t2);align-items:center;gap:4px;font-size:.72rem;font-weight:600;display:flex}.ct-opt{color:var(--t4);font-size:.66rem;font-style:italic;font-weight:400}.ct-section-label{color:var(--t2);border-bottom:1px solid var(--b2);align-items:center;gap:4px;padding:8px 16px;font-size:.72rem;font-weight:600;display:flex}.ct-input{background:var(--s,#ffffff06);border:1px solid var(--b2);width:100%;height:36px;color:var(--t1);font-size:.84rem;font-family:var(--font-body);outline:none;padding:0 10px;transition:all .15s}.ct-input:hover{border-color:var(--b)}.ct-input:focus{background:var(--s-hover);border-color:#00d6a859;border-color:lab(76.5855% -56.1552 10.2111/.35)}.ct-input::placeholder{color:var(--t4)}.ct-input--mono{font-family:var(--font-mono);letter-spacing:.02em}.ct-textarea{resize:vertical;height:auto;min-height:56px;padding:8px 10px;line-height:1.5}.ct-helper-text{color:var(--t4);font-size:.66rem}.ct-row-2{border-bottom:1px solid var(--b2);grid-template-columns:1fr 120px;display:grid}.ct-row-2>.ct-field{border-bottom:none}.ct-row-2>.ct-field:first-child{border-right:1px solid var(--b2)}.ct-field--symbol .ct-input{text-align:center;letter-spacing:.04em;font-weight:600}.ct-row-3{border-bottom:1px solid var(--b2);grid-template-columns:1fr 1fr 1fr;display:grid}.ct-row-3>.ct-field{border-bottom:none}.ct-row-3>.ct-field:not(:last-child){border-right:1px solid var(--b2)}.ct-input-icon-wrap{position:relative}.ct-input-icon{color:var(--t4);pointer-events:none;transition:color .15s;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.ct-input-icon-wrap:focus-within .ct-input-icon{color:var(--accent)}.ct-input--icon{padding-left:30px;font-size:.78rem}.ct-input-unit-wrap{background:var(--s);border:1px solid var(--b2);align-items:center;transition:all .15s;display:flex;overflow:hidden}.ct-input-unit-wrap:hover{border-color:var(--b)}.ct-input-unit-wrap:focus-within{background:var(--s-hover);border-color:#00d6a859;border-color:lab(76.5855% -56.1552 10.2111/.35)}.ct-input--no-border{background:0 0;border:none;flex:1}.ct-input--no-border:focus{box-shadow:none}.ct-unit{color:var(--t4);font-size:.76rem;font-weight:600;font-family:var(--font-mono);border-left:1px solid var(--b2);flex-shrink:0;align-items:center;height:100%;padding:0 12px;display:flex}.ct-divider{background:var(--b);height:1px}.ct-cost{border-bottom:1px solid var(--b2);flex-direction:column;gap:6px;padding:10px 16px;display:flex}.ct-cost-row{color:var(--t4);justify-content:space-between;font-size:.78rem;display:flex}.ct-cost-row span:last-child{font-family:var(--font-mono);color:var(--t3);font-weight:500}.ct-cost-total{border-top:1px solid var(--b2);color:var(--t1);padding-top:6px;font-weight:600}.ct-cost-total span:last-child{color:var(--accent);font-size:.82rem;font-weight:700}.ct-inline-note{border-bottom:1px solid var(--b2);color:var(--t4);padding:10px 16px;font-size:.74rem;line-height:1.55}.ct-estimate{border-bottom:1px solid var(--b2);justify-content:space-between;align-items:center;padding:10px 16px;font-size:.76rem;animation:.25s ease-out ctEstimateIn;display:flex}.ct-estimate-label{color:var(--t4)}.ct-estimate-val{font-family:var(--font-mono);color:var(--green);font-weight:600}.ct-submit{background:linear-gradient(135deg,var(--accent),#43c251);color:#000;width:100%;height:48px;font-size:.88rem;font-weight:700;font-family:var(--font-body);cursor:pointer;border:none;justify-content:center;align-items:center;gap:7px;transition:all .15s;display:flex;position:relative;overflow:hidden}@supports (color:lab(0% 0 0)){.ct-submit{background:linear-gradient(135deg,var(--accent),lab(69.7863% -53.411 45.1934))}}.ct-submit:after{content:"";background:linear-gradient(90deg,#0000,#ffffff1f,#0000);width:60%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.ct-submit:hover:after{left:120%}.ct-submit:hover:not(:disabled){filter:brightness(1.06)}.ct-submit:disabled{opacity:.3;cursor:not-allowed;background:var(--s);color:var(--t4)}.ct-submit:disabled:after{display:none}@media (max-width:1024px){.ct-main{grid-template-columns:1fr}.ct-left{border-right:none;border-bottom:1px solid var(--b);min-height:auto;position:static}}@media (max-width:768px){.ct-left{padding:12px}.ct-hero-title{font-size:1.6rem}.ct-hero-title br{display:none}.ct-hero-desc{margin-bottom:16px}.ct-steps{display:none}.ct-row-2{grid-template-columns:1fr}.ct-row-2>.ct-field:first-child{border-right:none;border-bottom:1px solid var(--b2)}.ct-row-3{grid-template-columns:1fr}.ct-row-3>.ct-field:not(:last-child){border-right:none;border-bottom:1px solid var(--b2)}.ct-field{padding:8px 12px}.ct-card-head{padding:10px 12px}.ct-section-label,.ct-cost,.ct-inline-note,.ct-estimate{padding:8px 12px}}.ct-card-head{background:#ffffff03}.ct-card-kicker,.ct-label,.ct-section-label,.ct-opt,.ct-helper-text,.ct-estimate-label{font-size:.625rem}.ct-back,.ct-cost-row,.ct-inline-note,.ct-estimate,.ct-upload-hint,.ct-card-badge{font-size:.75rem}.ct-input,.ct-upload-text,.ct-card-title,.ct-benefit strong{font-size:.875rem}.ct-field,.ct-section-label,.ct-cost,.ct-inline-note,.ct-estimate{padding:8px 16px}.ct-card-head{padding:12px 16px}.ct-cost-row span:last-child,.ct-estimate-val,.ct-helper-text,.ct-unit{font-variant-numeric:tabular-nums}.ct-upload{cursor:pointer}.ct-label,.ct-section-label,.ct-opt,.ct-helper-text{cursor:default;-webkit-user-select:none;user-select:none}.ct-input:focus-visible,.ct-submit:focus-visible,.ct-back:focus-visible,.ct-upload:focus-visible{outline:2px solid var(--accent,#3cd788);outline-offset:-1px}@supports (color:lab(0% 0 0)){.ct-input:focus-visible,.ct-submit:focus-visible,.ct-back:focus-visible,.ct-upload:focus-visible{outline:2px solid var(--accent,lab(76.6915% -54.8967 26.899))}}
