/* Końcowe ustawienia ulubionych — ładowane po stylach bazowych. */
.favorites-section { margin:0 0 1rem!important; padding:0!important; border:0!important; outline:0!important; box-shadow:none!important; background:transparent!important; }
.favorites-section::before,.favorites-section::after { display:none!important; }
.city-suggestions { margin:0!important; list-style:none!important; }
.city-suggestions.hidden { display:none!important; }
.favorites-heading { display:block!important; margin:0 0 .5rem!important; padding:0!important; border:0!important; border-radius:0!important; background:transparent!important; color:#aaa!important; font-size:.7rem!important; font-weight:800!important; letter-spacing:.09em!important; text-transform:uppercase; }
.favorites-heading:hover,.favorites-heading[aria-pressed="true"] { color:#ffe066!important; }
.favorites { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:.75rem!important; overflow:visible!important; padding:0!important; }
.favorite-chip { display:grid!important; grid-template-columns:minmax(0,1fr)!important; align-items:center!important; width:100%!important; min-width:0!important; min-height:3.75rem!important; padding:.38rem .55rem!important; cursor:pointer!important; }
.favorite-chip .choose { display:flex!important; width:100%!important; min-width:0!important; max-width:none!important; overflow:hidden!important; align-items:center!important; justify-content:flex-start!important; text-align:left!important; }
.favorite-chip .choose > span:not(.favorite-kind-badge):not(.favorite-conditions) { min-width:0!important; flex:1 1 auto!important; overflow:hidden!important; text-align:left!important; text-overflow:ellipsis!important; white-space:nowrap!important; }
.favorite-chip .favorite-conditions { display:inline!important; flex:0 0 auto!important; margin-left:auto!important; color:#aaa!important; text-align:right!important; white-space:nowrap!important; }
.favorite-kind-badge { display:grid!important; flex:0 0 auto!important; place-items:center!important; width:1.12rem!important; height:1.12rem!important; margin-right:.4rem!important; color:#ffe066!important; }
.favorite-kind-badge svg,.kind svg { width:1.05rem!important; height:1.05rem!important; }
.favorites.editing .favorite-chip { grid-template-columns:auto minmax(0,1fr) auto auto auto!important; gap:.25rem!important; cursor:grab!important; }
.favorites.editing .favorite-conditions { display:none!important; }
.favorites.editing .favorite-drag { color:#aaa; cursor:grab; user-select:none; }
.favorite-chip .kind,.favorite-chip .edit,.favorite-chip .remove { display:grid!important; place-items:center!important; width:1.75rem!important; min-height:2.5rem!important; padding:.2rem!important; border:0!important; background:transparent!important; color:#aaa!important; }
.favorite-chip .edit,.favorite-chip .remove { font-size:1.15rem!important; }
.favorite-chip .kind:hover,.favorite-chip .edit:hover,.favorite-chip .remove:hover { color:#ffe066!important; }
.kind-picker { position:relative; }
.kind-menu { position:absolute; z-index:20; right:0; bottom:calc(100% + .35rem); display:grid; grid-template-columns:repeat(4,2.2rem); gap:.2rem; padding:.3rem; border:1px solid #3b3b3b; border-radius:.6rem; background:#151515; box-shadow:0 .7rem 1.5rem #0008; }
.kind-menu[hidden] { display:none!important; }
.kind-menu button { display:grid; place-items:center; width:2.2rem; min-height:2.2rem; padding:0; border:0; border-radius:.4rem; background:transparent; color:#ddd; }
.kind-menu button:hover { background:#303030; color:#ffe066; }
@media(max-width:620px){.favorites { grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:.45rem!important; }.favorite-chip { padding:.32rem!important; }.favorites.editing .favorite-chip { gap:.14rem!important; }.favorite-chip .favorite-drag { display:none!important; }.favorite-chip .kind,.favorite-chip .edit,.favorite-chip .remove { width:1.38rem!important; }.favorite-chip .choose { font-size:.86rem!important; }.favorite-chip .favorite-conditions { margin-left:.25rem!important; font-size:.78rem!important; }}
