:root{--pwa-safe-bottom:env(safe-area-inset-bottom,0px)}html{scroll-padding-top:76px}body{overscroll-behavior-y:none}.main:focus{outline:none}.pwa-enter{animation:pwa-enter .16s ease-out}@keyframes pwa-enter{from{opacity:.6;transform:translateY(3px)}to{opacity:1;transform:none}}#pwa-progress{position:fixed;z-index:100;left:0;top:0;height:3px;width:100%;background:linear-gradient(90deg,transparent,#c91922,transparent);background-size:40% 100%;background-repeat:no-repeat;animation:pwa-progress 1s linear infinite;pointer-events:none}@keyframes pwa-progress{from{background-position:-70% 0}to{background-position:170% 0}}#pwa-network{position:fixed;top:0;left:0;right:0;text-align:center;background:#fff3d7;color:#77520b;font-size:calc(11px * var(--delhi45-text-scale,1));padding:4px 8px;z-index:99}.pwa-launcher{position:fixed;right:12px;bottom:calc(76px + var(--pwa-safe-bottom));z-index:24;display:flex;align-items:center;background:#fff;border:1px solid #eadfe1;border-radius:22px;box-shadow:0 3px 16px #14182114;overflow:hidden}.pwa-launcher button{border:0;background:none;min-height:36px;padding:8px 12px;font-size:calc(12px * var(--delhi45-text-scale,1));color:#b91c27;font-weight:600}.pwa-launcher #pwa-dismiss{font-size:calc(20px * var(--delhi45-text-scale,1));color:#68717a;padding:4px 10px}.pwa-launcher[hidden],.pwa-update[hidden]{display:none}#pwa-install-dialog{border:1px solid #e1e4e8;border-radius:14px;max-width:min(430px,calc(100vw - 28px));padding:22px;color:#20252b}#pwa-install-dialog::backdrop{background:#17203260}#pwa-install-dialog h2{font-size:calc(19px * var(--delhi45-text-scale,1));margin-bottom:12px}#pwa-install-dialog p{font-size:calc(14px * var(--delhi45-text-scale,1));line-height:1.7;margin-bottom:16px}#pwa-install-dialog>a{display:block;font-size:calc(12px * var(--delhi45-text-scale,1));margin-top:12px;color:#b91c27}.pwa-update{position:fixed;z-index:35;left:50%;transform:translateX(-50%);bottom:calc(76px + var(--pwa-safe-bottom));background:#20252b;color:#fff;border-radius:10px;padding:10px 12px;box-shadow:0 4px 20px #1113;display:flex;align-items:center;gap:12px;font-size:calc(12px * var(--delhi45-text-scale,1));max-width:calc(100vw - 24px)}.pwa-update button{border:0;background:#fff;color:#b91c27;border-radius:6px;padding:7px 12px;font-weight:600}.pwa-guide{background:#fff;border:1px solid #e1e4e8;border-radius:12px;max-width:680px;padding:24px}.pwa-guide>img{border-radius:12px}.pwa-guide h2{font-size:calc(21px * var(--delhi45-text-scale,1));margin:12px 0}.pwa-guide h3{font-size:calc(16px * var(--delhi45-text-scale,1));margin:22px 0 7px}.pwa-guide p{font-size:calc(14px * var(--delhi45-text-scale,1));line-height:1.7}.pwa-guide>a{display:inline-block;margin-top:20px;color:#c91922}.bottom-nav{padding-bottom:var(--pwa-safe-bottom)}@supports(content-visibility:auto){.listing-card,.service-card,.help-card,.feed-post:nth-child(n+4){content-visibility:auto;contain-intrinsic-size:auto 260px}}@media(display-mode:standalone){.pwa-launcher{display:none!important}.header{padding-top:env(safe-area-inset-top,0px)}}@media(prefers-reduced-motion:reduce){.pwa-enter,#pwa-progress{animation:none}.pwa-enter{transform:none}html{scroll-behavior:auto}}@media(min-width:900px){.pwa-launcher,.pwa-update{bottom:18px}}

