:root{
  --place-orange:#ff5a1f;
  --place-ink:#171719;
  --place-muted:#757980;
  --place-line:#e9eaed;
  --place-soft:#f6f6f7;
  --place-safe-bottom:env(safe-area-inset-bottom,0px);
  --place-nav-height:72px;
}

*{box-sizing:border-box}
.place-app [hidden]{display:none!important}
html,body{width:100%;min-height:100%;margin:0;background:#f4f4f5;color:var(--place-ink);font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Noto Sans KR","Segoe UI",sans-serif;-webkit-text-size-adjust:100%}
body{overscroll-behavior:none}
button,input{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{color:inherit}
a{text-decoration:none;color:inherit}
svg{display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.place-app{position:relative;width:min(100%,760px);height:100dvh;min-height:620px;margin:0 auto;overflow:hidden;background:#fff;box-shadow:0 0 34px rgba(22,24,27,.08)}
.place-header{position:relative;z-index:30;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:54px;padding:0 14px;border-bottom:1px solid #f0f0f1;background:rgba(255,255,255,.97);backdrop-filter:saturate(160%) blur(16px)}
.place-brand{justify-self:start;color:var(--place-orange);font-size:13px;font-weight:950;letter-spacing:.05em}
.place-header h1{margin:0;font-size:17px;font-weight:900;letter-spacing:-.04em}
.place-header-action{justify-self:end;display:grid;place-items:center;width:42px;height:42px;border-radius:50%}
.place-header-action:active{background:#f2f2f3}
.place-header-action svg{width:22px;height:22px}

.place-controls{position:relative;z-index:25;border-bottom:1px solid var(--place-line);background:#fff}
.place-search{display:flex;align-items:center;height:44px;margin:8px 12px 7px;padding:0 12px;gap:8px;border:1px solid #e1e2e5;border-radius:14px;background:#f8f8f9}
.place-search>svg{flex:0 0 auto;width:18px;height:18px;color:#7b7f85}
.place-search input{min-width:0;flex:1;height:42px;padding:0;border:0;outline:0;background:transparent;color:#161719;font-size:16px}
.place-search input::placeholder{color:#9a9da2}
.place-search button{display:none;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:#dedfe2;color:#fff;font-size:20px;line-height:1}
.place-search.has-value button{display:grid;place-items:center}

.place-tabs{display:grid;grid-template-columns:repeat(4,1fr);height:40px;margin:0 12px 7px;padding:3px;border:1px solid #e4e5e8;border-radius:999px;background:#f7f7f8}
.place-tabs button,.place-tabs a{display:grid;place-items:center;min-width:0;padding:0;border:0;border-radius:999px;background:transparent;color:#656970;text-decoration:none;font-size:11px;font-weight:800;white-space:nowrap;transition:.16s ease}
.place-tabs button.is-active{background:var(--place-orange);color:#fff;box-shadow:0 4px 12px rgba(255,90,31,.24)}
.place-filters{display:flex;gap:7px;overflow-x:auto;padding:0 12px 9px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.place-filters::-webkit-scrollbar{display:none}
.place-filters button{flex:0 0 auto;height:34px;padding:0 14px;border:1px solid #e2e3e6;border-radius:999px;background:#fff;color:#5f6369;font-size:12px;font-weight:800;white-space:nowrap}
.place-filters button.is-active{border-color:#171719;background:#171719;color:#fff}
.place-map-wrap{position:absolute;inset:161px 0 calc(var(--place-nav-height) + var(--place-safe-bottom)) 0;overflow:hidden;background:#eef1ec}
.place-map{position:absolute;inset:0;width:100%;height:100%;min-height:1px}
.place-map img{pointer-events:none!important;-webkit-user-drag:none!important;-webkit-touch-callout:none!important;user-select:none!important}
.place-map-unavailable{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:linear-gradient(145deg,#f1f4ef,#e8ede7);color:#6b706d}
.place-map-unavailable strong{font-size:15px;color:#363a37}
.place-map-unavailable span{font-size:12px}
.place-location{position:absolute;z-index:16;right:13px;top:14px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid rgba(18,20,22,.08);border-radius:50%;background:#fff;box-shadow:0 5px 16px rgba(18,20,22,.14)}
.place-location svg{width:21px;height:21px}

.aemazon-user-marker{position:relative;width:22px;height:22px;border:4px solid #fff;border-radius:50%;background:#2388ff;box-shadow:0 2px 8px rgba(18,75,148,.34),0 0 0 7px rgba(35,136,255,.18)}
.aemazon-user-marker::after{content:"";position:absolute;inset:-11px;border:2px solid rgba(35,136,255,.24);border-radius:50%;animation:place-user-pulse 2s ease-out infinite}
@keyframes place-user-pulse{0%{opacity:.9;transform:scale(.55)}70%,100%{opacity:0;transform:scale(1.25)}}

.aemazon-course-marker{display:grid;place-items:center;width:32px;height:32px;border:3px solid #fff;border-radius:50%;background:#a88aeb;color:#fff;box-shadow:0 4px 12px rgba(67,42,124,.28);font-size:15px;line-height:1;transition:transform .15s ease,background .15s ease}
.aemazon-course-marker.is-selected{background:#7841df;box-shadow:0 5px 16px rgba(91,47,184,.42);transform:scale(1.14)}
.aemazon-course-marker.is-drive{background:#ff9b75;box-shadow:0 4px 12px rgba(255,90,31,.25);font-size:13px;padding-left:2px}
.aemazon-course-marker.is-drive.is-selected{background:#ff5a1f;box-shadow:0 5px 16px rgba(255,90,31,.42)}

.aemazon-place-marker{display:grid;place-items:center;width:38px;height:38px;border:3px solid #fff;border-radius:50% 50% 50% 12%;background:var(--pin,#ff5a1f);color:#fff;box-shadow:0 5px 13px rgba(20,22,24,.23);transform:rotate(-45deg);transition:transform .14s ease}
.aemazon-place-marker>span{display:grid;place-items:center;width:26px;height:26px;font-size:16px;font-weight:900;transform:rotate(45deg)}
.aemazon-place-marker.is-selected{transform:rotate(-45deg) scale(1.18);box-shadow:0 7px 19px rgba(20,22,24,.31)}

.place-loading{position:absolute;left:50%;top:18px;display:flex;align-items:center;height:36px;padding:0 14px;gap:9px;border:1px solid rgba(0,0,0,.06);border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 6px 18px rgba(20,22,24,.11);font-size:12px;font-weight:750;transform:translateX(-50%);transition:opacity .2s ease}
.place-loading[hidden]{display:none}
.place-loading i{width:15px;height:15px;border:2px solid #e5e5e7;border-top-color:var(--place-orange);border-radius:50%;animation:place-spin .8s linear infinite}
@keyframes place-spin{to{transform:rotate(360deg)}}
.place-toast{position:absolute;left:50%;bottom:18px;z-index:12;max-width:calc(100% - 32px);padding:10px 14px;border-radius:999px;background:rgba(24,25,28,.9);color:#fff;font-size:12px;font-weight:750;opacity:0;pointer-events:none;transform:translate(-50%,10px);transition:.2s ease;white-space:nowrap}
.place-toast.is-visible{opacity:1;transform:translate(-50%,0)}

.place-sheet,.course-sheet{position:absolute;z-index:20;left:10px;right:10px;bottom:calc(var(--place-nav-height) + var(--place-safe-bottom) + 8px);max-height:286px;overflow:hidden;padding:8px 10px 10px;border:1px solid rgba(19,21,24,.07);border-radius:22px;background:rgba(255,255,255,.97);box-shadow:0 12px 34px rgba(19,21,24,.16);backdrop-filter:saturate(170%) blur(18px)}
.place-sheet-handle{width:38px;height:4px;margin:0 auto 7px;border-radius:999px;background:#d8dade}
.place-request-strip{display:flex;align-items:center;justify-content:space-between;min-height:31px;margin:0 1px 7px;padding:0 5px 0 8px;border-radius:9px;background:#fff6f1;color:#6c5146}
.place-request-strip span{font-size:10px;font-weight:750}.place-request-strip button{height:25px;padding:0 8px;border:0;border-radius:7px;background:#fff;color:var(--place-orange);font-size:9px;font-weight:900}
.place-empty{display:flex;min-height:104px;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--place-muted)}
.place-empty strong{font-size:14px;color:#34363a}
.place-empty span{font-size:12px}
.selected-place{display:grid;grid-template-columns:96px minmax(0,1fr);gap:11px;min-height:104px}
.selected-place-thumb{position:relative;overflow:hidden;border-radius:14px;background:linear-gradient(145deg,#eceff0,#dde2e4)}
.selected-place-thumb img{width:100%;height:100%;object-fit:cover}
.selected-place-thumb span{position:absolute;inset:0;display:grid;place-items:center;color:#7d8388;font-size:28px}
.selected-place-content{min-width:0;display:flex;flex-direction:column}
.selected-place-title{display:flex;align-items:center;gap:5px;min-width:0}
.selected-place-title strong{overflow:hidden;font-size:16px;font-weight:900;letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap}
.selected-place-title i{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:var(--place-orange);color:#fff;font-size:10px;font-style:normal}
.selected-place-meta{margin-top:4px;color:#62666c;font-size:12px;font-weight:700}
.selected-place-meta b{color:#f29a00}
.selected-place-tags{display:flex;gap:5px;overflow:hidden;margin-top:7px}
.selected-place-tags span{flex:0 0 auto;padding:5px 8px;border-radius:8px;background:#f4f4f5;color:#555a60;font-size:10px;font-weight:750;white-space:nowrap}
.selected-place-actions{display:grid;grid-template-columns:1fr 1.12fr;gap:7px;margin-top:auto}
.selected-place-actions button{height:35px;border:1px solid #dadce0;border-radius:10px;background:#fff;font-size:12px;font-weight:850}
.selected-place-actions button.is-primary{border-color:var(--place-orange);background:var(--place-orange);color:#fff}
.nearby-rail{display:flex;gap:8px;overflow-x:auto;margin-top:8px;padding:0 0 1px;scrollbar-width:none}
.nearby-rail:empty{display:none}
.nearby-rail::-webkit-scrollbar{display:none}
.nearby-card{flex:0 0 142px;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;min-height:52px;padding:5px;gap:7px;border:1px solid #e9eaec;border-radius:13px;background:#fff;text-align:left}
.nearby-card img,.nearby-card .nearby-fallback{width:42px;height:42px;border-radius:9px;object-fit:cover;background:#f0f1f2}
.nearby-card .nearby-fallback{display:grid;place-items:center;font-size:18px}
.nearby-media{position:relative;display:block;width:42px;height:42px}.nearby-media .nearby-fallback{position:absolute;inset:0}.nearby-media img{position:absolute;inset:0}
.nearby-card strong,.nearby-card span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nearby-card strong{font-size:11px}.nearby-card span{margin-top:3px;color:#85898f;font-size:9px}

.course-sheet{max-height:273px}
.course-heading{display:flex;align-items:center;justify-content:space-between;padding:1px 2px 9px}
.course-heading>div:first-child{display:flex;min-width:0;flex-direction:column;gap:2px}
.course-heading strong{font-size:14px;font-weight:900}.course-heading span{color:#85898e;font-size:10px}
.course-heading button{height:30px;padding:0 10px;border:0;border-radius:999px;background:#f2f2f3;color:#686c72;font-size:10px;font-weight:800}
.course-heading-actions{display:flex;align-items:center;gap:5px}.course-heading-actions button:first-child{background:#fff0e9;color:#df4e16}
.course-list{display:flex;gap:9px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
.course-list::-webkit-scrollbar{display:none}
.course-card{flex:0 0 min(78vw,270px);overflow:hidden;border:1px solid #e5e6e8;border-radius:16px;background:#fff}
.course-card-visual{position:relative;width:100%;height:82px;padding:13px;border:0;color:#fff;background:radial-gradient(circle at 80% 25%,rgba(255,90,31,.72),transparent 24%),linear-gradient(135deg,#182128,#091015);text-align:left}
.course-card.is-ghost .course-card-visual{background:radial-gradient(circle at 80% 25%,rgba(131,76,238,.8),transparent 26%),linear-gradient(135deg,#221a33,#0f0b18)}
.course-card-visual:after{content:'';position:absolute;left:17px;right:20px;bottom:17px;height:2px;border-radius:999px;background:linear-gradient(90deg,transparent 0 8%,#ff733f 8% 28%,transparent 28% 34%,#ff733f 34% 64%,transparent 64% 70%,#ff733f 70% 100%);transform:rotate(-7deg)}
.course-card-visual strong{position:relative;z-index:1;display:block;overflow:hidden;font-size:15px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.course-card-visual span{position:relative;z-index:1;display:block;margin-top:5px;color:rgba(255,255,255,.75);font-size:10px}
.course-card-body{display:grid;grid-template-columns:1fr auto;align-items:center;padding:9px 10px;gap:7px}
.course-card-body span{color:#71757b;font-size:10px;font-weight:700}
.course-card-body button{height:31px;padding:0 11px;border:0;border-radius:9px;background:var(--place-orange);color:#fff;font-size:10px;font-weight:850}
.course-card.is-ghost .course-card-body button{background:#7a48df}

.place-bottom-nav{position:fixed;z-index:60;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);height:calc(72px + env(safe-area-inset-bottom,0px));padding:5px 10px env(safe-area-inset-bottom,0px);border-top:1px solid #e8e8ea;background:rgba(255,255,255,.96);box-shadow:0 -5px 18px rgba(18,18,20,.055);backdrop-filter:saturate(180%) blur(18px)}
.place-bottom-nav>a,.place-bottom-nav>button{display:flex;min-width:0;min-height:52px;flex-direction:column;align-items:center;justify-content:center;padding:0;gap:4px;border:0;background:transparent;color:#73767b!important;font-size:10.5px;font-weight:800;line-height:1}
.place-bottom-nav svg{width:24px;height:24px}
.place-bottom-nav .is-active{color:var(--place-orange)!important}
.place-bottom-nav .place-compose{align-self:start;justify-self:center;width:58px;height:58px;min-height:58px;margin-top:-16px;border:4px solid #fff;border-radius:50%;background:var(--place-orange);color:#fff!important;box-shadow:0 7px 18px rgba(255,90,31,.32)}
.place-bottom-nav .place-compose svg{width:27px;height:27px}

.place-detail{position:absolute;z-index:100;inset:0;display:flex;flex-direction:column;background:#fff;animation:detail-in .22s ease both}
.place-detail[hidden]{display:none}
@keyframes detail-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.detail-header{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;height:54px;padding:0 5px;border-bottom:1px solid #efeff1;background:#fff}
.detail-header strong{text-align:center;font-size:16px;font-weight:900}
.detail-header button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent}
.detail-header button:active{background:#f2f2f3}.detail-header svg{width:23px;height:23px}
.detail-header button.is-saved{color:var(--place-orange)}
.detail-header button.is-saved svg{fill:currentColor}
.detail-scroll{flex:1;overflow-y:auto;padding-bottom:110px;overscroll-behavior:contain}
.detail-hero{position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(145deg,#e6e9ea,#d7dcde)}
.detail-hero img{width:100%;height:100%;object-fit:cover}
.detail-hero .detail-hero-count{position:absolute;right:12px;bottom:12px;padding:5px 8px;border-radius:999px;background:rgba(20,20,22,.72);color:#fff;font-size:10px;font-weight:800}
.detail-body{padding:20px 17px 24px}
.detail-body h2{margin:0;font-size:24px;font-weight:950;letter-spacing:-.05em}
.detail-verified{display:none;margin-top:8px;color:var(--place-orange);font-size:12px;font-weight:850}
.detail-verified.is-visible{display:block}
.detail-verified:before{content:'✓';display:inline-grid;place-items:center;width:17px;height:17px;margin-right:5px;border-radius:50%;background:var(--place-orange);color:#fff;font-size:10px}
.detail-rating,.detail-address{margin:9px 0 0;color:#5e6268;font-size:13px}.detail-address{color:#85898f;line-height:1.45}
.detail-body h3{margin:26px 0 12px;font-size:15px;font-weight:900}
.vehicle-info{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}
.vehicle-info article{display:flex;min-width:0;min-height:86px;flex-direction:column;align-items:center;justify-content:center;padding:8px 3px;gap:5px;border:1px solid #e7e8eb;border-radius:13px;background:#fff;text-align:center}
.vehicle-info i{font-size:21px;font-style:normal}.vehicle-info span{color:#777b82;font-size:9px;font-weight:750}.vehicle-info strong{font-size:11px;font-weight:900}
.vehicle-note{margin-top:12px;padding:11px 12px;border:1px solid #ffe0d2;border-radius:12px;background:#fff8f4;color:#64676d;font-size:11px;font-weight:700;line-height:1.45}
.vehicle-note:before{content:'!';display:inline-grid;place-items:center;width:16px;height:16px;margin-right:6px;border-radius:50%;background:var(--place-orange);color:#fff;font-size:10px;font-weight:900}
.detail-info-title{margin:26px 0 0!important;font-size:15px!important;font-weight:900!important}
.detail-description{margin:12px 0 0;color:#555960;font-size:13px;line-height:1.7;white-space:pre-line}
.detail-actions{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:.85fr 1.5fr;height:calc(76px + var(--place-safe-bottom));padding:10px 14px var(--place-safe-bottom);gap:9px;border-top:1px solid #e8e9eb;background:rgba(255,255,255,.97);backdrop-filter:blur(16px)}
.detail-actions button{height:52px;border:1px solid #d9dade;border-radius:14px;background:#fff;font-size:14px;font-weight:900}.detail-actions button.is-primary{border-color:var(--place-orange);background:var(--place-orange);color:#fff}.detail-actions button.is-saved{border-color:#ffd0bd;color:var(--place-orange)}

.course-detail .detail-scroll{padding-bottom:116px;background:#f7f7f8}
.course-detail-hero{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#222a31,#0e1216)}
.course-detail-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,10,13,.05) 30%,rgba(7,10,13,.74));pointer-events:none}
.course-detail-hero img{width:100%;height:100%;object-fit:cover}
.course-detail-hero>span{position:absolute;z-index:1;left:18px;right:18px;bottom:17px;display:flex;flex-direction:column;gap:4px;color:#fff}
.course-detail-hero>span b,.course-detail-hero-fallback b{color:#ff7a49;font-size:10px;font-weight:950;letter-spacing:.13em}
.course-detail-hero>span strong,.course-detail-hero-fallback strong{overflow:hidden;font-size:21px;font-weight:950;letter-spacing:-.04em;text-overflow:ellipsis;white-space:nowrap}
.course-detail-hero-fallback{position:absolute;z-index:1;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:20px;color:#fff;background:radial-gradient(circle at 77% 22%,rgba(255,90,31,.68),transparent 24%),linear-gradient(135deg,#222b33,#0c1115)}
.course-detail-hero-fallback i{position:absolute;left:24px;right:28px;bottom:34%;height:3px;border-radius:999px;background:linear-gradient(90deg,transparent 0 4%,#ff6d37 4% 31%,transparent 31% 38%,#ff6d37 38% 69%,transparent 69% 76%,#ff6d37 76% 100%);transform:rotate(-7deg)}
.course-detail-body{padding:19px 16px 30px}
.course-detail-kicker{display:block;color:var(--place-orange);font-size:10px;font-weight:950;letter-spacing:.11em}
.course-detail-body h2{margin:6px 0 0;font-size:25px;font-weight:950;letter-spacing:-.05em}
.course-detail-description{margin:9px 0 0;color:#696d73;font-size:13px;line-height:1.55;white-space:pre-line}
.course-detail-metrics{display:grid;grid-template-columns:repeat(3,1fr);margin-top:18px;border:1px solid #e4e5e7;border-radius:15px;background:#fff;box-shadow:0 5px 15px rgba(28,31,35,.035)}
.course-detail-metrics article{position:relative;display:flex;min-width:0;min-height:72px;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center}
.course-detail-metrics article+article:before{content:'';position:absolute;left:0;top:17px;bottom:17px;width:1px;background:#e8e9eb}
.course-detail-metrics span{color:#8b8e93;font-size:9px;font-weight:750}.course-detail-metrics strong{max-width:100%;overflow:hidden;padding:0 4px;font-size:13px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}
.course-route-guide{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;margin-top:12px;padding:13px 14px;gap:10px;border:1px solid #ffd9c9;border-radius:14px;background:#fff7f3}
.course-route-guide-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--place-orange);color:#fff;font-size:24px;font-weight:900;line-height:1}
.course-route-guide strong{font-size:12px;font-weight:950}.course-route-guide p{margin:3px 0 0;color:#746a65;font-size:10px;font-weight:650;line-height:1.45}
.course-detail-body h3{margin:24px 0 11px;font-size:15px;font-weight:950}
.course-endpoints{padding:15px;border:1px solid #e4e5e7;border-radius:16px;background:#fff}
.course-endpoints article{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:10px}
.course-endpoints article>i{width:12px;height:12px;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 2px var(--place-orange);background:var(--place-orange)}
.course-endpoints article>i.is-finish{border-radius:3px;background:#24272b;box-shadow:0 0 0 2px #24272b}
.course-endpoints article>div{min-width:0}.course-endpoints article span{display:block;color:#96999e;font-size:9px;font-weight:800}.course-endpoints article strong{display:block;overflow:hidden;margin-top:3px;font-size:12px;font-weight:850;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}
.course-endpoints article button{height:31px;padding:0 10px;border:1px solid #dedfe2;border-radius:9px;background:#fff;color:#565a60;font-size:10px;font-weight:850}.course-endpoints article button:disabled{opacity:.38}
.course-endpoint-line{width:2px;height:24px;margin:4px 0 4px 5px;background:repeating-linear-gradient(to bottom,#c8cbd0 0 3px,transparent 3px 6px)}
.course-waypoint-heading{display:flex;align-items:center;justify-content:space-between;margin-top:24px}.course-waypoint-heading h3{margin:0}.course-waypoint-heading span{color:#92959a;font-size:10px;font-weight:800}
.course-waypoints{overflow:hidden;margin-top:11px;border:1px solid #e4e5e7;border-radius:16px;background:#fff}
.course-waypoints article{display:grid;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;min-height:61px;padding:10px 13px;gap:10px}.course-waypoints article+article{border-top:1px solid #eeeeef}
.course-waypoints article>i{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff0e9;color:var(--place-orange);font-size:10px;font-style:normal;font-weight:950}
.course-waypoints article>div{min-width:0}.course-waypoints article span{display:block;color:#96999e;font-size:9px;font-weight:800}.course-waypoints article strong{display:block;overflow:hidden;margin-top:3px;font-size:11px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}
.course-waypoints article button{height:31px;padding:0 10px;border:1px solid #dedfe2;border-radius:9px;background:#fff;color:#565a60;font-size:10px;font-weight:850}
.course-route-addresses article{position:relative}.course-route-addresses article:not(:last-child):after{content:'';position:absolute;z-index:0;left:25px;top:44px;bottom:-18px;width:2px;background:repeating-linear-gradient(to bottom,#d5d7da 0 3px,transparent 3px 6px)}
.course-route-addresses article>i{position:relative;z-index:1}.course-route-addresses article.is-start>i{background:var(--place-orange);color:#fff}.course-route-addresses article.is-finish>i{background:#25282c;color:#fff}.course-route-addresses article button:disabled{opacity:.35}
.course-waypoint-empty{display:flex;min-height:88px;flex-direction:column;justify-content:center;padding:15px;gap:5px}.course-waypoint-empty strong{font-size:12px;font-weight:950}.course-waypoint-empty span{color:#7f8288;font-size:10px;font-weight:650;line-height:1.5}
.course-navigation-warning{margin-top:14px;padding:14px;border-radius:14px;background:#ededf0}
.course-navigation-warning strong{font-size:11px;font-weight:950}.course-navigation-warning p{margin:5px 0 0;color:#686c72;font-size:10px;font-weight:650;line-height:1.55}
.course-navigation-warning.is-critical{border:1px solid #ffd3c1;background:#fff3ed}.course-navigation-warning.is-critical strong{color:#d94812}.course-navigation-warning.is-critical p{color:#745f56}
.course-detail-report-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:11px;gap:8px}.course-detail-report-actions button{height:46px;border-radius:13px;font-size:11px;font-weight:950}
.course-copy-all{border:1px solid #ffc2a9;background:#fff;color:var(--place-orange)}
.course-waypoint-report{border:1px solid #25282c;background:#25282c;color:#fff}
.course-detail-actions{grid-template-columns:1.08fr 1fr}

.place-request-modal{position:absolute;z-index:150;inset:0;display:flex;align-items:flex-end;justify-content:center}
.place-request-modal[hidden]{display:none}.request-dim{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(17,18,20,.46);backdrop-filter:blur(2px)}
.place-request-modal form{position:relative;width:100%;max-height:calc(100dvh - 12px);overflow-y:auto;padding:9px 16px calc(24px + var(--place-safe-bottom));border-radius:24px 24px 0 0;background:#fff;box-shadow:0 -14px 38px rgba(17,18,20,.18);animation:request-in .2s ease both;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
@keyframes request-in{from{transform:translateY(22px);opacity:.8}to{transform:none;opacity:1}}
.request-modal-handle{width:38px;height:4px;margin:0 auto 11px;border-radius:999px;background:#d9dade}
.place-request-modal header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:17px}.place-request-modal header span{color:var(--place-orange);font-size:10px;font-weight:900}.place-request-modal h2{margin:2px 0 0;font-size:21px;font-weight:950;letter-spacing:-.04em}.place-request-modal header button{display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:50%;background:#f3f3f4;color:#555;font-size:25px}
.place-request-modal label{display:block;margin-bottom:12px;color:#35373a;font-size:11px;font-weight:850}.place-request-modal input,.place-request-modal textarea{display:block;width:100%;min-height:44px;margin-top:6px;padding:10px 11px;border:1px solid #dedfe2;border-radius:11px;background:#fff;color:#171719;font-size:16px;outline:0}.place-request-modal input:focus,.place-request-modal textarea:focus{border-color:var(--place-orange);box-shadow:0 0 0 3px rgba(255,90,31,.1)}.place-request-modal textarea{min-height:92px;resize:vertical}.place-request-modal form>p{margin:0 0 13px;color:#85898f;font-size:10px}.request-submit{position:sticky;z-index:3;bottom:0;width:100%;height:50px;border:0;border-radius:13px;background:var(--place-orange);color:#fff;font-size:14px;font-weight:900;box-shadow:0 -8px 18px rgba(255,255,255,.96)}

.course-waypoint-request{z-index:170}.course-waypoint-request form{padding-bottom:calc(18px + var(--place-safe-bottom))}
.waypoint-request-course{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding:11px 12px;border-radius:11px;background:#f4f4f5}.waypoint-request-course span{color:#85898f;font-size:9px;font-weight:800}.waypoint-request-course strong{max-width:75%;overflow:hidden;font-size:12px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}
.waypoint-request-fixed{display:grid;grid-template-columns:1fr 1fr;margin-bottom:15px;gap:7px}.waypoint-request-fixed article{display:grid;grid-template-columns:25px minmax(0,1fr);align-items:center;min-width:0;padding:10px;gap:8px;border:1px solid #e6e7e9;border-radius:11px}.waypoint-request-fixed i{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--place-orange);color:#fff;font-size:9px;font-style:normal;font-weight:950}.waypoint-request-fixed article:last-child i{background:#25282c}.waypoint-request-fixed span,.waypoint-request-fixed strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.waypoint-request-fixed span{color:#96999e;font-size:8px;font-weight:800}.waypoint-request-fixed strong{margin-top:2px;font-size:10px;font-weight:850}
.waypoint-request-heading{display:flex;align-items:center;justify-content:space-between}.waypoint-request-heading strong{font-size:12px;font-weight:950}.waypoint-request-heading span{color:var(--place-orange);font-size:10px;font-weight:900}.waypoint-request-help{margin:3px 0 9px!important}
.waypoint-request-list{display:grid;gap:7px}.waypoint-request-row{display:grid;grid-template-columns:25px minmax(0,1fr) 64px;align-items:start;padding:8px;gap:7px;border:1px solid #e5e6e8;border-radius:11px;background:#fff}.waypoint-request-row>i{display:grid;place-items:center;width:24px;height:24px;margin-top:6px;border-radius:50%;background:#fff0e9;color:var(--place-orange);font-size:9px;font-style:normal;font-weight:950}.waypoint-request-row>div:nth-child(2){display:grid;gap:5px}.waypoint-request-row input{min-height:36px!important;height:36px;margin:0!important;padding:0 8px!important;border-radius:8px!important;font-size:12px!important}.waypoint-request-tools{display:grid;grid-template-columns:repeat(2,30px);gap:4px}.waypoint-request-tools button{width:30px;height:30px;padding:0;border:1px solid #dedfe2;border-radius:8px;background:#fff;font-size:11px;font-weight:900}.waypoint-request-tools button:last-child{grid-column:1/-1;width:64px;color:#bd412c}.waypoint-request-tools button:disabled{opacity:.3}.waypoint-request-add{width:100%;height:39px;margin:8px 0 13px;border:1px solid #ffc4ac;border-radius:10px;background:#fff;color:var(--place-orange);font-size:10px;font-weight:900}.waypoint-request-add:disabled{border-color:#e2e3e5;background:#f3f3f4;color:#a3a6aa}

@media (min-width:761px){
  .place-app{border-left:1px solid #ececee;border-right:1px solid #ececee}
  .place-sheet,.course-sheet{left:18px;right:18px}
}

@media (max-width:760px){
  .place-app{min-height:0}
}

html.aemazon-android-webview,html.aemazon-android-webview body{width:100%!important;height:100%!important;min-height:0!important;overflow:hidden!important}
html.aemazon-android-webview .place-app{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;inset:0!important;width:auto!important;max-width:none!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;overflow:hidden!important;box-shadow:none!important}
html.aemazon-android-webview .place-header,html.aemazon-android-webview .place-bottom-nav,html.aemazon-android-webview .place-sheet,html.aemazon-android-webview .course-sheet{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
html.aemazon-android-webview .place-bottom-nav{left:0!important;right:0!important;width:100%!important}
html.aemazon-android-webview .place-request-modal form{max-height:calc(100% - 12px)!important}
html.aemazon-android-webview .course-detail .detail-actions{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}

@media (max-height:700px){
  .place-sheet,.course-sheet{max-height:238px}.nearby-rail{display:none}.course-card-visual{height:68px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* v1.0.13: keep map marker selection and the horizontal course rail in sync. */
.course-list{scroll-padding-inline:1px;-webkit-overflow-scrolling:touch}
.course-card{transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.course-card.is-selected{border-color:#ff5a1f;box-shadow:0 0 0 2px rgba(255,90,31,.17),0 8px 20px rgba(34,37,41,.1)}
.course-card.is-selected .course-card-visual:before{content:'선택됨';position:absolute;top:8px;right:8px;z-index:2;padding:4px 7px;border-radius:999px;background:#ff5a1f;color:#fff;font-size:9px;font-weight:900;line-height:1}
.course-card.is-ghost.is-selected{border-color:#7841df;box-shadow:0 0 0 2px rgba(120,65,223,.17),0 8px 20px rgba(34,37,41,.1)}
.course-card.is-ghost.is-selected .course-card-visual:before{background:#7841df}

/* v1.0.16: users can report corrected waypoint sequences from course details. */
