.w-8[data-v-8dc6008a]{width:2rem}.h-8[data-v-8dc6008a]{height:2rem}.w-12[data-v-8dc6008a]{width:3rem}.h-12[data-v-8dc6008a]{height:3rem}.w-20[data-v-8dc6008a]{width:5rem}.h-20[data-v-8dc6008a]{height:5rem}.text-sm[data-v-8dc6008a]{font-size:.875rem}.text-xl[data-v-8dc6008a]{font-size:1.25rem}.text-4xl[data-v-8dc6008a]{font-size:2.25rem}.fade-in[data-v-8e27489d]{animation:fadeIn-8e27489d .3s ease-out}@keyframes fadeIn-8e27489d{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.transition-base[data-v-8e27489d]{transition:transform .3s ease}.nav-pills .nav-link[data-v-8e27489d]{color:var(--bs-secondary);transition:all .2s;border-radius:8px}.nav-pills .nav-link[data-v-8e27489d]:hover{background-color:#0000000d;color:var(--bs-dark)}.nav-pills .nav-link.active[data-v-8e27489d]{background-color:var(--bs-primary);color:#fff;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.active-scale[data-v-8e27489d]:active{transform:scale(.95);transition:transform .1s}.avatar-upload-wrapper[data-v-8e27489d]{transition:all .3s ease}.avatar-upload-wrapper[data-v-8e27489d]:hover{filter:brightness(.9)}.opacity-10[data-v-8e27489d]{opacity:.1}.font-size-sm[data-v-e8457705]{font-size:.875rem}.transition-base[data-v-e8457705]{transition:all .2s cubic-bezier(.16,1,.3,1)}.hover-bg-light[data-v-e8457705]:hover{background-color:#f1f3f5;color:var(--bs-primary)!important}.hover-shadow-sm[data-v-e8457705]:hover{box-shadow:0 .125rem .25rem #00000026!important;transform:translateY(-1px)}.focus-ring-none[data-v-e8457705]:focus{box-shadow:none!important}.navbar[data-v-e8457705]{min-height:4rem}.brand-logo[data-v-e8457705]{width:2.25rem;height:2.25rem;border-radius:.5rem}.mobile-icon-btn[data-v-e8457705]{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;padding:0}@media(min-width:576px){.mobile-icon-btn[data-v-e8457705]{width:2.25rem;height:2.25rem}}.pointer-events-none[data-v-8c9271a6]{pointer-events:none}.pointer-events-auto[data-v-8c9271a6]{pointer-events:auto}.cursor-pointer[data-v-8c9271a6]{cursor:pointer}.hover-scale[data-v-8c9271a6]{transition:transform .2s ease,filter .2s ease}.hover-scale[data-v-8c9271a6]:hover{transform:translateY(-2px);filter:brightness(1.1)}.slide-up-enter-active[data-v-8c9271a6],.slide-up-leave-active[data-v-8c9271a6]{transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.slide-up-enter-from[data-v-8c9271a6],.slide-up-leave-to[data-v-8c9271a6]{opacity:0;transform:translateY(20px)}.cursor-pointer[data-v-e5311d9e]{cursor:pointer}.transition-base[data-v-e5311d9e]{transition:all .2s ease-in-out}.overflow-y-auto[data-v-e5311d9e]::-webkit-scrollbar{width:6px}.overflow-y-auto[data-v-e5311d9e]::-webkit-scrollbar-thumb{background-color:#dee2e6;border-radius:4px}.overflow-y-auto[data-v-e5311d9e]::-webkit-scrollbar-track{background:transparent}.animate-fade-in[data-v-a28018a5]{animation:fadeIn-a28018a5 .4s cubic-bezier(.16,1,.3,1)}@keyframes fadeIn-a28018a5{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.cursor-pointer[data-v-a28018a5]{cursor:pointer}.transition-base[data-v-a28018a5]{transition:all .2s ease}.transform-scale-110[data-v-a28018a5]{transform:scale(1.1);transform-origin:right center}.border-dashed[data-v-a28018a5]{border-style:dashed!important}@media(min-width:992px){.border-end-lg[data-v-a28018a5]{border-right:1px solid #dee2e6}}.hover-shadow[data-v-a28018a5]:hover{box-shadow:0 .5rem 1rem #00000026!important;transform:translateY(-2px)}.hover-bg-light[data-v-a28018a5]:hover{background-color:#f8f9fa!important;border-color:#dee2e6!important}.hover-text-primary[data-v-a28018a5]:hover{color:var(--bs-primary)!important}.hover-text-danger[data-v-a28018a5]:hover{color:var(--bs-danger)!important}.scrollable-list[data-v-a28018a5]{max-height:50vh;overflow-y:auto}@media(min-width:992px){.scrollable-list[data-v-a28018a5]{max-height:480px}}.scrollable-list[data-v-a28018a5]::-webkit-scrollbar{width:5px}.scrollable-list[data-v-a28018a5]::-webkit-scrollbar-thumb{background-color:#ced4da;border-radius:4px}.scrollable-list[data-v-a28018a5]::-webkit-scrollbar-track{background-color:transparent}.nav-pills .nav-link[data-v-a28018a5]{color:var(--bs-secondary);transition:all .2s;padding-top:.6rem;padding-bottom:.6rem}.nav-pills .nav-link.active[data-v-a28018a5]{background-color:#fff;color:var(--bs-primary)}.form-control[data-v-a28018a5]:focus{box-shadow:none;background-color:#fff!important;border:1px solid var(--bs-primary)!important}.filter-scroll-bar[data-v-a28018a5]::-webkit-scrollbar{display:none}.filter-scroll-bar[data-v-a28018a5]{-ms-overflow-style:none;scrollbar-width:none}.spin[data-v-29e1ca90]{animation:spin-29e1ca90 1s linear infinite}@keyframes spin-29e1ca90{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cover-preview-wrapper[data-v-29e1ca90]{height:300px;transition:all .3s ease}.cover-bg-blur[data-v-29e1ca90]{background-size:cover;background-position:center;filter:blur(20px);opacity:.6;transform:scale(1.1);z-index:0}.cover-main-img[data-v-29e1ca90]{background-size:contain;background-repeat:no-repeat;background-position:center;z-index:1;transition:opacity .3s ease}.form-control[data-v-29e1ca90]:focus{box-shadow:none!important}.title-edit-container[data-v-29e1ca90]{position:relative;display:flex;align-items:center;transition:all .2s ease;border-radius:12px;padding:0 12px;margin-left:-12px;cursor:text}.title-edit-container[data-v-29e1ca90]:hover{background-color:#0000000a}.title-input[data-v-29e1ca90]{background:transparent!important;flex:1}.edit-icon[data-v-29e1ca90]{font-size:1.25rem;color:#adb5bd;opacity:.3;transition:all .2s ease}.edit-icon-sm[data-v-29e1ca90]{font-size:1rem;color:#adb5bd;opacity:.3;transition:all .2s ease}.title-edit-container:hover .edit-icon[data-v-29e1ca90],.desc-edit-container:hover .edit-icon-sm[data-v-29e1ca90]{opacity:1;color:var(--bs-primary)}.title-input:focus~.edit-icon[data-v-29e1ca90],.desc-input:focus~.edit-icon-sm[data-v-29e1ca90]{opacity:0}.title-edit-container[data-v-29e1ca90]{display:flex;align-items:center;transition:all .2s ease;border-radius:12px;padding:0 12px;margin-left:-12px;cursor:text}.desc-edit-container[data-v-29e1ca90]{display:flex;align-items:center;transition:all .2s ease;border-radius:8px;padding:0 12px;margin-left:-12px;cursor:text}.title-edit-container[data-v-29e1ca90]:hover,.desc-edit-container[data-v-29e1ca90]:hover{background-color:#0000000a}.title-input[data-v-29e1ca90],.desc-input[data-v-29e1ca90]{background:transparent!important;flex:1}.insert-zone[data-v-f4ed5499]{cursor:pointer}.insert-btn[data-v-f4ed5499]{opacity:0;transform:translate(-50%,-50%) scale(.8)}.traffic-bar-container:hover .insert-btn[data-v-f4ed5499]{opacity:1;transform:translate(-50%,-50%) scale(1)}.cursor-pointer[data-v-f4ed5499]{cursor:pointer}.cursor-default[data-v-f4ed5499]{cursor:default}.transition-base[data-v-f4ed5499]{transition:all .2s ease}.transition-transform[data-v-f4ed5499]{transition:transform .2s ease}.hover-scale[data-v-f4ed5499]:hover{transform:scale(1.02);background-color:#f8f9fa!important}.traffic-pill.bg-danger-subtle[data-v-f4ed5499]:hover{background-color:#f8d7da!important}.hover-bg-light-dark[data-v-f4ed5499]:hover{background-color:#e9ecef}.rotate-180[data-v-f4ed5499]{transform:rotate(180deg)}@keyframes popIn-f4ed5499{0%{opacity:0;transform:translate(-50%) scale(.9)}to{opacity:1;transform:translate(-50%) scale(1)}}.animate-slide-down[data-v-f4ed5499]{animation:slideDown-f4ed5499 .2s ease-out}@keyframes slideDown-f4ed5499{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.weather-badge-container[data-v-0fb42652]{vertical-align:middle;min-height:26px}.text-purple[data-v-0fb42652]{color:#6610f2}.animate-fade-in[data-v-0fb42652]{animation:fadeIn-0fb42652 .3s ease-out}@keyframes fadeIn-0fb42652{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.skeleton-pulse[data-v-0fb42652]{background-color:#f8f9fa;border:1px solid #e9ecef}.skeleton-circle[data-v-0fb42652]{width:14px;height:14px;background-color:#dee2e6;border-radius:50%;animation:pulse-0fb42652 1.5s infinite ease-in-out}.skeleton-line[data-v-0fb42652]{width:40px;height:10px;background-color:#dee2e6;border-radius:4px;animation:pulse-0fb42652 1.5s infinite ease-in-out .2s}@keyframes pulse-0fb42652{0%{opacity:.6}50%{opacity:.3}to{opacity:.6}}.spot-item-wrapper[data-v-06020539]{display:flex;flex-direction:column;width:100%}.traffic-container[data-v-06020539]{width:100%}.cursor-grab[data-v-06020539]{cursor:grab}.cursor-grab[data-v-06020539]:active{cursor:grabbing}.cursor-pointer[data-v-06020539]{cursor:pointer}.hover-bg-gray[data-v-06020539]:hover{background-color:#e9ecef!important}.transition-transform[data-v-06020539]{transition:transform .2s ease}.form-control[data-v-06020539]:focus,.form-select[data-v-06020539]:focus{box-shadow:none;background-color:#fff!important}.duration-control[data-v-06020539]{height:31px;width:100px;box-sizing:border-box}.scroll-target[data-v-86f35651]{scroll-margin-top:80px}.border-dashed[data-v-86f35651]{border-style:dashed!important}.hover-opacity-100[data-v-86f35651]:hover{opacity:1!important;background-color:#fff;border-color:var(--bs-secondary);color:var(--bs-secondary)}.day-item.flash[data-v-86f35651]{animation:flash-bg-86f35651 1s ease-out}@keyframes flash-bg-86f35651{0%{background-color:#0d6efd33}to{background-color:transparent}}input[type=date][data-v-86f35651]{font-family:inherit;cursor:pointer}.spot-item__drag-handle[data-v-86f35651]{touch-action:none}.region-block-content[data-v-c440ee0a]{padding:0}.border-dashed[data-v-c440ee0a]{border-style:dashed!important}.hover-opacity-100[data-v-c440ee0a]:hover{opacity:1!important;background-color:var(--bs-primary-bg-subtle);border-color:var(--bs-primary);color:var(--bs-primary)}.hover-opacity-100[data-v-0aa6f20a]:hover{opacity:1!important}.hover-bg-light[data-v-0aa6f20a]:hover{background-color:#f8f9fa}.cursor-pointer[data-v-0aa6f20a]{cursor:pointer}.transition-base[data-v-0aa6f20a]{transition:all .2s ease}.form-control[data-v-0aa6f20a]:focus{box-shadow:none;background-color:rgba(var(--bs-light-rgb),.5)}.min-drop-zone[data-v-0aa6f20a],.check-root[data-v-ac2be8ed]{min-height:10px}[data-v-ac2be8ed] .check-item{margin-bottom:5px;background:#fff;border:1px solid #eee;padding:8px;border-radius:4px}[data-v-ac2be8ed] .check-content{display:flex;align-items:center;gap:8px}[data-v-ac2be8ed] .check-children{min-height:10px;margin-top:5px;padding-left:20px;padding-top:5px}[data-v-ac2be8ed] .check-children.has-children{border-left:2px solid #eee}.scroll-target[data-v-d543d305]{scroll-margin-top:80px}.border-dashed[data-v-d543d305]{border-style:dashed!important}.card.flash[data-v-d543d305]{animation:flash-bg-d543d305 1s ease-out}@keyframes flash-bg-d543d305{0%{background-color:#0d6efd33}to{background-color:transparent}}.card-header input[data-v-d543d305]:focus{outline:none;box-shadow:none}.form-control[data-v-98733bd8]:focus{box-shadow:none;background-color:#f8f9fa}.cursor-pointer[data-v-98733bd8]{cursor:pointer}.transition-base[data-v-98733bd8]{transition:background-color .2s}.hover-bg-light[data-v-98733bd8]:hover{background-color:#f8f9fa!important}.sticky-nav-container[data-v-6a299405]{position:sticky;top:60px;z-index:1010;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.05);box-shadow:0 4px 10px #00000008;display:flex;flex-direction:column}.nav-row-regions[data-v-6a299405]{display:flex;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;padding:8px 12px 4px;gap:8px;background-color:#f8f9fa;border-bottom:1px solid #e9ecef;scrollbar-width:none}.nav-row-regions[data-v-6a299405]::-webkit-scrollbar{display:none}.nav-link-region[data-v-6a299405]{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;text-decoration:none;color:#6c757d;font-weight:500;font-size:.85rem;background-color:#fff;border:1px solid #dee2e6;transition:all .2s ease;white-space:nowrap}.nav-link-region.active[data-v-6a299405]{background-color:#343a40;color:#fff;border-color:#343a40;box-shadow:0 2px 4px #0000001a}.nav-row-days[data-v-6a299405]{display:flex;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;padding:8px 12px;gap:6px;scrollbar-width:none}.nav-row-days[data-v-6a299405]::-webkit-scrollbar{display:none}.nav-link-day[data-v-6a299405]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 4px;border-radius:8px;text-decoration:none;color:#6c757d;background-color:transparent;min-width:48px;transition:all .2s ease;border:1px solid transparent}.nav-link-day[data-v-6a299405]:hover{background-color:#f8f9fa}.nav-link-day.active[data-v-6a299405]{background-color:#e7f1ff;color:#0d6efd;border-color:#cff4fc;font-weight:700;transform:translateY(-1px);box-shadow:0 2px 4px #0d6efd1a}.day-label[data-v-6a299405]{font-size:.9rem;line-height:1;font-weight:700}.day-date[data-v-6a299405]{font-size:.65rem;opacity:.8;margin-top:2px;line-height:1}.safe-area-pb[data-v-a66a77ea]{padding-bottom:env(safe-area-inset-bottom)}.transition-base[data-v-a66a77ea]{transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.hover-bg-light[data-v-a66a77ea]:hover{background-color:#0000000d}.btn[data-v-a66a77ea]:active{transform:scale(.95)}.safe-area-pb[data-v-ca41b3c0]{padding-bottom:env(safe-area-inset-bottom)}.pointer-events-none[data-v-ca41b3c0]{pointer-events:none}.pointer-events-auto[data-v-ca41b3c0]{pointer-events:auto}.transition-base[data-v-ca41b3c0]{transition:all .2s cubic-bezier(.175,.885,.32,1.275)}.hover-scale[data-v-ca41b3c0]:hover{transform:scale(1.05)}.animate-bounce-in[data-v-ca41b3c0]{animation:bounceIn-ca41b3c0 .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes bounceIn-ca41b3c0{0%{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.app-container[data-v-01f4a52d]{min-height:100vh;position:relative;background-color:#f8f9fa}.app-container[data-v-01f4a52d]{padding-bottom:80px}.travel-mode-padding[data-v-01f4a52d]{padding-bottom:100px}.min-vh-50[data-v-01f4a52d]{min-height:50vh}.fade-in[data-v-01f4a52d]{animation:fadeIn-01f4a52d .3s ease-out}@keyframes fadeIn-01f4a52d{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}[data-v-01f4a52d] .day-item.flash{animation:flash-highlight-01f4a52d 1.5s ease-out}@keyframes flash-highlight-01f4a52d{0%{background-color:#0d6efd0d;box-shadow:0 0 0 2px #0d6efd4d}50%{background-color:#0d6efd1a;box-shadow:0 0 0 4px #0d6efd1a}to{background-color:transparent;box-shadow:none}}.admin-layout[data-v-e4100409]{min-height:100vh}.admin-sidebar[data-v-e4100409]{width:100%}.transition-base[data-v-e4100409]{transition:all .25s ease-in-out}.nav-link[data-v-e4100409]{min-height:48px;justify-content:flex-start}.nav-link[data-v-e4100409]:hover:not(.active){background-color:#f8f9fa;color:var(--bs-primary)!important}@media(min-width:768px){.admin-sidebar[data-v-e4100409]{width:250px;min-height:calc(100vh - 4.5rem)}.admin-sidebar.collapsed-md[data-v-e4100409]{width:80px}.admin-sidebar.collapsed-md .nav-link[data-v-e4100409]{justify-content:center;padding-left:0;padding-right:0}.admin-sidebar.collapsed-md .nav-item[data-v-e4100409]{width:100%}.admin-sidebar.collapsed-md h5[data-v-e4100409]{display:none!important}.admin-sidebar.collapsed-md .d-flex.justify-content-between[data-v-e4100409]{justify-content:center!important}}.cursor-pointer[data-v-16dbbb70]{cursor:pointer}.sortable-header[data-v-16dbbb70]{transition:background-color .2s;-webkit-user-select:none;user-select:none}.sortable-header[data-v-16dbbb70]:hover{background-color:#f0f2f5!important}.sort-pill[data-v-16dbbb70]{font-size:.8rem;padding:.4rem 1rem;transition:all .2s}.sort-pill[data-v-16dbbb70]:hover{transform:translateY(-1px)}body{background-color:#f0f2f5;padding-bottom:60px;font-family:Noto Sans TC,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal}.toolbar{position:sticky;top:0;background:#fffffff2;z-index:1000;padding:10px 0;border-bottom:1px solid #ddd;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);box-shadow:0 2px 4px #0000000d}.footer{position:relative;margin-top:50px;background-color:transparent;padding:10px 0;text-align:center;z-index:800;opacity:0;transition:opacity .5s ease-in-out;pointer-events:none}.copyright{margin:0;font-size:.85rem;color:#6c757d99}.deleted-counter{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#ffc107;color:#333;padding:5px 15px;border-radius:20px 20px 0 0;font-size:.9rem;font-weight:500;box-shadow:0 -2px 5px #0000001a;opacity:0;transition:opacity .3s ease,transform .3s ease;transform:translate(-50%) translateY(10px)}.deleted-counter.show{opacity:1;transform:translate(-50%) translateY(0)}.footer.show{opacity:1;pointer-events:auto}.auto-growing-textarea{overflow-y:auto;max-height:660px}textarea.form-control{resize:vertical!important}.bi{vertical-align:-.125em;fill:currentcolor}.font-noto{font-family:Noto Sans TC,sans-serif;font-optical-sizing:auto;font-style:normal}.btn-delete-on-hover:hover{color:var(--bs-danger)!important}.btn-action-hover:hover{color:var(--bs-primary)!important;background-color:rgba(var(--bs-light-rgb),.5)}.check-root{min-height:10px}.check-item{margin-bottom:5px;background:#fff;border:1px solid #eee;padding:8px;border-radius:4px}.check-content{display:flex;align-items:center;gap:8px}.check-children{min-height:5px;margin-top:5px;padding-left:20px;padding-top:5px;border-left:2px solid #eee}.sortable-ghost{opacity:.4;background:#e2e6ea}.sortable-fallback{opacity:.9!important;background:#fff;box-shadow:0 10px 20px #0003;transform:scale(1.02);cursor:grabbing!important}.loader{text-align:center;padding:50px;font-size:1.2rem;color:#666}.loader-small{width:1.5rem;height:1.5rem;border:3px solid #f3f3f3;border-top:3px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;display:inline-block;vertical-align:middle;margin-right:10px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000c;z-index:1001;display:none;justify-content:center;align-items:center}.modal-content{background-color:#fff;padding:30px;border-radius:8px;box-shadow:0 4px 20px #0003;text-align:center}#settingsModal .modal-content{text-align:left}.setting-group{padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid #eee}.setting-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.transition-base{transition:all .2s ease-in-out}.hover-scale{transform:scale(1)}.hover-scale:hover{transform:scale(1.02)}