.post-video{background:#111;position:relative;margin:8px 0;overflow:hidden;border-radius:8px}.post-video-preview{width:100%;padding:0;border:0;display:block;position:relative;background:#111;aspect-ratio:16/9;cursor:pointer}.post-video-preview img{width:100%;height:100%;object-fit:cover;display:block}.post-video-preview span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#e00;color:#fff;border-radius:12px;padding:10px 22px;font-size:calc(24px * var(--delhi45-text-scale,1))}.post-video-external{display:block;padding:8px 12px;color:#fff;font-size:calc(12px * var(--delhi45-text-scale,1))}.post-video-frame{width:100%;aspect-ratio:16/9;border:0;display:block;min-height:200px}.emoji-picker{margin:4px 0;font-size:calc(12px * var(--delhi45-text-scale,1))}.emoji-picker summary{cursor:pointer;width:fit-content}.emoji-picker>div{display:flex;gap:4px;flex-wrap:wrap;padding:6px;background:#f0f2f5;border-radius:8px}.emoji-picker button{border:0;background:transparent;font-size:calc(22px * var(--delhi45-text-scale,1));min-width:36px;min-height:36px;cursor:pointer}

/* Shared page width and reserved desktop advertising rails. */
.feed-layout{width:100%;max-width:720px;margin:0 auto;display:block}.feed-column{min-width:0}.feed-ad-rail{display:none}.feed-ad-slot{width:100%;height:600px;border:1px solid #e4e6eb;background:#f7f8fa;text-align:center;position:relative}.feed-ad-slot>span{font-size:calc(10px * var(--delhi45-text-scale,1));letter-spacing:.04em;color:#9298a1;display:block;padding-top:8px;pointer-events:none}
@media(min-width:1100px){.feed-layout{max-width:1100px;display:grid;grid-template-columns:160px minmax(0,720px) 160px;gap:24px;justify-content:center;align-items:start}.feed-ad-rail{display:block;padding-top:10px}.feed-ad-slot{max-width:160px;margin:0 auto}}
@media(min-width:1440px){.feed-layout{max-width:1368px;grid-template-columns:300px minmax(0,720px) 300px}.feed-ad-slot{max-width:300px}}
@media(max-width:600px){.feed-layout{max-width:none}}

/* Visible form controls using the Delhi45 palette. */
body :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]),textarea,select):not(.search-input>input){border:2px solid #c9a0a8;background:#fff7f9;color:#242a32;border-radius:8px;box-shadow:inset 0 1px 2px #6d263c08}
body :is(input,textarea)::placeholder{color:#717783;opacity:1}
body :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select):not(.search-input>input):focus{border-color:#c91922;background:#fff;outline:3px solid #c9192224;outline-offset:1px}
body input[type=file]{background:#f0f5ff;border-color:#9cb4d8;padding:9px}
body input[type=file]::file-selector-button{background:#dfeaff;color:#234a80;border:1px solid #8ca9d0;border-radius:5px;padding:6px 10px;margin-right:10px;cursor:pointer}
body .button,body button[type=submit]{border-width:2px;box-shadow:0 1px 2px #681a2412}
body .button.secondary,body form button:not(.button):not(.post-video-preview),body .feed-actions button,body .review-feedback button,body .enquiry-tabs button{border:2px solid #d4a6af;background:#fff0f3;color:#9e2033;border-radius:7px}
body .button.secondary:hover,body form button:not(.button):not(.post-video-preview):hover,body .feed-actions button:hover{background:#ffe0e7;border-color:#bd687b}
body .feed-actions button[aria-pressed=true],body .review-feedback button[aria-pressed=true],body .enquiry-tabs button[aria-pressed=true]{background:#ffe0e7;border-color:#c91922;color:#ad1722}
body button:disabled{opacity:.55;cursor:wait}

.text-size-controls{display:inline-flex;align-items:center;gap:3px;flex-shrink:0}.text-size-controls button{display:grid;place-items:center;width:34px;height:36px;padding:0;border:2px solid #d4a6af;border-radius:7px;background:#fff0f3;color:#981a2a;font:700 20px/1 Arial,sans-serif;cursor:pointer}.text-size-controls button:hover{background:#ffe0e6}.text-size-controls button:focus-visible{outline:3px solid #bc344e;outline-offset:2px}.text-size-controls button:disabled{opacity:.4;cursor:default}.text-size-status{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:480px){.header-actions{gap:5px}.text-size-controls{gap:2px}.text-size-controls button{width:30px}.header-actions>.button.small{padding-left:7px;padding-right:7px}}
