@font-face{font-family:NanumBarunpenR;src:url(/assets/NanumBarunpenR-599919ce.otf) format("opentype"),url(/assets/NanumBarunpenR-f5bd6993.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{font-family:NanumBarunpenR,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1;font-weight:700}h2,h3{font-weight:700}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.app-container{max-width:960px;margin:0 auto;padding:16px;min-height:100vh;box-sizing:border-box;width:100%}.app-header{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;margin-bottom:20px;text-align:center}.app-logo{height:140px;width:auto;object-fit:contain;max-width:100%}.app-title{font-size:1.8rem;margin:0;text-align:center;color:#fdfd2a;font-weight:700}.map-container{width:100%;height:360px;border-radius:8px;border:1px solid #ddd;margin-bottom:20px}.map-loading,.map-error{width:100%;height:360px;border-radius:8px;border:1px solid #ddd;display:flex;align-items:center;justify-content:center;background-color:#f5f5f5;text-align:center;color:#e6e5e5}.map-error{background-color:#f8d7da;color:#721c24}.map-coords{margin-top:8px;font-size:14px;color:#f9f7f7}.form-container{margin-top:16px}.input-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:16px}.input-group{display:flex;flex-direction:column}.input-group label{margin-bottom:4px;font-weight:500;color:#fafa00}.input-group input[type=number]{width:100%;padding:8px;border-radius:4px;border:1px solid #ddd;font-size:16px;box-sizing:border-box}.radio-group{display:flex;gap:20px;margin-top:4px;justify-content:center;flex-wrap:wrap}.radio-option{display:flex;align-items:center;gap:8px;cursor:pointer}.radio-option input[type=radio]{margin:0}.waypoints-section{margin-bottom:16px}.waypoints-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;flex-wrap:wrap;gap:8px}.waypoints-title{font-weight:500;color:#fafa00}.waypoints-subtitle{font-size:12px;color:#fffefe;margin-top:2px}.add-waypoint-btn{padding:4px 12px;background-color:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;white-space:nowrap}.add-waypoint-btn:hover{background-color:#218838}.waypoint-item{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding:8px;width:flex;cursor:move;transition:all .2s ease;min-height:10px}.waypoint-item:hover{background-color:#dee2e6}.waypoint-item.dragging{background-color:#e3f2fd;border:2px dashed #2196f3;opacity:.7}.waypoint-order{min-width:20px;font-weight:700;color:#585656;display:flex;align-items:center;gap:4px}.drag-handle{font-size:16px;color:#585656;font-weight:700;cursor:grab;-webkit-user-select:none;user-select:none}.drag-handle:active{cursor:grabbing}.waypoint-input{flex:1;padding:8px;border-radius:4px;border:1px solid #ddd;font-size:16px}.waypoint-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}@media (hover: none) and (pointer: coarse){.waypoint-item{padding:12px;touch-action:none}.add-waypoint-btn,.remove-waypoint-btn,.submit-btn{min-height:44px;padding:12px 16px}.radio-option{min-height:44px;padding:8px}.waypoint-input,.input-group input[type=number]{min-height:44px;font-size:16px}.drag-handle{font-size:20px;padding:8px}}.remove-waypoint-btn{padding:4px 8px;background-color:transparent;color:#000;border:none;border-radius:4px;cursor:pointer;font-size:20px;font-weight:700;line-height:1;min-width:30px;min-height:30px;display:flex;align-items:center;justify-content:center}.remove-waypoint-btn:hover{background-color:#f8f9fa;color:#dc3545}.submit-container{text-align:center;margin:20px 0}.submit-btn{padding:12px 24px;background-color:#007bff;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .2s ease}.submit-btn:hover:not(:disabled){background-color:#0056b3}.submit-btn:disabled{background-color:#ccc;cursor:not-allowed}.error-message{color:#dc3545;margin-top:12px;padding:12px;background-color:#f8d7da;border-radius:4px;border:1px solid #f5c6cb}.result-container{margin-top:16px;padding:16px;background-color:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.result-title{margin:0 0 8px;color:#000;font-size:1.2rem}.result-summary{font-size:16px;color:#007bff;font-weight:700;margin-bottom:12px}.waypoint-result{margin-bottom:12px;padding:12px;background-color:#fff;border-radius:4px;border:1px solid #dee2e6}.waypoint-result-title{font-size:16px;font-weight:700;margin-bottom:4px;color:#000}.waypoint-result-theme{font-size:14px;color:#666;margin-bottom:4px}.waypoint-result-address{font-size:12px;color:#888;margin-bottom:4px}.waypoint-result-phone{font-size:12px;color:#888}.candidates-info{font-size:12px;color:#666;margin-top:8px}.route-link{display:inline-block;padding:8px 16px;background-color:#007bff;color:#fff;text-decoration:none;border-radius:4px;font-size:14px;margin-top:12px;transition:background-color .2s ease}.route-link:hover{background-color:#0056b3;color:#fff}@media (max-width: 479px){.app-container{padding:12px}.app-header{margin-bottom:16px;gap:12px}.app-logo{height:60px}.app-title{font-size:1.5rem;margin:0}.map-container,.map-loading,.map-error{height:300px}.waypoints-header{flex-direction:column;align-items:flex-start;gap:8px}.waypoint-item{flex-direction:column;align-items:stretch;gap:8px;min-height:auto}.waypoint-order{justify-content:center;order:1}.waypoint-input{order:2}.remove-waypoint-btn{order:3;align-self:flex-end;margin-top:4px}.radio-group{justify-content:center;gap:16px}.submit-btn{width:100%;padding:16px;font-size:18px}}@media (min-width: 480px){.input-grid{grid-template-columns:1fr 1fr}.radio-group{justify-content:flex-start}.waypoint-item{flex-direction:row}}@media (min-width: 768px){.app-container{padding:24px}.app-header{margin-bottom:24px;gap:20px}.app-logo{height:100px}.app-title{font-size:2.2rem}.waypoints-header{flex-wrap:nowrap}.waypoint-item{gap:12px}.submit-btn{width:auto;padding:12px 24px;font-size:16px}}@media (min-width: 1024px){.app-container{padding:32px;margin:0 auto;display:block}.app-header{margin-bottom:32px;gap:24px}.app-logo{height:120px}.map-container,.map-loading,.map-error{height:400px}.waypoint-item{gap:16px}}@media (min-width: 1200px){.app-container{padding:40px;margin:0 auto}}
