#campaign .home-upgrade{margin:14px 0;padding:14px;border:1px solid #6f795733;border-radius:13px;background:#dfd6b54d}
#campaign .home-upgrade h3{margin:0;font-size:16px}
#campaign .home-status{position:absolute;top:calc(var(--safe-top) + 94px);left:16px;display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:11px;background:#f1e2bef0;color:#345445;font-size:12px;pointer-events:auto}
#campaign .home-status .help-button{width:32px;height:32px;min-height:32px}
#campaign .street-shop-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}
#campaign .street-shop-tabs button{flex:1;min-height:44px;padding:9px;font-size:12px}
#campaign .shop-heading-row,.house-price{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;color:#48644d}
#campaign .house-price{align-items:flex-start;flex-direction:column}
#campaign .house-price b{font:700 28px Georgia}
#campaign .house-art{position:relative;height:115px;display:flex;gap:12px;align-items:center;justify-content:center;margin:0 0 20px;background:#a6b199;border-radius:15px 15px 3px 3px;border-top:12px solid #637469}
#campaign .house-art i{width:18%;height:58%;background:#a5c3b4;border:4px solid #ebe0bb}
#campaign .house-loft{background:#b1846b;border-color:#566359}.house-loft i{border-color:#515d54!important}
#campaign .house-penthouse{background:#d6cfb6;border-color:#eee6d2}.house-penthouse i{height:90%!important;width:22%!important}
#campaign .barber-preview{position:relative;height:180px;background:#d5d2b8;border-radius:15px;margin:12px 0}
#campaign .barber-preview #wardrobe-preview{width:100%;height:100%}
#campaign .barber-preview .preview-turn{position:absolute;bottom:8px;right:8px;width:auto;min-width:72px;padding:8px 12px;min-height:36px}
#campaign .modal[data-neighborhood="shop"],#campaign .modal[data-neighborhood="barber"]{width:min(520px,calc(100vw - 28px))}
#campaign .home-status[hidden]{display:none}
#campaign .street-location{color:#829d83;font-size:12px;margin:6px 0}
#campaign .park-header>div:first-child{min-width:0;flex:1}
#campaign .park-utilities{flex-shrink:0}
#campaign .park-header h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
@media(max-width:650px){#campaign .park-header h2{font-size:20px}}
@media(max-height:520px){#campaign .home-status{top:calc(var(--safe-top) + 80px);font-size:11px;padding:3px 8px}#campaign .barber-preview{height:140px}}
/* The apartment offer has two clear, independent requirements. */
#campaign .home-goal{display:flex;gap:10px;margin:14px 0}
#campaign .home-goal>span{flex:1;display:flex;flex-direction:column;gap:5px;background:#e9dfc5;padding:12px;border-radius:10px;color:#345849;font-size:12px}
#campaign .home-goal b{font-size:20px}
#campaign .home-chapter>p{padding:0 14px;font-size:13px;line-height:1.45}
#campaign .home-chapter .home-goal{margin:12px 14px}
#campaign .cleanup-gift span{display:block;font-size:12px;margin-top:5px}

#campaign .repair-stock{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#campaign .repair-stock .home-upgrade{margin:0;padding:12px;display:flex;flex-direction:column;gap:10px}
#campaign .repair-stock button{margin-top:auto}
@media(max-width:360px){#campaign .repair-stock{grid-template-columns:1fr}}
