:root{
      --community-bg:#f4f8fc;
      --community-paper:#FFFFFF;
      --community-ink:#07315f;
      --community-muted:#60748c;
      --community-soft:#f8fbff;
      --community-line:#cfe0f2;
      --community-line-strong:#b8d0eb;
      --community-navy:#00366d;
      --community-navy-hover:#004f98;
      --community-accent:#0067c9;
      --community-accent-soft:#eaf4ff;
      --community-teal:#0067c9;
      --community-green:#168a52;
      --community-orange:#d66a1f;
      --community-yellow:#f5b91f;
      --community-radius:8px;
      --community-shadow:0 8px 20px rgba(0,54,109,.08);
      --community-max:1160px;
    }

    body{
      background:
        linear-gradient(rgba(244,248,252,.96), rgba(244,248,252,.98)),
        url("/assets/images/brand/site-bg.jpg") center top / cover fixed no-repeat,
        var(--community-bg);
      color:var(--community-ink);
      overflow-x:hidden;
    }

    a{text-decoration:none}
    button,input,select{font:inherit}
    button{cursor:pointer}
    .community-shell{width:min(var(--community-max), calc(100% - 32px));margin:0 auto;padding:18px 0 84px}
    .skip-link{position:absolute;left:16px;top:-60px;z-index:500;background:#fff;color:#111;padding:10px 14px;border-radius:999px;border:1px solid var(--community-line)}
    .skip-link:focus{top:12px}

    .community-hero{
      border:1px solid var(--community-line);
      border-radius:8px;
      background:
        linear-gradient(110deg, rgba(255,255,255,.99) 0%, rgba(248,251,255,.96) 100%),
        #fff;
      box-shadow:var(--community-shadow);
      padding:18px;
    }

    .hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.48fr);gap:14px;align-items:center}
    .hero-copy{min-width:0}
    .hero-copy .jc-directory-breadcrumb{margin-bottom:8px}
    .hero-title{margin:0;font-size:clamp(26px,3.1vw,36px);line-height:1.12;letter-spacing:0;font-weight:900;max-width:760px;color:var(--community-navy)}
    .hero-desc{max-width:760px;margin:7px 0 0;color:var(--community-muted);font-size:14px;line-height:1.6}
    .hero-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:13px;max-width:760px}
    .community-cta-helper{grid-column:1/-1;margin:0;color:var(--community-muted);font-size:12px;line-height:1.4;font-weight:700}
    .search-control{position:relative}
    .search-control input{width:100%;height:48px;border:1px solid var(--community-line-strong);border-radius:7px;background:#fff;padding:0 44px 0 44px;outline:none;box-shadow:0 6px 16px rgba(30,58,95,.04)}
    .search-control input:focus{border-color:var(--community-navy);box-shadow:0 0 0 4px rgba(30,58,95,.12)}
    .search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#7c8794;font-weight:900}
    .search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:32px;height:32px;border:none;border-radius:999px;background:#f8fafc;color:#52606e;font-weight:900}
    .hero-actions{display:flex;gap:10px}
    .hero-actions.is-centered{justify-content:center}
    .btn{
      min-height:46px;
      border:1px solid transparent;
      border-radius:7px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      padding:0 16px;
      font-weight:900;
      transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
      white-space:nowrap;
    }
    .btn:hover{transform:translateY(-1px)}
    .btn:focus-visible,.chip-button:focus-visible,.select:focus-visible,.card-link:focus-visible,.detail-open-link:focus-visible,.modal-close:focus-visible,.safety-summary:focus-visible,.view-button:focus-visible{outline:3px solid rgba(30,58,95,.22);outline-offset:2px}
    .btn-primary{background:var(--community-navy);color:#fff;box-shadow:0 10px 22px rgba(30,58,95,.18)}
    .btn-primary:hover{background:var(--community-navy-hover);box-shadow:0 14px 26px rgba(30,58,95,.20)}
    .hero-search .btn-primary{background:var(--community-navy);box-shadow:0 12px 24px rgba(30,58,95,.20)}
    .hero-search .btn-primary:hover{background:var(--community-navy-hover);box-shadow:0 16px 28px rgba(30,58,95,.22)}
    .btn-secondary{background:#fff;color:var(--community-navy);border-color:var(--community-line-strong)}
    .btn-soft{background:#f8fafc;color:#24313d;border-color:var(--community-line)}
    .hero-insight{border:1px solid var(--community-line);background:rgba(255,255,255,.92);border-radius:8px;padding:12px;box-shadow:0 6px 16px rgba(30,58,95,.05)}
    .hero-safety{align-self:stretch;display:flex;flex-direction:column;justify-content:center}
    .hero-safety .safety-summary{font-size:15px;color:var(--community-navy)}
    .hero-safety .safety-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}
    .hero-safety .safety-list li{font-size:12px;line-height:1.35;padding:7px 8px}
    .hero-safety .result-text{font-size:12px;line-height:1.5;margin-top:8px}
    .hero-insight-label{font-size:11px;font-weight:900;color:#697684}
    .hero-insight-title{font-size:15px;font-weight:900;margin-top:4px;line-height:1.35}
    .hero-insight-meta{font-size:12px;color:#5c6975;font-weight:800;margin-top:4px}
    .hero-insight-actions{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}
    .mini-link{border:1px solid var(--community-line);background:#fff;border-radius:999px;min-height:34px;padding:0 11px;display:inline-flex;align-items:center;justify-content:center;line-height:1;font-family:inherit;text-decoration:none;font-size:12px;font-weight:900;color:#34414d}
    .loading-lines{display:grid;gap:7px}
    .skeleton-text{display:block;height:12px;border-radius:999px;background:linear-gradient(90deg,#edf2f7 0%,#f8fafc 46%,#edf2f7 92%);background-size:220% 100%;animation:skeleton 1.15s linear infinite}
    .skeleton-text.title{height:18px;width:min(100%,260px)}
    .skeleton-text.short{width:46%}
    .skeleton-text.medium{width:68%}

    .community-onboarding{
      margin-top:12px;
      border:1px solid var(--community-line);
      border-radius:8px;
      background:rgba(255,255,255,.96);
      box-shadow:0 6px 16px rgba(30,58,95,.05);
      padding:10px 12px;
    }
    .community-onboarding-head{
      display:grid;
      grid-template-columns:minmax(0,1fr) minmax(280px,.64fr);
      gap:12px;
      align-items:center;
      margin-bottom:8px;
    }
    .community-section-kicker{
      margin:0 0 4px;
      color:var(--community-accent);
      font-size:11px;
      font-weight:900;
      letter-spacing:.06em;
    }
    .community-onboarding h2{
      margin:0;
      color:var(--community-navy);
      font-size:20px;
      line-height:1.25;
      font-weight:900;
      letter-spacing:0;
    }
    .community-onboarding-head p:last-child{
      margin:0;
      color:var(--community-muted);
      font-size:13px;
      line-height:1.55;
      font-weight:700;
    }
    .community-use-cases{
      display:grid;
      grid-template-columns:repeat(5,minmax(0,1fr));
      gap:8px;
    }
    .community-use-card{
      min-height:74px;
      border:1px solid var(--community-line);
      border-radius:8px;
      background:linear-gradient(180deg,#fff 0%,var(--community-soft) 100%);
      padding:9px 10px;
      display:grid;
      align-content:start;
      gap:6px;
      box-shadow:0 4px 10px rgba(30,58,95,.035);
    }
    .community-use-card h3{
      margin:0;
      color:var(--community-ink);
      font-size:14px;
      line-height:1.35;
      font-weight:900;
      letter-spacing:0;
    }
    .community-use-card p{
      margin:0;
      color:var(--community-muted);
      font-size:12px;
      line-height:1.5;
      font-weight:700;
    }

    .chip-button{
      border:1px solid var(--community-line);
      background:#fff;
      color:#2f3a45;
      min-height:32px;
      border-radius:7px;
      padding:0 10px;
      display:inline-flex;
      align-items:center;
      gap:7px;
      font-size:12px;
      font-weight:900;
      white-space:nowrap;
      transition:background .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease,color .16s ease;
    }
    .chip-button:hover{transform:translateY(-1px);border-color:var(--community-line-strong);box-shadow:0 6px 14px rgba(30,58,95,.05)}
    .chip-button:active{transform:translateY(0)}
    .chip-button:disabled{cursor:default;color:#748190;background:#f8fafc;border-style:dashed;box-shadow:none}
    .chip-button:disabled:hover{transform:none;border-color:var(--community-line)}
    .chip-button.active{background:var(--community-navy);color:#fff;border-color:var(--community-navy);box-shadow:0 8px 16px rgba(30,58,95,.14)}
    .reset-button{border-color:var(--community-line-strong);background:var(--community-accent-soft);color:var(--community-navy)}
    .reset-button:hover{background:#fff;border-color:var(--community-accent)}
    .chip-skeleton{display:block;width:100%;height:36px;border-radius:10px;background:linear-gradient(90deg,#edf2f7 0%,#f8fafc 46%,#edf2f7 92%);background-size:220% 100%;animation:skeleton 1.15s linear infinite}
    .filter-bar .chip-button{width:100%;justify-content:flex-start;border-radius:10px}
    .filter-panel-heading .chip-button{width:auto;justify-content:center}

    .marketplace-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:16px;margin-top:16px;align-items:start}
    .filter-bar{
      position:sticky;
      top:88px;
      z-index:80;
      max-height:calc(100vh - 108px);
      overflow-y:auto;
      overscroll-behavior:contain;
      scrollbar-gutter:stable;
      background:#fff;
      border:1px solid var(--community-line);
      border-radius:8px;
      box-shadow:var(--community-shadow);
      padding:12px;
      align-self:start;
    }
    .filter-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
    .filter-panel-heading h2{font-size:18px;font-weight:900;letter-spacing:0;color:var(--community-navy)}
    .filter-panel-helper{margin:-4px 0 10px;color:var(--community-muted);font-size:12px;line-height:1.45;font-weight:700}
    .filter-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:11px}
    .filter-row{display:block;min-width:0}
    .filter-label{display:block;font-size:11px;font-weight:900;color:#627080;white-space:nowrap;margin-bottom:6px}
    .filter-row:first-child .filter-label{color:var(--community-navy)}
    .filter-rail,.subcategory-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;overflow:visible;padding:0;min-width:0;max-width:100%}
    .filter-rail .chip-button,.subcategory-rail .chip-button{min-width:0;white-space:normal;text-align:left;line-height:1.25;padding:6px 9px}
    .subcategory-rail .chip-button{min-height:32px;font-size:11px}
    .select{width:100%;height:34px;border:1px solid var(--community-line);background:#fff;border-radius:7px;padding:0 10px;color:#283541;font-weight:800;outline:none;font-size:12px}
    .select:disabled{background:#eef3f7;color:#738192;cursor:not-allowed}
    .filter-control-hint{margin:5px 0 0;color:var(--community-muted);font-size:11px;line-height:1.35;font-weight:700}
    .community-quick-filters{
      margin-top:10px;
      display:grid;
      gap:7px;
      max-width:100%;
    }
    .community-quick-filters__head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      color:var(--community-muted);
      font-size:11px;
      font-weight:900;
      letter-spacing:.02em;
    }
    .community-clear-all{
      border:0;
      background:transparent;
      color:var(--community-navy);
      padding:0;
      font-size:11px;
      line-height:1.2;
      font-weight:900;
      text-decoration:underline;
      text-underline-offset:3px;
    }
    .community-clear-all:disabled{
      color:#8b98a6;
      cursor:default;
      text-decoration:none;
    }
    .community-toggle-line{display:flex;align-items:center;gap:8px;margin-top:7px;color:var(--community-muted);font-size:12px;font-weight:800;line-height:1.4}
    .community-toggle-line input{accent-color:var(--community-navy)}
    .community-cache-warning{margin:6px 0 0;color:#8a4a13;background:#fff7ed;border:1px solid #fed7aa;border-radius:7px;padding:7px 9px;font-size:12px;font-weight:800;line-height:1.45}
    .search-suggestions{display:flex;gap:7px;overflow-x:auto;scrollbar-width:thin;padding:1px;max-width:100%}
    .community-quick-chip{min-height:30px;border-radius:999px;padding:0 11px}
    .community-quick-chip.is-sort{background:#f8fafc}
    .community-quick-chip.active.is-sort{background:var(--community-accent-soft);border-color:var(--community-line-strong);color:var(--community-navy);box-shadow:0 6px 14px rgba(30,58,95,.08)}

    .content-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 12px;max-width:100%;overflow:visible}
    .content-head > div:first-child{min-width:0}
    .content-title{font-size:24px;font-weight:900;letter-spacing:0}
    .result-text{color:var(--community-muted);font-size:14px;margin-top:3px}
    .content-tools{display:grid;gap:8px;justify-items:end}
    .view-segment{display:inline-flex;border:1px solid var(--community-line);background:#fff;border-radius:8px;padding:3px;box-shadow:0 6px 14px rgba(25,39,52,.05)}
    .view-button{min-height:30px;border:0;background:transparent;border-radius:7px;padding:0 11px;font-size:12px;font-weight:900;color:#4d5b68;transition:background .16s ease,color .16s ease,transform .16s ease}
    .view-button:hover{background:#f8fafc;color:var(--community-navy)}
    .view-button:active{transform:scale(.98)}
    .view-button.active{background:var(--community-navy);color:#fff}
    .active-filters{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
    .active-pill{border:1px solid var(--community-line);background:#fff;border-radius:7px;padding:6px 10px;font-size:12px;font-weight:800;color:#384552}

    .board-grid{display:grid;grid-template-columns:1fr;gap:10px}
    .board-grid.grid-mode{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
    .card{
      border:1px solid var(--community-line);
      background:#fff;
      border-radius:8px;
      box-shadow:0 6px 14px rgba(30,58,95,.04);
      min-width:0;
      color:inherit;
      transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
      position:relative;
      overflow:hidden;
    }
    .card:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(30,58,95,.08);border-color:var(--community-line-strong)}
    .card:active{transform:translateY(0)}
    .card.is-closed{background:#fff8f8;border-color:#f2c8c8;box-shadow:none}
    .card.is-closed .card-title,
    .card.is-closed .card-excerpt{color:#5f6772}
    .card-link{color:inherit;display:flex;min-height:146px;overflow:hidden;padding:0 104px 0 0}
    .card-media{position:relative;flex:0 0 176px;min-height:156px;background:#eef3f6;overflow:hidden}
    .card.no-image .card-media{flex-basis:108px}
    .card.no-image .placeholder-art::before{width:48px;height:48px;border-radius:8px;font-size:22px}
    .card-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2;background:#eef3f6}
    .placeholder-art{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(135deg,#f8fafc 0%,#eaf4ff 100%);color:#3d4a56}
    .placeholder-art::before{content:attr(data-icon);width:62px;height:62px;border-radius:8px;display:grid;place-items:center;background:#fff;border:1px solid rgba(205,216,227,.9);box-shadow:0 10px 22px rgba(25,39,52,.08);font-size:30px}
    .image-count{position:absolute;right:9px;bottom:9px;z-index:3;background:rgba(23,32,42,.78);color:#fff;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:900}
    .card-body{padding:11px 12px 10px;display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}
    .card-top{display:flex;align-items:center;justify-content:flex-start;gap:7px;flex-wrap:wrap}
    .category-badge,.subcategory-badge,.price-badge,.location-badge,.trust-badge,.date-badge{display:inline-flex;align-items:center;border-radius:6px;font-size:11px;font-weight:900;line-height:1;padding:6px 8px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .category-badge{background:var(--community-navy);color:#fff}
    .category-badge.give{background:#0f6a3d}
    .category-badge.sell{background:#29466a}
    .subcategory-badge{background:var(--community-accent-soft);color:var(--community-navy)}
    .price-badge{background:#f8fbff;color:var(--community-navy);border:1px solid var(--community-line)}
    .location-badge{background:#f8fafc;color:var(--community-navy);border:1px solid var(--community-line)}
    .date-badge{background:#fff;color:#5c6b78;border:1px solid var(--community-line)}
    .status-badge{background:#eafaf1;color:#11643a;border:1px solid #bde9cd}
    .status-badge.is-closed{background:#f1f5f9;color:#475569;border-color:#cbd5e1}
    .closed-ribbon{
      position:absolute;
      left:10px;
      top:10px;
      z-index:4;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:30px;
      border-radius:7px;
      background:rgba(166,32,32,.92);
      color:#fff;
      border:1px solid rgba(255,255,255,.45);
      padding:0 10px;
      font-size:12px;
      font-weight:900;
      box-shadow:0 8px 18px rgba(166,32,32,.18);
    }
    .closed-inline-label{
      width:max-content;
      max-width:100%;
      border:1px solid #efb8b8;
      border-radius:7px;
      background:#fff1f1;
      color:#9b1c1c;
      padding:6px 8px;
      font-size:12px;
      line-height:1.25;
      font-weight:900;
    }
    .card-top .price-badge{font-size:12px}
    .price-badge.free{background:#def7e8;color:#0f6a3d;border:1px solid #bde9cd}
    .card-price{
      color:#0f2f57;
      font-size:18px;
      line-height:1.2;
      font-weight:900;
      letter-spacing:0;
    }
    .card-price.free{color:#0f6a3d}
    .card-title{font-size:17px;font-weight:900;line-height:1.32;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;word-break:normal;overflow-wrap:anywhere}
    .card-meta{display:flex;flex-wrap:wrap;gap:8px;color:#465461;font-size:12px;font-weight:800}
    .card-excerpt{color:#536170;font-size:13px;line-height:1.55;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;word-break:normal;overflow-wrap:anywhere}
    .community-post-meta{min-width:0}
    .community-post-meta .subcategory-badge{max-width:min(100%, 180px)}
    .community-post-meta .location-badge{max-width:min(100%, 160px)}
    .trust-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
    .trust-badge{background:#f2f5f8;color:#536170}
    .trust-badge.urgent{background:#eef6ff;color:var(--community-navy);border:1px solid var(--community-line-strong)}
    .trust-badge.japanese{background:var(--community-accent-soft);color:var(--community-navy)}
    .save-button{position:absolute;right:10px;top:10px;z-index:5;width:36px;height:36px;border-radius:999px;border:1px solid rgba(205,216,227,.9);background:rgba(255,255,255,.94);box-shadow:0 8px 18px rgba(25,39,52,.10);font-size:18px;line-height:1;color:#52606e;transition:transform .16s ease,background .16s ease,color .16s ease}
    .save-button:active{transform:scale(.94)}
    .save-button.saved{background:var(--community-navy);color:#fff;border-color:var(--community-navy)}
    .save-button.inline{position:static;width:auto;min-inline-size:112px;min-height:46px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:900;white-space:nowrap}
    .card-actions{position:absolute;right:12px;bottom:12px;z-index:4;display:grid;gap:8px;justify-items:end}
    .detail-open-link{display:inline-flex;align-items:center;justify-content:center;min-height:36px;border:1px solid var(--community-line-strong);border-radius:10px;background:#fff;color:#23303b;padding:0 11px;font-size:12px;font-weight:900;box-shadow:0 6px 14px rgba(25,39,52,.06)}
    .detail-open-link:hover{border-color:#aebdca;background:#f8fafc}
    .detail-open-link.is-disabled{pointer-events:none;opacity:.62;background:#f1f5f9;color:#64748b;border-color:#cbd5e1}
    .detail-open-link.owner-link{color:#536170}
    .btn.is-disabled,.btn[aria-disabled="true"]{opacity:.62;cursor:not-allowed;pointer-events:none;filter:saturate(.75)}
    .owner-panel{margin-top:16px;border:1px solid var(--community-line);border-radius:8px;background:#f8fbff;padding:12px;display:grid;gap:8px}
    .owner-panel h3{margin:0;font-size:15px}
    .owner-panel p{margin:0;color:var(--community-muted);font-size:13px;line-height:1.7}
    .management-shell{display:grid;gap:16px;margin-top:18px}
    .management-panel,.completion-panel{background:#fff;border:1px solid var(--community-line);border-radius:8px;box-shadow:0 10px 28px rgba(12,30,46,.08);padding:18px}
    .management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
    .management-grid .full{grid-column:1/-1}
    .management-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
    .management-message{border-radius:8px;padding:10px 12px;font-size:14px;font-weight:800;line-height:1.7}
    .management-message:empty{display:none}
    .management-message.success{background:#effaf3;border:1px solid #c7ebd1;color:#21613a}
    .management-message.error{background:#fff5f5;border:1px solid #f6c9c9;color:#9b1c1c}
    .management-message.info{background:#f8fbff;border:1px solid var(--community-line);color:#34414d}
    .management-danger{border-color:#ffd5bb;background:#fff7ed;color:#a54912}
    .completion-copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
    .completion-copy-row input{width:100%}
    .board-grid.grid-mode .card-link{flex-direction:column;min-height:0;padding:0}
    .board-grid.grid-mode .card-media{flex:0 0 auto;min-height:0;aspect-ratio:16/10}
    .board-grid.grid-mode .card.no-image .card-media{aspect-ratio:4/1.65}
    .board-grid.grid-mode .card-actions{position:static;display:flex;justify-content:flex-end;padding:0 12px 12px}
    .board-grid.grid-mode .card-title{font-size:16px}
    .board-grid.grid-mode .card-excerpt{-webkit-line-clamp:3;line-clamp:3}
    .board-grid.grid-mode .community-post-meta .subcategory-badge,
    .board-grid.grid-mode .community-post-meta .location-badge{max-width:100%}

    .skeleton{pointer-events:none}
    .skeleton .card-media,.skeleton-line{background:linear-gradient(90deg,#edf2f7 0%,#f8fafc 46%,#edf2f7 92%);background-size:220% 100%;animation:skeleton 1.15s linear infinite}
    .skeleton-line{height:14px;border-radius:999px}
    .skeleton-line.tiny{width:26%;height:22px}
    .skeleton-line.short{width:58%}
    .skeleton-line.long{width:86%}
    @keyframes skeleton{to{background-position:-220% 0}}

    .empty-state{
      border:1px solid var(--community-line);
      background:#fff;
      border-radius:8px;
      box-shadow:var(--community-shadow);
      padding:20px;
    }
    .empty-state{text-align:center;display:none}
    .empty-state h2{font-size:20px}
    .empty-state p{color:var(--community-muted);margin:6px auto 14px;max-width:560px}
    .safety-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
    .safety-list li{list-style:none;background:#f8fafc;border:1px solid var(--community-line);border-radius:7px;padding:9px 10px;color:#44515e;font-size:13px;font-weight:700}
    .safety-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:900}
    .modal-shell{position:fixed;inset:0;z-index:300;display:none}
    .modal-shell.open{display:block}
    .modal-backdrop{position:absolute;inset:0;background:rgba(13,23,32,.48)}
    .modal-card{
      position:absolute;
      left:50%;
      top:50%;
      transform:translate(-50%,-50%);
      width:min(1040px, calc(100% - 32px));
      max-height:min(88vh, 820px);
      overflow:auto;
      background:#fff;
      border:1px solid var(--community-line);
      border-radius:10px;
      box-shadow:0 24px 70px rgba(13,23,32,.28);
    }
    .modal-close{position:sticky;top:12px;float:right;margin:12px 12px 0 0;z-index:2;width:40px;height:40px;border-radius:999px;border:1px solid var(--community-line);background:#fff;font-size:24px;line-height:1;color:#293541}
    .detail-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:0;clear:both}
    .detail-layout.no-image{display:block;max-width:760px;margin:0 auto;clear:both}
    .detail-gallery{background:linear-gradient(180deg,#f8fafc 0%,#eef3f6 100%);min-height:100%;padding:16px;display:grid;gap:10px;align-content:start}
    .detail-main-image{position:relative;aspect-ratio:4/3;border-radius:8px;overflow:hidden;background:#dfe7ef;display:grid;place-items:center}
    .detail-main-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
    .detail-placeholder{width:min(150px,42%);aspect-ratio:1;border-radius:10px;display:grid;place-items:center;background:#fff;border:1px solid rgba(205,216,227,.95);box-shadow:0 10px 22px rgba(25,39,52,.08);font-size:42px;font-weight:900;color:#3d4a56}
    .detail-thumbs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin;padding:2px}
    .detail-thumb-button{flex:0 0 78px;border:2px solid transparent;border-radius:13px;padding:0;background:transparent;overflow:hidden}
    .detail-thumb-button.active{border-color:var(--community-navy)}
    .detail-thumb-button img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;background:#e9eff5;display:block}
    .detail-thumbs[hidden]{display:none}
    .detail-content{padding:26px 24px 24px;min-width:0}
    .detail-layout.no-image .detail-content{padding:30px}
    .detail-compact-marker{width:58px;height:58px;border-radius:8px;background:#f8fafc;border:1px solid var(--community-line);box-shadow:0 10px 22px rgba(30,58,95,.06);display:grid;place-items:center;font-size:26px;font-weight:900;color:#3d4a56;margin-bottom:12px}
    .detail-content h2{font-size:clamp(24px,3.4vw,36px);line-height:1.18;font-weight:900;letter-spacing:0}
    .detail-price{margin-top:8px;color:#0f2f57;font-size:22px;line-height:1.2;font-weight:900}
    .detail-price.free{color:#0f6a3d}
    .detail-meta{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
    .detail-body{white-space:pre-wrap;color:#394653;line-height:1.8;margin-top:12px}
    .closed-detail-notice{
      display:grid;
      gap:3px;
      border:1px solid #efb8b8;
      border-left:5px solid #b91c1c;
      border-radius:8px;
      background:#fff1f1;
      color:#9b1c1c;
      padding:12px 14px;
      margin-bottom:14px;
    }
    .closed-detail-notice strong{font-size:16px;line-height:1.35}
    .closed-detail-notice span{color:#7f1d1d;font-size:13px;line-height:1.55;font-weight:800}
    .detail-facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
    .fact{background:#f8fafc;border:1px solid var(--community-line);border-radius:7px;padding:7px 10px;display:inline-flex;align-items:center;gap:6px}
    .fact-label{font-size:11px;color:var(--community-muted);font-weight:900}
    .fact-value{font-weight:900;overflow-wrap:anywhere;font-size:13px}
    .detail-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
    .detail-actions .btn,
    .detail-actions .save-button.inline{
      min-height:46px;
      border-radius:7px;
      font-weight:900;
    }
    .detail-actions .btn-primary{background:var(--community-navy);color:#fff;border-color:var(--community-navy);box-shadow:0 10px 22px rgba(30,58,95,.18)}
    .detail-actions .btn-primary:hover{background:var(--community-navy-hover);box-shadow:0 14px 26px rgba(30,58,95,.20)}
    .detail-actions .btn-secondary{background:#fff;color:var(--community-navy);border-color:var(--community-line-strong)}
    .detail-actions .btn-soft{background:#f8fafc;color:#24313d;border-color:var(--community-line)}
    .related-box{margin-top:16px;border-top:1px solid var(--community-line);padding-top:14px}
    .related-box h3{font-size:15px;margin-bottom:8px}
    .related-list{display:grid;gap:8px}
    .related-link{display:flex;justify-content:space-between;gap:12px;border:1px solid var(--community-line);border-radius:7px;padding:9px 10px;color:#263442;background:#fff;font-size:13px;font-weight:800}

    .mobile-action-bar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:120;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-top:1px solid var(--community-line);padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:8px}
    .mobile-action-bar .btn{flex:1;min-height:44px}

    @media (max-width:1180px){
      .marketplace-layout{grid-template-columns:252px minmax(0,1fr)}
      .card-link{padding-right:98px}
      .card-media{flex-basis:196px}
      .hero-grid{grid-template-columns:1fr}
      .hero-insight{max-width:760px}
      .community-use-cases{grid-template-columns:repeat(3,minmax(0,1fr))}
      .community-use-card{min-height:78px}
    }

    @media (max-width:860px){
      .community-shell{width:min(100% - 24px, var(--community-max));padding-top:12px}
      .community-hero{background:#fff;padding:14px;border-radius:8px}
      .community-onboarding{padding:12px;margin-top:12px}
      .community-onboarding-head{grid-template-columns:1fr;gap:6px;align-items:start}
      .community-use-cases{grid-template-columns:repeat(2,minmax(0,1fr))}
      .marketplace-layout{display:block;margin-top:14px}
      .hero-search{grid-template-columns:1fr 1fr}
      .hero-search .search-control{grid-column:1/-1}
      .hero-actions{display:grid;grid-template-columns:1fr 1fr}
      .hero-insight{max-width:none}
      .filter-bar{top:0;max-height:none;overflow:visible;overscroll-behavior:auto;border-radius:0;margin:0 -12px 14px;border-left:none;border-right:none;padding:8px;background:rgba(247,248,250,.92);backdrop-filter:blur(14px)}
      .filter-panel-heading{margin-bottom:8px}
      .filter-panel-heading h2{font-size:16px}
      .filter-grid{grid-template-columns:1fr}
      .filter-row{display:block;overflow:visible}
      .filter-label{margin:0 0 6px}
      .filter-rail,.subcategory-rail{grid-template-columns:1fr;gap:7px;overflow:visible;padding:1px}
      .chip-skeleton{width:100%;min-width:0;border-radius:10px}
      .filter-bar .chip-button{width:100%;justify-content:flex-start;border-radius:10px;min-height:36px;font-size:12px}
      .area-filter-row{display:grid;grid-template-columns:auto minmax(0,1fr)}
      .area-filter-row .filter-control-hint{grid-column:2}
      .select{min-width:0;width:100%;border-radius:7px;height:36px;font-size:12px}
      .content-head{align-items:flex-start;flex-direction:column}
      .content-tools{justify-items:start;width:100%}
      .active-filters{justify-content:flex-start}
      .community-quick-filters{width:100%}
      .search-suggestions{flex-wrap:wrap;overflow:visible}
      .detail-layout{grid-template-columns:1fr}
      .management-grid,.completion-copy-row{grid-template-columns:1fr}
      .modal-card{inset:auto 0 0 0;left:0;top:auto;transform:none;width:100%;max-height:94vh;border-radius:10px 10px 0 0}
      .mobile-action-bar{display:flex}
      .page-footer{margin-bottom:74px}
    }

    @media (max-width:520px){
      .site-header .header-inner{padding:8px 0;gap:8px}
      .site-header .brand{gap:8px}
      .site-header .brand-logo{width:104px;height:28px}
      .site-header .brand-title{font-size:12px;line-height:1.12}
      .site-header .brand-sub{display:none}
      .site-header .header-actions{gap:8px}
      .site-header .header-search,
      .site-header .header-language{display:none}
      .hero-grid{gap:10px}
      .hero-title{font-size:24px}
      .hero-desc{font-size:13px;line-height:1.55;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}
      .hero-search{margin-top:10px;gap:8px}
      .search-control input{height:46px}
      .hero-search .btn{min-height:42px;padding:0 10px}
      .community-cta-helper{font-size:11px}
      .card{border-radius:8px}
      .card-link{flex-direction:column;padding:0}
      .card-media,.card.no-image .card-media{flex-basis:auto;min-height:0;aspect-ratio:16/10}
      .card.no-image .card-media{aspect-ratio:4/1.45}
      .card-actions{position:static;display:flex;justify-content:flex-end;padding:0 12px 12px}
      .save-button{top:9px;right:9px}
      .hero-safety .safety-list,.safety-list,.detail-facts{grid-template-columns:1fr}
      .community-use-cases{grid-template-columns:1fr}
      .community-use-card{min-height:0}
      .detail-content{padding:20px 16px 18px}
      .detail-gallery{padding:10px}
      .detail-main-image{aspect-ratio:1.08}
      .detail-thumb-button{flex-basis:68px}
    }

    /* Dark theme polish for community listing, filters, and detail modal. */
    :root[data-theme="dark"] body{
      background:
        linear-gradient(rgba(7,17,31,.96), rgba(7,17,31,.98)),
        url("/assets/images/brand/site-bg.jpg") center top / cover fixed no-repeat,
        var(--color-bg, #07111f);
      color:var(--color-text, #e8f1fb);
    }

    :root[data-theme="dark"] .community-hero,
    :root[data-theme="dark"] .skip-link,
    :root[data-theme="dark"] .hero-insight,
    :root[data-theme="dark"] .community-onboarding,
    :root[data-theme="dark"] .community-use-card,
    :root[data-theme="dark"] .filter-bar,
    :root[data-theme="dark"] .card,
    :root[data-theme="dark"] .empty-state,
    :root[data-theme="dark"] .owner-panel,
    :root[data-theme="dark"] .management-panel,
    :root[data-theme="dark"] .completion-panel,
    :root[data-theme="dark"] .modal-card,
    :root[data-theme="dark"] .mobile-action-bar{
      border-color:var(--color-border, #263a52);
      background:var(--color-card-bg, #101f33);
      color:var(--color-text, #e8f1fb);
      box-shadow:var(--shadow, 0 16px 36px rgba(0,0,0,.24));
    }

    :root[data-theme="dark"] .skip-link{
      background:#fff;
      color:#111;
    }

    :root[data-theme="dark"] .community-hero{
      background:
        linear-gradient(110deg, rgba(18,34,56,.98), rgba(13,26,43,.96)),
        var(--color-card-bg, #101f33);
    }

    :root[data-theme="dark"] .hero-title,
    :root[data-theme="dark"] .community-onboarding h2,
    :root[data-theme="dark"] .community-use-card h3,
    :root[data-theme="dark"] .filter-panel-heading h2,
    :root[data-theme="dark"] .content-title,
    :root[data-theme="dark"] .card-title,
    :root[data-theme="dark"] .card-price,
    :root[data-theme="dark"] .detail-content h2,
    :root[data-theme="dark"] .detail-price,
    :root[data-theme="dark"] .fact-value,
    :root[data-theme="dark"] .related-box h3,
    :root[data-theme="dark"] .safety-summary{
      color:var(--color-text-strong, #f4f8ff);
    }

    :root[data-theme="dark"] .hero-desc,
    :root[data-theme="dark"] .community-cta-helper,
    :root[data-theme="dark"] .hero-insight-label,
    :root[data-theme="dark"] .hero-insight-meta,
    :root[data-theme="dark"] .community-onboarding-head p:last-child,
    :root[data-theme="dark"] .community-use-card p,
    :root[data-theme="dark"] .filter-panel-helper,
    :root[data-theme="dark"] .filter-label,
    :root[data-theme="dark"] .community-quick-filters__head,
    :root[data-theme="dark"] .community-toggle-line,
    :root[data-theme="dark"] .result-text,
    :root[data-theme="dark"] .card-meta,
    :root[data-theme="dark"] .card-excerpt,
    :root[data-theme="dark"] .detail-body,
    :root[data-theme="dark"] .fact-label,
    :root[data-theme="dark"] .owner-panel p,
    :root[data-theme="dark"] .empty-state p,
    :root[data-theme="dark"] .safety-list li{
      color:var(--color-text-muted, #a8bad0);
    }

    :root[data-theme="dark"] .search-control input,
    :root[data-theme="dark"] .select,
    :root[data-theme="dark"] .completion-copy-row input,
    :root[data-theme="dark"] textarea{
      border-color:var(--color-border, #263a52);
      background:var(--color-input-bg, #0f1d30);
      color:var(--color-input-text, #e8f1fb);
    }
    :root[data-theme="dark"] .select:disabled{background:#0b1626;color:#8ea2ba;opacity:1}
    :root[data-theme="dark"] .filter-control-hint{color:var(--color-text-muted, #a8bad0)}

    :root[data-theme="dark"] .search-control input::placeholder,
    :root[data-theme="dark"] textarea::placeholder{
      color:var(--color-text-muted, #a8bad0);
    }

    :root[data-theme="dark"] .chip-button,
    :root[data-theme="dark"] .btn-secondary,
    :root[data-theme="dark"] .btn-soft,
    :root[data-theme="dark"] .mini-link,
    :root[data-theme="dark"] .search-clear,
    :root[data-theme="dark"] .view-segment,
    :root[data-theme="dark"] .view-button,
    :root[data-theme="dark"] .active-pill,
    :root[data-theme="dark"] .save-button,
    :root[data-theme="dark"] .detail-open-link,
    :root[data-theme="dark"] .modal-close,
    :root[data-theme="dark"] .related-link,
    :root[data-theme="dark"] .fact,
    :root[data-theme="dark"] .date-badge,
    :root[data-theme="dark"] .price-badge,
    :root[data-theme="dark"] .location-badge,
    :root[data-theme="dark"] .trust-badge,
    :root[data-theme="dark"] .subcategory-badge{
      border-color:var(--color-border, #263a52);
      background:var(--color-chip-bg, #0f1d30);
      color:var(--color-button-text, #dbeeff);
      box-shadow:none;
    }

    :root[data-theme="dark"] .chip-button:hover,
    :root[data-theme="dark"] .btn-secondary:hover,
    :root[data-theme="dark"] .btn-soft:hover,
    :root[data-theme="dark"] .mini-link:hover,
    :root[data-theme="dark"] .view-button:hover,
    :root[data-theme="dark"] .detail-open-link:hover,
    :root[data-theme="dark"] .modal-close:hover,
    :root[data-theme="dark"] .related-link:hover{
      border-color:rgba(103,183,255,.5);
      background:rgba(103,183,255,.14);
      color:var(--color-primary, #67b7ff);
    }

    :root[data-theme="dark"] .chip-button.active,
    :root[data-theme="dark"] .view-button.active,
    :root[data-theme="dark"] .btn-primary,
    :root[data-theme="dark"] .save-button.saved,
    :root[data-theme="dark"] .category-badge{
      border-color:var(--color-primary, #67b7ff);
      background:var(--color-primary, #67b7ff);
      color:#061321;
    }

    :root[data-theme="dark"] .chip-button:disabled,
    :root[data-theme="dark"] .community-clear-all:disabled,
    :root[data-theme="dark"] .detail-open-link.is-disabled{
      border-color:var(--color-border, #263a52);
      background:#0b1626;
      color:#71859d;
      opacity:1;
    }

    :root[data-theme="dark"] .card.is-closed{
      border-color:rgba(255,141,154,.36);
      background:rgba(97,31,43,.26);
    }

    :root[data-theme="dark"] .modal-backdrop{
      background:rgba(3,8,15,.74);
    }

    :root[data-theme="dark"] .detail-gallery,
    :root[data-theme="dark"] .detail-compact-marker,
    :root[data-theme="dark"] .detail-main-image,
    :root[data-theme="dark"] .card-media,
    :root[data-theme="dark"] .card-media img,
    :root[data-theme="dark"] .placeholder-art,
    :root[data-theme="dark"] .detail-placeholder,
    :root[data-theme="dark"] .safety-list li{
      border-color:var(--color-border, #263a52);
      background:#0d1a2b;
      color:var(--color-text-muted, #a8bad0);
    }

    :root[data-theme="dark"] .placeholder-art::before{
      border-color:var(--color-border, #263a52);
      background:var(--color-chip-bg, #0f1d30);
      color:var(--color-text, #e8f1fb);
      box-shadow:none;
    }

    :root[data-theme="dark"] .image-count{
      border:1px solid rgba(103,183,255,.28);
      background:#07111f;
      color:#ffffff;
    }

    :root[data-theme="dark"] .management-message.info{
      border-color:var(--color-border, #263a52);
      background:var(--color-chip-bg, #0f1d30);
      color:var(--color-text, #e8f1fb);
    }

    :root[data-theme="dark"] .management-message.success{
      border-color:rgba(98,218,146,.38);
      background:rgba(22,96,61,.24);
      color:#a9f0c5;
    }

    :root[data-theme="dark"] .management-message.error,
    :root[data-theme="dark"] .closed-detail-notice{
      border-color:rgba(255,141,154,.42);
      background:rgba(97,31,43,.35);
      color:#ffc7cf;
    }

    :root[data-theme="dark"] .community-cache-warning,
    :root[data-theme="dark"] .management-danger{
      border-color:rgba(251,191,36,.4);
      background:rgba(120,73,15,.28);
      color:#ffd78a;
    }

    @media (max-width:860px){
      :root[data-theme="dark"] .filter-bar{
        background:rgba(13,26,43,.94);
      }
    }
