.cce,.cce *,.cce ::after,.cce ::before{box-sizing:border-box}.cce,.cce-input-group input{border:1px solid #e5e7eb;border-radius:8px;background:#fff}.cce{box-shadow:0 2px 12px rgba(0,0,0,.06);overflow:hidden;margin:24px 0}.cce-layout{display:grid;grid-template-columns:380px 1fr;gap:0}.cce-field,.cce-form{display:flex;flex-direction:column}.cce-form{padding:20px;gap:14px;border-right:1px solid #e5e7eb;min-width:0}.cce-field{gap:6px}.cce-label-row{display:flex;justify-content:space-between;align-items:baseline}.cce-field label{font-size:var(--font-size);font-weight:500;color:#374151}.cce-hint{font-size:var(--font-size-xs);color:#b91c1c;white-space:nowrap}.cce-input-group{position:relative;display:flex;align-items:center}.cce-input-group input{width:100%;height:38px;padding:0 48px 0 14px;font-size:var(--main-font-size);color:#111827;transition:border-color .2s,box-shadow .2s}.cce-input-group input:focus{outline:0;border-color:#2563eb}.cce-input-group input::placeholder{color:#9ca3af}.cce-suffix{position:absolute;right:14px;color:#6b7280;font-size:var(--font-size);pointer-events:none}.cce-input-sm input{padding:0 14px;font-size:var(--font-size)}.cce-comm-row{display:flex;gap:8px;align-items:center}.cce-comm-row .cce-input-group{flex:1}.cce-comm-unit{flex-shrink:0;width:90px}.cce-comm-unit .cce-radio{height:38px;line-height:38px}.cce-radio-group{display:flex;gap:0;margin-top:2px;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.cce-radio-group[hidden]{display:none}.cce-radio{flex:1;padding:0 10px;height:30px;line-height:30px;font-size:var(--font-size-md);font-weight:500;background:#fff;color:#6b7280;border:0;border-right:1px solid #e5e7eb;cursor:pointer;transition:background .15s,color .15s;text-align:center}.cce-radio:last-child{border-right:none}.cce-radio:hover{background:#f3f4f6}.cce-radio.active{background:#3b82f6;color:#fff}.cce-radio:focus-visible{outline:2px solid #2563eb;outline-offset:-2px}.cce-spoiler{border-top:1px solid #e5e7eb;padding-top:10px}.cce-spoiler-toggle{display:flex;align-items:center;gap:6px;background:0 0;border:0;padding:0;color:#6b7280;font-size:var(--font-size-md);cursor:pointer;transition:color .15s}.cce-spoiler-toggle:hover{color:#2563eb}.cce-spoiler-toggle:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.cce-spoiler-toggle svg{transition:transform .2s}.cce-spoiler-body{display:flex;flex-direction:column;gap:10px;padding-top:10px}.cce-spoiler-body[hidden]{display:none}.cce-spoiler-body .cce-field label{font-size:var(--font-size-md);color:#6b7280}.cce-btn{width:100%;padding:12px 20px;background:#2563eb;color:#fff;border:0;border-radius:8px;font-size:var(--font-size-lg);font-weight:500;cursor:pointer;transition:background .2s;margin-top:4px}.cce-btn:hover{background:#1d4ed8}.cce-btn:focus-visible{outline:2px solid #1d4ed8;outline-offset:2px}.cce-result{padding:20px;display:flex;flex-direction:column;gap:12px;background:#f9fafb;min-width:0;overflow:hidden}.cce-result[hidden]{display:none}.cce-result-main{text-align:center;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.cce-result-main-label{font-size:var(--font-size-md);color:#6b7280;margin-bottom:4px}.cce-result-main-value{font-size:var(--h2-font-size);font-weight:600;color:#1d4ed8;overflow:hidden;text-overflow:ellipsis}.cce-result-cards{display:flex;gap:6px}.cce-card{flex:1;padding:10px 8px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;text-align:center;min-width:0;overflow:hidden}.cce-card-value{font-size:var(--font-size);font-weight:500;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cce-card-label{font-size:var(--font-size-xs);color:#6b7280;margin-top:2px}.cce-result-chart{display:flex;flex-direction:column;align-items:center}.cce-result-text{min-height:40px}.cce-result-text,.cce-result-text p{font-size:var(--font-size-md);color:#6b7280;line-height:1.5;margin:0}.cce-result-nbu{margin-top:auto;padding:8px 12px;border-radius:8px;font-size:var(--font-size-sm);line-height:1.4;text-align:center}@media (max-width:1140px){.cce-layout{grid-template-columns:1fr}.cce-form{border-right:none;border-bottom:1px solid #e5e7eb}.cce-result-main-value{font-size:var(--h2-font-size)}.cce-result-cards{flex-direction:column;gap:6px}.cce-input-group input{height:44px;padding:0 48px 0 14px}.cce-comm-unit .cce-radio,.cce-radio{height:44px;line-height:44px}}@media (max-width:360px){.cce-result-main-value{font-size:var(--h4-font-size)}}