/* Eresult Project Timeline — isolated styles, customizable with CSS properties */
.ept{--ept-accent:#156ad4;--ept-accent-light:#73a9ed;--ept-line:#e5eaf1;--ept-text:#1c2a3c;--ept-muted:#617087;--ept-label-width:260px;--ept-year-width:116px;color:var(--ept-text);font-family:inherit;max-width:100%;min-width:0}
.ept *{box-sizing:border-box}
.ept-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}
.ept-toolbar-title{font-weight:700;font-size:16px}
.ept-navigation{display:flex;gap:7px}
.ept-nav{width:36px;height:36px;border:1px solid var(--ept-line);border-radius:8px;background:#fff;color:var(--ept-text);cursor:pointer;font:inherit;line-height:1}
.ept-nav:hover:not(:disabled){border-color:var(--ept-accent);color:var(--ept-accent)}
.ept-nav:disabled{opacity:.3;cursor:default}
.ept :is(a,button):focus-visible,.ept-desktop:focus-visible{outline:3px solid var(--ept-accent);outline-offset:3px}
.ept-desktop{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#b7c6d9 transparent}
.ept-table{display:grid;grid-template-columns:var(--ept-label-width) calc(var(--ept-years)*var(--ept-year-width));width:max-content;min-width:100%;border-top:1px solid var(--ept-line)}
.ept-heading,.ept-years{height:53px;border-bottom:1px solid var(--ept-line);background:#fff}
.ept-heading-name{position:sticky;left:0;z-index:4;display:flex;align-items:center;padding:0 20px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;border-right:1px solid var(--ept-line)}
.ept-years{display:grid;grid-template-columns:repeat(var(--ept-years),minmax(0,1fr))}
.ept-years>span{display:flex;align-items:center;justify-content:center;border-right:1px solid var(--ept-line);font-weight:600;font-size:13px;color:var(--ept-muted)}
.ept-name,.ept-track{height:64px;border-bottom:1px solid var(--ept-line)}
.ept-name{position:sticky;left:0;z-index:3;background:#fff;border-right:1px solid var(--ept-line);padding:10px 20px;display:flex;align-items:center;font-size:13px;font-weight:600;overflow-wrap:anywhere;line-height:1.35}
.ept-name a{color:inherit;text-decoration:none}
.ept-name a:hover{color:var(--ept-accent);text-decoration:underline;text-underline-offset:3px}
.ept-track{position:relative;background-image:linear-gradient(to right,var(--ept-line) 1px,transparent 1px);background-size:calc(100% / var(--ept-years)) 100%;background-repeat:repeat-x}
.ept-bar{position:absolute;top:24px;height:16px;background:var(--ept-accent);border-radius:4px;min-width:2px}
.ept-ongoing{background:var(--ept-accent-light)}
.ept-mobile-hint{display:none}
.ept-empty{color:var(--ept-muted)}
@media(max-width:1024px){.ept{--ept-label-width:210px;--ept-year-width:100px}.ept-name{padding:10px 14px}}
@media(max-width:640px){
 .ept{--ept-label-width:132px;--ept-year-width:92px;width:100%;min-width:0}
 .ept-toolbar{gap:8px;margin-bottom:7px}
 .ept-toolbar-title{font-size:16px}
 .ept-navigation{display:flex;flex-shrink:0}
 .ept-nav{width:38px;height:38px;touch-action:manipulation}
 .ept-desktop{display:block;width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;scroll-behavior:auto;position:relative}
 .ept-table{min-width:0;width:max-content}
 .ept-heading,.ept-years{height:46px}
 .ept-heading-name{padding:0 9px;font-size:10px}
 .ept-name,.ept-track{height:68px}
 .ept-name{padding:9px;font-size:12px;line-height:1.3;box-shadow:2px 0 5px rgba(0,0,0,.05)}
 .ept-name a{display:block;overflow-wrap:anywhere}
 .ept-years>span{font-size:12px}
 .ept-bar{top:26px}
 .ept-mobile-hint{display:block;margin:9px 0 0;color:var(--ept-muted);font-size:12px;line-height:1.5}
}
@media(prefers-reduced-motion:no-preference){.ept-desktop{scroll-behavior:smooth}}
