:root{
  --ec-bg:#071117;
  --ec-panel:#0d1923;
  --ec-panel-2:#122232;
  --ec-panel-3:#09141d;
  --ec-line:#223a4d;
  --ec-line-strong:#31566e;
  --ec-text:#edf6fb;
  --ec-muted:#8fa7b7;
  --ec-muted-2:#6f8796;
  --ec-cyan:#67d9ff;
  --ec-mint:#55dfb4;
  --ec-gold:#ffd06d;
  --ec-red:#ff7676;
}
*{box-sizing:border-box}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
html{overflow-y:scroll;scrollbar-gutter:stable}
html,body{margin:0;background:var(--ec-bg);color:var(--ec-text)}
body{min-height:100vh;background-image:radial-gradient(circle at 10% -4%,rgba(83,180,255,.09),transparent 30rem),linear-gradient(180deg,#071117,#08131c 60%,#060d13)}

.enhanceCalc{width:min(1480px,calc(100% - 24px));margin:14px auto 0}
.enhanceCalc button,.enhanceCalc select,.enhanceCalc input{font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;font-size:inherit;line-height:inherit}
.enhanceCalc button{cursor:pointer}
.ec-loading,.ec-error{min-height:220px;display:grid;place-items:center;padding:30px;border:1px solid var(--ec-line);border-radius:14px;background:var(--ec-panel);color:var(--ec-muted);font-size:13px;text-align:center}
.ec-error{color:#ffb5b5;border-color:rgba(255,118,118,.34)}

.ec-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:14px;padding:6px;border:1px solid var(--ec-line);border-radius:14px;background:#08131b}
.ec-tab{min-height:58px;padding:10px 14px;display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ec-muted);font-weight:700}
.ec-tab>small{color:var(--ec-muted-2);font-size:10.5px!important;line-height:1.2!important}
.ec-tab.active{border-color:rgba(103,217,255,.38);background:linear-gradient(180deg,rgba(103,217,255,.12),rgba(103,217,255,.035));color:#f5fbff;box-shadow:inset 0 2px 0 rgba(103,217,255,.72)}
.ec-tab.active small{color:#9eddf4}

.ec-stack{min-width:0;display:grid;gap:14px}
.ec-card{min-width:0;border:1px solid var(--ec-line);border-radius:14px;background:var(--ec-panel);overflow:hidden}
.ec-card-head{padding:14px 16px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;background:var(--ec-panel-2);border-bottom:1px solid var(--ec-line)}
.ec-card-head h2,.ec-card-head h3{margin:0}
.ec-card-head p{margin:5px 0 0;color:var(--ec-muted);font-size:11.5px;line-height:1.55}
.ec-card-body{min-width:0;padding:16px}
.ec-status{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border:1px solid rgba(85,223,180,.28);border-radius:999px;background:rgba(85,223,180,.06);color:var(--ec-mint);font-size:10px;font-weight:800;white-space:nowrap}

.ec-segment{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:14px;padding:5px;border:1px solid var(--ec-line);border-radius:11px;background:#071219}
.ec-segment button{min-height:45px;padding:8px 12px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ec-muted);font-size:12px;font-weight:850}
.ec-segment button.active{border-color:#31536b;background:#102638;color:#fff}

.ec-field-grid{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:10px;margin-bottom:14px}
.ec-star-grid{grid-template-columns:.7fr .7fr 1.4fr}
.ec-field{min-width:0;display:flex;flex-direction:column;gap:6px}
.ec-field>span{color:#b6cad5;font-size:10.5px;font-weight:800}
.ec-select{width:100%;min-height:42px;padding:0 36px 0 11px;border:1px solid #315069;border-radius:9px;appearance:none;background-color:#071219;background-image:linear-gradient(45deg,transparent 50%,#8195a2 50%),linear-gradient(135deg,#8195a2 50%,transparent 50%);background-position:calc(100% - 16px) 18px,calc(100% - 11px) 18px;background-repeat:no-repeat;background-size:5px 5px;color:#f0f8fc;font-size:12px;outline:none}
.ec-select:focus{border-color:var(--ec-cyan);box-shadow:0 0 0 2px rgba(103,217,255,.09)}
.ec-select:disabled{opacity:.48;cursor:not-allowed}
.ec-inline-info{min-height:65px;padding:10px 12px;display:flex;flex-direction:column;justify-content:center;gap:4px;border:1px solid var(--ec-line);border-radius:9px;background:var(--ec-panel-3)}
.ec-inline-info span{color:var(--ec-muted);font-size:10px}.ec-inline-info strong{font-size:13px}.ec-inline-info small{color:var(--ec-muted-2);font-size:9px}

.ec-targets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ec-target{min-width:0;padding:13px;border:1px solid #294258;border-radius:12px;background:#09141d}
.ec-target:not(.off){border-color:rgba(103,217,255,.72);background:radial-gradient(circle at 100% 0,rgba(103,217,255,.12),transparent 48%),#0b1b27;box-shadow:inset 0 2px 0 rgba(103,217,255,.62),0 0 0 1px rgba(103,217,255,.08),0 8px 24px rgba(0,0,0,.16)}
.ec-target.off{opacity:.48;filter:saturate(.62)}
.ec-target-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:11px}
.ec-target-no{display:grid;min-width:38px;height:26px;padding:0 7px;place-items:center;border-radius:8px;background:#102f3d;color:var(--ec-cyan);font-size:11px;font-weight:900}
.ec-check{display:flex;align-items:center;gap:6px;color:var(--ec-muted);font-size:10px;cursor:pointer}.ec-check input{accent-color:var(--ec-cyan)}
.ec-condition{display:grid;grid-template-columns:90px minmax(0,1fr);gap:7px;margin-top:9px}
.ec-mode{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;padding:3px;border:1px solid var(--ec-line);border-radius:8px;background:#071219}
.ec-mode button{min-height:36px;padding:0 7px;border:0;border-radius:6px;background:transparent;color:var(--ec-muted-2);font-size:10px;font-weight:800}
.ec-mode button.active{background:#153044;color:#dff6ff}.ec-mode button:disabled{cursor:not-allowed}
.ec-tier-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-bottom:10px}.ec-tier-mode button{min-height:55px;padding:8px;border:1px solid var(--ec-line);border-radius:9px;background:#071219;color:var(--ec-muted-2);text-align:left}.ec-tier-mode button.active{border-color:rgba(103,217,255,.58);background:#153044;color:#e5f7ff}.ec-tier-mode strong,.ec-tier-mode small{display:block}.ec-tier-mode strong{font-size:11px}.ec-tier-mode small{margin-top:4px;font-size:9px;line-height:1.35}.ec-option-list{display:grid;gap:9px}.ec-option-group>strong{display:block;margin:0 0 6px;color:#8fa9b8;font-size:10px}.ec-option-checks{display:grid;gap:4px}.ec-option-check{display:flex;align-items:center;gap:7px;min-height:43px;padding:7px 8px;border:1px solid rgba(188,221,236,.11);border-radius:8px;background:#071219;cursor:pointer}.ec-option-check.selected{border-color:rgba(85,223,180,.45);background:rgba(85,223,180,.07)}.ec-option-check input{accent-color:var(--ec-mint)}.ec-option-check span{min-width:0}.ec-option-check b,.ec-option-check small{display:block}.ec-option-check b{color:#dceaf0;font-size:11px}.ec-option-check small{margin-top:3px;color:var(--ec-muted-2);font-size:9px}
.ec-note{margin:13px 0 0;color:var(--ec-muted-2);font-size:10.5px;line-height:1.7}
.ec-warning{margin-top:11px;padding:11px 13px;border:1px solid rgba(255,208,109,.28);border-radius:9px;background:rgba(255,208,109,.06);color:#e7cc91;font-size:10.5px;line-height:1.65}
.ec-mystic-warning{padding:20px 22px;border:2px solid rgba(255,208,109,.72);border-radius:14px;background:radial-gradient(circle at 90% 0,rgba(255,208,109,.2),transparent 42%),linear-gradient(135deg,#33220d,#1b1711);box-shadow:0 12px 32px rgba(0,0,0,.24),inset 0 2px 0 rgba(255,233,171,.4);text-align:center}
.ec-mystic-warning span{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(255,208,109,.15);color:#ffe09a;font-size:10px;font-weight:900}
.ec-mystic-warning strong{display:block;margin-top:10px;color:#fff2c4;font-size:clamp(21px,3vw,34px);line-height:1.25;letter-spacing:-.04em}
.ec-mystic-warning p{margin:8px 0 0;color:#d9bd82;font-size:11px;line-height:1.6}
.ec-validation{margin-top:11px;padding:11px 13px;border:1px solid rgba(255,118,118,.28);border-radius:9px;background:rgba(255,118,118,.055);color:#ffb0b0;font-size:10.5px}

.ec-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ec-metric{min-height:122px;padding:15px;display:flex;flex-direction:column;border:1px solid #294258;border-radius:12px;background:linear-gradient(180deg,#102638,#0b1b28)}
.ec-metric.primary{border-color:rgba(103,217,255,.4);background:radial-gradient(circle at 95% 0,rgba(103,217,255,.13),transparent 56%),linear-gradient(180deg,#102638,#0b1b28)}
.ec-metric span{color:var(--ec-muted);font-size:10.5px;font-weight:800}.ec-metric strong{margin:auto 0 6px;color:#f4fbff;font-size:clamp(20px,2.1vw,28px);line-height:1.15;letter-spacing:-.04em;overflow-wrap:anywhere}.ec-metric.primary strong{color:var(--ec-cyan)}.ec-metric small{color:var(--ec-muted-2);font-size:9px;line-height:1.5}
.ec-star-summary .ec-card-body{background:radial-gradient(circle at 4% 0,rgba(103,217,255,.08),transparent 34rem)}
.ec-star-primary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ec-star-risk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}
.ec-risk-metric{min-height:96px;background:#0a1720}.ec-risk-metric strong{font-size:24px}
.ec-risk-metric.destroy{border-color:rgba(255,118,118,.3);background:linear-gradient(180deg,rgba(255,118,118,.075),#0a1720)}
.ec-risk-metric.destroy strong{color:#ffaaaa}.ec-risk-metric.down strong{color:#ffd98b}

.ec-table-scroll{width:100%;overflow:auto;border:1px solid var(--ec-line);border-radius:11px;background:#09141d}
.enhanceCalc table{width:100%;border-collapse:separate;border-spacing:0;font-size:11px}
.enhanceCalc th{position:sticky;top:0;z-index:2;padding:10px 11px;background:#122232;color:#a9bdca;border-bottom:1px solid var(--ec-line);font-size:10px;font-weight:850;text-align:left;white-space:nowrap}
.enhanceCalc td{padding:11px;border-bottom:1px solid rgba(188,221,236,.085);color:#bacbd4;vertical-align:top;font-variant-numeric:tabular-nums}
.enhanceCalc tbody tr:last-child td{border-bottom:0}.enhanceCalc tbody tr:hover td{background:rgba(103,217,255,.022)}
/* Currency conversion pairs each original heading with its amount or purchase plan.
   The stage/milestone comparison tables retain their horizontal scrolling. */
.ec-plan-table{min-width:0;display:grid;grid-template-columns:minmax(150px,20%) minmax(0,1fr)}
.ec-plan-table :is(thead,tbody,tr){display:contents}
.enhanceCalc .ec-plan-table :is(th,td){min-width:0;width:auto;position:static;white-space:normal;overflow-wrap:anywhere}
.ec-plan-table th{grid-column:1;grid-row:var(--ec-plan-row);display:flex;align-items:center;text-align:left}
.ec-plan-table td{grid-column:2;grid-row:var(--ec-plan-row)}
.ec-plan-table :is(th,td):nth-child(1){--ec-plan-row:1}
.ec-plan-table :is(th,td):nth-child(2){--ec-plan-row:2}
.ec-plan-table :is(th,td):nth-child(3){--ec-plan-row:3}
.ec-plan-table :is(th,td):nth-child(4){--ec-plan-row:4}
.ec-plan-table :is(th,td):nth-child(5){--ec-plan-row:5}
.ec-plan-table :is(th,td):nth-child(6){--ec-plan-row:6}
.enhanceCalc .ec-plan-table tbody tr.expected>td{border-bottom:1px solid var(--ec-line)}
.enhanceCalc .ec-plan-table :is(th,td):last-child{border-bottom:0}
.ec-plan-table .ec-plan-cell{min-width:0}
@media(max-width:560px){
  .ec-plan-table{grid-template-columns:minmax(0,1fr)}
  .ec-plan-table th{grid-column:1;grid-row:calc(var(--ec-plan-row)*2 - 1)}
  .ec-plan-table td{grid-column:1;grid-row:calc(var(--ec-plan-row)*2)}
  .enhanceCalc .ec-plan-table th{padding-bottom:7px;border-bottom:0}
}
.ec-plan-table tr.expected td{background:rgba(103,217,255,.035)}
.ec-milestone-table{min-width:980px}.ec-milestone-table th,.ec-milestone-table td{white-space:nowrap}.ec-milestone-table tbody tr.selected{background:rgba(85,223,180,.09);box-shadow:inset 3px 0 var(--ec-mint)}.ec-milestone-table tbody tr.selected th{color:var(--ec-mint)}.ec-compact-plan strong{display:block;color:var(--ec-text);font-size:12px}.ec-compact-plan small{display:block;margin-top:3px;color:var(--ec-muted-2);font-size:10px}
.ec-basis strong{display:block;color:#f3f9fc;font-size:12px}.ec-basis small{display:block;margin-top:4px;color:var(--ec-muted-2);font-size:9px;line-height:1.45}
.ec-plan-money{color:var(--ec-mint);font-size:14px;font-weight:900}.ec-plan-wait{margin-top:3px;color:#9fb2bd;font-size:9.5px}.ec-plan-cell details{margin-top:6px}.ec-plan-cell summary{color:#7fa6b9;font-size:9px;cursor:pointer}.ec-plan-breakdown{margin-top:5px;color:#758e9d;font-size:8.5px;line-height:1.55}
.ec-impossible{color:#ff9b9b;font-weight:800}

.ec-preset{display:flex;flex-wrap:wrap;gap:6px}.ec-preset button{min-height:30px;padding:0 10px;border:1px solid var(--ec-line-strong);border-radius:8px;background:#0b1d29;color:#cfe7f1;font-size:10px;font-weight:800}
.ec-protections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.ec-protect{min-height:72px;padding:13px;display:flex;align-items:center;gap:11px;border:1px solid var(--ec-line);border-radius:11px;background:#09141d;cursor:pointer}.ec-protect.on{border-color:rgba(85,223,180,.36);background:rgba(85,223,180,.055)}.ec-protect input{position:absolute;opacity:0;pointer-events:none}.ec-switch{position:relative;width:34px;height:19px;flex:0 0 34px;border:1px solid #3b5262;border-radius:999px;background:#17232b}.ec-switch::after{position:absolute;left:3px;top:3px;width:11px;height:11px;border-radius:50%;background:#788b97;content:"";transition:.15s}.ec-protect.on .ec-switch{border-color:var(--ec-mint);background:#123129}.ec-protect.on .ec-switch::after{left:18px;background:var(--ec-mint)}.ec-protect strong{display:block;font-size:12px}.ec-protect small{display:block;margin-top:4px;color:var(--ec-muted-2);font-size:9px;line-height:1.45}
.ec-stage-table{min-width:760px}.ec-stage-table th:not(:first-child),.ec-stage-table td:not(:first-child){text-align:right}.ec-stage-table .changed{color:var(--ec-mint);background:rgba(85,223,180,.035)}

.ec-source summary{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;background:var(--ec-panel-2)}
.ec-source summary::-webkit-details-marker{display:none}.ec-source summary strong{display:block;font-size:13px}.ec-source summary small{display:block;margin-top:4px;color:var(--ec-muted);font-size:9.5px}.ec-source summary>span:last-child{color:var(--ec-cyan);font-size:10px}.ec-source[open] summary>span:last-child{font-size:0}.ec-source[open] summary>span:last-child::after{font-size:10px;content:"접기"}
.ec-source-body{padding:14px 16px}.ec-source-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.ec-source-item{min-width:0;padding:10px;border:1px solid var(--ec-line);border-radius:9px;background:#09141d}.ec-source-item span,.ec-source-item small{display:block;color:var(--ec-muted-2);font-size:8.5px}.ec-source-item strong{display:block;margin:4px 0;color:#dceaf0;font-size:10px;overflow-wrap:anywhere}.ec-source-item code{color:#7195a5;font-size:7.5px;overflow-wrap:anywhere}.ec-source-notes{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:10px}.ec-source-notes p{margin:0;padding:10px;border-left:2px solid #31566e;background:#09141d;color:var(--ec-muted);font-size:9.5px;line-height:1.65}

.updateBox{width:min(1480px,calc(100% - 24px));margin:26px auto 0;background:var(--ec-panel);border:1px solid var(--ec-line);border-radius:14px;overflow:hidden}.updateTitle{padding:13px 16px;background:var(--ec-panel-2);border-bottom:1px solid var(--ec-line);color:var(--ec-text);font-size:13px;font-weight:700}.updateRow{display:grid;grid-template-columns:180px minmax(0,1fr);gap:14px;padding:10px 16px;border-bottom:1px solid rgba(188,221,236,.085);font-size:12px;line-height:1.55}.updateTime{color:#7f97a7;font-size:11px}.updateText{color:#aec2cf}

@media(max-width:1100px){
  .ec-targets{grid-template-columns:1fr}
  .ec-source-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:900px){
  .ec-field-grid{grid-template-columns:repeat(2,1fr)}.ec-field-grid .ec-inline-info,.ec-star-grid .ec-field:last-child{grid-column:1/-1}.ec-metrics{grid-template-columns:repeat(2,1fr)}.ec-star-primary-grid{grid-template-columns:repeat(2,1fr)}.ec-star-primary-grid .ec-metric:last-child{grid-column:1/-1}
}

@media(max-width:700px){
  .enhanceCalc,.updateBox{width:calc(100% - 14px)}
  .ec-tabs{gap:5px;padding:4px}.ec-tab{min-height:52px;padding:7px}.ec-tab span{font-size:12px}.ec-tab small{display:none}
  .ec-card-head{padding:12px;flex-direction:column;gap:9px}.ec-card-body{padding:12px}.ec-field-grid,.ec-star-grid,.ec-protections,.ec-source-notes,.ec-star-primary-grid{grid-template-columns:1fr}.ec-field-grid .ec-inline-info,.ec-star-grid .ec-field:last-child,.ec-star-primary-grid .ec-metric:last-child{grid-column:auto}.ec-condition{grid-template-columns:84px minmax(0,1fr)}
  .ec-metrics{gap:7px}.ec-star-risk-grid{grid-template-columns:1fr}.ec-metric{min-height:112px;padding:12px}.ec-metric strong{font-size:20px}
  .ec-source-grid{grid-template-columns:1fr}.updateRow{grid-template-columns:1fr;gap:2px}
}

@media(max-width:420px){.ec-metrics,.ec-star-risk-grid{grid-template-columns:1fr}.ec-condition{grid-template-columns:1fr}.ec-mode{grid-template-columns:repeat(2,1fr)}}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* ===== ENHANCEMENT UI SCALE rc6.92 ===== */
.ec-tab,
.ec-segment button{
  font-weight:700!important;
  letter-spacing:-.025em!important;
}
.ec-tab span{font-size:13px}.ec-tab small{font-size:10.5px}
.ec-card-head p{font-size:11.5px;line-height:1.55}
.ec-status{font-size:10.5px}
.ec-segment button{font-size:13px}
.ec-field>span{font-size:12px}
.ec-select{font-size:14px}
.ec-inline-info span{font-size:11px}.ec-inline-info strong{font-size:14px}.ec-inline-info small{font-size:10.5px}
.ec-target-no{font-size:11px}.ec-check{font-size:11px}.ec-mode button{font-size:11px}
.ec-note,.ec-warning,.ec-validation{font-size:11px}
.ec-metric span{font-size:11px}.ec-metric small{font-size:10.5px}
.enhanceCalc table{font-size:12px}.enhanceCalc th{font-size:11px}
.ec-plan-money{font-size:14px}.ec-plan-wait{font-size:11px}.ec-plan-cell summary{font-size:10.5px}.ec-plan-breakdown{font-size:10px}
.ec-preset button{font-size:11px}.ec-protect strong{font-size:13px}.ec-protect small{font-size:11px}
.updateTitle{font-size:13px}.updateRow{font-size:12px}.updateTime{font-size:11px}
@media(max-width:700px){.ec-select{font-size:13px}.ec-field>span{font-size:11.5px}}
/* ===== /ENHANCEMENT UI SCALE ===== */
