.lang-switch{display:inline-flex;align-items:center;gap:2px;padding:2px;border-radius:999px;background:var(--tg-theme-secondary-bg-color, #eef0f3);border:1px solid var(--tg-theme-section-separator-color, rgba(0, 0, 0, .06))}.lang-switch__btn{min-width:30px;padding:4px 10px;font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;border:none;border-radius:999px;background:transparent;color:var(--tg-theme-subtitle-text-color, #6b7280);cursor:pointer;transition:background .16s ease,color .16s ease}.lang-switch__btn:hover{color:var(--tg-theme-text-color, #111827)}.lang-switch__btn--active{background:var(--tg-theme-bg-color, #ffffff);color:var(--tg-theme-text-color, #111827);box-shadow:0 1px 2px #0000000f}.lang-switch--menu{width:100%;justify-content:space-between}.lang-switch--menu .lang-switch__btn{flex:1;padding:6px 12px;font-size:12px}.auth-screen{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:16px;background-color:var(--tg-theme-bg-color)}.auth-container{display:flex;flex-direction:column;align-items:center;gap:24px;max-width:400px;text-align:center}.auth-icon{font-size:64px;line-height:1}.auth-title{margin:0;font-size:28px;font-weight:600;color:var(--tg-theme-text-color)}.auth-subtitle{margin:0;font-size:16px;color:var(--tg-theme-hint-color)}.error-message{background-color:#fff3cd;color:#856404;padding:16px;border-radius:4px;border:1px solid #ffc107;font-size:14px;width:100%}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%}.spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:var(--tg-theme-button-color);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-description{margin:0;font-size:16px;color:var(--tg-theme-text-color);line-height:1.5}.btn-primary{width:100%;padding:16px;font-size:16px;font-weight:500;border:none;border-radius:8px;background-color:var(--tg-theme-button-color);color:var(--tg-theme-button-text-color);cursor:pointer;transition:opacity .2s}.btn-primary:active{opacity:.85}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.auth-footer{margin:0;font-size:12px;color:var(--tg-theme-hint-color);line-height:1.5}.modal-overlay,.modal,.bottom-sheet-content{--mm-ink: var(--sp-ink, #0f172a);--mm-ink-soft: var(--sp-ink-soft, #1f2937);--mm-muted: var(--sp-muted, #475569);--mm-hint: var(--sp-hint, #94a3b8);--mm-accent: var(--sp-accent, #10b981);--mm-accent-deep: var(--sp-accent-deep, #047857);--mm-accent-bg: var(--sp-accent-bg, rgba(16, 185, 129, .12));--mm-surface: var(--sp-surface, #ffffff);--mm-surface-hover: var(--sp-surface-hover, #f6f7f9);--mm-surface-active: var(--sp-surface-active, #eef0f3);--mm-border: var(--sp-border, #e5e7eb);--mm-radius-md: var(--sp-radius-md, 14px);--mm-radius-lg: var(--sp-radius-lg, 20px);--mm-radius-pill: var(--sp-radius-pill, 999px);--mm-display: var(--sp-display, "General Sans", sans-serif);--mm-body: var(--sp-body, "Satoshi", sans-serif)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172a7a;display:flex;align-items:flex-end;justify-content:center;z-index:1000;animation:fadeIn .22s ease-out;font-family:var(--mm-body);color:var(--mm-ink)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background-color:var(--mm-surface);border-top-left-radius:24px;border-top-right-radius:24px;border-top:1px solid rgba(255,255,255,.9);width:100%;max-width:560px;max-height:88vh;overflow-y:auto;padding:22px;box-shadow:0 -14px 40px #0f172a38;position:relative;animation:slideUp .32s cubic-bezier(.32,.72,.26,1)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.btn-modal-close{position:absolute;top:14px;right:14px;width:36px;height:36px;background-color:#fff;border:1px solid rgba(15,23,42,.1);border-radius:50%;color:var(--mm-ink-soft);font-size:17px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 1px #ffffffe6,0 2px 6px #0f172a14;transition:background-color .18s ease,transform .12s ease,color .18s ease;z-index:2}.btn-modal-close:hover{color:var(--mm-ink);transform:translateY(-1px)}.btn-modal-close:active{transform:translateY(0)}.modal-loading{display:flex;justify-content:center;align-items:center;height:200px;color:var(--mm-muted);font-size:14px;font-weight:500}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:22px;padding-top:10px}.modal-header h2{margin:0;font-family:var(--mm-display);font-size:26px;font-weight:600;letter-spacing:-.02em;color:var(--mm-ink);flex:1;line-height:1.15}.badge{padding:5px 10px;border-radius:var(--mm-radius-pill);font-size:11px;font-weight:700;font-family:var(--mm-body);letter-spacing:.02em;white-space:nowrap;flex-shrink:0;border:1px solid transparent;text-transform:none}.badge-verified{background-color:var(--mm-accent-bg);color:var(--mm-accent-deep);border-color:#10b98152}.badge-unverified{background-color:#f59e0b1f;color:#b45309;border-color:#f59e0b52}.badge-outdated{background-color:#ef44441a;color:#b91c1c;border-color:#ef444452}.error-banner{background-color:#f59e0b1a;color:#92400e;padding:12px 14px;border-radius:var(--mm-radius-md);margin-bottom:16px;font-size:13px;font-weight:500;border:1px solid rgba(245,158,11,.32)}.error{color:#dc2626;padding:18px;text-align:center;font-weight:500}.modal-section{margin-bottom:24px}.modal-section h3{margin:0 0 12px;font-family:var(--mm-display);font-size:15px;font-weight:600;letter-spacing:-.01em;color:var(--mm-ink);text-transform:none}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.info-item{display:flex;flex-direction:column;gap:4px;padding:14px 16px;background-color:var(--mm-surface-hover);border:1px solid var(--mm-border);border-radius:var(--mm-radius-md)}.info-label{font-size:11px;color:var(--mm-muted);font-weight:600;text-transform:uppercase;letter-spacing:.06em}.info-value{font-family:var(--mm-display);font-size:15px;font-weight:600;letter-spacing:-.01em;color:var(--mm-ink)}.payment-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.payment-chip{padding:6px 12px;border-radius:var(--mm-radius-pill);background-color:#fff;color:var(--mm-ink-soft);font-size:12px;font-weight:600;white-space:nowrap;border:1px solid var(--mm-border);box-shadow:0 1px 2px #0f172a0a}.menu-list{display:flex;flex-direction:column;gap:6px}.menu-item{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background-color:var(--mm-surface-hover);border:1px solid var(--mm-border);border-radius:var(--mm-radius-md);gap:10px}.menu-name{flex:1;font-size:14px;color:var(--mm-ink);font-weight:500}.menu-price{font-family:var(--mm-body);font-size:14px;color:var(--mm-accent-deep);font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}.menu-more{padding:10px 14px;color:var(--mm-hint);font-size:12px;text-align:center;font-weight:500}.vote-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.vote-stat{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 6px;background-color:var(--mm-surface-hover);border:1px solid var(--mm-border);border-radius:var(--mm-radius-md)}.stat-count{font-family:var(--mm-display);font-size:24px;font-weight:700;letter-spacing:-.02em;color:var(--mm-ink);font-variant-numeric:tabular-nums}.stat-label{font-size:11px;color:var(--mm-muted);text-align:center;line-height:1.2;font-weight:500}.vote-buttons{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.vote-btn{padding:12px 8px;border:1px solid var(--mm-border);border-radius:var(--mm-radius-md);background-color:#fff;color:var(--mm-ink);font-size:12.5px;font-weight:600;font-family:var(--mm-body);cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .12s ease;white-space:nowrap;box-shadow:0 1px 2px #0f172a0a}.vote-btn:hover{transform:translateY(-1px);border-color:#0f172a33}.vote-btn:active{transform:translateY(0)}.vote-confirm.active{border-color:#10b98166;background-color:var(--mm-accent-bg);color:var(--mm-accent-deep)}.vote-dispute.active{border-color:#f59e0b66;background-color:#f59e0b1f;color:#b45309}.vote-close.active{border-color:#64748b66;background-color:#64748b1a;color:#334155}.vote-btn:disabled{opacity:.5;cursor:not-allowed}.modal-header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.fav-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:var(--mm-radius-pill);border:1px solid rgba(15,23,42,.1);background-color:#fff;color:var(--mm-muted);cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .12s ease;box-shadow:0 1px 2px #0f172a0a}.fav-btn:hover{border-color:#ef44446b;color:#dc2626;transform:translateY(-1px)}.fav-btn:active{transform:translateY(0)}.fav-btn:disabled{cursor:wait;opacity:.6}.fav-btn--active{background-color:#ef44441a;border-color:#ef44446b;color:#dc2626}.fav-btn__count{font-variant-numeric:tabular-nums}.price-percentile{display:flex;align-items:center;gap:10px;margin-bottom:18px;padding:12px 14px;border-radius:var(--mm-radius-md);background:linear-gradient(90deg,#10b98124,#10b9810a 80%);border:1px solid rgba(16,185,129,.32);color:var(--mm-accent-deep);font-size:13px;font-weight:500}.price-percentile strong{font-family:var(--mm-display);font-weight:700;font-size:14px;color:var(--mm-accent-deep)}.price-percentile__icon{font-size:18px;line-height:1}.vote-reason{padding:16px;border-radius:var(--mm-radius-md);background-color:#f59e0b0f;border:1px solid rgba(245,158,11,.28);display:flex;flex-direction:column;gap:12px;animation:vote-reason-in .22s cubic-bezier(.32,.72,.26,1)}@keyframes vote-reason-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.vote-reason__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.vote-reason__title{font-family:var(--mm-display);font-size:14px;font-weight:700;letter-spacing:-.01em;color:#92400e}.vote-reason__cancel{width:26px;height:26px;border-radius:50%;border:1px solid rgba(146,64,14,.26);background-color:#fff;color:#92400e;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color .16s ease,transform .12s ease}.vote-reason__cancel:hover{background-color:#f59e0b24;transform:rotate(90deg)}.vote-reason__chips{display:flex;flex-wrap:wrap;gap:6px}.vote-reason__chip{padding:6px 12px;border-radius:var(--mm-radius-pill);border:1px solid rgba(146,64,14,.28);background-color:#fff;color:#92400e;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background-color .16s ease,border-color .16s ease,transform .1s ease}.vote-reason__chip:hover{background-color:#f59e0b24}.vote-reason__chip:active{transform:scale(.97)}.vote-reason__chip--active{background-color:#92400e;color:#fff;border-color:#92400e}.vote-reason__input{width:100%;padding:10px 12px;border:1px solid rgba(146,64,14,.28);border-radius:var(--mm-radius-md);background-color:#fff;color:var(--mm-ink);font-family:inherit;font-size:13px;font-weight:500;line-height:1.45;resize:vertical;min-height:48px;outline:none;transition:border-color .16s ease,box-shadow .16s ease}.vote-reason__input:focus{border-color:#b45309;box-shadow:0 0 0 3px #f59e0b2e}.vote-reason__footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.vote-reason__counter{font-size:11px;font-weight:600;color:#b45309;font-variant-numeric:tabular-nums}.vote-reason__submit{padding:10px 18px;border-radius:var(--mm-radius-pill);border:none;background-color:#92400e;color:#fff;font-family:var(--mm-display);font-size:12.5px;font-weight:700;letter-spacing:-.01em;cursor:pointer;transition:background-color .16s ease,transform .12s ease}.vote-reason__submit:hover{background-color:#78350f;transform:translateY(-1px)}.vote-reason__submit:active{transform:translateY(0)}.vote-reason__submit:disabled{opacity:.55;cursor:not-allowed;transform:none}.comments-section h3{display:flex;align-items:center;gap:10px}.comments-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 8px;border-radius:var(--mm-radius-pill);background-color:var(--mm-surface-hover);font-size:11px;font-weight:700;color:var(--mm-muted);font-variant-numeric:tabular-nums}.comment-form{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.comment-input{width:100%;padding:12px 14px;border:1px solid var(--mm-border);border-radius:var(--mm-radius-md);background-color:var(--mm-surface);color:var(--mm-ink);font-family:inherit;font-size:13.5px;font-weight:500;line-height:1.5;resize:vertical;min-height:54px;outline:none;transition:border-color .16s ease,box-shadow .16s ease}.comment-input::placeholder{color:var(--mm-hint)}.comment-input:focus{border-color:var(--mm-accent);box-shadow:0 0 0 3px #10b9812e}.comment-input:disabled{background-color:var(--mm-surface-hover);cursor:wait}.comment-form-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.comment-counter{font-size:11px;font-weight:600;color:var(--mm-muted);font-variant-numeric:tabular-nums}.comment-submit{padding:9px 18px;border:none;border-radius:var(--mm-radius-pill);background-color:var(--mm-ink);color:#fff;font-family:var(--mm-display);font-size:12.5px;font-weight:700;letter-spacing:-.01em;cursor:pointer;transition:background-color .16s ease,transform .12s ease}.comment-submit:hover{background-color:#1e293b;transform:translateY(-1px)}.comment-submit:active{transform:translateY(0)}.comment-submit:disabled{cursor:not-allowed;opacity:.5;transform:none}.comment-error{font-size:12px;font-weight:500;color:#b91c1c;padding:8px 12px;border-radius:var(--mm-radius-md);background-color:#ef444414;border:1px solid rgba(239,68,68,.22)}.comment-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.comment-item{padding:12px 14px;border-radius:var(--mm-radius-md);background-color:var(--mm-surface-hover);border:1px solid var(--mm-border)}.comment-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:4px}.comment-author{font-family:var(--mm-display);font-size:12.5px;font-weight:700;color:var(--mm-ink);letter-spacing:-.005em}.comment-time{font-size:11px;color:var(--mm-muted-soft);font-weight:500;white-space:nowrap}.comment-body{margin:0;font-size:13px;color:var(--mm-ink-soft);line-height:1.45;word-wrap:break-word}.comment-empty{margin:4px 0 0;padding:14px;text-align:center;font-size:12.5px;color:var(--mm-muted);font-style:italic}.guest-cta{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:var(--mm-radius-md);background-color:var(--mm-surface-hover);border:1px solid var(--mm-border);color:var(--mm-ink);text-decoration:none;transition:background-color .18s ease,border-color .18s ease,transform .14s ease}.guest-cta:hover{background-color:#fff;border-color:#0f172a2e;transform:translateY(-1px)}.guest-cta__icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--mm-radius-md);background-color:var(--mm-accent-bg);font-size:20px;line-height:1}.guest-cta__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.guest-cta__title{font-family:var(--mm-display);font-size:14px;font-weight:700;letter-spacing:-.01em;color:var(--mm-ink)}.guest-cta__sub{font-size:12px;color:var(--mm-muted);font-weight:500}.guest-cta__arrow{flex-shrink:0;font-size:20px;color:var(--mm-accent-deep);font-weight:700;transition:transform .18s ease}.guest-cta:hover .guest-cta__arrow{transform:translate(3px)}.btn-action--cta{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:var(--mm-ink)}.btn-action--cta:hover{color:var(--mm-ink)}.modal-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:20px 0;padding:20px 0;border-top:1px solid var(--mm-border);border-bottom:1px solid var(--mm-border)}.btn-action{padding:14px 10px;background-color:var(--mm-surface-hover);color:var(--mm-ink);border:1px solid var(--mm-border);border-radius:var(--mm-radius-md);font-size:12.5px;font-weight:600;font-family:var(--mm-body);cursor:pointer;transition:background-color .18s ease,transform .12s ease,border-color .18s ease}.btn-action:hover{background-color:#fff;border-color:#0f172a2e;transform:translateY(-1px)}.btn-action:active{transform:translateY(0)}.btn-close-modal{width:100%;padding:14px;background-color:var(--mm-ink);color:#fff;border:none;border-radius:var(--mm-radius-md);font-size:14px;font-weight:600;font-family:var(--mm-display);letter-spacing:-.01em;cursor:pointer;box-shadow:var(--sp-shadow-2, 0 6px 16px -4px rgba(15, 23, 42, .14));transition:background-color .18s ease,transform .12s ease}.btn-close-modal:hover{background-color:#1e293b;transform:translateY(-1px)}.btn-close-modal:active{transform:translateY(0)}.btn-close{width:100%;padding:12px;background-color:var(--mm-ink);color:#fff;border:none;border-radius:var(--mm-radius-md);font-family:var(--mm-display);font-weight:600;cursor:pointer}.modal::-webkit-scrollbar{width:6px}.modal::-webkit-scrollbar-track{background:transparent}.modal::-webkit-scrollbar-thumb{background:#0f172a24;border-radius:var(--mm-radius-pill)}.modal::-webkit-scrollbar-thumb:hover{background:#0f172a47}@media (max-width: 480px){.modal{max-height:92vh;max-width:100%;padding:18px}.info-grid,.modal-actions,.vote-buttons{grid-template-columns:1fr}}.receipt-modal{max-height:95vh}.modal-title{margin:0 0 16px;font-size:22px;font-weight:600;color:var(--tg-theme-text-color)}.upload-area{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px;border:2px dashed #ccc;border-radius:12px;background-color:var(--tg-theme-secondary-bg-color)}.upload-button{display:flex;flex-direction:column;align-items:center;gap:8px;background:none;border:none;cursor:pointer;width:100%}.upload-icon{font-size:48px;line-height:1}.upload-text{font-size:16px;font-weight:500;color:var(--tg-theme-text-color)}.upload-button small{font-size:12px;color:var(--tg-theme-hint-color)}.upload-hint{margin:0;font-size:13px;color:var(--tg-theme-hint-color);text-align:center;line-height:1.5}.preview-section{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.preview-image{max-width:100%;max-height:300px;border-radius:8px;background-color:var(--tg-theme-secondary-bg-color)}.file-info{padding:12px;background-color:var(--tg-theme-secondary-bg-color);border-radius:8px}.file-name{margin:0 0 4px;font-size:14px;font-weight:500;color:var(--tg-theme-text-color);word-break:break-all}.file-size{margin:0;font-size:12px;color:var(--tg-theme-hint-color)}.receipt-type-section{margin-bottom:16px}.receipt-type-section label{display:block;margin-bottom:8px;font-size:13px;font-weight:500;color:var(--tg-theme-text-color)}.receipt-type-options{display:flex;flex-direction:column;gap:8px}.radio-label{display:flex;align-items:center;gap:8px;padding:10px 12px;background-color:var(--tg-theme-secondary-bg-color);border-radius:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.radio-label input[type=radio]{cursor:pointer;width:16px;height:16px}.radio-label span{font-size:14px;color:var(--tg-theme-text-color)}.progress-section{margin-bottom:16px}.progress-bar{width:100%;height:8px;background-color:#e0e0e0;border-radius:4px;overflow:hidden;margin-bottom:8px}.progress-fill{height:100%;background:linear-gradient(90deg,var(--tg-theme-button-color),#28a745);transition:width .3s ease}.progress-text{margin:0;font-size:13px;color:var(--tg-theme-hint-color);text-align:center}.button-group{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}.btn-cancel{padding:12px;background-color:var(--tg-theme-secondary-bg-color);color:var(--tg-theme-text-color);border:1px solid #e0e0e0;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s}.btn-cancel:active:not(:disabled){opacity:.7}.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-upload{padding:12px;background-color:var(--tg-theme-button-color);color:var(--tg-theme-button-text-color);border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .2s}.btn-upload:active:not(:disabled){opacity:.85}.btn-upload:disabled{opacity:.5;cursor:not-allowed}.upload-footer{margin:0;font-size:12px;color:var(--tg-theme-hint-color);text-align:center;line-height:1.5}.error-banner{background-color:#fff3cd;color:#856404;padding:12px;border-radius:4px;margin-bottom:16px;font-size:13px;border:1px solid #ffc107}@media (max-width: 480px){.upload-area{padding:16px}.preview-image{max-height:250px}.button-group{grid-template-columns:1fr}}.list-view{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden}.list-header{display:flex;gap:8px;padding:12px;background-color:var(--tg-theme-secondary-bg-color);border-bottom:1px solid #e0e0e0;flex-shrink:0}.search-input{flex:1;padding:8px 12px;border:1px solid #e0e0e0;border-radius:4px;font-size:14px;background-color:var(--tg-theme-bg-color);color:var(--tg-theme-text-color)}.search-input::placeholder{color:var(--tg-theme-hint-color)}.search-input:focus{outline:2px solid var(--tg-theme-button-color);outline-offset:-1px}.btn-search{padding:8px 12px;background-color:var(--tg-theme-button-color);border:none;border-radius:4px;cursor:pointer;font-size:16px;transition:opacity .2s}.btn-search:active{opacity:.8}.district-selector{padding:12px;background-color:var(--tg-theme-section-bg-color);border-bottom:1px solid #e0e0e0;display:flex;flex-direction:column;gap:8px;flex-shrink:0}.district-selector p{margin:0;font-size:13px;color:var(--tg-theme-text-color)}.district-selector select{padding:8px 12px;border:1px solid #e0e0e0;border-radius:4px;font-size:14px;background-color:var(--tg-theme-bg-color);color:var(--tg-theme-text-color)}.btn-location{padding:8px 12px;background-color:var(--tg-theme-button-color);color:var(--tg-theme-button-text-color);border:none;border-radius:4px;font-size:14px;cursor:pointer;transition:opacity .2s}.btn-location:active{opacity:.8}.list-content{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:0}.loading{display:flex;justify-content:center;align-items:center;height:100%;color:var(--tg-theme-hint-color);font-size:14px}.empty-state{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;gap:8px;color:var(--tg-theme-hint-color);text-align:center;padding:32px}.empty-state p{margin:0;font-size:16px}.empty-state small{font-size:13px}.place-item{display:flex;align-items:center;justify-content:space-between;padding:12px;border-bottom:1px solid #e0e0e0;gap:8px;background-color:var(--tg-theme-bg-color)}.place-item:active{background-color:var(--tg-theme-secondary-bg-color)}.place-info{flex:1;min-width:0}.place-name{margin:0 0 4px;font-size:16px;font-weight:500;color:var(--tg-theme-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.place-type{margin:0 0 2px;font-size:13px;color:var(--tg-theme-hint-color)}.place-price{margin:0;font-size:13px;color:var(--tg-theme-accent-text-color);font-weight:500}.place-badge{flex-shrink:0;padding:4px 8px;background-color:var(--tg-theme-secondary-bg-color);color:var(--tg-theme-text-color);border-radius:4px;font-size:12px;white-space:nowrap}.btn-details{flex-shrink:0;padding:6px 10px;background-color:var(--tg-theme-button-color);color:var(--tg-theme-button-text-color);border:none;border-radius:4px;font-size:13px;cursor:pointer;transition:opacity .2s}.btn-details:active{opacity:.8}.list-footer{padding:16px;border-top:1px solid #e0e0e0;background-color:var(--tg-theme-secondary-bg-color);display:flex;flex-direction:column;gap:8px;flex-shrink:0}.list-footer p{margin:0;font-size:13px;color:var(--tg-theme-hint-color);text-align:center}.btn-download{padding:12px;background-color:var(--tg-theme-button-color);color:var(--tg-theme-button-text-color);border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s}.btn-download:active{opacity:.8}.list-content::-webkit-scrollbar{width:6px}.list-content::-webkit-scrollbar-track{background:transparent}.list-content::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}:is():hover{background:#999}.add-place-banner{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#f8fff9;border-top:1px solid #d4edda;border-bottom:1px solid #d4edda;margin-top:auto}.add-place-icon{font-size:24px;flex-shrink:0}.add-place-text{flex:1;display:flex;flex-direction:column;gap:2px}.add-place-text strong{font-size:14px;color:#212121}.add-place-text small{font-size:12px;color:#666}.btn-open-app{flex-shrink:0;padding:8px 14px;background:#28a745;color:#fff;border-radius:8px;font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}.container{display:flex;flex-direction:column;width:100%;height:100vh;max-width:100%;overflow:hidden}.loading{display:flex;justify-content:center;align-items:center;width:100%;height:100%;font-size:16px;color:var(--tg-theme-hint-color)}.error{background-color:#fff3cd;color:#856404;padding:12px 16px;border-left:4px solid #ffc107;font-size:14px;z-index:100}.header{display:flex;gap:8px;padding:12px 16px;border-bottom:1px solid #e0e0e0;align-items:center;background-color:var(--tg-theme-secondary-bg-color);flex-wrap:wrap}.search-input{flex:1;min-width:200px}.tab-buttons{display:flex;gap:8px}.tab-button{padding:8px 12px;border:1px solid #e0e0e0;border-radius:4px;background-color:var(--tg-theme-secondary-bg-color);color:var(--tg-theme-text-color);cursor:pointer;font-size:13px;transition:all .2s}.tab-button.active{background-color:var(--tg-theme-button-color);color:var(--tg-theme-button-text-color);border-color:var(--tg-theme-button-color)}.tab-button:active{opacity:.8}.content{flex:1;overflow:auto;display:flex;flex-direction:column}.footer{padding:16px;border-top:1px solid #e0e0e0;text-align:center;font-size:12px;color:var(--tg-theme-hint-color);background-color:var(--tg-theme-secondary-bg-color)}@media (max-width: 480px){.header{padding:8px 12px}.tab-button{padding:6px 10px;font-size:12px}.content{font-size:14px}}:root{--tg-theme-bg-color: #ffffff;--tg-theme-text-color: #000000;--tg-theme-hint-color: #999999;--tg-theme-link-color: #0088cc;--tg-theme-button-color: #31a24c;--tg-theme-button-text-color: #ffffff;--tg-theme-secondary-bg-color: #f0f0f0;--tg-theme-accent-text-color: #0088cc;--tg-theme-section-bg-color: #ffffff;--tg-theme-section-header-text-color: #999999;--tg-theme-subtitle-text-color: #999999;--tg-theme-destructive-text-color: #ff3b30;color-scheme:light dark}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--tg-theme-bg-color);color:var(--tg-theme-text-color);line-height:1.5}a{color:var(--tg-theme-link-color);text-decoration:none}a:active{opacity:.7}button{font-family:inherit;cursor:pointer;background-color:var(--tg-theme-button-color);color:var(--tg-theme-button-text-color);border:none;border-radius:4px;padding:12px 16px;font-size:16px;font-weight:500;transition:opacity .2s}button:active{opacity:.85}button:disabled{opacity:.5;cursor:not-allowed}input,textarea,select{font-family:inherit;background-color:var(--tg-theme-secondary-bg-color);color:var(--tg-theme-text-color);border:1px solid #e0e0e0;border-radius:4px;padding:12px;font-size:16px}input::placeholder,textarea::placeholder,select::placeholder{color:var(--tg-theme-hint-color)}input:focus,textarea:focus,select:focus{outline:2px solid var(--tg-theme-button-color);outline-offset:-1px}.container{display:flex;flex-direction:column;width:100%;height:100%;max-width:100%;overflow:hidden}.content{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px}.loading{display:flex;justify-content:center;align-items:center;width:100%;height:100%;font-size:14px;color:var(--tg-theme-hint-color)}.error{background-color:#fff3cd;color:#856404;padding:16px;border-radius:4px;margin-bottom:16px;border:1px solid #ffc107}.success{background-color:#d4edda;color:#155724;padding:16px;border-radius:4px;margin-bottom:16px;border:1px solid #28a745}
