/* Scoped styles for the Codex Project WordPress shortcode. */
.application-catalog .catalog-heading h1{font-weight:700}.application-catalog .app-grid{align-items:start}.application-catalog .app-card{min-height:0}.application-catalog .app-description{min-height:0;margin:16px 0 0}.application-catalog .card-bottom{margin-top:16px}
.application-catalog{--page:#101212;--sidebar:#0b0d0d;--card:#1a1c1c;--card-hover:#202323;--text:#f7f7f5;--muted:#a9aaa8;--line:#383a3a;--light:#fff;--accent:#18cc6a;--link:#2b9dff}.application-catalog *{box-sizing:border-box}.application-catalog{scroll-behavior:smooth}.application-catalog{margin:0;background:var(--page);color:var(--text);font-family:"Avenir Next",Avenir,"Nunito Sans",ui-rounded,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:15px;letter-spacing:-.25px}.application-catalog button,.application-catalog input,.application-catalog select{font:inherit}.application-catalog .skip-link{position:fixed;z-index:20;top:-60px;left:20px;padding:10px 14px;border-radius:8px;background:#fff;color:#111}.application-catalog .skip-link:focus{top:15px}.application-catalog .app-shell{min-height:100vh;display:grid;grid-template-columns:277px minmax(0,1fr)}.application-catalog .environment-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:47px 26px 24px;background:var(--sidebar);border-right:1px solid #171919}.application-catalog .brand{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:28px;font-weight:700;letter-spacing:1.6px;text-decoration:none}.application-catalog .brand::first-letter{letter-spacing:-5px}.application-catalog .brand small{padding:4px 8px;border-radius:5px;background:#087fdb;color:#fff;font-size:9px;letter-spacing:.6px}.application-catalog .environment-nav{display:grid;gap:12px;margin-top:48px}.application-catalog .environment-link{display:flex;align-items:center;gap:17px;width:100%;padding:18px 20px;border:0;border-radius:24px;color:#b9b9b7;background:transparent;font-size:16px;text-align:left;text-decoration:none}.application-catalog .environment-link span{width:22px;color:#d9d9d6;font-size:23px;line-height:1;text-align:center}.application-catalog .environment-link.active{color:#0e1010;background:#fff;font-weight:650}.application-catalog .environment-link.active span{color:#111}.application-catalog .environment-link:hover:not(.active){color:#fff;background:#191b1b}.application-catalog .help-link{margin-top:11px}.application-catalog .sidebar-bottom{margin-top:auto}.application-catalog .minimize-menu{display:flex;align-items:center;gap:16px;padding:13px 20px;border:0;color:#b9b9b7;background:transparent;font-size:15px}.application-catalog .theme-switch{display:flex;gap:4px;margin-top:17px;padding:4px;border-radius:29px;background:#1b1d1d;color:#8e908e;font-size:14px}.application-catalog .theme-switch span{flex:1;padding:12px 10px;border-radius:23px;text-align:center}.application-catalog .theme-switch span:first-child{color:#fff;background:#0c0e0e}.application-catalog .workspace{min-width:0}.application-catalog .workspace-header{height:105px;display:flex;align-items:center;justify-content:space-between;padding:0 47px;border-bottom:1px solid #1d1f1f}.application-catalog .session-status{display:flex;align-items:center;gap:9px;color:#959795;font-size:13px}.application-catalog .status-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(24,204,106,.11)}.application-catalog .header-actions{display:flex;gap:9px}.application-catalog .header-actions button{width:56px;height:56px;border:0;border-radius:50%;color:#fff;background:#282a2a;font-size:15px}.application-catalog .catalog-shell{padding:49px 46px 68px}.application-catalog .catalog-heading{display:flex;justify-content:space-between;gap:25px;align-items:flex-end}.application-catalog .eyebrow{margin:0 0 8px;color:#929490;font-size:10px;font-weight:700;letter-spacing:1.4px}.application-catalog .catalog-heading h1{margin:0;color:#fff;font-size:39px;line-height:1.08;letter-spacing:-1.9px}.application-catalog .catalog-heading p:not(.eyebrow){margin:10px 0 0;color:var(--muted);font-size:14px}.application-catalog .result-count{margin:0 0 3px!important;white-space:nowrap;color:#999b99!important;font-size:13px!important}.application-catalog .search-wrap{position:relative;max-width:730px;margin-top:30px}.application-catalog .search-box{display:flex;align-items:center;gap:13px;height:57px;padding:0 16px 0 18px;border:1px solid #484b4a;border-radius:12px;background:#181a1a;color:#a5a7a5;transition:border-color .15s}.application-catalog .search-box:focus-within{border-color:#fff}.application-catalog .search-box svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.application-catalog .search-box input{width:100%;border:0;outline:0;background:transparent;color:#fff;font-size:15px}.application-catalog .search-box input::placeholder{color:#8c8e8c}.application-catalog .search-box kbd{border:1px solid #464847;border-radius:5px;padding:2px 7px;color:#929492;background:#202222;font:12px ui-monospace,SFMono-Regular,monospace}.application-catalog .clear-search{display:none;position:absolute;top:19px;right:55px;border:0;background:transparent;color:#b1b3b1;font-size:12px}.application-catalog .clear-search.visible{display:block}.application-catalog .popular{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:13px 0 32px;color:#8e908e;font-size:12px}.application-catalog .popular button{border:1px solid #454746;border-radius:20px;padding:5px 11px;color:#e1e1de;background:#1a1c1c}.application-catalog .popular button:hover{border-color:#e6e6e3;background:#262828}.application-catalog .catalog-layout{display:grid;grid-template-columns:206px minmax(0,1fr);gap:30px}.application-catalog .sidebar{padding:16px 18px 0 0;border-right:1px solid #292b2b}.application-catalog .sidebar>p{margin:0 0 12px;color:#8b8d8b;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.application-catalog #categoryNav{display:grid;gap:5px}.application-catalog .category-button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 11px;border:0;border-radius:8px;color:#bbbdbb;background:transparent;text-align:left;transition:.15s}.application-catalog .category-button b{font-weight:500}.application-catalog .category-button .category-icon{display:none}.application-catalog .category-button span{color:#838583;font-size:12px}.application-catalog .category-button:hover{background:#212323;color:#fff}.application-catalog .category-button.active{background:#e9e9e5;color:#121414;font-weight:700}.application-catalog .category-button.active span{color:#545654}.application-catalog .reset-button{margin:22px 11px;border:0;background:transparent;color:#aaa;font-size:12px;text-decoration:underline;text-underline-offset:3px}.application-catalog .catalog-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.application-catalog .active-filter{color:#bbbdbb;font-size:14px}.application-catalog .active-filter strong{color:#fff}.application-catalog .sort-label{display:flex;align-items:center;gap:9px;color:#979997;font-size:12px}.application-catalog .sort-label select{border:1px solid #474949;border-radius:8px;padding:9px 30px 9px 10px;outline:none;background:#1b1d1d;color:#f4f4f2;font-size:12px}.application-catalog .app-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.application-catalog .app-card{display:flex;min-height:262px;flex-direction:column;padding:18px;border:1px solid #202323;border-radius:13px;background:var(--card);transition:.16s}.application-catalog .app-card:hover{border-color:#555857;background:var(--card-hover);transform:translateY(-2px)}.application-catalog .app-top{display:flex;align-items:center;gap:11px}.application-catalog .app-icon{width:57px;height:57px;display:grid;place-items:center;border-radius:14px;color:#fff;font-size:24px;font-weight:700;box-shadow:inset 0 1px 2px rgba(255,255,255,.32)}.application-catalog .app-name{min-width:0;margin:0;overflow:hidden;color:#fafaf8;font-size:18px;font-weight:650;letter-spacing:-.7px;text-overflow:ellipsis;white-space:nowrap}.application-catalog .app-category{margin:3px 0 0;color:#a6a8a6;font-size:11px}.application-catalog .app-description{min-height:35px;margin:18px 0 auto;color:#a6a8a6;font-size:12px;line-height:1.45}.application-catalog .card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:17px}.application-catalog .official{display:none}.application-catalog .download-link{display:inline-flex;align-items:center;justify-content:center;min-width:142px;padding:10px 14px;border:1px solid #f4f4f0;border-radius:25px;color:#fff;background:transparent;font-size:13px;font-weight:600;text-decoration:none}.application-catalog .download-link:hover{color:#101212;background:#fff}.application-catalog .download-link::after{content:"+";margin-left:22px;font-size:21px;font-weight:300;line-height:.5}.application-catalog .load-more{display:block;margin:31px auto 0;padding:12px 19px;border:1px solid #e9e9e5;border-radius:25px;color:#fff;background:transparent;font-weight:600}.application-catalog .load-more:hover{color:#111;background:#fff}.application-catalog .empty-state{max-width:410px;margin:75px auto;text-align:center}.application-catalog .empty-icon{display:grid;place-items:center;width:52px;height:52px;margin:auto;border:1px solid #484a49;border-radius:15px;color:#fff;font-size:26px}.application-catalog .empty-state h2{margin:14px 0 5px}.application-catalog .empty-state p{margin:0;color:var(--muted)}.application-catalog .empty-state button,.application-catalog .dialog-action{margin-top:18px;padding:10px 16px;border:1px solid #fff;border-radius:22px;color:#111;background:#fff;font-weight:650}.application-catalog .mobile-categories{display:none}.application-catalog dialog{width:min(410px,calc(100% - 32px));padding:30px;border:1px solid #383a3a;border-radius:16px;color:#fff;background:#181a1a;box-shadow:0 20px 70px #000}.application-catalog dialog::backdrop{background:rgba(0,0,0,.7)}.application-catalog .dialog-close{position:absolute;top:10px;right:14px;border:0;background:transparent;color:#aaa;font-size:28px}.application-catalog .key-row{display:flex;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #343636}.application-catalog .key-row kbd{border:1px solid #555;border-radius:4px;padding:3px 7px;background:#242626;color:#fff}@media(max-width:1250px){.application-catalog .app-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:920px){.application-catalog .app-shell{grid-template-columns:1fr}.application-catalog .environment-sidebar{position:static;height:auto;padding:20px;flex-direction:row;align-items:center}.application-catalog .environment-nav,.application-catalog .sidebar-bottom{display:none}.application-catalog .brand{font-size:23px}.application-catalog .workspace-header{height:74px;padding:0 22px}.application-catalog .catalog-shell{padding:36px 22px}.application-catalog .catalog-layout{grid-template-columns:1fr}.application-catalog .sidebar{display:none}.application-catalog .mobile-categories{display:flex;gap:8px;overflow:auto;padding-bottom:14px}.application-catalog .mobile-categories .category-button{flex:none;width:auto;border:1px solid #3b3d3d;white-space:nowrap}.application-catalog .mobile-categories .category-button span{display:none}.application-catalog .app-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.application-catalog .workspace-header{padding:0 17px}.application-catalog .header-actions button{width:39px;height:39px}.application-catalog .catalog-shell{padding:29px 17px 45px}.application-catalog .catalog-heading h1{font-size:31px}.application-catalog .catalog-heading{align-items:start}.application-catalog .result-count{max-width:100px;text-align:right}.application-catalog .search-wrap{margin-top:24px}.application-catalog .popular{margin-bottom:22px}.application-catalog .app-grid{grid-template-columns:1fr;gap:11px}.application-catalog .app-card{min-height:220px}.application-catalog .app-description{min-height:0}.application-catalog .sort-label{font-size:0}.application-catalog .catalog-toolbar{margin-top:4px}.application-catalog .environment-sidebar{padding:17px}.application-catalog .session-status{font-size:11px}}.application-catalog{
  font-family: Urbanist, "Avenir Next", Avenir, ui-rounded, system-ui, sans-serif;
}.application-catalog .app-shell{
  display: block;
}.application-catalog .workspace-header{
  height: 74px;
  padding: 0 max(28px, calc((100vw - 1340px) / 2));
}.application-catalog .header-identity{
  display: flex;
  align-items: center;
  gap: 22px;
  min-width: 0;
}.application-catalog .site-logo{
  display: inline-flex;
  flex: 0 0 auto;
}.application-catalog .site-logo img{
  display: block;
  width: 180px;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}.application-catalog .help-button{
  width: 34px;
  height: 34px;
  border: 1px solid #3d3f3f;
  border-radius: 50%;
  color: #fff;
  background: transparent;
  font-weight: 700;
}.application-catalog .catalog-shell{
  max-width: 1432px;
  margin: 0 auto;
  padding-right: 28px;
  padding-left: 28px;
}
@media (max-width: 560px) {.application-catalog .workspace-header{ padding: 0 17px; }.application-catalog .catalog-shell{ padding-right: 17px; padding-left: 17px; }.application-catalog .header-identity{ gap: 12px; }.application-catalog .site-logo img{ width: 142px; }
}.application-catalog .app-card{
  min-height: 0;
  overflow: hidden;
}.application-catalog .catalog-content,.application-catalog .app-grid{
  min-width: 0;
}.application-catalog .app-icon{
  position: relative;
  flex: 0 0 57px;
  overflow: hidden;
}.application-catalog .app-icon > span{
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  font-size: 30px;
  line-height: 1;
}.application-catalog .app-icon img{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 12px;
  object-fit: contain;
  background: transparent;
}.application-catalog .app-icon.app-icon--provided{
  border-radius: 5px;
}.application-catalog .app-icon .app-icon-image--provided{
  padding: 0;
  display: block;
  object-fit: contain;
  object-position: center;
}.application-catalog .app-name{
  display: -webkit-box;
  overflow: hidden;
  min-height: 42px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow-wrap: anywhere;
  text-overflow: clip;
  white-space: normal;
}.application-catalog .app-description{
  display: -webkit-box;
  overflow: hidden;
  min-height: 52px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow-wrap: anywhere;
  margin-bottom: 0;
}.application-catalog .card-bottom{
  margin-top: 16px;
}.application-catalog .download-link{
  width: 100%;
  min-width: 0;
  justify-content: space-between;
  font-size: 12px;
  line-height: 1.2;
  white-space: nowrap;
}.application-catalog .download-link::after{
  margin-left: 12px;
}

