@font-face{font-family:Inter;src:url('/static/fonts/inter-regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('/static/fonts/inter-medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Inter;src:url('/static/fonts/inter-bold.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--accent:#fa255e;--blue:#3088a3;--muted:#657b83;--border:#aad0dc;color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:20px}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background-color:#def3f8;background-image:linear-gradient(to bottom,#def3f8b3,#def3f8 491px),url('/static/images/background-links.webp');background-position:left top;background-size:auto 491px;background-repeat:repeat-x;color:#111;font:16px/1.45 Inter,'Malgun Gothic','Apple SD Gothic Neo',sans-serif;touch-action:manipulation}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
button:disabled{cursor:default;opacity:.5}
img{max-width:100%}
button svg,.inline-icon{vertical-align:middle}
button svg{pointer-events:none}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.container{width:100%;max-width:1280px;margin:0 auto;padding:0 15px;min-width:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#header{height:62px;background:#def3f8;position:relative;z-index:20}
.header-content{display:flex;align-items:center;height:100%;gap:24px;justify-content:space-between}
#main-logo{flex-shrink:0}
#main-logo a{display:flex}
.brand-logo{width:auto;height:43px;max-width:220px;object-fit:contain}
.header-update{color:var(--blue);white-space:nowrap;font-size:14px}
.header-action{border:0;background:transparent;color:var(--accent);padding:8px;display:none}
#content-search{width:420px;display:flex;border-radius:10px;background:white;overflow:hidden;height:32px;flex-shrink:1}
#search-input{width:100%;min-width:0;border:0;padding:7px 16px;background:transparent;color:#111;font-size:14px}
#search-input::placeholder{color:#299ebf}
#content-search button{background:transparent;border:0;padding:4px 10px;color:var(--accent)}
#side-menu{background:#4b5050;border-radius:0 0 15px 15px;color:#fff}
.menu-heading,.menu-categories,.menu-backdrop{display:none}
.main-menu-links{display:flex;align-items:stretch}
.main-menu-links>a,.main-menu-links>button{flex:1;text-align:center;border:0;border-right:1px solid #555b5b;padding:7px 8px;color:white;background:transparent;font-size:14px;line-height:18px;white-space:nowrap}
.main-menu-links>:last-child{border:0}
.main-menu-links>:hover,.main-menu-links>[aria-current]{background:#363c3c;text-decoration:none}
.main-menu-links>:first-child{border-bottom-left-radius:15px}
.main-menu-links>:last-child{border-bottom-right-radius:15px}
.category-strip{position:relative;display:flex;align-items:center;gap:10px;margin-bottom:12px;padding:8px;background:#c9e9f2;border:1px dashed #5ca2b7;border-radius:12px}
/* Keep manual scrolling on an opaque surface so it can be composited independently. */
.category-strip nav{display:flex;flex:1;min-width:0;gap:6px;overflow:auto;background:#c9e9f2;scrollbar-width:thin;scrollbar-color:#85b1bd #c9e9f2}
.category-strip nav>a{display:block;flex-shrink:0;padding:5px 8px;white-space:nowrap;border:1px solid #85b1bd;background:#e6f9fd;border-radius:7px;color:#467b8d;font-size:14px;line-height:18px}
.category-strip nav>a[aria-current]{background:var(--blue);border-color:var(--blue);color:#fff}
#base-content{position:relative;padding-top:12px;padding-bottom:40px;flex:1}
.page-intro{margin:0 0 20px;color:var(--blue)}
.page-intro h1{font-size:24px;margin:0 0 8px}
.page-intro p{margin:0}
.top-container{padding:20px;background:#ffffffc9;border-radius:15px;overflow-wrap:anywhere}
.p-history-top{color:var(--accent);font-size:24px;margin:0 0 14px}
.top-container p{line-height:1.65}
.home-btn{display:inline-block;padding:10px 20px;border:0;border-radius:10px;background:var(--accent);color:#fff;margin-top:20px}
.site-footer{background:#378ca6;color:#fff;padding:20px 0;text-align:center}
.site-footer nav{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.site-footer nav a{display:inline-block;padding:5px 8px;background:#fff;border-radius:5px;font-size:13px;font-weight:700}
.site-footer p{margin:10px 0 0;font-size:13px}
.activity-item{padding:14px 0;border-bottom:1px solid #bddce5;overflow-wrap:anywhere}
.activity-time{font-size:13px;color:var(--muted)}
.empty-message{padding:16px;color:var(--muted)}
#back-to-top{position:fixed;right:18px;bottom:20px;z-index:15;width:40px;height:40px;border:0;border-radius:10px;background:var(--accent);color:white}
#site-notice{position:fixed;bottom:24px;left:50%;transform:translate(-50%,12px);padding:12px 20px;background:#303030;color:#fff;border-radius:10px;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;z-index:100;max-width:calc(100% - 30px);width:max-content}
#site-notice.visible{opacity:1;transform:translate(-50%,0)}
@media(max-width:767px){

 html{scroll-padding-top:82px}
#header{position:sticky;top:0;box-shadow:0 2px 3px #3088a31c}
.header-content{gap:10px;justify-content:center}
#main-logo .brand-logo{height:35px;max-width:calc(100vw - 116px)}
.header-update{position:absolute;bottom:0;left:50%;transform:translateX(-50%);padding:2px 4px;font-size:12px;line-height:16px}
#main-logo{align-self:flex-start;margin-top:6px}
.header-action{display:block;position:absolute;top:6px;width:44px;height:44px}
#mainmenubtn{left:7px}
#mainmenubtn span{display:block;background:var(--accent);height:4px;width:24px;margin:4px 0;border-radius:1px}
.search-toggle{right:7px}
#content-search{display:none;position:absolute;inset:10px 58px 10px 58px;width:auto;height:42px;z-index:1}
#header.search-open #content-search{display:flex}
#search-input{font-size:16px}
.navigation-container{padding:0}
#side-menu{display:none;position:fixed;inset:0 auto 0 0;width:220px;max-width:calc(100vw - 48px);height:100dvh;z-index:31;flex-direction:column;border-radius:0;background:#484e4e}
#side-menu.is-open{display:flex}
.menu-open,.menu-open body{overflow:hidden}
.menu-backdrop{display:block;position:fixed;inset:0;z-index:30;background:#0006}
.menu-heading{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:8px 8px 8px 16px;background:var(--blue)}
.menu-heading button{width:44px;height:44px;padding:0;border:0;background:transparent;color:white;font-size:26px}
/* Scroll only the opaque drawer contents; the page underneath stays still. */
.menu-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;background:#484e4e;scrollbar-width:thin;scrollbar-color:#85b1bd #484e4e;padding-bottom:env(safe-area-inset-bottom)}
.main-menu-links{flex-direction:column}
.main-menu-links>a,.main-menu-links>button,.menu-categories>a{display:block;flex:none;min-height:44px;text-align:left;padding:12px 16px;border-radius:0;border-right:0;font-size:14px;line-height:20px;color:white;overflow-wrap:anywhere}
.main-menu-links>a,.main-menu-links>button{border-bottom:1px solid #626969}
.main-menu-links>:first-child,.main-menu-links>:last-child{border-radius:0}
.menu-categories{display:block}
.menu-categories h2{margin:0;padding:16px 16px 8px;font-size:14px;color:#a9deec}
.menu-categories>a:hover,.menu-categories>a[aria-current]{background:#363c3c;text-decoration:none}
#side-menu :focus-visible{outline-offset:-3px}
.category-strip{margin:-20px -15px 8px;padding:12px 8px;border-width:0 0 1px;border-radius:0}
.category-strip nav{scrollbar-width:none}
#base-content{padding-top:20px}
.page-home#base-content{padding-left:8px;padding-right:8px}
.page-home>.category-strip{margin-inline:-8px}
.top-container{padding:18px 15px}
.p-history-top{font-size:22px}
#back-to-top{left:15px;right:auto;bottom:15px}
.site-footer{padding-bottom:24px}
}
@media(prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
*{transition:none!important}
}
.inline-icon{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.icon-definitions{position:absolute}
.site-new-badge{font-size:9px;font-weight:700;color:var(--accent);white-space:nowrap}
