:root{
  --sskr-canvas-left:#e3e8e0;--sskr-canvas-right:#f1f1ec;--sskr-canvas:linear-gradient(90deg,var(--sskr-canvas-left) 0%,var(--sskr-canvas-right) 100%);--sskr-surface:#f2f3ef;--sskr-surface-soft:#eaede8;--sskr-alert-bg:#f2f3ef;
  --sskr-sidebar:#788a7f;--sskr-sidebar-deep:#6f7f74;--sskr-sidebar-active:#d3d6cf;
  --sskr-text:#1e2924;--sskr-text-2:#66716a;--sskr-text-3:#8a928d;--sskr-border:#d9d9d2;
  --sskr-divider:#e2e1db;--sskr-amber:#c68b38;--sskr-amber-hover:#b87b2d;--sskr-green-ok:#758478;--sskr-white:#fff;
  --sidebar-width:194px;--content-width:1140px
}
*{box-sizing:border-box}
html{background:var(--sskr-canvas-left);scroll-behavior:smooth}
body{margin:0;color:var(--sskr-text);background:var(--sskr-canvas);font-family:"Pretendard Variable",Pretendard,"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",Arial,sans-serif;font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit}
button,input{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid color-mix(in srgb,var(--sskr-amber) 72%,white);outline-offset:3px}
img{display:block;max-width:100%}
.skip-link{position:fixed;z-index:1000;top:8px;left:8px;padding:10px 14px;color:#fff;background:#111;transform:translateY(-150%)}.skip-link:focus{transform:none}
.app-shell{min-height:100vh;display:grid;grid-template:76px 1fr / var(--sidebar-width) minmax(0,1fr);background:var(--sskr-canvas)}
.app-sidebar{position:fixed;z-index:20;inset:0 auto 0 0;width:var(--sidebar-width);display:flex;flex-direction:column;overflow:hidden;color:var(--sskr-white);background:var(--sskr-sidebar)}
.app-brand{position:relative;z-index:2;height:88px;display:flex;align-items:center;gap:7px;padding:0 24px;color:#fff;text-decoration:none}
.app-brand strong{font-size:26px;font-style:italic;font-weight:900;letter-spacing:-2px;line-height:1}
.app-brand span{font-size:5px;font-weight:800;line-height:1.28;letter-spacing:.04em}
.app-sidebar nav{position:relative;z-index:2;display:grid;margin-top:21px}
.app-sidebar nav a{min-height:60px;display:flex;align-items:center;gap:13px;padding:0 19px;border-left:4px solid transparent;color:rgba(255,255,255,.79);font-size:13px;font-weight:700;text-decoration:none;transition:background .18s,color .18s,border-color .18s}
.app-sidebar nav a:hover{color:#fff;background:rgba(255,255,255,.06)}
.app-sidebar nav a.is-current{border-left-color:var(--sskr-amber);color:var(--sskr-text);background:var(--sskr-sidebar-active)}
.app-sidebar nav svg{width:19px;height:19px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.sidebar-scenic{position:absolute;z-index:0;inset:0;background:url("/web/app/assets/img-left-menu-back-web.webp") center bottom/100% auto no-repeat}
.app-sidebar>small{position:absolute;z-index:2;bottom:17px;left:24px;color:rgba(255,255,255,.68);font-size:9px;letter-spacing:.12em}
.app-header{grid-column:2;grid-row:1;min-width:0;height:76px;display:flex;align-items:center;padding:0 32px;border-bottom:1px solid var(--sskr-divider);background:linear-gradient(90deg,rgba(227,232,224,.95),rgba(241,241,236,.95))}
.app-header>h1{margin:0;font-size:18px;line-height:1.2;letter-spacing:-.035em}
.app-utilities{min-width:0;display:flex;align-items:center;gap:6px;margin-left:auto}
.utility-button{position:relative;width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:50%;color:var(--sskr-text-2);background:transparent;cursor:pointer}
.utility-button:hover{color:var(--sskr-text);background:var(--sskr-surface-soft)}
.utility-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.notification-dot{position:absolute;top:8px;right:8px;width:5px;height:5px;border-radius:50%;background:var(--sskr-amber)}
.account-meta{min-width:0;margin-left:8px;text-align:right}.account-meta>div{display:grid}.account-meta strong{font-size:13px;line-height:1.3}.account-meta span{color:var(--sskr-text-3);font-size:11px;line-height:1.3}
.app-account{margin-left:6px}.app-account .account-trigger{color:#fff;background:var(--sskr-text);border-color:rgba(198,139,56,.5)}
.app-account .shared-login-control{min-height:40px;color:var(--sskr-text);border-color:var(--sskr-border);background:var(--sskr-white)}
.mobile-nav-toggle{display:none}
.app-main{grid-column:2;grid-row:2;min-width:0;padding:26px 32px 64px;background:var(--sskr-canvas)}
.app-main>*{width:min(100%,var(--content-width));margin-right:auto;margin-left:auto}
.app-main:focus{outline:none}
.app-loading{height:420px;display:flex;align-items:center;justify-content:center;gap:7px}.app-loading i{width:7px;height:7px;border-radius:50%;background:var(--sskr-sidebar);animation:loading 1s infinite alternate}.app-loading i:nth-child(2){animation-delay:.15s}.app-loading i:nth-child(3){animation-delay:.3s}
@keyframes loading{to{opacity:.2;transform:translateY(-5px)}}
.eyebrow,.page-head p{margin:0 0 9px;color:var(--sskr-amber);font-size:11px;font-weight:800;letter-spacing:.15em}
.page-head{min-height:118px;display:flex;align-items:flex-end;justify-content:space-between;gap:36px;padding:16px 0 25px;border-bottom:1px solid var(--sskr-divider)}
.page-head h1{margin:0;font-size:48px;line-height:1.06;letter-spacing:-.06em;word-break:keep-all}.page-head>span{max-width:420px;padding-bottom:5px;color:var(--sskr-text-2);font-size:13px;text-align:right}
.content-section{margin-top:42px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:19px}.section-head h2{margin:0;font-size:22px;letter-spacing:-.04em}.section-head p{margin:0;color:var(--sskr-text-2);font-size:12px}
.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.resource-card{overflow:hidden;border:1px solid var(--sskr-border);background:var(--sskr-surface)}.resource-card a{display:block;text-decoration:none}.resource-card img{width:100%;aspect-ratio:1.55;object-fit:cover}.resource-copy{padding:18px 20px 20px}.resource-copy span{color:var(--sskr-amber);font-size:10px;font-weight:800;letter-spacing:.11em}.resource-copy strong{display:block;margin-top:8px;font-size:18px;letter-spacing:-.04em}.resource-copy p{margin:6px 0 0;color:var(--sskr-text-2);font-size:12px}
.primary-link,.secondary-link{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:0 20px;text-decoration:none;font-size:12px;font-weight:800}.primary-link{color:#fff;background:var(--sskr-amber)}.primary-link:hover{background:var(--sskr-amber-hover)}.secondary-link{color:inherit;border:1px solid var(--sskr-border)}
.participant-inline-note{display:inline-flex;max-width:300px;margin-left:14px;color:rgba(255,255,255,.76);font-size:12px;line-height:1.55;vertical-align:middle;word-break:keep-all}
.hero-panel,.memorial-hero{min-height:390px;display:flex;align-items:flex-end;margin-top:28px;padding:48px;color:#fff;background:linear-gradient(90deg,rgba(8,14,13,.88),rgba(8,14,13,.22)),url("/assets/sskr_road1.png") 50% 58%/cover no-repeat}.hero-panel>div,.memorial-hero>div{max-width:650px}.hero-panel h2,.memorial-hero h1{margin:0;font-size:47px;line-height:1.06;letter-spacing:-.06em;word-break:keep-all}.hero-panel p:not(.eyebrow),.memorial-hero p:not(.eyebrow){margin:20px 0;color:rgba(255,255,255,.8)}
.status-band{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--sskr-border);background:var(--sskr-surface)}.status-band>div{padding:28px}.status-band>div+div{border-left:1px solid var(--sskr-border)}.status-band span,.detail-list dt{color:var(--sskr-text-3);font-size:11px}.status-band strong{display:block;margin-top:5px;font-size:20px}.status-band p{margin:4px 0 0;color:var(--sskr-text-2);font-size:12px}
.notice-list{border-top:1px solid var(--sskr-border)}.notice-item{min-height:88px;display:grid;grid-template-columns:82px 1fr auto;align-items:center;gap:18px;padding:14px 18px;border-bottom:1px solid var(--sskr-border);text-decoration:none}.notice-item>span{color:var(--sskr-amber);font-size:11px;font-weight:800}.notice-item h3{margin:0;font-size:15px}.notice-item p{margin:4px 0 0;color:var(--sskr-text-2);font-size:12px}.notice-item time{color:var(--sskr-text-3);font-size:11px}
.detail-list{margin:0;border:1px solid var(--sskr-border);border-top:0}.detail-list>div{display:grid;grid-template-columns:180px 1fr;padding:18px 22px}.detail-list>div+div{border-top:1px solid var(--sskr-divider)}.detail-list dd{margin:0}
.back-link{display:inline-block;margin-bottom:12px;color:var(--sskr-text-2);font-size:12px;text-decoration:none}
.auth-gate,.access-denied,.empty-state{min-height:520px;display:grid;place-content:center;text-align:center;padding:50px;border:1px solid var(--sskr-border);background:var(--sskr-surface)}.auth-gate h1,.access-denied h1,.empty-state h1{margin:8px 0;font-size:32px;letter-spacing:-.05em}.auth-gate>p:not(.eyebrow),.access-denied>p,.empty-state p{max-width:560px;margin:8px auto 26px;color:var(--sskr-text-2)}
.participant-availability{min-height:260px;display:grid;place-content:center;justify-items:center;gap:22px;padding:44px;border:1px solid var(--sskr-border);background:var(--sskr-surface);text-align:center}.participant-availability p{margin:0;color:var(--sskr-text-2);font-size:14px}
.auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.auth-actions button{min-height:48px;border:1px solid var(--sskr-border);background:#fff;font-weight:700;cursor:pointer}
.scenario-tag{position:fixed;z-index:40;right:0;bottom:0;padding:7px 10px;color:#e3b65d;background:#17211d;font-size:9px;letter-spacing:.06em}
@media (max-width:1365px) and (min-width:900px){
  :root{--sidebar-width:84px}.app-brand{justify-content:center;padding:0}.app-brand strong{font-size:21px}.app-brand span{display:none}.app-sidebar nav a{justify-content:center;padding:0;border-left-width:3px}.app-sidebar nav a span{display:none}.app-sidebar nav svg{width:21px;height:21px}.app-sidebar>small{left:0;width:100%;font-size:7px;text-align:center}.app-header,.app-main{padding-right:24px;padding-left:24px}
}
@media (max-width:899px){
  .app-shell{display:block;padding-top:64px}.app-header{position:fixed;z-index:25;top:0;right:0;left:0;height:64px;padding:0 15px;background:linear-gradient(90deg,rgba(227,232,224,.97),rgba(241,241,236,.97))}.app-header>h1{margin-left:13px;font-size:17px}.app-sidebar{z-index:30;width:min(82vw,286px);transform:translateX(-102%);box-shadow:18px 0 46px rgba(20,30,26,.18);transition:transform .22s ease}.app-sidebar.is-open{transform:none}.app-sidebar nav a span{display:block}.mobile-nav-toggle{width:40px;height:40px;display:grid;place-content:center;gap:4px;border:0;background:transparent}.mobile-nav-toggle span{width:19px;height:1px;background:var(--sskr-text)}.utility-button:nth-of-type(2),.account-meta{display:none!important}.app-main{padding:20px 15px 52px}.page-head{min-height:100px;display:block}.page-head h1{font-size:38px}.page-head>span{margin-top:14px;text-align:left}.resource-grid{grid-template-columns:1fr}.status-band{grid-template-columns:1fr}.status-band>div+div{border-top:1px solid var(--sskr-border);border-left:0}.hero-panel,.memorial-hero{min-height:360px;padding:30px 24px}.hero-panel h2,.memorial-hero h1{font-size:36px}.notice-item{grid-template-columns:54px 1fr}.notice-item time{grid-column:2}.auth-actions{grid-template-columns:1fr}.auth-gate,.access-denied,.empty-state{min-height:430px;padding:28px 20px}
}
@media (max-width:430px){.utility-button{display:none}.app-account{margin-left:0}.app-account .account-trigger{width:40px;height:40px}.page-head h1{font-size:34px}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
