:root{--imc-primary:#4361ee;--imc-primary-deep:#3a56d4;--imc-secondary:#00a86b;--imc-secondary-light:#e6f0ff;--imc-danger:#e74c3c;--imc-danger-light:#fdf0ef;--imc-bg:#f7f9fb;--imc-white:#ffffff;--imc-text:#2b2d42;--imc-text-muted:#6b7280;--imc-border:#d8dce2;--imc-border-focus:#4361ee;--imc-radius:8px;--imc-spacing:1.5rem;--imc-gap:0.6rem;--imc-shadow:0 2px 12px rgba(67, 97, 238, 0.08);--imc-shadow-lg:0 8px 40px rgba(67, 97, 238, 0.12);--imc-transition:0.18s ease;--imc-header-bg:linear-gradient(
    135deg,
    #1e2d6b 0%,
    #4361ee 60%,
    #3a56d4 100%
  )}.imc-header{background:var(--imc-header-bg)!important;padding:2rem 1rem;position:relative;overflow:hidden;text-align:center;border-radius:var(--imc-radius)}.imc-header-inner{position:relative;z-index:2;max-width:560px;margin:0 auto}.imc-header-decor{position:absolute;inset:0;z-index:1;pointer-events:none}.imc-header-decor span{position:absolute;border-radius:50%;opacity:.12;background:var(--imc-white)!important}.imc-header-decor span:nth-child(1){width:320px;height:320px;top:-120px;right:-80px}.imc-header-decor span:nth-child(2){width:200px;height:200px;bottom:-60px;left:-60px;opacity:.08}.imc-header-decor span:nth-child(3){width:80px;height:80px;top:40px;left:15%;opacity:.15}.imc-badge{display:inline-block;background:rgb(255 255 255 / .18)!important;color:rgb(255 255 255 / .95)!important;font-size:0.72rem!important;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:.3rem .85rem;border-radius:100px;border:1px solid rgb(255 255 255 / .25)!important;margin-bottom:1rem}.imc-title{font-size:clamp(1.5rem, 5vw, 2rem)!important;font-weight:700;color:var(--imc-white)!important;line-height:1.15;letter-spacing:-.02em;margin-bottom:.9rem}.imc-title span{color:#a8c5ff!important;font-weight:300}.imc-subtitle{font-size:0.95rem!important;color:rgb(255 255 255 / .78)!important;font-weight:400;max-width:420px;margin:0 auto}.imc-main{margin-top:1.25rem}.imc-disclaimer{display:flex;align-items:flex-start;gap:.6rem;background:#fffbeb!important;border:1px solid #f6d860!important;border-left:4px solid #f59e0b!important;border-radius:var(--imc-radius);padding:.85rem 1rem;margin:1.4rem 0;color:#92400e!important;font-size:0.83rem!important}.imc-disclaimer svg{flex-shrink:0;margin-top:1px;opacity:.8}.imc-disclaimer strong{font-weight:600}.imc-card{background:var(--imc-white)!important;border-radius:var(--imc-radius);box-shadow:var(--imc-shadow);border:1px solid var(--imc-border)!important;margin-bottom:1.4rem;transition:box-shadow var(--imc-transition)}.imc-form{padding:1.5rem 1rem}.imc-fieldset{border:none;border-bottom:1px solid var(--imc-border)!important;margin-top:1rem;padding:0!important}.imc-fieldset:last-of-type{border-bottom:none!important}.imc-legend{display:flex;align-items:center;gap:.6rem;font-size:0.95rem!important;font-weight:700;color:var(--imc-text)!important;margin-bottom:1rem!important;width:100%}.imc-legend-num{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:var(--imc-primary)!important;color:var(--imc-white)!important;border-radius:6px;font-size:0.72rem!important;font-weight:700;letter-spacing:.02em;flex-shrink:0}.imc-fieldset-hint{font-size:0.82rem!important;color:var(--imc-text-muted)!important;margin-bottom:1rem;line-height:1.5}.imc-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.imc-field{display:flex;flex-direction:column;gap:.3rem}.imc-label{font-size:0.83rem!important;font-weight:600;color:var(--imc-text)!important;display:flex;align-items:center;gap:.35rem}.imc-input-wrap{position:relative;display:flex;align-items:center}.imc-input-prefix{position:absolute;left:.85rem;font-size:0.9rem!important;color:var(--imc-text-muted)!important;pointer-events:none;font-weight:500;z-index:1}.imc-input{width:100%;padding:.65rem .9rem .65rem 1.8rem;border:1.5px solid var(--imc-border)!important;border-radius:var(--imc-radius);font-family:"Rubik",sans-serif;font-size:0.95rem!important;color:var(--imc-text)!important;background:var(--imc-bg)!important;outline:none;transition:border-color var(--imc-transition),box-shadow var(--imc-transition),background var(--imc-transition);appearance:textfield;-moz-appearance:textfield}.imc-input::-webkit-inner-spin-button,.imc-input::-webkit-outer-spin-button{-webkit-appearance:none}.imc-input-sm{padding-left:0.9rem!important}.imc-input-sm~.imc-input-prefix{display:none}.imc-field:has(.imc-input-sm) .imc-input-prefix{display:none}.imc-input:focus{border-color:var(--imc-border-focus)!important;background:var(--imc-white)!important;box-shadow:0 0 0 3px rgb(67 97 238 / .12)}.imc-input.imc-input-error{border-color:var(--imc-danger)!important;background:#fff8f8!important}.imc-input.imc-input-error:focus{box-shadow:0 0 0 3px rgb(231 76 60 / .12)}.imc-error{font-size:0.78rem!important;color:var(--imc-danger)!important;font-weight:500;min-height:1.1em;display:block}.imc-combined-preview{margin-top:.8rem;font-size:0.82rem!important;color:var(--imc-text-muted)!important;background:var(--imc-secondary-light)!important;border-radius:var(--imc-radius);padding:.55rem .9rem;display:none}.imc-combined-preview.imc-visible{display:block}.imc-combined-preview strong{color:var(--imc-primary)!important}.imc-combined-preview.imc-warn{background:#fff3cd!important;color:#856404!important}.imc-combined-preview.imc-warn strong{color:#856404!important}.imc-tooltip-wrap{position:relative;display:inline-flex}.imc-info-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;background:var(--imc-border)!important;color:var(--imc-text-muted)!important;border-radius:50%;font-size:0.7rem!important;font-weight:700;cursor:help;line-height:1}.imc-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:#1e293b!important;color:#f1f5f9!important;font-size:0.76rem!important;font-weight:400;line-height:1.45;padding:.55rem .75rem;border-radius:var(--imc-radius);width:230px;text-align:left;pointer-events:none;opacity:0;transition:opacity 0.15s;z-index:100;box-shadow:0 4px 16px rgb(0 0 0 / .25)}.imc-tooltip::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:5px solid #fff0;border-top-color:#1e293b!important}.imc-tooltip-wrap:hover .imc-tooltip,.imc-tooltip-wrap:focus-within .imc-tooltip{opacity:1}.imc-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.7rem 1.4rem;border-radius:var(--imc-radius);font-family:"Rubik",sans-serif;font-size:0.9rem!important;font-weight:600;cursor:pointer;border:2px solid transparent!important;transition:transform 0.12s,box-shadow 0.15s,background 0.15s,opacity 0.15s;text-decoration:none;white-space:nowrap;user-select:none}.imc-btn:active{transform:scale(.97)}.imc-btn:disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.imc-btn-primary{background:var(--imc-primary)!important;color:var(--imc-white)!important;box-shadow:0 4px 14px rgb(67 97 238 / .32)}.imc-btn-primary:hover{background:var(--imc-primary-deep)!important;box-shadow:0 6px 20px rgb(67 97 238 / .4);transform:translateY(-1px)}.imc-btn-secondary{background:var(--imc-secondary-light)!important;color:var(--imc-primary)!important;border-color:rgb(67 97 238 / .18)!important}.imc-btn-secondary:hover{background:#d1e0ff!important;transform:translateY(-1px)}.imc-btn-danger{background:var(--imc-danger)!important;color:var(--imc-white)!important;box-shadow:0 3px 10px rgb(231 76 60 / .25)}.imc-btn-danger:hover{background:#c0392b!important;box-shadow:0 5px 16px rgb(231 76 60 / .35);transform:translateY(-1px)}.imc-btn-ghost{background:transparent!important;color:var(--imc-text-muted)!important;border-color:var(--imc-border)!important}.imc-btn-ghost:hover{background:var(--imc-bg)!important;color:var(--imc-text)!important}.imc-form-actions{padding:1.4rem var(--imc-spacing);background:var(--imc-bg)!important;display:flex;justify-content:center}.imc-btn-primary.imc-btn-full{width:100%}#imc-calculate{padding:.85rem 3rem;font-size:1rem!important;border-radius:10px}.imc-result-panel{animation:imc-fadeUp 0.4s ease both}@keyframes imc-fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.imc-result-status{border-radius:var(--imc-radius);padding:1.1rem 1.4rem;margin-bottom:1.2rem;display:flex;align-items:center;gap:.8rem;font-weight:600;font-size:0.95rem!important}.imc-result-status.imc-status-guideline{background:linear-gradient(135deg,#e8f5e9,#f0fff4)!important;border:1px solid #a5d6a7!important;color:#1b5e20!important}.imc-result-status.imc-status-over{background:#fff8e1!important;border:1px solid #ffe082!important;color:#e65100!important}.imc-result-status .imc-status-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.imc-status-guideline .imc-status-icon{background:rgb(76 175 80 / .15)!important}.imc-status-over .imc-status-icon{background:rgb(255 152 0 / .15)!important}.imc-result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.2rem}.imc-result-card{background:var(--imc-white)!important;border-radius:var(--imc-radius);border:1px solid var(--imc-border)!important;padding:1.2rem;text-align:center;box-shadow:var(--imc-shadow);position:relative;overflow:hidden;transition:transform var(--imc-transition),box-shadow var(--imc-transition)}.imc-result-card:hover{transform:translateY(-2px);box-shadow:var(--imc-shadow-lg)}.imc-result-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--imc-primary)!important}.imc-result-card.imc-card-highlight::before{background:var(--imc-secondary)!important}.imc-result-card.imc-card-danger::before{background:var(--imc-danger)!important}.imc-result-card-label{font-size:0.75rem!important;font-weight:600;color:var(--imc-text-muted)!important;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.4rem}.imc-result-card-value{font-size:1.7rem!important;font-weight:700;color:var(--imc-primary)!important;line-height:1.1;letter-spacing:-.02em}.imc-result-card.imc-card-highlight .imc-result-card-value{color:var(--imc-secondary)!important}.imc-result-card-sub{font-size:0.75rem!important;color:var(--imc-text-muted)!important;margin-top:.3rem}.imc-breakdown{padding:1.4rem}.imc-breakdown-title{font-size:0.88rem!important;font-weight:700;color:var(--imc-text)!important;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.imc-breakdown-title::before{content:"";display:block;width:4px;height:16px;background:var(--imc-primary)!important;border-radius:2px}.imc-step-list{display:flex;flex-direction:column;gap:.55rem}.imc-step{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;background:var(--imc-bg)!important;border-radius:var(--imc-radius);border:1px solid var(--imc-border)!important;font-size:0.84rem!important}.imc-step.imc-step-final{background:var(--imc-secondary-light)!important;border-color:rgb(67 97 238 / .25)!important}.imc-step.imc-step-capped{background:#fff3e0!important;border-color:#ffcc80!important}.imc-step-num{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;background:var(--imc-primary)!important;color:var(--imc-white)!important;border-radius:50%;font-size:0.68rem!important;font-weight:700;flex-shrink:0;margin-top:1px}.imc-step-final .imc-step-num{background:var(--imc-secondary)!important}.imc-step-capped .imc-step-num{background:#e65100!important}.imc-step-content{flex:1;line-height:1.45;color:var(--imc-text)!important}.imc-step-content strong{font-weight:700}.imc-step-formula{font-family:"Courier New",monospace;font-size:0.8rem!important;background:rgb(67 97 238 / .06)!important;padding:.25rem .5rem;border-radius:4px;margin-top:.25rem;display:block;color:var(--imc-primary)!important;font-weight:600}.imc-duration-card{padding:1.4rem}.imc-duration-title{font-size:0.88rem!important;font-weight:700;color:var(--imc-text)!important;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.imc-duration-title::before{content:"";display:block;width:4px;height:16px;background:var(--imc-secondary)!important;border-radius:2px}.imc-duration-table{width:100%;border-collapse:collapse;font-size:0.83rem!important;border:none}.imc-duration-table th{background:var(--imc-bg)!important;font-weight:700;color:var(--imc-text-muted)!important;font-size:0.75rem!important;text-transform:uppercase;letter-spacing:.04em;padding:.6rem .8rem;text-align:left;border:none;border-bottom:2px solid var(--imc-border)!important}.imc-duration-table tr,.imc-duration-table tbody,.imc-duration-table thead{border:none}.imc-duration-table td{padding:.6rem .8rem;border:none;border-bottom:1px solid var(--imc-border)!important;color:var(--imc-text)!important}.imc-duration-table tr.imc-row-highlight td{background:var(--imc-secondary-light)!important;font-weight:700;color:var(--imc-primary)!important}.imc-duration-table tr:last-child td{border-bottom:none!important}.imc-duration-result{margin-top:1rem;padding:.9rem 1rem;background:linear-gradient(135deg,rgb(67 97 238 / .06),rgb(0 168 107 / .06))!important;border:1px solid rgb(67 97 238 / .2)!important;border-radius:var(--imc-radius);font-size:0.88rem!important;color:var(--imc-text)!important;line-height:1.5}.imc-duration-result strong{color:var(--imc-primary)!important;font-size:1rem!important}.imc-factors-card{padding:1.2rem 1.4rem;background:#f8fafc!important;border:1px solid var(--imc-border)!important}.imc-factors-title{font-size:0.83rem!important;font-weight:700;color:var(--imc-text)!important;margin-bottom:.6rem;display:flex;align-items:center;gap:.4rem}.imc-factors-list{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none}.imc-factor-tag{background:var(--imc-white)!important;border:1px solid var(--imc-border)!important;border-radius:100px;padding:.22rem .7rem;font-size:0.75rem!important;color:var(--imc-text-muted)!important;font-weight:500}.imc-result-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:.5rem}.imc-modal-overlay{position:fixed;inset:0;background:rgb(15 23 42 / .55)!important;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;backdrop-filter:blur(4px);animation:imc-fadeIn 0.18s ease}.imc-modal-overlay[hidden]{display:none}@keyframes imc-fadeIn{from{opacity:0}to{opacity:1}}.imc-modal{background:var(--imc-white)!important;border-radius:var(--imc-radius);padding:1.5rem;max-width:400px;width:100%;text-align:center;box-shadow:0 20px 60px rgb(0 0 0 / .25);animation:imc-scaleIn 0.2s cubic-bezier(.34,1.56,.64,1)}@keyframes imc-scaleIn{from{transform:scale(.88);opacity:0}to{transform:scale(1);opacity:1}}.imc-modal-icon{width:60px;height:60px;background:#fff3e0!important;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:#e65100!important}.imc-modal-title{display:block;font-size:1.2rem!important;font-weight:700;color:var(--imc-text)!important;margin-bottom:.6rem}.imc-modal-body{font-size:0.88rem!important;color:var(--imc-text-muted)!important;line-height:1.55;margin-bottom:1.5rem}.imc-modal-actions{display:flex;gap:.75rem;justify-content:center}.imc-toast{position:fixed;bottom:1.5rem;left:50%;transform:translateX(-50%) translateY(80px);background:#1e293b!important;color:var(--imc-white)!important;padding:.65rem 1.2rem;border-radius:100px;font-size:0.84rem!important;font-weight:500;box-shadow:0 8px 24px rgb(0 0 0 / .2);transition:transform 0.3s cubic-bezier(.34,1.56,.64,1),opacity 0.3s;opacity:0;z-index:2000;white-space:nowrap;pointer-events:none}.imc-toast.imc-toast-show{transform:translateX(-50%) translateY(0);opacity:1}.imc-footer{text-align:center;padding:1.2rem;color:var(--imc-text-muted)!important;font-size:0.77rem!important;border-top:1px solid var(--imc-border)!important;background:var(--imc-white)!important}@media (max-width:640px){.imc-header{padding:2rem 1rem 4rem}.imc-row{grid-template-columns:1fr;gap:.8rem}.imc-result-grid{grid-template-columns:1fr 1fr}.imc-result-grid>.imc-result-card:last-child{grid-column:1 / -1}.imc-result-actions{flex-direction:column}.imc-result-actions .imc-btn{width:100%;justify-content:center}.imc-form-actions{padding:1.2rem 1rem}#imc-calculate{padding:.85rem 1.5rem;width:100%}.imc-duration-table{font-size:0.78rem!important}.imc-duration-table th,.imc-duration-table td{padding:.5rem .5rem}}@media (max-width:400px){.imc-result-grid{grid-template-columns:1fr}.imc-result-grid>.imc-result-card:last-child{grid-column:auto}.imc-result-card-value{font-size:1.4rem!important}}
