body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{background:#0f172a;color:#f8fafc;min-height:100vh;overflow-x:hidden;width:100%}.App-header{display:flex;flex-direction:column;gap:0;margin:0 auto;max-width:100%;padding:0}.top-bar{align-items:center;background:#0f172af2;border-bottom:1px solid #94a3b833;box-shadow:0 4px 12px #0000004d;box-sizing:border-box;display:flex;justify-content:space-between;max-width:100vw;overflow:hidden;padding:1rem 1.5rem;position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:100}.top-bar h1{flex-shrink:1;font-size:1.5rem;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-info{align-items:center;display:flex;flex-shrink:0;font-size:.85rem;gap:.75rem;white-space:nowrap}.user-info code{background:#38bdf81a;border-radius:6px;color:#38bdf8;max-width:200px;overflow:hidden;padding:.25rem .5rem;text-overflow:ellipsis}.sign-out-btn{background:#ef444426;border:1px solid #f871714d;color:#fca5a5;flex-shrink:0;font-size:.8rem;padding:.5rem .85rem;white-space:nowrap}.sign-out-btn:hover{background:#ef444440;border-color:#f8717180;box-shadow:none;transform:none}h1{font-size:2.5rem;margin:0;text-align:center}.card{background:#0f172ab3;border:1px solid #94a3b833;border-radius:16px;box-shadow:0 18px 40px -22px #0f172ae6;gap:1rem}.card,.login-container{display:flex;flex-direction:column;padding:1.5rem}.login-container{align-items:center;box-sizing:border-box;justify-content:center;min-height:100vh;width:100%}.login-container h1{margin-bottom:2rem}.card{max-width:400px;width:100%}.card h2{font-size:1.25rem;margin:0 0 1.5rem;text-align:center}.card p,.card pre{margin:0}.actions{display:flex;flex-wrap:wrap;gap:.75rem}button[type=submit]{width:100%}button{background:#38bdf8;border:none;border-radius:8px;color:#0f172a;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:transform .15s ease,box-shadow .15s ease}button:disabled{box-shadow:none;cursor:not-allowed;opacity:.5}button:not(:disabled):hover{box-shadow:0 12px 24px -18px #38bdf8;transform:translateY(-1px)}.auth-form{grid-gap:.75rem;display:grid;gap:.75rem;text-align:left}.auth-form label{color:#cbd5f5;font-size:.85rem;font-weight:600}.auth-form input{background:#0f172a8c;border:1px solid #94a3b840;border-radius:10px;box-sizing:border-box;color:inherit;font-size:1rem;padding:.65rem .9rem;width:100%}.auth-form input:focus{border-color:#38bdf8b3;box-shadow:0 0 0 3px #38bdf840;outline:none}.divider{align-items:center;color:#94a3b8bf;display:flex;font-size:.75rem;gap:.75rem;letter-spacing:.08em;text-transform:uppercase;width:100%}.divider:after,.divider:before{background:#94a3b840;content:"";flex:1 1;height:1px}.result{background:#0f172af2;font-size:.85rem;line-height:1.5;overflow-x:auto;padding:1rem}.error,.result{border-radius:12px}.error{background:#ef44441a;border:1px solid #f8717166;color:#fecaca;margin:0 auto;max-width:920px;padding:1rem 1.25rem;width:100%}.error strong{display:inline-block;margin-right:.5rem}.main-layout{display:flex;max-width:100vw;min-height:calc(100vh - 70px);overflow-x:hidden;width:100%}.content-area{background:#0f172a;flex:1 1;min-width:0;overflow-x:hidden;overflow-y:auto}.loading-screen{align-items:center;color:#94a3b8;display:flex;font-size:1.25rem;justify-content:center;min-height:100vh}.empty-state{color:#94a3b8;font-size:1rem;padding:3rem 1.5rem;text-align:center}.remove-btn{background:#ef444426;border:1px solid #f871714d;border-radius:6px;color:#fca5a5;cursor:pointer;font-size:.9rem;padding:.4rem .6rem;transition:all .15s ease}.remove-btn:hover{background:#ef444440;border-color:#f8717180;box-shadow:none;transform:scale(1.05)}@media (max-width:768px){.main-layout{flex-direction:column}}.library-container{box-sizing:border-box;margin:0;max-width:100%;overflow-x:hidden;padding:1.5rem 1rem;width:100%}.library-container h2{color:#f8fafc;font-size:1.75rem;margin:0}.header-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1rem;max-width:100%}.search-input-compact{background:#0f172a8c;border:1px solid #94a3b840;border-radius:6px;color:#f8fafc;font-size:.8rem;max-width:100%;padding:.4rem .6rem;width:200px}.search-input-compact:focus{border-color:#38bdf8b3;box-shadow:0 0 0 2px #38bdf840;outline:none}.search-input-compact::placeholder{color:#94a3b899}.header-controls{align-items:center;display:flex;flex-shrink:0;gap:.75rem}.toggle-ignored-btn{background:#0f172a8c;border:1px solid #94a3b840;border-radius:6px;color:#cbd5f5;cursor:pointer;font-size:.8rem;padding:.4rem .8rem;transition:all .15s ease;white-space:nowrap}.toggle-ignored-btn:hover{background:#38bdf81a;border-color:#38bdf880;color:#38bdf8}.toggle-ignored-btn.active{background:#38bdf826;border-color:#38bdf8b3;color:#38bdf8}.filter-checkbox{align-items:center;color:#cbd5f5;cursor:pointer;display:flex;flex-shrink:0;font-size:.85rem;gap:.4rem;white-space:nowrap}.filter-checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.table-container{background:#0f172ab3;border:1px solid #94a3b833;border-radius:8px;max-width:100%;overflow-x:auto;width:100%}.places-table{border-collapse:collapse;font-size:.85rem;min-width:1000px;width:100%}.places-table thead{background:#0f172ae6;position:-webkit-sticky;position:sticky;top:0;z-index:10}.places-table th{border-bottom:1px solid #94a3b833;color:#cbd5f5;font-size:.85rem;font-weight:600;padding:.5rem .4rem;text-align:left;vertical-align:top}.places-table th.sortable{cursor:pointer;transition:color .15s ease;-webkit-user-select:none;user-select:none}.places-table th.sortable:hover .header-content{color:#38bdf8}.header-content{align-items:center;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;white-space:nowrap}.filter-toggle{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:.9rem;line-height:1;padding:0;transition:color .15s ease,transform .15s ease}.filter-toggle:hover{color:#38bdf8;transform:scale(1.1)}.column-filter{background:#0f172a8c;border:1px solid #94a3b840;border-radius:6px;color:#f8fafc;font-size:.8rem;margin-top:.5rem;padding:.4rem .5rem;width:100%}.column-filter:focus{border-color:#38bdf8b3;box-shadow:0 0 0 2px #38bdf833;outline:none}.column-filter::placeholder{color:#94a3b880;font-size:.75rem}.distance-filter{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.distance-input,.distance-select{background:#0f172a8c;border:1px solid #94a3b840;border-radius:6px;color:#f8fafc;font-size:.8rem;padding:.4rem .5rem;width:100%}.distance-input:focus,.distance-select:focus{border-color:#38bdf8b3;box-shadow:0 0 0 2px #38bdf833;outline:none}.between-inputs{display:flex;gap:.5rem}.between-inputs .distance-input{flex:1 1}.places-table td{border-bottom:1px solid #94a3b81a;color:#e2e8f0;font-size:.85rem;padding:.5rem .4rem}.places-table tbody tr:hover{background:#38bdf80d}.action-buttons{align-items:center;display:flex;gap:.3rem}.favorite-btn,.ignore-btn{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:1.2rem;line-height:1;padding:0;transition:color .15s ease,transform .15s ease}.favorite-btn:hover{color:#fbbf24;transform:scale(1.15)}.favorite-btn.active{color:#fbbf24}.ignore-btn:hover{color:#ef4444;transform:scale(1.15)}.ignore-btn.active{color:#ef4444}.types-cell{max-width:200px}.address-cell,.types-cell{cursor:help;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.address-cell{max-width:150px}.phone-cell{text-align:center}.phone-icon{cursor:help;display:inline-block;font-size:1.2rem;transition:transform .15s ease}.phone-icon:hover{transform:scale(1.15)}.rating-cell{white-space:nowrap}.review-count{color:#94a3b8;font-size:.85rem}.comment-cell{max-width:300px;min-width:180px}.comment-display{border-radius:6px;color:#94a3b8;cursor:pointer;font-style:italic;padding:.5rem;transition:background .15s ease}.comment-display:hover{background:#38bdf81a;color:#cbd5f5}.comment-edit{display:flex;flex-direction:column;gap:.5rem}.comment-edit textarea{background:#0f172a8c;border:1px solid #94a3b840;border-radius:6px;color:#f8fafc;font-family:inherit;font-size:.85rem;padding:.5rem;resize:vertical;width:100%}.comment-edit textarea:focus{border-color:#38bdf8b3;outline:none}.comment-actions{display:flex;gap:.5rem}.comment-actions button{border-radius:6px;font-size:.8rem;padding:.4rem .8rem}.results-count{color:#94a3b8;font-size:.9rem;margin-top:1rem;text-align:center}.places-table a{color:#38bdf8;text-decoration:none;transition:color .15s ease}.places-table a:hover{color:#7dd3fc;text-decoration:underline}.sidebar{background:#0f172af2;border-right:1px solid #94a3b833;flex-shrink:0;height:calc(100vh - 70px);max-width:70px;min-width:70px;overflow-y:auto;padding:1rem 0;position:-webkit-sticky;position:sticky;top:70px;width:70px}.sidebar,.sidebar-nav{display:flex;flex-direction:column}.sidebar-nav{gap:.5rem;padding:0 .5rem}.nav-item{align-items:center;background:#0000;border:none;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;flex-direction:column;font-size:.7rem;font-weight:500;gap:.25rem;justify-content:center;padding:.75rem .5rem;text-align:center;transition:all .2s ease}.nav-item:hover{background:#38bdf81a;color:#cbd5f5;transform:scale(1.05)}.nav-item.active{background:#38bdf826;box-shadow:0 2px 8px #38bdf833;color:#38bdf8;font-weight:600}.nav-icon{font-size:1.5rem;line-height:1}.nav-label{font-size:.65rem;line-height:1.2;word-break:break-word}@media (max-width:768px){.sidebar{border-bottom:1px solid #94a3b833;border-right:none;height:auto;padding:1rem 0;position:static;width:100%}.sidebar-nav{flex-direction:row;overflow-x:auto}.nav-item{flex-direction:column;gap:.25rem;min-width:80px;padding:.75rem;text-align:center}.nav-label{font-size:.75rem}}
/*# sourceMappingURL=main.d7937a7e.css.map*/