#tripPlannerOverlay .overlay-content{max-width:1180px;width:calc(100% - 32px);background:var(--bg-card);border-radius:24px}
#tripPlannerOverlay .overlay-subtitle{max-width:720px;line-height:1.8}
#tripMessage{padding:12px 16px;border-radius:12px;background:var(--hover-bg);color:var(--text-secondary);font-size:13px;line-height:1.8}
#tripPlannerOverlay button{font-family:inherit;cursor:pointer;border:1px solid var(--border-color);border-radius:10px;padding:9px 14px;background:var(--bg-card);color:var(--text-primary);min-height:40px}
#tripPlannerOverlay button:hover{border-color:var(--teal);background:var(--hover-bg)}
#tripPlannerOverlay button:focus-visible,#tripPlannerOverlay input:focus-visible,#tripPlannerOverlay textarea:focus-visible,#tripPlannerOverlay select:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
#tripPlannerOverlay .tp-primary,#tripPlannerOverlay .btn-create-trip{background:var(--teal);color:white;border-color:var(--teal)}
#tripPlannerOverlay button:disabled{opacity:.45;cursor:not-allowed}
#tripPlannerOverlay input,#tripPlannerOverlay textarea,#tripPlannerOverlay select{box-sizing:border-box;width:100%;min-height:42px;border:1px solid var(--border-color);border-radius:9px;background:var(--bg-card);color:var(--text-primary);padding:9px 10px;font-family:inherit}
#tripPlannerOverlay label{display:block;font-size:12px;color:var(--text-secondary);line-height:1.8}
.tp-save-actions,.tp-day-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.tp-settings{border:1px solid var(--border-color);border-radius:16px;padding:16px}.tp-settings summary,.tp-add-place summary{cursor:pointer;font-weight:700;padding:5px 0;color:var(--text-primary)}
.tp-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}.tp-expenses{grid-template-columns:repeat(4,minmax(0,1fr))}.tp-hint{font-size:12px;line-height:1.9;color:var(--text-secondary);margin:10px 0}
.tp-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}.tp-metric{border:1px solid var(--border-color);border-radius:14px;padding:16px;background:var(--hover-bg)}.tp-metric strong{display:block;font-size:20px;margin-top:6px;color:var(--teal)}.tp-metric span{font-size:12px;color:var(--text-secondary)}
.tp-main-grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:24px}.tp-section-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.tp-section-head h3,.tp-preparation h3{font-size:18px;color:var(--text-primary)}.tp-day-tabs{display:flex;gap:7px;overflow-x:auto;padding:10px 2px}.tp-day-tabs button{white-space:nowrap}.tp-day-tabs button[aria-pressed=true]{background:var(--teal)!important;color:white!important}
.tp-add-place{padding:14px;border-radius:14px;background:var(--hover-bg);margin:10px 0}.tp-search-row{display:flex;gap:8px}.tp-search-row input{flex:1;min-width:0}.tp-custom{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:10px}.tp-result{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border-color);font-size:13px}
#tripItemsList .trip-item{display:block;border:1px solid var(--border-color);border-radius:16px;padding:18px;margin:12px 0;background:var(--bg-card)}.tp-stop-title{display:flex;align-items:center;gap:10px;font-size:16px}.tp-stop-title b{display:grid;place-items:center;border-radius:50%;background:var(--teal);color:white;width:28px;height:28px;font-size:12px}.tp-stop-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.tp-stop-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.tp-stop-actions a{padding:9px;font-size:12px;color:var(--teal)}
.tp-preparation{background:var(--hover-bg);border-radius:16px;padding:18px;align-self:start}.tp-preparation label{display:flex!important;gap:10px;align-items:center;margin:14px 0}.tp-preparation input{width:18px!important;min-height:18px!important;accent-color:var(--teal)}
.trip-card{display:flex;align-items:center;justify-content:space-between;padding:16px;border:1px solid var(--border-color);border-radius:14px;gap:12px;margin:10px 0}.trip-card button:first-child{flex:1;text-align:start;font-weight:700}.trip-card button:last-child{color:#c0392b!important}
@media(max-width:760px){#tripPlannerOverlay .overlay-content{width:calc(100% - 16px);padding:20px 14px}.tp-main-grid{grid-template-columns:1fr}.tp-form-grid,.tp-expenses,.tp-summary,.tp-stop-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.tp-metric{padding:12px}.tp-metric strong{font-size:17px}.tp-save-actions button{flex:1}.tp-preparation{margin-top:8px}}
#tpSearchResults{display:grid;gap:6px;max-height:240px;overflow:auto;margin-top:8px}#tpSearchResults:empty{margin:0}#tpSearchResults button{text-align:start;width:100%;font-size:13px}.tp-stop-fields label:last-child{grid-column:1/-1}
@media(max-width:760px){.tp-save-actions button:first-child{flex-basis:100%}.tp-save-actions button{flex-basis:40%}.tp-stop-fields label{min-width:0}.tp-stop-fields input{max-width:100%}}
.tp-generator{margin:16px 0 24px;border-color:var(--teal)}.tp-preview-day{padding:14px;border:1px solid var(--border-color);border-radius:12px;margin:10px 0}.tp-preview-day li{padding:5px 0}.tp-preview-day a{color:var(--teal)}

#tripPlannerOverlay [hidden]{display:none!important}.tp-member{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--border-color)}.tp-member span{flex:1;overflow-wrap:anywhere;min-width:160px}#tpMembersPanel{margin:14px 0}.tp-main-grid:has(.tp-preparation[hidden]){grid-template-columns:1fr}
.trip-dialog{margin:auto;border:1px solid var(--border-color);border-radius:24px;padding:28px;max-width:460px;width:calc(100% - 32px);box-sizing:border-box;background:var(--bg-card);color:var(--text-primary);box-shadow:0 24px 80px #0003;font-family:inherit}.trip-dialog::backdrop{background:#071e2b88;backdrop-filter:blur(5px)}.trip-dialog h2{font-size:23px;margin:14px 0}.trip-dialog p{color:var(--text-secondary);line-height:1.9;font-size:15px}.trip-dialog-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:#ef95421a;color:#b95e14;font-size:28px}.trip-dialog-actions{display:flex;gap:10px;margin-top:24px}.trip-dialog button{font:inherit;padding:12px 16px;border-radius:12px;cursor:pointer;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);min-height:44px}.trip-dialog .trip-danger{background:#ae3931!important;color:white!important;border-color:#ae3931!important}.trip-dialog button:focus-visible{outline:3px solid var(--teal);outline-offset:3px}

#tripPlannerOverlay .trip-card .trip-restore{color:var(--teal)!important}
