featured-course{display:block;margin:0 0 18px}featured-course[hidden]{display:none}.course-card{display:flex;align-items:center;gap:12px;width:100%;padding:12px;text-align:left;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text)}.course-card>img{width:64px;height:64px;object-fit:cover;border-radius:9px;flex-shrink:0}.course-card>span{min-width:0}.course-card small{margin:0 0 4px;font-size:12px;color:var(--muted)}.course-card strong{display:block;font-size:16px;line-height:1.4;overflow-wrap:anywhere}.course-meta{display:block;margin-top:4px;font-size:13px;color:var(--muted)}.course-dialog{width:min(520px,calc(100% - 32px));max-height:80dvh;padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--text);overflow:auto}.course-dialog::backdrop{background:#0009}.course-heading{display:flex;gap:16px;align-items:start;justify-content:space-between}.course-heading h2{font-size:21px;line-height:1.5;overflow-wrap:anywhere}.course-heading button{min-width:44px;min-height:44px;font-size:28px}.course-description{margin:12px 0 20px;line-height:1.7;color:var(--muted);font-size:15px;white-space:pre-wrap}.course-stops{padding-left:24px;margin:0}.course-stops li{padding:0 0 16px 6px}.course-stops li+li{padding-top:16px;border-top:1px solid var(--line)}.course-stops a{display:block}.course-stops strong{display:block;font-size:17px}.course-stops span{display:block;font-size:14px;margin-top:6px;line-height:1.6;color:var(--muted);overflow-wrap:anywhere}.course-stops .course-link{color:var(--blue);font-weight:700}.course-tip{white-space:pre-wrap}
.course-admin{margin-bottom:24px}.course-admin>summary{cursor:pointer;font-size:18px;font-weight:700;min-height:44px;display:flex;align-items:center}.course-admin form{padding:0}.course-admin-stops{list-style:none;padding:0}.course-admin-stops li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #283540}.course-admin-stops li>span{min-width:0;overflow-wrap:anywhere}.course-admin-stops li>div{display:flex;gap:5px;flex-shrink:0}.course-admin-stops button{padding:8px;font-size:14px;min-height:44px}.course-admin-results{display:grid;gap:6px}.course-admin-results button{text-align:left;white-space:normal}.course-admin-results small{display:block;font-size:13px}.course-admin input[type=search]{font-size:16px}@media(max-width:480px){.course-admin-stops li{align-items:start;flex-direction:column}}
.course-more{display:block;margin:6px 0 0 auto;padding:8px 4px;min-height:40px;border:0;background:transparent;color:var(--blue);font-size:14px}.course-filter{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0;font-size:14px}.course-filter select{max-width:75%;padding:10px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:8px;font-size:16px}.course-choices{display:grid;gap:8px}.course-choices button{text-align:left;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text)}.course-choices small{display:block;color:var(--muted);font-size:13px;margin-bottom:5px}.course-choices strong{font-size:16px}.auto-course-admin-list{max-height:65vh;overflow:auto;margin:12px 0}.auto-course-admin-list>div{padding:14px 0;border-bottom:1px solid var(--line)}
.course-route-map{margin-top:10px;padding-top:16px;border-top:1px solid var(--line)}.course-map-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.course-map-heading h3{margin:0;font-size:16px}.course-map-heading button{font-size:14px;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text)}.course-map-canvas{height:260px;width:100%;border-radius:12px;isolation:isolate;background:#172530}.course-route-map [data-map-status]{font-size:13px;color:var(--muted);line-height:1.6;margin:10px 0 0}.course-map-number{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#287cf4;color:#fff;border:2px solid #fff;border-radius:50%;font-size:14px;font-weight:800;box-shadow:0 2px 8px #0005}.course-map-start{background:#13745a;font-size:11px}.course-map-canvas .leaflet-control-attribution{font-size:10px}.course-map-canvas .leaflet-control-zoom a{color:#222;background:#fff}.course-map-canvas .leaflet-tooltip{color:#111;background:#fff}
.course-map-canvas button.course-map-number{padding:0;min-width:32px;min-height:32px;line-height:1;cursor:pointer}.course-map-canvas button.course-map-number:focus-visible{outline:3px solid #ffe06a;outline-offset:2px}

[data-theme="dark"] .course-map-canvas img[src*="/map_k"],
[data-theme="dark"] .course-map-canvas img[src*="/map_2d"],
[data-theme="dark"] .course-map-canvas img[src*="mts.daumcdn.net/api/v1/tile/PNGSD02/"],
[data-theme="dark"] .course-map-canvas img[src*="mts.daumcdn.net/api/v1/tile/PNG02/"]{filter:invert(1) hue-rotate(180deg) brightness(.8) saturate(.7)}

featured-course{border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden;margin-bottom:20px}featured-course .course-card{border:0;border-radius:0;background:transparent;padding:12px;gap:12px}featured-course .course-card>img{width:56px;height:56px}featured-course .course-card strong{font-size:16px;line-height:1.45}featured-course .course-more{width:100%;margin:0;min-height:40px;padding:9px 12px;border-top:1px solid var(--line);text-align:center;font-size:14px;color:var(--muted);background:transparent}

.course-choices button{display:flex;align-items:center;gap:12px;padding:12px}.course-choices button>img{width:64px;height:64px;object-fit:cover;flex-shrink:0;border-radius:9px}.course-choices button>span{min-width:0}.course-choices strong{display:block;line-height:1.45;overflow-wrap:anywhere}
