.community-page { min-height:100vh; padding-bottom:94px; background:radial-gradient(ellipse at 80% 0,#ffe7f0 0,transparent 34%),#fff8fb; color:#49343e; }
.community-topbar { display:flex; min-height:68px; align-items:center; justify-content:space-between; padding:10px max(24px,calc((100% - 1180px)/2)); border-bottom:1px solid #f5e2e9; background:#fffdfedb; backdrop-filter:blur(14px); }
.community-brand { display:flex; align-items:center; gap:10px; color:#d95284; text-decoration:none; }
.community-brand > span { display:grid; width:38px; height:38px; place-items:center; border-radius:14px; background:#fde3ec; font-size:25px; }
.community-brand strong { display:grid; gap:1px; font-size:17px; }
.community-brand small { color:#b27a91; font-size:8px; letter-spacing:.14em; }
.community-home-link { padding:9px 15px; border:1px solid #f0d5e0; border-radius:99px; color:#94536d; font-size:13px; font-weight:700; text-decoration:none; }
.community-shell { width:min(1180px,calc(100% - 40px)); margin:0 auto; padding:24px 0 48px; }
.community-hero { display:flex; min-height:176px; align-items:center; justify-content:space-between; gap:24px; margin-bottom:20px; padding:28px clamp(22px,4vw,44px); border:1px solid #f3d4df; border-radius:24px; background:linear-gradient(115deg,#fff 0%,#ffe9f1 68%,#f8cada 100%); box-shadow:0 12px 32px #a24a6d0d; }
.community-hero p,.community-feed-heading > div > p { margin:0 0 6px; color:#ca7794; font-size:10px; font-weight:800; letter-spacing:.16em; }
.community-hero h1 { margin:0 0 7px; color:#75445a; font-size:clamp(27px,4vw,38px); }
.community-hero span { color:#8f6b7a; font-size:14px; }
.community-hero-cta { flex:0 0 auto; padding:12px 18px; border-radius:99px; background:#eb6292; box-shadow:0 7px 18px #d75b8833; color:#fff; font-size:13px; font-weight:800; text-decoration:none; }
.community-layout { display:grid; grid-template-columns:minmax(0,1fr) 280px; align-items:start; gap:18px; }
.community-main-column { min-width:0; }
.community-composer,.community-side-card,.community-review-link { border:1px solid #f0dce5; border-radius:19px; background:#fff; box-shadow:0 7px 20px #a24a6d08; }
.community-composer { margin-bottom:18px; padding:18px; scroll-margin-top:18px; }
.community-composer-heading { display:flex; align-items:center; gap:11px; margin-bottom:14px; }
.community-composer-avatar { display:grid; width:42px; height:42px; flex:0 0 42px; place-items:center; border:2px solid #fff; border-radius:50%; background:linear-gradient(145deg,#ffe4ed,#f4c2d3); color:#a34b70; font-size:20px; font-weight:800; box-shadow:0 2px 8px #8e41551f; }
.community-composer-heading h2 { margin:0 0 3px; color:#60394b; font-size:16px; }
.community-composer-heading p { margin:0; color:#987e89; font-size:12px; }
.community-compose-form { display:grid; gap:10px; }
.community-compose-form input,.community-compose-form textarea,.community-search input { width:100%; border:1px solid #f0dce5; border-radius:12px; background:#fffafd; color:#49343e; font:inherit; outline:none; }
.community-compose-form input { min-height:43px; padding:10px 12px; font-weight:700; }
.community-compose-form textarea { min-height:96px; padding:11px 12px; resize:vertical; font-size:14px; line-height:1.65; }
.community-compose-form input:focus,.community-compose-form textarea:focus,.community-search:focus-within { border-color:#e980a4; box-shadow:0 0 0 3px #fce4ed; }
.community-compose-footer { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.community-compose-footer small { color:#a58b96; font-size:11px; }
.community-compose-footer button,.community-login-cta { min-height:38px; padding:8px 16px; border:0; border-radius:99px; background:#ec6896; color:#fff; font:inherit; font-size:13px; font-weight:800; text-decoration:none; cursor:pointer; }
.community-compose-footer button:disabled { opacity:.6; cursor:wait; }
.community-login-box { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px; border-radius:13px; background:#fff5f8; }
.community-login-box p { margin:0; color:#866777; font-size:13px; }
.community-loading,.community-empty { margin:0; padding:24px 18px; color:#957987; font-size:13px; text-align:center; }
.community-feed-section { padding:18px; border:1px solid #f0dce5; border-radius:19px; background:#fff; box-shadow:0 7px 20px #a24a6d08; }
.community-feed-heading { display:flex; align-items:end; justify-content:space-between; gap:10px; margin-bottom:14px; }
.community-feed-heading h2 { margin:0; color:#60394b; font-size:20px; }
.community-post-count { color:#987e89; font-size:12px; }
.community-feed-tools { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; padding-bottom:13px; border-bottom:1px solid #f3e9ed; }
.community-sort-tabs { display:flex; gap:5px; }
.community-sort-tabs button { min-height:34px; padding:0 13px; border:0; border-radius:99px; background:transparent; color:#927b86; font:inherit; font-size:13px; font-weight:700; cursor:pointer; }
.community-sort-tabs button.active { background:#fff0f5; color:#d75283; }
.community-search { display:flex; width:min(240px,46%); min-height:36px; align-items:center; gap:7px; padding:0 10px; border:1px solid #f0dce5; border-radius:99px; color:#b88c9d; }
.community-search input { min-height:32px; padding:4px 0; border:0; background:transparent; font-size:12px; }
.community-feed { display:grid; gap:10px; }
.community-post { padding:16px; border:1px solid #f3e5ea; border-radius:15px; background:#fffdfd; }
.community-post-head { display:flex; align-items:center; gap:10px; }
.community-post-avatar { display:grid; width:39px; height:39px; flex:0 0 39px; place-items:center; border-radius:50%; background:linear-gradient(145deg,#ffe4ed,#f4c2d3); color:#a34b70; font-size:15px; font-weight:800; }
.community-post-byline { display:grid; min-width:0; gap:3px; }
.community-post-byline strong { overflow:hidden; color:#5f4050; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }
.community-post-byline small { color:#a18a95; font-size:11px; }
.community-post-tag { margin-left:auto; padding:5px 9px; border-radius:99px; background:#fff0f5; color:#bd6383; font-size:10px; font-weight:800; white-space:nowrap; }
.community-post h3 { margin:13px 0 7px; color:#533745; font-size:16px; line-height:1.5; }
.community-post-body { margin:0; color:#755d69; font-size:14px; line-height:1.75; white-space:pre-wrap; overflow-wrap:anywhere; }
.community-post-actions { display:flex; align-items:center; gap:15px; margin-top:13px; padding-top:11px; border-top:1px solid #f4eaee; }
.community-post-actions button { padding:5px 0; border:0; background:transparent; color:#a45c77; font:inherit; font-size:12px; font-weight:700; cursor:pointer; }
.community-post-actions button:disabled { opacity:.55; cursor:wait; }
.community-side-column { display:grid; gap:13px; }
.community-side-card { padding:19px; }
.community-side-eyebrow { margin:0 0 7px; color:#cf7b98; font-size:10px; font-weight:800; letter-spacing:.15em; }
.community-side-card h2 { margin:0 0 8px; color:#694153; font-size:17px; }
.community-side-card p { margin:0; color:#8d7480; font-size:13px; line-height:1.7; }
.community-topic-card { background:linear-gradient(145deg,#fff,#fff1f6); }
.community-topic-card a { display:inline-block; margin-top:13px; color:#d45484; font-size:12px; font-weight:800; text-decoration:none; }
.community-guidelines ul { display:grid; gap:9px; margin:12px 0 0; padding-left:18px; color:#8d7480; font-size:12px; line-height:1.55; }
.community-review-link { display:flex; align-items:center; gap:11px; padding:14px; color:#de6792; text-decoration:none; }
.community-review-link > span:first-child { display:grid; width:39px; height:39px; place-items:center; border-radius:13px; background:#fff0f5; font-size:22px; }
.community-review-link > span:nth-child(2) { display:grid; flex:1; gap:4px; }
.community-review-link strong { color:#694153; font-size:13px; }
.community-review-link small { color:#987e89; font-size:11px; }
.community-review-link b { font-size:20px; }
.community-message { position:fixed; z-index:50; right:20px; bottom:94px; max-width:min(420px,calc(100vw - 40px)); margin:0; padding:0; border-radius:99px; background:#694153; color:#fff; font-size:13px; }
.community-message:not(:empty) { padding:12px 18px; box-shadow:0 9px 28px #3d142830; }
@media(max-width:850px) { .community-layout { grid-template-columns:minmax(0,1fr) 230px; gap:12px; } .community-side-card { padding:16px; } }
@media(max-width:700px) { .community-topbar { min-height:60px; padding:8px 16px; } .community-shell { width:calc(100% - 24px); padding-top:15px; } .community-hero { min-height:0; align-items:flex-start; flex-direction:column; gap:14px; margin-bottom:12px; padding:21px; border-radius:19px; } .community-hero-cta { padding:10px 15px; } .community-layout { grid-template-columns:1fr; } .community-side-column { grid-template-columns:1fr 1fr; } .community-topic-card { grid-column:1/-1; } .community-review-link { grid-column:1/-1; } .community-feed-section { padding:14px; } .community-feed-tools { align-items:flex-start; flex-direction:column; } .community-search { width:100%; } .community-post { padding:14px; } }
@media(max-width:420px) { .community-side-column { grid-template-columns:1fr; } .community-topic-card,.community-review-link { grid-column:auto; } .community-compose-footer { align-items:flex-start; flex-direction:column; } .community-compose-footer button { align-self:flex-end; } }

/* Photo-led community layout and the separate task-center tab. */
.community-page { padding-bottom: calc(92px + env(safe-area-inset-bottom)); background:linear-gradient(180deg,#fff4f8 0,#fff9fb 38%,#fff4f8 100%); }
.community-topbar { position:sticky; top:0; z-index:25; display:grid; grid-template-columns:220px minmax(220px,1fr) auto auto; gap:22px; min-height:68px; padding:9px max(24px,calc((100% - 1600px)/2)); }
.community-global-search { display:flex; min-width:0; min-height:42px; align-items:center; gap:9px; padding:0 14px; border:1px solid #f1d9e3; border-radius:99px; background:#fff; color:#a57889; }
.community-global-search input { width:100%; min-width:0; border:0; outline:0; background:transparent; color:#624657; font:inherit; font-size:13px; }
.community-location-link { align-self:center; padding:10px 13px; border-radius:99px; background:#fff3f7; color:#a44b70; font-size:13px; font-weight:800; text-decoration:none; white-space:nowrap; }
.community-top-actions { display:flex; align-items:center; gap:10px; }
.community-top-actions a { display:grid; width:38px; height:38px; place-items:center; border:1px solid #f0dbe4; border-radius:50%; background:#fff; color:#70485a; font-size:18px; text-decoration:none; }
.community-top-actions .community-user-chip { background:#ffe3ed; color:#d95183; }
.community-shell { width:min(1600px,calc(100% - 48px)); padding:14px 0 50px; }
.community-page-tabs { display:flex; gap:8px; margin:0 0 13px; padding:0 2px; }
.community-page-tabs a { display:grid; min-height:38px; place-items:center; padding:0 17px; border:1px solid transparent; border-radius:99px; color:#876878; font-size:13px; font-weight:800; text-decoration:none; }
.community-page-tabs a.active { border-color:#f5d4e0; background:#ffe7ef; color:#d84e82; }
.community-hero { position:relative; display:grid; grid-template-columns:minmax(0,1fr) 255px; align-items:center; min-height:270px; gap:20px; overflow:hidden; margin-bottom:13px; padding:24px clamp(24px,4vw,56px); border:1px solid #f2d1df; border-radius:24px; background-image:linear-gradient(90deg,#ffe7efed 0%,#ffe7efc9 44%,#ffdce7a8 72%,#ffdfe9e8 100%),url('/assets/home-hero-model.webp?release=AL-2026.11.03.14'); background-size:cover; background-position:center 39%; box-shadow:0 14px 34px #b45b7a16; }
.community-hero-copy { position:relative; z-index:1; max-width:560px; }
.community-hero-copy > p { margin:0 0 5px; color:#db688c; font-size:11px; font-weight:900; letter-spacing:.16em; }
.community-hero-copy h1 { margin:0 0 8px; color:#c53f73; font-size:clamp(32px,4vw,54px); line-height:1.1; }
.community-hero-copy > span { display:block; color:#78485b; font-size:15px; line-height:1.7; }
.community-hero-cta { display:inline-grid; min-height:42px; place-items:center; margin-top:15px; padding:0 20px; border-radius:99px; background:#ed4f89; box-shadow:0 7px 18px #d75b8833; color:#fff; font-size:13px; font-weight:900; text-decoration:none; }
.community-hero-actions { display:grid; grid-template-columns:1fr 1fr; gap:11px; }
.community-portal-card { display:flex; min-height:170px; flex-direction:column; align-items:center; justify-content:center; padding:13px 9px; border:1px solid #ffcfde; border-radius:20px; background:#fffafcf0; box-shadow:0 8px 18px #9a44600c; color:#533541; text-align:center; text-decoration:none; }
.community-portal-card > span { display:grid; width:42px; height:42px; place-items:center; margin-bottom:5px; border-radius:14px; background:#ffedf3; font-size:24px; }
.community-portal-card strong { font-size:15px; }
.community-portal-card small { margin:5px 0 9px; color:#967785; font-size:10px; line-height:1.5; }
.community-portal-card b { width:100%; padding:8px 5px; border-radius:99px; background:#f4548e; color:white; font-size:11px; }
.community-layout { grid-template-columns:minmax(0,1fr) 350px; gap:16px; }
.community-main-column { display:grid; gap:13px; }
.community-composer { display:grid; grid-template-columns:minmax(0,1fr); margin:0; padding:14px 17px; border-radius:18px; }
.community-composer-heading { margin:0; }
.community-composer-avatar { width:42px; height:42px; flex-basis:42px; }
.community-composer-heading h2 { font-size:14px; }
.community-composer-heading p { display:none; }
.community-login-box { min-height:62px; }
.community-compose-form { grid-template-columns:minmax(0,1fr) auto; gap:8px 12px; }
.community-compose-form input { grid-column:1/-1; min-height:36px; border:0; border-bottom:1px solid #f2e3e9; border-radius:0; background:transparent; }
.community-compose-form textarea { min-height:44px; grid-column:1; border:0; background:transparent; resize:vertical; }
.community-compose-footer { grid-column:2; grid-row:2; justify-content:end; }
.community-compose-footer small { display:none; }
.community-compose-footer button { min-height:38px; padding:8px 22px; }
.community-feed-section { padding:16px; border-radius:18px; }
.community-feed-heading { margin:0 2px 10px; }
.community-feed-heading h2 { font-size:19px; }
.community-feed-tools { justify-content:space-between; gap:12px; margin-bottom:14px; padding:0 0 11px; }
.community-sort-tabs { min-width:0; gap:5px; overflow:auto; }
.community-sort-tabs button { flex:0 0 auto; min-height:33px; padding:0 12px; border:1px solid #f4e1e8; border-radius:99px; background:#fff; font-size:12px; }
.community-sort-tabs button.active { border-color:#f4c6d8; background:#f65a91; color:#fff; }
.community-category-select { display:flex; flex:0 0 auto; align-items:center; gap:6px; color:#725666; font-size:12px; white-space:nowrap; }
.community-category-select select { max-width:105px; min-height:32px; border:0; background:transparent; color:#7c6570; font:inherit; font-weight:700; }
.community-search { display:none; }
.community-feed { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.community-post { min-width:0; overflow:hidden; padding:0; border:1px solid #f2e1e8; border-radius:17px; background:#fff; box-shadow:0 5px 15px #a24a6d08; }
.community-post-media-link { position:relative; display:block; overflow:hidden; aspect-ratio:1.12; background:#f7dbe5; color:#fff; text-decoration:none; }
.community-post-image { display:block; width:100%; height:100%; object-fit:cover; }
.community-post-image-demo { display:flex; align-items:end; justify-content:space-between; padding:11px; background-image:linear-gradient(0deg,#3b1d2e88,transparent 42%),url('/assets/home-inspiration-contact-sheet.jpg?release=AL-2026.11.03.14'); background-position:center, var(--community-photo-position); background-size:cover,200% 200%; background-repeat:no-repeat; }
.community-post-image-demo span { padding:5px 8px; border-radius:99px; background:#ffffffdc; color:#a4486c; font-size:10px; font-weight:800; }
.community-post-media-category { position:absolute; top:10px; right:10px; padding:6px 10px; border-radius:99px; background:#fffdf2; color:#bd527d; font-size:11px; font-weight:900; }
.community-post-demo-label { position:absolute; top:10px; left:10px; padding:6px 9px; border:1px solid #ffffffa8; border-radius:99px; background:#fffaf2e8; color:#98626e; font-size:10px; font-weight:900; }
.community-post-demo-note { margin-left:auto; color:#a78f99; font-size:10px; }
.community-preview-note { margin:0 2px 11px; padding:8px 11px; border-radius:11px; background:#fff8e8; color:#92774f; font-size:11px; line-height:1.55; }
.community-post-content { padding:12px 13px 10px; }
.community-post-head { gap:8px; }
.community-post-avatar { width:34px; height:34px; flex-basis:34px; }
.community-post-byline strong { font-size:12px; }
.community-post-byline small { font-size:10px; }
.community-post h3 { display:-webkit-box; overflow:hidden; min-height:42px; margin:9px 0 4px; font-size:14px; line-height:1.5; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.community-post-body { display:-webkit-box; overflow:hidden; color:#816c77; font-size:12px; line-height:1.55; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.community-post-actions { gap:14px; margin-top:10px; padding-top:8px; }
.community-post-actions button { color:#8d6878; font-size:11px; }
.community-side-column { gap:11px; }
.community-side-card { padding:14px; border-radius:17px; }
.community-points-card > a:first-child { display:flex; align-items:center; gap:10px; color:inherit; text-decoration:none; }
.community-side-avatar { display:grid; width:50px; height:50px; flex:0 0 50px; place-items:center; border:2px solid white; border-radius:50%; background:linear-gradient(145deg,#fbd4e1,#c38397); color:#fff; font-size:20px; font-weight:900; box-shadow:0 2px 8px #8e41551f; }
.community-points-card > a:first-child > span:nth-child(2) { display:grid; flex:1; gap:3px; }
.community-points-card small { color:#8a727d; font-size:11px; }
.community-points-card strong { color:#e44f80; font-size:21px; }
.community-points-card > a:first-child > b { color:#e55a89; font-size:22px; }
.community-points-history { display:block; margin:9px 0 0 59px; color:#b05276; font-size:10px; text-decoration:none; }
.community-side-column header { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:11px; }
.community-side-column header h2 { margin:0; font-size:15px; }
.community-side-column header a { color:#9a818c; font-size:10px; text-decoration:none; white-space:nowrap; }
.community-hot-topics { display:grid; gap:3px; }
.community-hot-topics > button { display:grid; grid-template-columns:23px minmax(0,1fr) auto; align-items:center; gap:7px; min-height:32px; padding:4px 0; border:0; background:transparent; text-align:left; cursor:pointer; }
.community-hot-topics > button > span { display:grid; width:21px; height:21px; place-items:center; border-radius:50%; background:#fff0f4; color:#e65688; font-size:13px; font-weight:900; }
.community-hot-topics > button strong { overflow:hidden; color:#6b5360; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.community-hot-topics > button small { color:#9b8992; font-size:9px; white-space:nowrap; }
.community-topic-empty { margin:0; padding:8px 0; color:#987c89; font-size:11px; line-height:1.6; }
.community-advisor-placeholder { display:flex; align-items:center; gap:9px; padding:8px 0; border-top:1px solid #f4e8ed; }
.community-advisor-placeholder > span { display:grid; width:42px; height:42px; flex:0 0 42px; place-items:center; border-radius:50%; background:linear-gradient(145deg,#ffd7e4,#c7839b); color:#fff; font-size:19px; }
.community-advisor-placeholder p { flex:1; color:#644554; font-size:11px; font-weight:800; }
.community-advisor-placeholder p small { color:#9c8790; font-size:9px; font-weight:400; }
.community-advisor-placeholder > a { padding:5px 9px; border:1px solid #f5d2df; border-radius:99px; color:#d55383; font-size:10px; font-weight:800; text-decoration:none; }
.community-category-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.community-category-grid a { display:grid; justify-items:center; gap:5px; padding:8px 3px; border-radius:12px; background:#fff5f8; color:#634252; text-decoration:none; }
.community-category-grid a > span { display:grid; width:43px; height:43px; place-items:center; border-radius:50%; background:#ffe7ef; }
.community-category-grid img { width:34px; height:34px; object-fit:contain; }
.community-category-grid strong { font-size:9px; }
.task-center-page .community-hero { grid-template-columns:minmax(0,1fr) 42%; }
.task-center-visual { min-height:225px; border-radius:20px; background:url('/assets/home-hero-model.webp?release=AL-2026.11.03.14') 72% 35%/cover; box-shadow:inset 0 0 0 1px #ffffff50; }
.task-center-placeholder { display:grid; justify-items:center; gap:10px; min-height:260px; margin-top:18px; padding:35px 20px; border:1px dashed #e9b8ca; border-radius:22px; background:#fffdfd; text-align:center; }
.task-center-placeholder > span { display:grid; width:58px; height:58px; place-items:center; border-radius:18px; background:#fff0f5; color:#ee6195; font-size:28px; }
.task-center-placeholder h2 { margin:0; color:#704458; font-size:23px; }
.task-center-placeholder p { max-width:520px; margin:0; color:#927986; font-size:14px; line-height:1.7; }
.task-center-placeholder a { margin-top:4px; color:#d75283; font-size:13px; font-weight:800; text-decoration:none; }
@media(max-width:1100px) { .community-topbar { grid-template-columns:auto minmax(180px,1fr) auto auto; gap:12px; padding-right:18px; padding-left:18px; } .community-layout { grid-template-columns:minmax(0,1fr) 290px; } .community-hero { min-height:240px; } }
@media(max-width:850px) { .community-global-search { display:none; } .community-topbar { grid-template-columns:1fr auto auto; } .community-layout { grid-template-columns:minmax(0,1fr) 250px; } .community-hero { grid-template-columns:minmax(0,1fr) 220px; padding:20px; } .community-portal-card { min-height:150px; } .community-side-column { gap:9px; } }
@media(max-width:700px) { .community-topbar { grid-template-columns:1fr auto auto; grid-template-rows:auto auto; min-height:57px; gap:8px; padding:7px 12px; } .community-brand { grid-row:1; grid-column:1; } .community-global-search { display:flex; grid-row:2; grid-column:1/-1; min-height:36px; } .community-brand > span { width:32px; height:32px; } .community-brand strong { font-size:14px; } .community-brand small { font-size:7px; } .community-location-link { grid-row:1; grid-column:2; padding:8px 9px; font-size:10px; } .community-top-actions { grid-row:1; grid-column:3; gap:5px; } .community-top-actions a { width:31px; height:31px; font-size:14px; } .community-shell { width:calc(100% - 20px); padding-top:10px; } .community-page-tabs { gap:3px; margin-bottom:9px; } .community-page-tabs a { min-height:34px; padding:0 12px; font-size:11px; } .community-hero { grid-template-columns:1fr; min-height:360px; gap:12px; padding:20px 16px 15px; background-position:62% center; } .community-hero-copy { max-width:76%; } .community-hero-copy h1 { font-size:32px; } .community-hero-copy > span { font-size:12px; } .community-hero-cta { min-height:36px; margin-top:10px; padding:0 15px; font-size:11px; } .community-hero-actions { align-self:end; grid-template-columns:1fr 1fr; gap:8px; } .community-portal-card { min-height:112px; padding:7px; border-radius:15px; } .community-portal-card > span { width:30px; height:30px; font-size:18px; } .community-portal-card strong { font-size:12px; } .community-portal-card small { margin:3px 0 5px; font-size:9px; } .community-portal-card b { padding:6px 3px; font-size:9px; } .community-layout { grid-template-columns:1fr; gap:12px; } .community-main-column { gap:10px; } .community-composer { padding:11px; } .community-composer-heading { margin-bottom:6px; } .community-compose-form { gap:6px; } .community-compose-form input { min-height:34px; } .community-compose-form textarea { min-height:40px; } .community-feed-section { padding:11px; } .community-feed-heading { margin-bottom:8px; } .community-feed-heading h2 { font-size:16px; } .community-post-count { font-size:10px; } .community-feed-tools { align-items:stretch; flex-direction:column; gap:8px; padding-bottom:8px; } .community-sort-tabs { width:100%; } .community-sort-tabs button { min-height:31px; padding:0 10px; font-size:10px; } .community-category-select { justify-content:flex-end; font-size:11px; } .community-category-select select { max-width:130px; } .community-feed { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; } .community-post-media-link { aspect-ratio:.91; } .community-post-content { padding:9px; } .community-post-avatar { width:29px; height:29px; flex-basis:29px; font-size:12px; } .community-post h3 { min-height:40px; font-size:12px; } .community-post-body { font-size:10px; } .community-post-actions { gap:9px; } .community-post-actions button { font-size:10px; } .community-side-column { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; } .community-side-card { padding:11px; } .community-topics-card,.community-advisors-card,.community-categories-card,.community-guidelines,.community-review-link { grid-column:1/-1; } .community-side-column header h2 { font-size:13px; } .community-category-grid { grid-template-columns:repeat(6,minmax(0,1fr)); } .community-category-grid a > span { width:38px; height:38px; } .community-category-grid img { width:30px; height:30px; } .community-category-grid strong { font-size:8px; } .task-center-page .community-hero { grid-template-columns:1fr; min-height:390px; } .task-center-visual { min-height:140px; } }
@media(max-width:420px) { .community-feed { grid-template-columns:1fr; } .community-post-media-link { aspect-ratio:1.35; } .community-hero { min-height:350px; } .community-hero-copy { max-width:85%; } .community-category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }

/* Mobile-first community home inspired by the supplied app screen. */
.community-page { padding-bottom:calc(70px + env(safe-area-inset-bottom)); background:#fff9fb; color:#523a45; }
.community-topbar { position:sticky; top:0; z-index:30; display:grid; gap:8px; min-height:0; padding:8px max(12px,calc((100vw - 1500px)/2)); border-bottom:1px solid #f6e7ed; background:#fff9fbf2; backdrop-filter:blur(18px); }
.community-top-row { display:grid; grid-template-columns:minmax(0,1fr) auto 38px; align-items:center; gap:9px; }
.community-brand { gap:7px; min-width:0; color:#ff5b91; }
.community-brand > span { width:31px; height:31px; border:1px solid #ffd6e3; border-radius:50%; background:#fff0f5; font-size:21px; }
.community-brand strong { gap:0; font-size:14px; line-height:1.1; }
.community-brand small { color:#bb7790; font-size:6px; letter-spacing:.13em; }
.community-location-link { display:flex; min-height:31px; align-items:center; gap:3px; padding:0 9px; border:1px solid #f8dce6; border-radius:99px; background:#fff; color:#a75273; font:inherit; font-size:10px; font-weight:800; cursor:pointer; }
.community-notification-link { position:relative; display:grid; width:33px; height:33px; place-items:center; border:1px solid #f4e0e8; border-radius:50%; background:#fff; color:#744d5d; font-size:17px; text-decoration:none; }
.community-notification-link b { position:absolute; top:-3px; right:-4px; display:grid; min-width:15px; height:15px; place-items:center; padding:0 3px; border:1.5px solid #fff9fb; border-radius:99px; background:#ff5b91; color:#fff; font-size:8px; }
.community-global-search { display:flex; width:100%; min-height:35px; align-items:center; gap:7px; padding:0 11px; border:1px solid #f3e1e8; border-radius:99px; background:#fff; color:#a98392; }
.community-global-search input { font-size:11px; }
.community-shell { width:min(1500px,calc(100% - 20px)); padding:9px 0 18px; }
.community-hero { display:flex; min-height:145px; align-items:center; margin:0 0 9px; padding:13px 14px; border:0; border-radius:20px; background-image:linear-gradient(90deg,#ffe7f0f5 0%,#ffe7f0d9 38%,#ffe7f080 64%,#ffdae8b8 100%),url('/assets/home-hero-model.webp?release=AL-2026.11.03.14'); background-size:cover; background-position:65% 38%; box-shadow:0 8px 20px #bd789015; }
.community-hero-copy { max-width:47%; }
.community-hero-copy > p { margin-bottom:4px; color:#eb6e9a; font-size:8px; }
.community-hero-copy h1 { margin-bottom:6px; color:#dc4a82; font-size:clamp(20px,5.6vw,34px); }
.community-hero-copy > span { color:#7b4d60; font-size:10px; line-height:1.5; }
.community-hero-actions { width:48%; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
.community-portal-card { min-height:96px; justify-content:center; padding:8px 4px; border-color:#ffcfde; border-radius:15px; background:#fffafcf0; box-shadow:0 4px 13px #99506414; }
.community-entry-icon { width:30px; height:30px; margin-bottom:4px; border-radius:10px; background:#ffeaf1; font-size:19px; }
.community-portal-card strong { color:#573b48; font-size:11px; }
.community-portal-card small { margin:3px 0 0; color:#9b7b89; font-size:8px; line-height:1.3; }
.community-feed-section { padding:0; overflow:visible; border:0; border-radius:0; background:transparent; box-shadow:none; }
.community-feed-tools { margin:0 0 7px; padding:0; border:0; }
.community-sort-tabs { width:100%; gap:5px; overflow-x:auto; scrollbar-width:none; }
.community-sort-tabs::-webkit-scrollbar { display:none; }
.community-sort-tabs button { flex:0 0 auto; min-height:27px; padding:0 11px; border:1px solid #f4e4ea; border-radius:99px; background:#fff; color:#8f7782; font-size:9px; }
.community-sort-tabs button.active { border-color:#ff5b91; background:#ff5b91; color:#fff; }
.community-category-strip { display:flex; gap:8px; overflow-x:auto; margin:0 -2px 9px; padding:2px 2px 7px; scrollbar-width:none; }
.community-category-strip::-webkit-scrollbar { display:none; }
.community-category-strip button { display:grid; flex:0 0 47px; justify-items:center; gap:3px; padding:3px 0; border:0; border-radius:13px; background:transparent; color:#674e5a; font:inherit; font-size:8px; cursor:pointer; }
.community-category-strip button.active { background:#fff0f5; color:#dd4c82; font-weight:800; }
.community-category-strip button span { display:grid; width:35px; height:35px; place-items:center; border:1px solid #fbe4ec; border-radius:50%; background:linear-gradient(145deg,#fff4f7,#ffe2ec); }
.community-category-strip img { width:27px; height:27px; object-fit:contain; }
.community-feed { display:block; column-count:2; column-gap:8px; }
.community-post { display:inline-block; width:100%; margin:0 0 9px; padding:0; overflow:hidden; border:1px solid #f1e5e9; border-radius:14px; background:#fff; box-shadow:0 3px 10px #934a650c; break-inside:avoid; }
.community-post-media-link { aspect-ratio:var(--community-post-ratio, .92); border-radius:0; }
.community-post-content { padding:8px 8px 7px; }
.community-post-head { gap:5px; }
.community-post-avatar { width:25px; height:25px; flex-basis:25px; border:1px solid #fff; background-image:url('/images/review-portrait-sheet.webp?release=AL-2026.11.03.14'); background-size:500% 400%; background-repeat:no-repeat; color:transparent; }
.community-post-byline { gap:1px; }
.community-post-byline strong { font-size:9px; }
.community-post-byline small { font-size:8px; }
.community-post h3 { min-height:0; margin:6px 0 3px; font-size:10px; line-height:1.4; -webkit-line-clamp:2; }
.community-post-body { font-size:9px; line-height:1.45; -webkit-line-clamp:2; }
.community-post-actions { gap:9px; margin-top:6px; padding-top:5px; }
.community-post-actions button { display:inline-flex; align-items:center; gap:3px; color:#94717f; font-size:9px; }
.community-post-actions .community-save-button { margin-left:auto; font-size:13px; }
.community-post-media-link .community-post-image-demo { min-height:100%; }
.community-post-image-demo { background-size:cover,200% 200%; }
.community-post-detail-trigger { display:block; width:100%; padding:0; border:0; background:transparent; color:inherit; text-align:left; cursor:pointer; }
.community-post-detail-trigger:focus-visible,.community-sort-tabs button:focus-visible,.community-category-strip button:focus-visible { outline:2px solid #ff5b91; outline-offset:2px; }
.community-feed-sentinel { height:1px; }
.community-message { right:12px; bottom:calc(76px + env(safe-area-inset-bottom)); left:12px; width:max-content; max-width:calc(100vw - 24px); margin:auto; font-size:11px; }
.community-bottom-nav-publish { border:0; background:transparent; color:inherit; font:inherit; cursor:pointer; }
.consumer-bottom-nav .community-publish-icon { display:grid; width:30px; height:30px; place-items:center; margin-bottom:2px; border-radius:50%; background:#ff5b91; color:#fff; font-size:23px; line-height:1; }
.community-publish-dialog,.community-location-dialog,.community-detail-dialog { width:min(520px,calc(100vw - 24px)); max-width:none; max-height:min(88dvh,780px); padding:0; overflow:auto; border:1px solid #f3d7e2; border-radius:22px; background:#fff9fb; color:#583c49; box-shadow:0 20px 80px #4b1e3238; }
.community-publish-dialog::backdrop,.community-location-dialog::backdrop,.community-detail-dialog::backdrop { background:#46233278; backdrop-filter:blur(5px); }
.community-publish-dialog { position:fixed; }
.community-publish-dialog .community-composer { margin:0; padding:30px 18px 18px; border:0; box-shadow:none; }
.community-dialog-close { position:sticky; z-index:2; top:9px; float:right; display:grid; width:35px; height:35px; place-items:center; margin:9px 9px -35px 0; border:0; border-radius:50%; background:#fff0f5; color:#95546f; font-size:24px; cursor:pointer; }
.community-location-dialog section { display:grid; gap:13px; padding:26px 20px 20px; }
.community-location-dialog section > p { margin:0; color:#d2658c; font-size:10px; font-weight:900; letter-spacing:.16em; }
.community-location-dialog h2 { margin:0; font-size:20px; }
.community-location-dialog label { display:grid; gap:7px; color:#806271; font-size:12px; font-weight:700; }
.community-location-dialog select { min-height:43px; padding:0 12px; border:1px solid #efdce4; border-radius:12px; background:#fff; color:#573c49; font:inherit; }
.community-location-dialog #community-city-confirm { min-height:44px; border:0; border-radius:99px; background:#ff5b91; color:#fff; font:inherit; font-weight:800; cursor:pointer; }
.community-detail-dialog { padding:30px 14px 14px; }
.community-detail-dialog .community-post-detail-image { width:100%; max-height:50dvh; object-fit:cover; border-radius:16px; }
.community-detail-dialog h2 { color:#563b48; font-size:18px; line-height:1.45; }
.community-detail-dialog p { color:#755c68; font-size:13px; line-height:1.7; white-space:pre-wrap; }
.community-page .consumer-bottom-nav { position:fixed; z-index:35; right:0; bottom:0; left:0; height:calc(58px + env(safe-area-inset-bottom)); padding:4px 4px env(safe-area-inset-bottom); border-top:1px solid #f2e4e9; background:#fffdfef5; backdrop-filter:blur(18px); }
.community-page .consumer-bottom-nav a,.community-page .consumer-bottom-nav button { display:flex; flex:1; flex-direction:column; align-items:center; justify-content:center; gap:1px; min-width:0; padding:0; color:#88737e; text-decoration:none; font-size:9px; }
.community-page .consumer-bottom-nav a.active { color:#ff5b91; }
.community-page .consumer-nav-icon { display:grid; width:22px; height:22px; place-items:center; margin:0; }
.community-page .consumer-nav-icon svg { width:19px; height:19px; }
.community-page .consumer-bottom-nav .community-publish-icon { width:30px; height:30px; margin-top:-11px; border:3px solid #fff9fb; box-shadow:0 2px 8px #ed5b8d3b; }
@media(min-width:600px) {
  .community-topbar { grid-template-columns:minmax(0,1fr) minmax(260px,520px); align-items:center; }
  .community-top-row { grid-column:1; }
  .community-global-search { grid-column:2; grid-row:1; min-height:40px; }
  .community-shell { width:min(1140px,calc(100% - 40px)); padding-top:16px; }
  .community-hero { min-height:210px; padding:22px 27px; }
  .community-hero-copy { max-width:45%; }
  .community-hero-copy > p { font-size:10px; }
  .community-hero-copy h1 { font-size:clamp(32px,4vw,48px); }
  .community-hero-copy > span { font-size:14px; }
  .community-hero-actions { max-width:340px; gap:12px; }
  .community-portal-card { min-height:150px; }
  .community-portal-card strong { font-size:14px; }
  .community-portal-card small { font-size:10px; }
  .community-sort-tabs button { min-height:36px; font-size:12px; }
  .community-category-strip { gap:15px; margin-bottom:12px; }
  .community-category-strip button { flex-basis:58px; font-size:10px; }
  .community-category-strip button span { width:45px; height:45px; }
  .community-category-strip img { width:34px; height:34px; }
  .community-feed { column-count:3; column-gap:14px; }
  .community-post { margin-bottom:14px; border-radius:17px; }
  .community-post-content { padding:12px; }
  .community-post-avatar { width:34px; height:34px; flex-basis:34px; }
  .community-post-byline strong { font-size:12px; }
  .community-post-byline small { font-size:10px; }
  .community-post h3 { margin:9px 0 4px; font-size:14px; }
  .community-post-body { font-size:12px; }
  .community-post-actions button { font-size:11px; }
  .community-page .consumer-bottom-nav { height:66px; padding:6px 20px; }
}
@media(min-width:1000px) {
  .community-feed { column-count:4; }
  .community-page .consumer-bottom-nav { right:50%; left:50%; width:min(600px,100%); transform:translateX(-50%); border:1px solid #f2e4e9; border-bottom:0; border-radius:18px 18px 0 0; }
}
.community-category-strip button span { font-size:17px; font-weight:900; color:#f25b90; }
.community-post-open { display:block; width:100%; padding:0; border:0; background:transparent; color:inherit; text-align:left; font:inherit; cursor:pointer; }
.community-post-open .community-post-content { display:block; }
.community-post-open .community-post-head,.community-post-open .community-post-head > span { display:flex; }
.community-post-open .community-post-byline { display:grid; }
.community-post-open .community-post-avatar { display:grid; }
.community-post-title { display:-webkit-box; overflow:hidden; margin:6px 0 3px; color:#573b48; font-size:10px; font-weight:800; line-height:1.4; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.community-post-open .community-post-body { display:-webkit-box; }
.community-post-image-demo { display:flex; min-height:100%; align-items:flex-end; padding:8px; background-image:linear-gradient(0deg,#3b1d2e55,transparent 42%),url('/assets/home-inspiration-contact-sheet.jpg?release=AL-2026.11.03.14'); background-position:center,var(--community-photo-position,0% 0%); background-size:cover,200% 200%; background-repeat:no-repeat; }
.community-post-image-demo > span { padding:4px 6px; border-radius:99px; background:#ffffffdc; color:#a4486c; font-size:8px; font-weight:800; }
.community-post-detail-image.community-post-image-demo { min-height:210px; aspect-ratio:1.2; }
.community-detail-actions { display:flex; align-items:center; gap:13px; padding-top:12px; border-top:1px solid #f1e4e9; color:#8b6b79; font-size:12px; }
.community-detail-actions button { min-height:36px; padding:0 12px; border:1px solid #f0dce4; border-radius:99px; background:#fff; color:#d94f83; font:inherit; cursor:pointer; }
.community-detail-actions button:first-child { border-color:#ffd6e4; background:#fff0f5; }
.community-category-strip button.active span { border-color:#ffc7d9; background:#ffe6ef; }
.community-feed-sentinel { min-height:1px; }
.community-publish-dialog .community-composer { border-radius:0; }

/* Match the supplied community screen: banner first, feature cards directly beneath. */
.community-page .community-hero {
  display:flex;
  min-height:clamp(165px,20vw,255px);
  align-items:center;
  margin-bottom:10px;
  padding:20px clamp(18px,4vw,54px);
  background-image:linear-gradient(90deg,#ffe6eff2 0%,#ffe6efc7 39%,#ffe6ef20 70%),url('/assets/home-hero-model.webp?release=AL-2026.11.03.14');
  background-size:cover;
  background-position:68% 38%;
}
.community-page .community-hero-copy { max-width:49%; }
.community-page .community-hero-copy h1 { color:#ed4d89; }
.community-page .community-hero-actions {
  display:grid;
  width:min(100%,720px);
  max-width:720px;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin:0 0 12px;
}
.community-page .community-portal-card {
  display:grid;
  min-height:76px;
  grid-template-columns:48px minmax(0,1fr) 20px;
  align-items:center;
  justify-content:initial;
  gap:8px;
  padding:8px 11px;
  border-radius:16px;
  text-align:left;
}
.community-page .community-entry-icon {
  display:block;
  width:46px;
  height:46px;
  margin:0;
  object-fit:contain;
  border-radius:0;
  background:transparent;
}
.community-page .community-portal-card > span { display:grid; width:auto; height:auto; place-items:initial; gap:3px; margin:0; border-radius:0; background:transparent; font-size:inherit; }
.community-page .community-portal-card strong { color:#573b48; font-size:12px; }
.community-page .community-portal-card small { margin:0; color:#9b7b89; font-size:9px; line-height:1.4; }
.community-page .community-portal-card > b { width:auto; padding:0; background:transparent; color:#ff5b91; font-size:22px; text-align:right; }
.community-page .community-portal-card:hover { border-color:#ff9dbc; box-shadow:0 6px 17px #db63851c; transform:translateY(-1px); }
.community-page .community-feed-section { scroll-margin-top:100px; }
.community-home-category-row { display:flex; min-width:0; align-items:center; gap:4px; }
.community-home-category-row .community-category-strip { min-width:0; flex:1; }
.community-home-category-more { flex:0 0 auto; padding:5px 4px; color:#d94f83; font-size:9px; font-weight:800; text-decoration:none; white-space:nowrap; }
.community-page .visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.community-notification-link svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
@media(min-width:600px) {
  .community-page .community-hero { min-height:220px; }
  .community-page .community-hero-actions { gap:12px; }
  .community-page .community-portal-card { min-height:88px; grid-template-columns:58px minmax(0,1fr) 24px; padding:11px 16px; }
  .community-page .community-entry-icon { width:56px; height:56px; }
  .community-page .community-portal-card strong { font-size:14px; }
  .community-page .community-portal-card small { font-size:11px; }
}
@media(max-width:420px) {
  .community-page .community-hero { min-height:142px; padding:12px; background-position:65% 38%; }
  .community-page .community-hero-copy { max-width:52%; }
  .community-page .community-hero-copy h1 { font-size:clamp(19px,5.7vw,25px); }
  .community-page .community-hero-copy > span { font-size:9px; }
  .community-page .community-hero-actions { gap:6px; }
  .community-page .community-portal-card { min-height:72px; grid-template-columns:32px minmax(0,1fr) 9px; gap:4px; padding:6px 5px; }
  .community-page .community-entry-icon { width:32px; height:32px; }
  .community-page .community-portal-card strong { font-size:10px; }
  .community-page .community-portal-card small { font-size:7px; }
  .community-page .community-portal-card > b { font-size:15px; }
}

/* Dedicated Page 2: compact, image-led category browsing. */
.community-category-page { padding-top:0; }
.community-category-topbar { position:sticky; top:0; z-index:32; display:grid; grid-template-columns:42px minmax(0,1fr) 42px; align-items:center; min-height:52px; gap:5px; padding:5px 12px; border-bottom:1px solid #f3e5ea; background:#fff9fbf5; backdrop-filter:blur(18px); }
.community-category-topbar > button { display:grid; width:36px; height:36px; place-items:center; border:0; border-radius:50%; background:transparent; color:#533c47; font:inherit; font-size:28px; line-height:1; cursor:pointer; }
.community-category-topbar > button:last-of-type { justify-self:end; }
.community-category-topbar > button svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; }
.community-category-topbar h1 { margin:0; color:#523a45; font-size:15px; font-weight:800; text-align:center; }
.community-category-search { display:flex; grid-column:1/-1; gap:7px; padding:5px 0 3px; }
.community-category-search:not([hidden]) { display:flex; }
.community-category-search input { flex:1; min-width:0; min-height:36px; padding:0 12px; border:1px solid #f1dce5; border-radius:99px; background:#fff; color:#604654; font:inherit; font-size:12px; outline:none; }
.community-category-search button { padding:0 14px; border:0; border-radius:99px; background:#ff5b91; color:#fff; font:inherit; font-size:11px; font-weight:800; }
.community-category-shell { width:min(1080px,calc(100% - 20px)); margin:0 auto; padding:12px 0 18px; }
.community-category-page .community-category-strip { display:flex; gap:7px; overflow-x:auto; margin:0 -2px 12px; padding:1px 2px 6px; scrollbar-width:none; }
.community-category-page .community-category-strip::-webkit-scrollbar { display:none; }
.community-category-page .community-category-strip button { display:grid; flex:0 0 46px; justify-items:center; gap:3px; padding:3px 0; border:0; border-radius:13px; background:transparent; color:#684d5a; font:inherit; font-size:9px; cursor:pointer; }
.community-category-page .community-category-strip button.active { background:#fff0f5; color:#e54882; font-weight:800; }
.community-category-page .community-category-strip button > span { display:grid; width:37px; height:37px; place-items:center; border:1px solid #fbe4ec; border-radius:50%; background:linear-gradient(145deg,#fff4f7,#ffe2ec); }
.community-category-page .community-category-strip img { width:29px; height:29px; object-fit:contain; }
.community-category-sort { display:flex; gap:6px; overflow-x:auto; margin:0 0 10px; padding:1px 1px 2px; scrollbar-width:none; }
.community-category-sort::-webkit-scrollbar { display:none; }
.community-category-sort button { flex:0 0 auto; min-height:30px; padding:0 15px; border:1px solid #f3e1e8; border-radius:99px; background:#fff; color:#88727e; font:inherit; font-size:10px; font-weight:700; cursor:pointer; }
.community-category-sort button.active { border-color:#ff5b91; background:#ff5b91; color:#fff; }
.community-category-feed { display:block; column-count:2; column-gap:8px; }
.community-category-post { position:relative; display:inline-block; width:100%; margin:0 0 9px; overflow:hidden; border:1px solid #f3e4e9; border-radius:12px; background:#fff; box-shadow:0 3px 10px #9e4e690d; break-inside:avoid; }
.community-category-post > button:first-child { display:block; width:100%; padding:0; border:0; background:transparent; color:inherit; text-align:left; cursor:pointer; }
.community-category-media { position:relative; display:block; overflow:hidden; aspect-ratio:var(--category-card-ratio,.9); background:#fae5ec; }
.community-category-media img,.community-category-media .community-post-image-demo { display:block; width:100%; height:100%; object-fit:cover; }
.community-category-media .community-post-image-demo { min-height:100%; padding:7px; background-size:cover,200% 200%; }
.community-category-post .community-category-bookmark { position:absolute; z-index:2; top:6px; right:6px; display:grid; width:25px; height:25px; place-items:center; padding:0; border:1px solid #ffffffc9; border-radius:50%; background:#ffffffd9; color:#654c57; font-size:15px; line-height:1; cursor:pointer; }
.community-category-post .community-category-bookmark[aria-pressed="true"] { color:#ff5b91; }
.community-category-bookmark svg { display:block; width:14px; height:16px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.community-category-content { display:grid; gap:5px; padding:7px 7px 6px; }
.community-category-author { display:flex; min-width:0; align-items:center; gap:5px; }
.community-category-avatar { width:23px; height:23px; flex:0 0 23px; border:1px solid #fff; border-radius:50%; background-image:url('/images/review-portrait-sheet.webp?release=AL-2026.11.03.14'); background-size:500% 400%; background-repeat:no-repeat; }
.community-category-author-copy { display:grid; min-width:0; flex:1; gap:1px; }
.community-category-author-copy strong { overflow:hidden; color:#503b45; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
.community-category-author-copy small { color:#9a838e; font-size:8px; }
.community-category-follow { flex:0 0 auto; padding:3px 5px; border:1px solid #ffd8e4; border-radius:99px; background:#fff8fa; color:#e84f84; font:inherit; font-size:8px; cursor:pointer; }
.community-category-title { display:-webkit-box; overflow:hidden; color:#503b45; font-size:9px; font-weight:800; line-height:1.45; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.community-category-body { display:-webkit-box; overflow:hidden; color:#806b76; font-size:8px; line-height:1.45; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.community-category-actions { display:flex; align-items:center; gap:10px; padding:1px 2px 0; }
.community-category-actions button { display:flex; align-items:center; gap:3px; padding:0; border:0; background:transparent; color:#896f7c; font:inherit; font-size:9px; cursor:pointer; }
.community-category-actions button:disabled { opacity:.55; cursor:default; }
.community-category-actions .community-category-save { margin-left:auto; }
.community-category-page .community-message { bottom:calc(72px + env(safe-area-inset-bottom)); }
@media(min-width:640px) { .community-category-shell { width:min(900px,calc(100% - 36px)); } .community-category-page .community-category-strip { gap:14px; } .community-category-page .community-category-strip button { flex-basis:56px; font-size:10px; } .community-category-page .community-category-strip button > span { width:46px; height:46px; } .community-category-page .community-category-strip img { width:36px; height:36px; } .community-category-sort button { min-height:34px; font-size:12px; } .community-category-feed { column-gap:14px; } .community-category-post { margin-bottom:14px; border-radius:16px; } .community-category-content { gap:7px; padding:10px; } .community-category-avatar { width:32px; height:32px; flex-basis:32px; } .community-category-author-copy strong { font-size:11px; } .community-category-author-copy small { font-size:9px; } .community-category-title { font-size:12px; } .community-category-body { font-size:10px; } .community-category-actions button { font-size:10px; } }
@media(min-width:950px) { .community-category-feed { column-count:3; } }

/* Standalone post composer (Page 3). */
.community-publish-page { min-height:100dvh; background:#fff9fb; }
.community-publish-shell { width:min(100%,540px); min-height:100dvh; margin:0 auto; padding:0 20px calc(28px + env(safe-area-inset-bottom)); border-right:1px solid #f5e5eb; border-left:1px solid #f5e5eb; background:#fff; box-shadow:0 0 38px #d08ba112; }
.community-publish-topbar { position:sticky; z-index:4; top:0; display:grid; grid-template-columns:44px 1fr 92px; align-items:center; min-height:74px; margin:0 -20px 16px; padding:env(safe-area-inset-top) 20px 0; border-bottom:1px solid #f6e9ee; background:#fffdfef2; backdrop-filter:blur(16px); }
.community-publish-topbar h1 { margin:0; color:#553744; text-align:center; font-size:16px; }
.community-publish-topbar > button { width:40px; height:40px; border:0; border-radius:50%; background:transparent; color:#503744; font:inherit; font-size:30px; line-height:1; cursor:pointer; }
.community-publish-topbar > .community-publish-submit { justify-self:end; width:auto; min-width:88px; height:42px; padding:0 19px; border-radius:99px; background:#ff5b91; color:#fff; font-size:14px; font-weight:800; }
#community-publish-form { display:grid; gap:0; }
.community-publish-media-section { padding:4px 0 16px; border-bottom:1px solid #f0e7eb; }
.community-publish-media-list { display:flex; gap:10px; overflow-x:auto; padding:3px 1px 8px; scrollbar-width:thin; }
.community-publish-add,.community-publish-thumb { position:relative; display:flex; width:104px; height:104px; flex:0 0 104px; flex-direction:column; align-items:center; justify-content:center; overflow:hidden; border:1px solid #f0e7eb; border-radius:15px; background:#fffafd; color:#9b8791; }
.community-publish-add { gap:3px; border-style:solid; font:inherit; cursor:pointer; }
.community-publish-add > span { color:#82717a; font-size:33px; font-weight:300; line-height:1; }
.community-publish-add > small { font-size:10px; }
.community-publish-thumb img,.community-publish-thumb video { width:100%; height:100%; object-fit:cover; }
.community-publish-remove { position:absolute; top:5px; right:5px; display:grid; width:25px; height:25px; place-items:center; border:1px solid #ffffffaa; border-radius:50%; background:#33242ccc; color:#fff; font-size:18px; line-height:1; cursor:pointer; }
.community-publish-video-badge { position:absolute; right:5px; bottom:5px; padding:3px 6px; border-radius:20px; background:#33242ccc; color:#fff; font-size:9px; }
.community-publish-reorder { position:absolute; right:4px; bottom:4px; display:flex; overflow:hidden; border-radius:99px; background:#ffffffdf; box-shadow:0 1px 5px #39283224; }
.community-publish-reorder button { width:26px; height:25px; border:0; background:transparent; color:#7a5b6a; font-size:20px; line-height:1; cursor:pointer; }
.community-publish-reorder button:disabled { opacity:.3; cursor:default; }
.community-publish-file-hint { margin:4px 1px 0; color:#9a8790; font-size:10px; line-height:1.55; }
.community-publish-copy-label { position:relative; display:block; padding:16px 2px 28px; border-bottom:1px solid #f0e7eb; }
#community-publish-copy { display:block; width:100%; min-height:185px; padding:5px 4px; resize:vertical; border:0; outline:0; background:transparent; color:#4e3a44; font:inherit; font-size:17px; line-height:1.8; white-space:pre-wrap; }
#community-publish-copy::placeholder { color:#b9a9b0; }
.community-publish-counter { position:absolute; right:5px; bottom:12px; color:#a6989e; font-size:12px; }
.community-publish-counter b { font-weight:500; }
.community-publish-settings { border-bottom:1px solid #f0e7eb; }
.community-publish-setting { display:flex; width:100%; min-height:58px; align-items:center; gap:12px; padding:0 2px; border:0; border-bottom:1px solid #f7eff2; background:transparent; color:#59454f; text-align:left; font:inherit; font-size:14px; cursor:pointer; }
.community-publish-setting-icon { display:grid; width:25px; flex:0 0 25px; place-items:center; color:#62505a; font-size:20px; }
.community-publish-setting-value { margin-left:auto; color:#988790; }
.community-publish-setting select { max-width:150px; margin-left:auto; padding:8px 24px 8px 10px; border:0; background:transparent; color:#8b7b83; text-align:right; font:inherit; outline-color:#ff8fb0; }
.community-publish-tag-setting { padding-bottom:12px; border-bottom:1px solid #f7eff2; }
.community-publish-tag-setting .community-publish-setting { border:0; cursor:default; }
.community-publish-tag-setting .community-publish-setting label { cursor:pointer; }
.community-publish-tag-setting .community-publish-setting label small { color:#9f8c95; }
.community-publish-tags { display:flex; flex-wrap:wrap; gap:7px; padding:0 0 9px 37px; }
.community-publish-tag-chip { padding:7px 11px; border:0; border-radius:99px; background:#fff0f5; color:#df5d88; font:inherit; font-size:11px; cursor:pointer; }
.community-publish-tag-chip span:first-of-type { margin-left:3px; }
.community-publish-tag-entry { display:flex; gap:8px; padding-left:37px; }
.community-publish-tag-entry input { min-width:0; flex:1; padding:8px 10px; border:1px solid #f1e2e8; border-radius:10px; background:#fffafd; color:#59454f; font:inherit; font-size:12px; }
.community-publish-tag-entry button { padding:6px 12px; border:0; border-radius:99px; background:#fff0f5; color:#da5684; font:inherit; font-size:11px; cursor:pointer; }
.community-publish-reward { display:flex; align-items:center; gap:13px; margin:20px 0 10px; padding:16px; border-radius:19px; background:linear-gradient(105deg,#fff0f5,#fff7f9); }
.community-publish-reward > span { font-size:34px; }
.community-publish-reward strong { color:#da4c7d; font-size:15px; }
.community-publish-reward p { margin:4px 0 0; color:#967f8a; font-size:12px; }
.community-publish-status { min-height:20px; margin:4px 0; color:#bb416b; text-align:center; font-size:12px; line-height:1.5; }
.community-publish-choice-dialog { position:fixed; width:min(420px,calc(100vw - 28px)); max-height:min(75dvh,640px); padding:25px 18px 16px; overflow:auto; border:1px solid #f1dce5; border-radius:22px; background:#fff; color:#553744; box-shadow:0 20px 80px #4b1e3238; }
.community-publish-choice-dialog::backdrop { background:#46233278; backdrop-filter:blur(5px); }
.community-publish-choice-dialog section { display:grid; gap:12px; }
.community-publish-choice-dialog h2 { margin:0; font-size:20px; }
.community-publish-choice { display:flex; width:100%; min-height:47px; align-items:center; justify-content:space-between; padding:0 12px; border:0; border-bottom:1px solid #f4e9ed; background:#fff; color:#5e4652; text-align:left; font:inherit; cursor:pointer; }
.community-publish-choice.selected { color:#e95686; font-weight:800; }
@media(max-width:420px) { .community-publish-shell { padding-right:15px; padding-left:15px; } .community-publish-topbar { margin-right:-15px; margin-left:-15px; padding-right:15px; padding-left:15px; } .community-publish-copy-label { padding-top:13px; } #community-publish-copy { min-height:175px; font-size:16px; } }

/* Community feed cards use one shared image ratio and text rhythm so card
   sizes stay aligned instead of varying with each post's photo or copy. */
.community-page .community-feed {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  column-count:initial;
}
.community-page .community-post {
  display:flex;
  width:100%;
  min-width:0;
  min-height:0;
  flex-direction:column;
  margin:0;
  break-inside:initial;
}
.community-page .community-post-open {
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  min-width:0;
}
.community-page .community-post-media-link {
  width:100%;
  aspect-ratio:4 / 3;
  flex:0 0 auto;
}
.community-page .community-post-image {
  width:100%;
  height:100%;
  object-fit:cover;
}
.community-page .community-post-content {
  display:flex !important;
  flex:1 1 auto;
  flex-direction:column;
  min-height:174px;
  padding:13px 14px 10px;
}
.community-page .community-post-head { min-height:36px; flex:0 0 36px; }
.community-page .community-post-byline { align-content:center; min-height:36px; }
.community-page .community-post-byline strong { display:-webkit-box; overflow:hidden; white-space:normal; -webkit-box-orient:vertical; -webkit-line-clamp:1; }
.community-page .community-post-byline small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.community-page .community-post-title {
  min-height:42px;
  max-height:42px;
  margin:9px 0 4px;
  font-size:14px;
  line-height:1.5;
  -webkit-line-clamp:2;
}
.community-page .community-post-body {
  min-height:56px;
  max-height:56px;
  font-size:12px;
  line-height:1.55;
  -webkit-line-clamp:3;
}
.community-page .community-post-actions {
  min-height:40px;
  margin-top:auto;
  padding:7px 13px 9px;
}

@media (min-width:701px) and (max-width:1050px) {
  .community-page .community-feed { grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; }
}
@media (max-width:700px) {
  .community-page .community-feed { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .community-page .community-post { border-radius:14px; }
  .community-page .community-post-media-link { aspect-ratio:1 / 1; }
  .community-page .community-post-content { min-height:147px; padding:9px 9px 7px; }
  .community-page .community-post-head { min-height:29px; flex-basis:29px; gap:5px; }
  .community-page .community-post-avatar { width:27px; height:27px; flex-basis:27px; }
  .community-page .community-post-byline { min-height:29px; gap:1px; }
  .community-page .community-post-byline strong { font-size:10px; }
  .community-page .community-post-byline small { font-size:8px; }
  .community-page .community-post-title { min-height:34px; max-height:34px; margin:6px 0 3px; font-size:11px; line-height:1.5; }
  .community-page .community-post-body { min-height:39px; max-height:39px; font-size:9px; line-height:1.45; -webkit-line-clamp:3; }
  .community-page .community-post-actions { min-height:32px; gap:8px; padding:5px 9px 7px; }
  .community-page .community-post-actions button { font-size:9px; }
}
@media (max-width:380px) {
  .community-page .community-feed { grid-template-columns:1fr; }
  .community-page .community-post-media-link { aspect-ratio:4 / 3; }
}

/* Match the supplied desktop and mobile community landing layouts. */
@media (min-width:701px) {
  .community-page { padding-bottom:24px; }
  .community-page .community-topbar { display:none; }
  .community-page .community-shell { width:min(1600px,calc(100% - 72px)); padding:16px 0 48px; }
  .community-page .community-hero { display:flex; min-height:330px; margin:0 0 17px; padding:36px clamp(40px,8vw,150px); border:0; border-radius:28px; background-image:linear-gradient(90deg,#ffe7f0f2 0%,#ffe7f0da 39%,#ffe7f06b 59%,transparent 78%),url('/assets/explore-desktop-hero.webp?release=AL-2026.11.03.14'); background-size:cover; background-position:center 44%; }
  .community-page .community-hero-copy { max-width:54%; }
  .community-page .community-hero-copy > p { color:#a9365e; font-size:15px; }
  .community-page .community-hero-copy h1 { margin-bottom:10px; color:#d92c69; font-size:clamp(46px,4.5vw,68px); }
  .community-page .community-hero-copy > span { color:#582b40; font-size:22px; }
  .community-page .community-hero-cta { min-height:52px; margin-top:20px; padding:0 28px; font-size:17px; }
  .community-page .community-hero-pagination { position:absolute; right:46%; bottom:23px; z-index:2; display:flex; gap:10px; }
  .community-page .community-hero-pagination i { width:13px; height:13px; border-radius:50%; background:#fff; box-shadow:0 1px 4px #9a45611e; }
  .community-page .community-hero-pagination i:first-child { background:#ec3e7e; }
  .community-page .community-hero-actions { width:100%; max-width:none; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:0 10px 20px; }
  .community-page .community-portal-card { display:grid; grid-template-columns:155px minmax(0,1fr) 30px; min-height:122px; justify-items:stretch; gap:12px; padding:13px 22px; border-radius:26px; text-align:left; }
  .community-page .community-entry-icon { width:128px; height:100px; object-fit:contain; margin:0; background:transparent; }
  .community-page .community-portal-card > span { display:grid; width:auto; height:auto; align-content:center; justify-items:start; margin:0; border-radius:0; background:transparent; }
  .community-page .community-portal-card strong { color:#653145; font-size:26px; }
  .community-page .community-portal-card small { margin:6px 0 0; color:#794a5e; font-size:17px; }
  .community-page .community-portal-card > b { align-self:center; width:auto; padding:0; background:transparent; color:#e94a83; font-size:34px; }
  .community-page .community-global-search { display:none; }
  .community-page .community-feed-tools { margin:0 8px 12px; padding:0; border:0; }
  .community-page .community-sort-tabs { gap:10px; }
  .community-page .community-sort-tabs button { min-height:49px; padding:0 26px; border:1px solid #f2e0e7; background:#fff; color:#493c43; font-size:18px; }
  .community-page .community-sort-tabs button.active { border-color:#f24d88; background:#f24d88; color:#fff; }
  .community-page .community-home-category-row { display:block; }
  .community-page .community-home-category-row .community-category-strip { display:flex; justify-content:space-between; gap:11px; overflow:visible; margin:0 0 18px; padding:0 8px; }
  .community-page .community-category-strip button { flex:1 1 0; min-width:70px; gap:8px; padding:8px 6px 9px; border-radius:21px; font-size:16px; }
  .community-page .community-category-strip button span { width:74px; height:74px; border:0; background:#fff0f5; }
  .community-page .community-category-strip img { width:58px; height:58px; }
  .community-page .community-category-strip button.active { background:#ffe5ee; color:#d8326e; }
  .community-page .community-home-category-more { display:none; }
  .community-page .community-feed { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
  .community-page .community-post { border-radius:22px; }
  .community-page .community-post-media-link { aspect-ratio:1.42; }
  .community-page .community-post-content { min-height:190px; padding:16px 18px 12px; }
  .community-page .community-post-head { min-height:42px; flex-basis:42px; gap:9px; }
  .community-page .community-post-avatar { width:38px; height:38px; flex-basis:38px; }
  .community-page .community-post-byline { min-height:42px; }
  .community-page .community-post-byline strong { font-size:15px; }
  .community-page .community-post-byline small { font-size:13px; }
  .community-page .community-post-title { min-height:52px; max-height:52px; margin:10px 0 5px; font-size:19px; }
  .community-page .community-post-body { min-height:54px; max-height:54px; font-size:15px; line-height:1.55; }
  .community-page .community-post-actions { min-height:48px; padding:8px 18px 12px; }
  .community-page .community-post-actions button { font-size:15px; }
}
.community-page .site-backbar { display:none !important; }
@media (max-width:700px) {
  .community-page .community-topbar { grid-template-columns:1fr; min-height:0; padding:8px 14px; }
  .community-page .community-top-row { grid-template-columns:minmax(0,1fr) 34px; }
  .community-page .community-location-link { display:none; }
  .community-page .community-notification-link { grid-column:2; grid-row:1; }
  .community-page .community-shell { width:calc(100% - 24px); padding:8px 0 20px; }
  .community-page .community-hero { min-height:168px; margin-bottom:9px; padding:16px 15px; border-radius:18px; background-image:linear-gradient(90deg,#ffe7f0f2 0%,#ffe7f0d9 40%,#ffe7f04a 68%,transparent 100%),url('/assets/explore-desktop-hero.webp?release=AL-2026.11.03.14'); background-position:65% center; }
  .community-page .community-hero-copy { max-width:60%; }
  .community-page .community-hero-copy > p { font-size:8px; }
  .community-page .community-hero-copy h1 { font-size:clamp(20px,5.6vw,30px); }
  .community-page .community-hero-copy > span { font-size:10px; }
  .community-page .community-hero-cta { min-height:31px; margin-top:9px; padding:0 13px; font-size:10px; }
  .community-page .community-hero-pagination { position:absolute; right:12px; bottom:10px; z-index:2; display:flex; gap:5px; }
  .community-page .community-hero-pagination i { width:7px; height:7px; border-radius:50%; background:#fff; }
  .community-page .community-hero-pagination i:first-child { background:#ec3e7e; }
  .community-page .community-hero-actions { width:auto; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:0 0 9px; }
  .community-page .community-portal-card { display:grid; grid-template-columns:48px minmax(0,1fr) 12px; min-height:72px; justify-items:stretch; gap:5px; padding:7px 8px; border-radius:16px; text-align:left; }
  .community-page .community-entry-icon { width:46px; height:48px; object-fit:contain; margin:0; background:transparent; }
  .community-page .community-portal-card > span { display:grid; width:auto; height:auto; align-content:center; justify-items:start; margin:0; border-radius:0; background:transparent; }
  .community-page .community-portal-card strong { color:#60364a; font-size:11px; }
  .community-page .community-portal-card small { margin:3px 0 0; font-size:8px; }
  .community-page .community-portal-card > b { align-self:center; width:auto; padding:0; background:transparent; color:#e94a83; font-size:20px; }
  .community-page .community-global-search { display:flex; min-height:40px; margin:0 0 9px; padding:0 13px; border-radius:99px; box-shadow:0 3px 9px #9a45610b; }
  .community-page .community-global-search input { min-height:38px; font-size:11px; }
  .community-page .community-feed-tools { margin:0 0 7px; }
  .community-page .community-sort-tabs { gap:5px; }
  .community-page .community-sort-tabs button { min-height:31px; padding:0 11px; font-size:10px; }
  .community-page .community-home-category-row { display:block; }
  .community-page .community-home-category-row .community-category-strip { justify-content:flex-start; gap:9px; overflow-x:auto; margin:0 -2px 9px; padding:2px 2px 7px; }
  .community-page .community-category-strip button { flex:0 0 55px; gap:4px; padding:4px 2px; border-radius:13px; font-size:9px; }
  .community-page .community-category-strip button span { width:43px; height:43px; border:1px solid #fbe4ec; background:linear-gradient(145deg,#fff4f7,#ffe2ec); }
  .community-page .community-category-strip img { width:34px; height:34px; }
  .community-page .community-home-category-more { display:none; }
  .community-page .community-feed { grid-template-columns:1fr; gap:10px; }
  .community-page .community-post { border-radius:16px; }
  .community-page .community-post-media-link { aspect-ratio:1.42; }
  .community-page .community-post-content { min-height:0; padding:10px 12px 8px; }
  .community-page .community-post-head { min-height:34px; flex-basis:34px; gap:7px; }
  .community-page .community-post-avatar { width:31px; height:31px; flex-basis:31px; }
  .community-page .community-post-byline { min-height:34px; }
  .community-page .community-post-byline strong { font-size:11px; }
  .community-page .community-post-byline small { font-size:9px; }
  .community-page .community-post-title { min-height:0; max-height:42px; margin:7px 0 4px; font-size:14px; }
  .community-page .community-post-body { min-height:0; max-height:50px; font-size:11px; }
  .community-page .community-post-actions { min-height:34px; padding:5px 12px 8px; }
  .community-page .community-post-actions button { font-size:11px; }
}