@media (max-width: 1100px) and (min-width: 921px) {.application-catalog .catalog-shell{ padding-right: 24px; padding-left: 24px; }.application-catalog .catalog-layout{ grid-template-columns: 184px minmax(0, 1fr); gap: 22px; }.application-catalog .app-grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }.application-catalog .app-card{ padding: 16px; }
}

@media (max-width: 920px) {.application-catalog .catalog-heading{ align-items: flex-start; flex-wrap: wrap; }.application-catalog .result-count{ margin-left: 0; text-align: left; }.application-catalog .search-wrap{ max-width: none; }.application-catalog .app-description{ -webkit-line-clamp: 4; }.application-catalog .app-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}


@media (min-width: 768px) and (max-width: 900px) and (orientation: portrait),
       (max-width: 932px) and (orientation: landscape) {.application-catalog .app-card .download-link{
    width: min(100%, 184px);
    flex: 0 0 auto;
  }
}

@media (max-width: 560px) {.application-catalog .catalog-heading h1{ font-size: 30px; letter-spacing: -1.2px; }.application-catalog .catalog-heading p:not(.eyebrow){ max-width: 32rem; }.application-catalog .popular{ margin-bottom: 18px; }.application-catalog .app-grid{ grid-template-columns: 1fr; gap: 11px; }.application-catalog .app-card{ padding: 16px; }.application-catalog .app-name{ min-height: 0; }.application-catalog .app-description{ min-height: 0; }
}

/* Reuses the CTA pseudo-element as a non-emoji download arrow. */
.application-catalog .download-link::after{
  content: "";
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
  margin-left: 12px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M11 3h2v10.17l3.59-3.58L18 11l-6 6-6-6 1.41-1.41L11 13.17V3Zm-6 15h14v3H5z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M11 3h2v10.17l3.59-3.58L18 11l-6 6-6-6 1.41-1.41L11 13.17V3Zm-6 15h14v3H5z'/%3E%3C/svg%3E") center / contain no-repeat;
}
