:root{color-scheme:light;--ink:#17243b;--muted:#5b6980;--line:#d7dfeb;--bg:#f4f7fb;--paper:#fff;--blue:#235d87;--blue-soft:#eaf3f9}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 -apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic",sans-serif}
a{color:var(--blue)}
a:focus-visible{outline:3px solid #89b5da;outline-offset:3px}
.wrap{max-width:1180px;margin:auto;padding:28px 24px 70px}
.masthead{padding:23px 0 0}
.eyebrow{margin:0 0 5px;color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.1em}
.masthead h1{margin:0;font-size:clamp(29px,3vw,38px);letter-spacing:-.035em}
.masthead>p:last-child{margin:6px 0 0;color:var(--muted)}
.site-nav{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:23px 0 22px}
.site-nav a{display:inline-flex;align-items:center;justify-content:center;min-width:120px;padding:8px 13px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-weight:650;text-decoration:none}
.site-nav a:hover,.site-nav a:focus-visible{border-color:#6b87a8;background:#edf4fb}
.site-nav a[aria-current=page]{border-color:#5c94bb;background:#e6f1f8;color:#154e78}
.index-intro{display:flex;gap:0;max-width:610px;margin:0 0 30px;padding:17px 0;background:#e8f2f8;border:1px solid #cbddea;border-radius:12px}
.index-intro>div{display:flex;flex:1;flex-direction:column;align-items:center;gap:1px;padding:0 12px;text-align:center}
.index-intro>div+div{border-left:1px solid #c7d9e6}
.index-intro strong{font-size:23px;line-height:1.2;color:#235d87}
.index-intro span{font-size:12px;color:#456174}
.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:11px}
.section-head h2{margin:0;font-size:21px}
.section-head p{margin:0;color:var(--muted);font-size:13px}
.group-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,490px),1fr));gap:15px}
.group-card{padding:22px 24px 24px;background:var(--paper);border:1px solid var(--line);border-radius:13px;box-shadow:0 4px 18px #17243b0a}
.card-head{display:flex;align-items:start;justify-content:space-between;gap:16px}
.card-label{margin:0 0 3px;color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.08em}
.card-head h2{margin:0;font-size:23px;line-height:1.25}
.card-count{flex:none;margin-top:3px;padding:5px 9px;background:var(--blue-soft);border-radius:99px;color:#2d5c7b;font-size:12px;font-weight:750}
.card-description{margin:10px 0 18px;color:#45536a;font-size:14px}
.analysis-link{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 18px;padding:13px 16px;border-radius:9px;background:var(--blue);color:#fff;text-decoration:none;font-weight:750}
.analysis-link:hover{background:#174a70}
.analysis-link span{font-size:21px;line-height:1}
.session-list-title{margin:0 0 8px;color:var(--muted);font-size:12px;font-weight:700}
.session-list{display:grid;gap:7px;list-style:none;margin:0;padding:0}
.session-list li{display:flex;align-items:center;justify-content:space-between;gap:8px 18px;min-height:48px;padding:9px 12px;border:1px solid #dbe5ee;border-radius:8px;background:#fbfdff;color:var(--ink)}
.session-name{font-size:13px;font-weight:750}
.session-name b{color:var(--blue)}
.session-meta{flex:none;color:var(--muted);font-size:12px}
.source-note{margin-top:31px;padding:17px 20px;border-radius:10px;background:#e9eef4;color:var(--muted);font-size:12px}
.source-note strong{color:var(--ink);font-size:13px}
.source-note p{margin:5px 0 0}
@media(max-width:760px){.wrap{padding:18px 13px 45px}.index-intro{max-width:none}.card-head{flex-wrap:wrap;gap:7px}.card-count{margin:0}.section-head{align-items:start;flex-direction:column;gap:1px}.group-card{padding:19px 17px}}
@media(max-width:550px){.site-nav a{min-width:calc(50% - 5px);font-size:13px}.index-intro strong{font-size:19px}.index-intro span{font-size:11px}.session-list li{align-items:start;flex-direction:column;gap:2px}.session-meta{flex:auto}}
@media print{body{background:#fff}.wrap{max-width:none;padding:0}.site-nav{display:none}.group-card{box-shadow:none}}
