:root{--green:#2851a2;--green-2:#4d7bd0;--green-3:#eaf0fb;--navy:#112650;--ink:#17233a;--muted:#68758a;--line:#dbe3f1;--paper:#fff;--bg:#f3f6fb;--soft:#ebf0f8;--shadow:0 20px 55px rgba(28,61,126,.10);--radius:24px;--container:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);word-break:keep-all}a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}.container{width:min(var(--container),calc(100% - 40px));margin:0 auto}.site-header{height:78px;background:rgba(255,255,255,.92);border-bottom:1px solid rgba(208,212,219,.8);position:relative;z-index:10;backdrop-filter:blur(16px)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand-symbol{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#224790,#5685d8);display:grid;place-items:center;color:#fff;font-size:20px;box-shadow:0 9px 24px rgba(29,60,123,.2)}.brand>span:last-child{display:flex;flex-direction:column;line-height:1.05}.brand b{font-family:Manrope,sans-serif;font-size:18px;letter-spacing:.05em}.brand small{font-family:Manrope,sans-serif;font-size:9px;letter-spacing:.18em;color:#5873a4;margin-top:5px}.header-status{display:flex;align-items:center;gap:8px;color:#4d6590;font-size:13px;font-weight:700}.header-status span{width:8px;height:8px;background:#6593df;border-radius:50%;box-shadow:0 0 0 5px rgba(37,86,178,.12)}.back-link{font-size:13px;font-weight:700;color:#455a80;display:flex;align-items:center;gap:7px}.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#f9fafb 0%,#eef2f7 48%,#e8ecf2 100%);border-bottom:1px solid #dee2e8}.hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 15% 25%,rgba(32,76,158,.07) 0 2px,transparent 3px),radial-gradient(circle at 80% 70%,rgba(32,76,158,.06) 0 2px,transparent 3px);background-size:58px 58px,72px 72px}.hero-grid{min-height:445px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);align-items:center;gap:70px;position:relative}.eyebrow,.section-label{font-family:Manrope,sans-serif;font-weight:800;letter-spacing:.15em;color:var(--green);font-size:11px}.eyebrow{display:flex;align-items:center;gap:7px}.hero h1{font-size:clamp(40px,5vw,67px);line-height:1.08;letter-spacing:-.045em;margin:17px 0 18px;font-weight:800;color:#132a54}.hero-lead{font-size:19px;line-height:1.7;color:#42567b;margin:0;max-width:680px}.hero-formula{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.hero-formula>div{display:flex;align-items:center;gap:10px;padding:11px 15px;border-radius:999px;background:rgba(255,255,255,.78);border:1px solid #d7dde5;box-shadow:0 8px 25px rgba(43,62,100,.06);font-size:13px}.hero-formula span{color:#526a98}.hero-formula i{color:#99a4b5}.hero-formula b{color:#204289}.hero-visual{height:330px;position:relative;display:grid;place-items:center}.eco-orb{width:185px;height:185px;border-radius:50%;background:linear-gradient(145deg,#1e4083,#4e7ed1);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 35px 70px rgba(22,46,93,.25),inset 0 0 0 1px rgba(255,255,255,.18);position:relative;z-index:2}.eco-orb i{font-size:42px;margin-bottom:8px}.eco-orb strong{font-family:Manrope,sans-serif;font-size:28px;letter-spacing:.12em}.eco-orb small{font-family:Manrope,sans-serif;letter-spacing:.23em;font-size:9px;opacity:.78;margin-left:.2em}.planet-ring{position:absolute;border:1px solid rgba(32,66,134,.22);border-radius:50%;animation:spin 18s linear infinite}.ring-one{width:280px;height:280px}.ring-two{width:355px;height:210px;transform:rotate(-16deg);animation-direction:reverse;animation-duration:24s}.planet-ring:before,.planet-ring:after{content:"";position:absolute;width:12px;height:12px;border-radius:50%;background:#77a0e4;box-shadow:0 0 0 6px rgba(94,133,205,.12)}.planet-ring:before{top:13%;left:13%}.planet-ring:after{right:9%;bottom:25%;width:8px;height:8px}.float-tag{position:absolute;z-index:3;background:#fff;border:1px solid #d9dee6;border-radius:12px;padding:10px 13px;box-shadow:0 15px 35px rgba(28,46,83,.12);font-family:Manrope,sans-serif;font-size:10px;font-weight:800;letter-spacing:.08em;color:#303f5d}.float-tag i{color:var(--green);margin-right:5px}.tag-a{left:2%;top:25%;animation:float 4s ease-in-out infinite}.tag-b{right:1%;bottom:22%;animation:float 4.8s ease-in-out infinite reverse}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{50%{transform:translateY(-9px)}}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:-42px;position:relative;z-index:4}.metric-card{min-height:175px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;display:flex;gap:16px;align-items:flex-start;box-shadow:0 15px 45px rgba(35,48,73,.065)}.metric-main{background:linear-gradient(145deg,#204389,#22468f);color:#fff;border-color:transparent;box-shadow:0 20px 50px rgba(25,53,109,.22)}.metric-icon{flex:0 0 48px;width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#ebeff5;color:var(--green);font-size:22px}.metric-main .metric-icon{background:rgba(255,255,255,.15);color:#fff}.metric-card>div:last-child{min-width:0}.metric-card small{display:block;font-size:13px;color:#556f9e;font-weight:700;margin-bottom:10px}.metric-main small{color:rgba(255,255,255,.75)}.metric-card strong{font-family:Manrope,Pretendard,sans-serif;font-size:30px;line-height:1;letter-spacing:-.03em}.metric-card strong+span{font-size:15px;font-weight:800;margin-left:4px;color:#36476a}.metric-main strong+span{color:rgba(255,255,255,.86)}.metric-card p{margin:11px 0 0;color:#667fad;font-size:12px;line-height:1.45}.metric-main p{color:rgba(255,255,255,.67)}.content-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:20px;margin-top:24px}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.panel-heading h2{font-size:22px;letter-spacing:-.035em;margin:7px 0 0}.badge-soft,.unit-label{font-size:11px;font-weight:800;color:#475c84;background:#f0f2f5;border:1px solid #e0e4e9;border-radius:999px;padding:8px 11px;white-space:nowrap}.tree-content{display:grid;grid-template-columns:210px 1fr;align-items:center;gap:25px;min-height:265px}.tree-gauge{position:relative;width:190px;height:225px;margin:auto}.tree-svg{position:absolute;inset:0;width:100%;height:100%}.tree-base path{fill:#e4e6ea}.tree-fill{position:absolute;left:0;right:0;bottom:0;height:var(--tree-progress);overflow:hidden;transition:height 1.5s cubic-bezier(.22,1,.36,1)}.tree-active{bottom:0;top:auto;height:225px}.tree-active path{fill:url(#none);fill:#4676c8}.tree-summary .big-value{display:flex;align-items:flex-end;gap:8px}.tree-summary .big-value strong{font-family:Manrope,sans-serif;font-size:42px;line-height:1;color:#1d3d7e}.tree-summary .big-value span{font-weight:800;color:#405376;margin-bottom:5px}.progress-line{height:8px;border-radius:999px;background:#eeeff1;overflow:hidden;margin:22px 0 15px}.progress-line span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#5586d8,#96b5ec)}.tree-summary p{font-size:14px;line-height:1.65;color:#475d85;margin:0 0 14px}.tree-summary p b{color:#1d315a}.tree-summary small{display:block;font-size:11px;line-height:1.65;color:#7188b2}.chart-box{height:255px}.chart-foot{display:flex;justify-content:space-between;align-items:center;margin-top:14px;font-size:11px;color:#5873a4}.chart-foot span{display:flex;align-items:center;gap:7px}.chart-foot i{width:9px;height:9px;background:#4777ca;border-radius:3px}.chart-foot b{color:#2a3852}.second-row{grid-template-columns:1.35fr 1fr}.ranking-list{display:grid;gap:14px}.ranking-item{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:13px}.rank-number{width:30px;height:30px;border-radius:10px;background:#f0f2f5;display:grid;place-items:center;font-family:Manrope,sans-serif;font-size:11px;font-weight:800;color:#455a80}.rank-info b{display:block;font-size:13px;margin-bottom:8px}.rank-bar{height:6px;background:#eeeff1;border-radius:999px;overflow:hidden}.rank-bar span{display:block;height:100%;background:linear-gradient(90deg,#3566bd,#6f9bdf);border-radius:inherit}.ranking-item>strong{font-family:Manrope,sans-serif;font-size:15px;color:#1a2947}.ranking-item>strong small{font-size:10px;color:#6880ad;margin-left:3px}.donut-layout{display:grid;grid-template-columns:190px 1fr;gap:20px;align-items:center}.donut-box{position:relative;height:190px}.donut-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.donut-center strong{font-family:Manrope,sans-serif;font-size:30px;color:#1a2947}.donut-center span{font-size:11px;color:#6079a9;margin-top:4px}.donut-layout p{font-size:13px;line-height:1.7;color:#546d9b}.recent-panel{margin-top:20px;margin-bottom:25px}.table-scroll{overflow:auto;border:1px solid #e4e6ea;border-radius:15px}.data-table{width:100%;border-collapse:collapse;min-width:900px}.data-table th{background:#f3f5f6;color:#4b618b;font-size:11px;font-weight:800;text-align:left;padding:14px 16px;border-bottom:1px solid #e1e4e8;white-space:nowrap}.data-table td{font-size:12px;color:#465b82;padding:15px 16px;border-bottom:1px solid #eeeff1;white-space:nowrap}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fbfcfd}.data-table td strong{color:#212c41}.text-green{color:#2851a2!important}.empty-state{text-align:center;padding:45px;color:#7188b3}.empty-state i{font-size:30px}.method-section{margin-top:35px;background:#142d5b;color:#fff;padding:80px 0;position:relative;overflow:hidden}.method-section:after{content:"";position:absolute;width:460px;height:460px;border-radius:50%;right:-150px;top:-190px;background:radial-gradient(circle,rgba(48,100,197,.16),transparent 68%)}.method-wrap{position:relative;z-index:1}.method-title{max-width:700px}.method-title .section-label{color:#7fa7e8}.method-title h2{font-size:34px;letter-spacing:-.04em;margin:10px 0}.method-title p{color:#a7b1c0;font-size:15px}.method-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:38px}.method-steps article{position:relative;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);border-radius:20px;padding:24px;min-height:190px}.method-steps article>span{position:absolute;right:18px;top:16px;font-family:Manrope,sans-serif;font-size:11px;color:#94b4ec;letter-spacing:.12em}.method-steps i{font-size:28px;color:#76a1e5}.method-steps h3{font-size:17px;margin:18px 0 9px}.method-steps p{font-size:13px;line-height:1.65;color:#a6b0bf;margin:0}.source-box{margin-top:18px;border-radius:18px;background:rgba(255,255,255,.075);padding:22px 24px;border:1px solid rgba(255,255,255,.1)}.source-box>div{display:flex;align-items:center;gap:9px;color:#dde4ee}.source-box ul{margin:14px 0 0;padding-left:18px;color:#9ca7b8;font-size:12px;line-height:1.75}.site-footer{background:#0b1c39;color:#6f87b2;padding:24px 0;border-top:1px solid rgba(255,255,255,.06)}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-inner>div{display:flex;align-items:center;gap:10px}.footer-inner b{font-family:Manrope,sans-serif;letter-spacing:.08em;color:#e9edf2}.footer-inner span,.footer-inner p{font-size:11px}.member-hero{padding:60px 0 85px;background:linear-gradient(135deg,#f0f3f8,#e7ebf2);border-bottom:1px solid #d9dee5}.member-hero h1{font-size:44px;letter-spacing:-.045em;margin:12px 0}.member-hero p{font-size:16px;color:#4d648f;margin:0}.member-metrics{margin-top:-48px}.member-content{grid-template-columns:1.4fr 1fr}.member-summary-list{display:grid;gap:4px}.member-summary-list>div{display:grid;grid-template-columns:34px 1fr auto;align-items:center;padding:14px 2px;border-bottom:1px solid #eeeff1}.member-summary-list>div:last-child{border-bottom:0}.member-summary-list i{width:30px;height:30px;border-radius:10px;background:#ecf0f5;color:#3260b2;display:grid;place-items:center}.member-summary-list span{font-size:13px;color:#4c638d}.member-summary-list b{font-family:Manrope,Pretendard,sans-serif;font-size:14px}.member-notice{background:#eef1f5;padding:24px 0;border-top:1px solid #dee2e7}.member-notice .container{display:flex;gap:14px;align-items:flex-start}.member-notice i{color:#3969bb;font-size:20px}.member-notice b{font-size:13px}.member-notice p{font-size:12px;line-height:1.7;color:#506995;margin:5px 0 0}@media(max-width:1050px){.metric-grid{grid-template-columns:repeat(2,1fr)}.content-grid,.second-row,.member-content{grid-template-columns:1fr}.hero-grid{grid-template-columns:1fr 380px;gap:25px}.tree-content{grid-template-columns:190px 1fr}}@media(max-width:780px){.container{width:min(100% - 24px,var(--container))}.site-header{height:68px}.header-status{display:none}.hero-grid{grid-template-columns:1fr;min-height:auto;padding:65px 0 50px}.hero-visual{display:none}.hero h1{font-size:42px}.hero-lead{font-size:16px}.metric-grid{margin-top:-24px}.metric-card{min-height:150px}.content-grid{margin-top:16px}.panel{padding:22px;border-radius:20px}.tree-content{grid-template-columns:160px 1fr}.tree-gauge{width:150px;height:185px}.tree-active{height:185px}.donut-layout{grid-template-columns:160px 1fr}.donut-box{height:160px}.method-section{padding:60px 0}.method-steps{grid-template-columns:1fr}.footer-inner{align-items:flex-start;flex-direction:column}.member-hero{padding:48px 0 70px}.member-hero h1{font-size:36px}}@media(max-width:560px){.metric-grid{grid-template-columns:1fr}.metric-card{min-height:auto;padding:20px}.hero h1{font-size:36px}.hero-formula{display:grid}.hero-formula>div{justify-content:center}.tree-content{grid-template-columns:1fr}.tree-gauge{width:170px;height:195px}.tree-active{height:195px}.tree-summary{text-align:center}.tree-summary .big-value{justify-content:center}.chart-box{height:230px}.donut-layout{grid-template-columns:1fr}.donut-box{height:190px}.donut-layout p{text-align:center}.method-title h2{font-size:28px}.panel-heading{align-items:center}.panel-heading h2{font-size:19px}.metric-card strong{font-size:28px}.member-hero h1{font-size:30px}.brand-symbol{width:38px;height:38px}.brand b{font-size:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* v1.1.0 기간 조회 필터 */
.period-filter-section{margin-top:20px;margin-bottom:24px;position:relative;z-index:5}
.period-filter-panel{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 14px 42px rgba(35,48,73,.06);padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.period-current{display:flex;align-items:center;gap:14px;min-width:300px}
.period-icon{width:48px;height:48px;flex:0 0 48px;border-radius:15px;display:grid;place-items:center;background:#ebeff5;color:var(--green);font-size:20px}
.period-current small{display:block;font-size:11px;line-height:1;color:#5f79a9;font-weight:800;letter-spacing:.06em;margin-bottom:7px}
.period-current strong{display:block;font-family:Manrope,Pretendard,sans-serif;font-size:16px;color:#19243b;letter-spacing:-.02em}
.period-current p{font-size:11px;color:#7188b2;margin:5px 0 0;line-height:1.45}
.period-controls{display:flex;flex-direction:column;align-items:flex-end;gap:12px;min-width:0}
.period-presets{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.period-chip{height:38px;padding:0 14px;border-radius:11px;border:1px solid #dee1e6;background:#f7f8fa;color:#4b618a;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:800;transition:.2s ease;white-space:nowrap}
.period-chip:hover{border-color:#9fb9e7;background:#eff2f7;color:#254b98;transform:translateY(-1px)}
.period-chip.is-active{background:#2851a2;color:#fff;border-color:#2851a2;box-shadow:0 7px 18px rgba(29,60,123,.18)}
.period-custom-form{display:none;align-items:flex-end;justify-content:flex-end;gap:8px;padding-top:1px}
.period-custom-form.is-open{display:flex}
.period-custom-form label{display:grid;gap:5px}
.period-custom-form label span{font-size:10px;color:#5e78a9;font-weight:800}
.period-custom-form input[type=date]{height:40px;width:148px;border:1px solid #d7dbe0;border-radius:10px;background:#fff;padding:0 10px;font-family:Manrope,Pretendard,sans-serif;font-size:12px;color:#253047;outline:none}
.period-custom-form input[type=date]:focus{border-color:#3566bd;box-shadow:0 0 0 3px rgba(33,69,141,.1)}
.period-wave{height:40px;display:grid;place-items:center;color:#6881ae;font-weight:800}
.period-custom-form button{height:40px;border:0;border-radius:10px;padding:0 15px;background:#204389;color:#fff;font-family:inherit;font-size:12px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:6px;box-shadow:0 7px 18px rgba(24,50,103,.14)}
.period-custom-form button:hover{background:#19366f}

@media(max-width:1050px){
  .period-filter-panel{align-items:flex-start;flex-direction:column}
  .period-controls{width:100%;align-items:flex-start}
  .period-presets{justify-content:flex-start}
  .period-custom-form{justify-content:flex-start}
}
@media(max-width:780px){
  .period-filter-section{margin-top:16px;margin-bottom:18px}
  .period-filter-panel{padding:18px;border-radius:18px;gap:18px}
  .period-current{min-width:0;width:100%}
  .period-current p{font-size:10px}
  .period-controls{overflow:hidden}
  .period-presets{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}
  .period-chip{padding:0 8px}
  .period-custom-form.is-open{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;width:100%}
  .period-custom-form input[type=date]{width:100%}
  .period-custom-form button{grid-column:1/-1;justify-content:center;width:100%;margin-top:2px}
}
@media(max-width:480px){
  .period-presets{grid-template-columns:repeat(2,1fr)}
  .period-current strong{font-size:14px}
  .period-icon{width:42px;height:42px;flex-basis:42px;border-radius:13px}
}

/* v1.2.0 상세 산정기준 표시 */
.content-grid.single-panel{grid-template-columns:1fr}.hero-formula>div i{color:#3566bd;font-size:14px}.reference-chip{display:inline-flex;align-items:center;margin:0 6px 5px 0;padding:4px 7px;border-radius:999px;background:#fff5d9;color:#8d650f;font-size:9px;letter-spacing:.03em}.source-box-detailed{padding:0;overflow:hidden}.source-box-head{display:flex!important;align-items:center;gap:10px;padding:20px 22px;border-bottom:1px solid rgba(255,255,255,.1)}.source-box-head>span{margin-left:auto;color:#8cafe9;font:700 10px Manrope,Pretendard,sans-serif}.source-detail-grid{display:grid;grid-template-columns:1fr 1fr}.source-detail-grid>div{padding:19px 22px;border-bottom:1px solid rgba(255,255,255,.09)}.source-detail-grid>div:nth-child(odd){border-right:1px solid rgba(255,255,255,.09)}.source-detail-grid b{font-size:12px;color:#e4e9f1}.source-detail-grid p{margin:7px 0 0;color:#9da7b8;font-size:11px;line-height:1.65}.notice-strips{padding:8px 12px 14px}.notice-strips p{display:grid;grid-template-columns:22px 135px 1fr;align-items:start;gap:7px;margin:0;padding:12px 10px;border-bottom:1px solid rgba(255,255,255,.075);font-size:11px;line-height:1.65;color:#a5afbe}.notice-strips p:last-child{border-bottom:0}.notice-strips i{color:#74a0e4;font-size:15px}.notice-strips b{color:#eff2f7;font-size:11px}.metric-card small .mini-reference,.mini-reference{display:inline-flex;padding:2px 5px;margin-left:3px;border-radius:999px;background:#fff3d2;color:#89620e;font-style:normal;font-size:8px;vertical-align:middle}.metrics-three{grid-template-columns:repeat(3,1fr)}.member-notice-grid p{margin:6px 0 0!important}.member-notice-grid p strong{color:#2f3d5a}.member-notice-grid>div{min-width:0}.site-footer p{max-width:720px;text-align:right;line-height:1.5}
@media(max-width:780px){.source-detail-grid{grid-template-columns:1fr}.source-detail-grid>div:nth-child(odd){border-right:0}.notice-strips p{grid-template-columns:22px 1fr}.notice-strips p b{grid-column:2}.notice-strips p:not(:has(b)){grid-template-columns:22px 1fr}.metrics-three{grid-template-columns:repeat(2,1fr)}.site-footer p{text-align:left}}
@media(max-width:560px){.metrics-three{grid-template-columns:1fr}.source-box-head{align-items:flex-start;flex-wrap:wrap}.source-box-head>span{width:100%;margin-left:25px}.notice-strips p{display:flex;flex-wrap:wrap}.notice-strips p i{flex:0 0 18px}.notice-strips p b{flex:1}.notice-strips p b+*{width:100%}}


/* =========================================================
   ONNURI BLUE THEME · #2851A2
   v1.0 · public/member dashboard
   ========================================================= */
body{background:
  radial-gradient(circle at 8% 2%,rgba(91,132,218,.08),transparent 28rem),
  linear-gradient(180deg,#f7f9fd 0,#f2f5fa 55%,#eef3fa 100%)}
.site-header{background:rgba(255,255,255,.94);border-bottom-color:rgba(196,209,233,.85);box-shadow:0 8px 28px rgba(30,58,116,.035)}
.brand-symbol{background:linear-gradient(145deg,#1e438c 0%,#2851a2 48%,#638bdc 100%);box-shadow:0 12px 28px rgba(40,81,162,.24)}
.header-status span{background:#4f7ed1;box-shadow:0 0 0 5px rgba(40,81,162,.11)}
.hero{background:
  radial-gradient(circle at 78% 24%,rgba(91,142,226,.18),transparent 26rem),
  radial-gradient(circle at 12% 72%,rgba(76,113,196,.10),transparent 24rem),
  linear-gradient(135deg,#fbfcff 0%,#f0f4fc 48%,#e8effb 100%);border-bottom-color:#d8e2f2}
.hero:before{background-image:radial-gradient(circle at 15% 25%,rgba(40,81,162,.07) 0 2px,transparent 3px),radial-gradient(circle at 80% 70%,rgba(84,125,210,.065) 0 2px,transparent 3px)}
.hero h1{color:#122857}.hero-lead{color:#5c6880}
.hero-formula>div{border-color:#d4dff1;box-shadow:0 10px 28px rgba(40,81,162,.07)}
.hero-formula b{color:#244b96}
.eco-orb{background:linear-gradient(145deg,#173870 0%,#2851a2 48%,#5d88dd 100%);box-shadow:0 35px 75px rgba(29,66,139,.28),inset 0 0 0 1px rgba(255,255,255,.20)}
.planet-ring{border-color:rgba(48,91,176,.25)}
.planet-ring:before,.planet-ring:after{background:#7da2e6;box-shadow:0 0 0 6px rgba(83,127,211,.13)}
.float-tag{border-color:#d7e1f2;box-shadow:0 15px 38px rgba(34,69,139,.13);color:#34558f}
.metric-card,.panel{border-color:#dce4f2;box-shadow:0 18px 50px rgba(30,60,123,.075)}
.metric-card:hover,.panel:hover{border-color:#cedaf0}
.metric-main{background:linear-gradient(145deg,#1b3f83 0%,#2851a2 52%,#527dd0 100%);box-shadow:0 22px 52px rgba(40,81,162,.24)}
.metric-icon{background:linear-gradient(145deg,#edf3ff,#e4ecfa);color:#2851a2}
.badge-soft,.unit-label{background:#eef3fc;border-color:#d9e3f3;color:#50678f}
.tree-active path{fill:#4474c7}
.progress-line span,.rank-bar span{background:linear-gradient(90deg,#2851a2 0%,#4d7bd0 52%,#84a7e8 100%)}
.tree-summary .big-value strong,.ranking-item>strong,.donut-center strong,.text-green{color:#2851a2!important}
.method-section{background:
  radial-gradient(circle at 80% 10%,rgba(113,153,226,.22),transparent 32rem),
  linear-gradient(135deg,#10244b 0%,#183873 48%,#2851a2 100%)}
.period-filter-shell{background:linear-gradient(145deg,#ffffff,#f4f7fc);border-color:#dbe4f3;box-shadow:0 16px 42px rgba(35,67,132,.07)}
.period-chip:hover{border-color:#9fb7e4;color:#2851a2;background:#f2f6fd}
.period-chip.active{background:linear-gradient(135deg,#224891,#3868bd);border-color:#2851a2;box-shadow:0 9px 22px rgba(40,81,162,.20)}
.period-custom-form{background:#eef3fb;border-color:#d7e2f3}
.period-custom-form button{background:linear-gradient(135deg,#2851a2,#4a76ca)}
.data-table tbody tr:hover{background:#f7f9fd}
@media(max-width:720px){.metric-main{background:linear-gradient(145deg,#1a3e81,#2851a2 60%,#4f7bd0)}}

/* =========================================================
   v1.2.2 · BLUE THEME RESPONSIVE SOURCE PANEL FIX
   #2851A2 based palette
   ========================================================= */
html,body{overflow-x:hidden}
.method-wrap,.source-box-detailed,.source-detail-grid,.notice-strips,.source-detail-grid>div,.notice-strips>p{min-width:0}

/* The legacy .source-box > div selector set every direct child to flex.
   Restore the intended responsive grid with stronger specificity. */
.source-box.source-box-detailed>.source-detail-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
  gap:0;
}
.source-box.source-box-detailed>.source-detail-grid>div{
  display:block;
  padding:20px 22px;
  border-right:1px solid rgba(255,255,255,.10);
  border-bottom:0;
}
.source-box.source-box-detailed>.source-detail-grid>div:last-child{border-right:0}
.source-box.source-box-detailed>.source-detail-grid b{
  display:block;
  margin:0;
  color:#f4f7ff;
  font-size:12px;
  line-height:1.45;
}
.source-box.source-box-detailed>.source-detail-grid p{
  margin:8px 0 0;
  color:#c0d0ed;
  font-size:11px;
  line-height:1.72;
  word-break:normal;
  overflow-wrap:anywhere;
}

.source-box.source-box-detailed>.notice-strips{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  gap:12px;
  padding:14px;
  border-top:1px solid rgba(255,255,255,.08);
}
.source-box.source-box-detailed>.notice-strips>p{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  grid-template-rows:auto 1fr;
  column-gap:10px;
  row-gap:7px;
  align-content:start;
  margin:0;
  padding:16px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
  color:#c4d2ec;
  font-size:11px;
  line-height:1.68;
}
.source-box.source-box-detailed>.notice-strips>p:last-child{border-bottom:1px solid rgba(255,255,255,.10)}
.source-box.source-box-detailed>.notice-strips>p>i{
  grid-column:1;
  grid-row:1 / span 2;
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  color:#8fb4f4;
  font-size:16px;
}
.source-box.source-box-detailed>.notice-strips>p>b{
  grid-column:2;
  grid-row:1;
  display:block;
  color:#fff;
  font-size:11px;
  line-height:1.45;
}
.source-box.source-box-detailed>.notice-strips>p>span{
  grid-column:2;
  grid-row:2;
  display:block;
  min-width:0;
  color:#c4d2ec;
  word-break:normal;
  overflow-wrap:anywhere;
}

@media(max-width:1100px){
  .source-box.source-box-detailed>.source-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .source-box.source-box-detailed>.source-detail-grid>div{border-bottom:1px solid rgba(255,255,255,.09)}
  .source-box.source-box-detailed>.source-detail-grid>div:nth-child(2n){border-right:0}
  .source-box.source-box-detailed>.source-detail-grid>div:nth-last-child(-n+2){border-bottom:0}
  .source-box.source-box-detailed>.notice-strips{grid-template-columns:1fr}
}

@media(max-width:680px){
  .source-box-detailed{border-radius:16px}
  .source-box.source-box-detailed>.source-box-head{
    display:grid!important;
    grid-template-columns:20px minmax(0,1fr);
    align-items:start;
    gap:8px 10px;
    padding:17px 16px;
  }
  .source-box.source-box-detailed>.source-box-head>i{grid-column:1;grid-row:1}
  .source-box.source-box-detailed>.source-box-head>strong{grid-column:2;grid-row:1;line-height:1.45}
  .source-box.source-box-detailed>.source-box-head>span{
    grid-column:2;
    grid-row:2;
    width:auto;
    margin:0;
    line-height:1.5;
    white-space:normal;
  }
  .source-box.source-box-detailed>.source-detail-grid{grid-template-columns:1fr}
  .source-box.source-box-detailed>.source-detail-grid>div{
    padding:17px 16px;
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.09);
  }
  .source-box.source-box-detailed>.source-detail-grid>div:nth-last-child(-n+2){border-bottom:1px solid rgba(255,255,255,.09)}
  .source-box.source-box-detailed>.source-detail-grid>div:last-child{border-bottom:0}
  .source-box.source-box-detailed>.notice-strips{padding:12px;gap:10px}
  .source-box.source-box-detailed>.notice-strips>p{padding:14px;grid-template-columns:22px minmax(0,1fr)}
}


/* =========================================================
   v1.2.3 · PASTEL BLUE THEME + CUSTOM PERIOD BACKGROUND FIX
   Base color: #2851A2
   ========================================================= */
:root{
  --green:#3f6dbd;
  --green2:#7fa1dd;
  --ink:#1b2a45;
  --muted:#62799f;
  --line:#dfe7f3;
  --bg:#f7f9fd;
}
body{
  background:
    radial-gradient(circle at 88% 0,rgba(124,158,218,.10),transparent 34rem),
    linear-gradient(180deg,#f8faff 0%,#f3f7fc 100%);
}
.site-header{border-bottom-color:#dfe7f3;background:rgba(255,255,255,.94)}
.brand-symbol{background:linear-gradient(145deg,#3f6dbd,#82a3df);box-shadow:0 10px 25px rgba(40,81,162,.16)}
.header-status span{background:#7fa2df;box-shadow:0 0 0 5px rgba(92,132,204,.11)}
.hero{background:linear-gradient(135deg,#fbfcff 0%,#f2f6fc 48%,#edf3fb 100%);border-bottom-color:#e0e7f1}
.hero:before{opacity:.65}
.eco-orb{background:linear-gradient(145deg,#3e69b4,#7d9fdc);box-shadow:0 30px 62px rgba(47,86,155,.20),inset 0 0 0 1px rgba(255,255,255,.22)}
.planet-ring{border-color:rgba(74,112,183,.20)}
.planet-ring:before,.planet-ring:after{background:#91afe2;box-shadow:0 0 0 6px rgba(117,153,216,.12)}
.metric-main{background:linear-gradient(145deg,#3864ad 0%,#4e79c3 55%,#7193d1 100%);box-shadow:0 18px 42px rgba(46,83,151,.18)}
.metric-icon{background:#eef3fb;color:#3f6dbd}
.panel,.metric-card,.period-filter-panel{border-color:#dfe7f3;box-shadow:0 14px 38px rgba(43,75,132,.055)}
.period-filter-panel{background:linear-gradient(145deg,#ffffff,#f8faff)}
.period-icon{background:linear-gradient(145deg,#edf3fd,#e4ecf9);color:#3f6dbd}
.period-chip{background:#f7f9fd;border-color:#dbe4f1;color:#536c98}
.period-chip:hover{background:#eef4fc;border-color:#adc1e4;color:#2851a2}
.period-chip.is-active{background:linear-gradient(135deg,#3d68b5,#5c84ca);border-color:#3d68b5;box-shadow:0 8px 18px rgba(53,91,158,.16)}
/* 시작일·종료일 입력 영역 뒤 배경 제거 */
.period-custom-form,
.period-custom-form.is-open{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:1px 0 0!important;
  border-radius:0!important;
}
.period-custom-form input[type=date]{border-color:#d6e0ef;background:#fff;color:#2b3953}
.period-custom-form input[type=date]:focus{border-color:#7d9fd7;box-shadow:0 0 0 3px rgba(76,119,193,.10)}
.period-custom-form button{background:linear-gradient(135deg,#3d68b5,#6289cf);box-shadow:0 7px 17px rgba(53,91,158,.15)}
.period-custom-form button:hover{background:linear-gradient(135deg,#315b9f,#557ec4)}
.tree-active path{fill:#5e86ca}
.progress-line span{background:linear-gradient(90deg,#6e94d5,#a8bee7)}
.rank-bar span{background:linear-gradient(90deg,#557fc7,#91afe0)}
.method-section{
  background:
    radial-gradient(circle at 86% 6%,rgba(116,160,225,.22),transparent 30rem),
    radial-gradient(circle at 8% 100%,rgba(13,39,86,.18),transparent 34rem),
    linear-gradient(135deg,#1f427c 0%,#2b579d 50%,#3c6db7 100%);
}
.method-section:after{background:radial-gradient(circle,rgba(150,187,239,.16),transparent 68%)}
.method-title .section-label{color:#c9dcfa}
.method-title h2{color:#fff;text-shadow:0 2px 12px rgba(11,30,67,.12)}
.method-title p{color:#dbe8fa}.method-steps p{color:#eef5ff}
.method-steps article{
  background:#28559a;
  border-color:#6f94ca;
  box-shadow:0 14px 34px rgba(12,34,76,.16);
}
.method-steps article>span,.method-steps i{color:#cce0ff}
.source-box{
  background:#244d8d;
  border-color:#6f94ca;
  box-shadow:0 16px 38px rgba(11,31,70,.15);
}
.source-box-head{border-bottom-color:rgba(223,234,251,.18)}
.source-box-head>span{color:#c9dcfa}
.source-box.source-box-detailed>.source-detail-grid>div{border-color:rgba(220,233,251,.16)}
.source-box.source-box-detailed>.source-detail-grid b{color:#fff}
.source-box.source-box-detailed>.source-detail-grid p{color:#eef5ff}
.source-box.source-box-detailed>.notice-strips>p{
  background:#2d5b9f;
  border-color:#7398cf;
  color:#eef5ff;
}
.source-box.source-box-detailed>.notice-strips>p>i{color:#c9ddff}
.source-box.source-box-detailed>.notice-strips>p>b{color:#fff}
.source-box.source-box-detailed>.notice-strips>p>span{color:#eef5ff}
.site-footer{background:#24477f;color:#b7c9e6;border-top-color:rgba(255,255,255,.10)}
.site-footer .footer-inner b{color:#fff}
.member-hero{background:linear-gradient(135deg,#f5f8fd,#ebf1fa);border-bottom-color:#dfe7f3}
.member-notice{background:#eef4fc;border-color:#dbe6f4}
@media(max-width:720px){
  .metric-main{background:linear-gradient(145deg,#3b66b0,#577fc6 60%,#7899d3)}
  .period-custom-form,.period-custom-form.is-open{padding-top:0!important}
}
