/* Header-only styles. Shadow DOM prevents page-specific CSS from changing instances. */
yessuri-site-header{display:block;position:sticky;top:0;z-index:50;min-height:82px;background:#fff}
yessuri-site-header:not(:defined){padding:1rem;font-family:"Noto Sans KR","Malgun Gothic",system-ui,sans-serif}
yessuri-site-header:not(:defined) nav{display:flex;flex-wrap:wrap;gap:1rem}
:host{display:block;position:sticky;top:0;z-index:50;min-height:82px;background:#fff;color:#19334e;font-family:var(--ys-font,"Noto Sans KR","Malgun Gothic",system-ui,sans-serif);font-size:1rem;line-height:1.5;letter-spacing:0}
*{box-sizing:border-box}header{background:#fff;border-bottom:1px solid #edf0f5}
.header-inner{width:min(1160px,calc(100% - 40px));min-height:82px;margin:0 auto;display:flex;align-items:center;gap:16px;position:relative}
a{color:#19334e;text-decoration:none}button{font:inherit;cursor:pointer;color:#00767e}
.brand{display:block;position:relative;flex:none;width:235px;height:68px}
.brand img{position:absolute;left:0;top:-5px;width:100%;height:auto}
.brand>span{position:absolute;left:28.3%;right:7%;top:53px;text-align:center;font-size:11px;font-weight:700;line-height:14px;letter-spacing:.3px;color:#008b95}
nav{display:flex;align-items:center;gap:24px;flex:1;min-width:0;margin-left:28px}
.nav-link{display:flex;align-items:center;min-height:2.75rem;padding:.5rem 0;font-size:.9375rem;font-weight:600;line-height:1.5;letter-spacing:0;overflow-wrap:anywhere}
.register-link{margin-left:auto;color:#52657a}
.shop-link{color:#00767e;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;white-space:nowrap}
.shop-status{align-self:center;font-size:.75rem;font-weight:500;line-height:1.3;color:#52657a}
@media(min-width:901px) and (max-width:1200px){nav{flex-wrap:wrap;column-gap:16px;row-gap:0}}
:host a:hover,:host a[aria-current]{color:#00767e;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.5rem}
:is(a,button):focus-visible{outline:3px solid #00767e;outline-offset:3px}
.menu-toggle{display:none;align-items:center;justify-content:center;min-width:2.75rem;min-height:2.75rem;padding:.5rem;border:0;background:transparent;font-size:1.5625rem;color:#19334e}
.guide-nav{display:flex;align-items:center;position:relative;gap:2px}
.guide-toggle{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:2.75rem;min-height:2.75rem;border:0;background:transparent;padding:.5rem}
.chevron{width:10px;height:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.guide-toggle[aria-expanded=true] .chevron{transform:translateY(2px) rotate(225deg)}
#guide-submenu{position:absolute;top:100%;left:-16px;width:15rem;max-width:calc(100vw - 2.5rem);padding:.5rem;background:#fff;border:1px solid #dbe5e8;border-radius:10px;box-shadow:0 12px 30px #1528441a;z-index:2}
[hidden]{display:none}
#guide-submenu a{display:flex;align-items:center;min-height:2.75rem;padding:.625rem .75rem;font-size:.9375rem;font-weight:500;line-height:1.5;overflow-wrap:anywhere}
#guide-submenu a:hover{background:#edf8f6;border-radius:6px}
@media(max-width:1100px) and (min-width:901px){nav{margin-left:12px;gap:16px}}
@media(max-width:900px){:host,yessuri-site-header{min-height:76px}.header-inner{min-height:76px;justify-content:space-between;width:calc(100% - 32px)}.brand{width:190px;height:58px}.brand img{top:-3px}.brand>span{top:44px;font-size:10px;line-height:12px}.menu-toggle{display:inline-flex;margin-left:auto}nav{display:none;position:absolute;top:100%;left:-16px;right:-16px;margin:0;padding:1rem;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid #dbe5e8;box-shadow:0 12px 24px #19334e14;max-height:calc(100dvh - 76px);overflow-y:auto}nav.is-open{display:flex}.nav-link{padding:.75rem}.register-link{margin-left:0}.guide-nav{display:grid;grid-template-columns:minmax(0,1fr) 2.75rem;gap:0}#guide-submenu{position:static;grid-column:1/-1;width:auto;max-width:none;margin:0 .75rem .5rem;padding:0 .5rem;border:0;border-left:2px solid #00767e;box-shadow:none;border-radius:0}}
@media(max-width:359px){.brand{width:175px}.brand>span{top:41px}}
@media print{:host,yessuri-site-header{position:static}nav{display:none}.menu-toggle{display:none}}

/* PWA installation action only. */
.pwa-install{order:3;flex:none;min-height:44px;padding:.5rem .75rem;border:1px solid #c8e3e2;border-radius:8px;background:#edf8f6;font-size:1rem;line-height:1.5;white-space:nowrap}
.pwa-install[hidden]{display:none}
@media(max-width:900px){.pwa-install{order:0;margin-left:auto}.menu-toggle{margin-left:0}}
@media(max-width:400px){.header-inner{gap:6px}.brand{width:155px;height:50px}.brand>span{top:36px}.pwa-install{padding:.5rem}}
@media print{.pwa-install{display:none}}
