/* [project]/frontend/src/app/(views)/_elements/callout/callout.module.css [app-client] (css) */
@layer components {
  .callout-module__An9kQa__callout {
    border: 1px solid #0000;
    border-radius: 8px;
    align-items: flex-start;
    gap: 12px;
    width: 100%;
    padding: 12px 16px;
    font-size: 14px;
    line-height: 1.5;
    display: flex;
  }

  .callout-module__An9kQa__callout.callout-module__An9kQa__blue {
    --callout-accent: #79c0ff;
    --callout-bg: #388bfd1a;
    --callout-border: #388bfd66;
    --callout-link: #d0eaff;
  }

  .callout-module__An9kQa__callout.callout-module__An9kQa__green {
    --callout-accent: #7ee787;
    --callout-bg: #3fb9501a;
    --callout-border: #3fb95066;
    --callout-link: #d3f9d8;
  }

  .callout-module__An9kQa__callout.callout-module__An9kQa__red {
    --callout-accent: #ffa198;
    --callout-bg: #f851461a;
    --callout-border: #f8514666;
    --callout-link: #ffe5e2;
  }

  .callout-module__An9kQa__callout.callout-module__An9kQa__yellow {
    --callout-accent: #d29922;
    --callout-bg: #d299221a;
    --callout-border: #d2992266;
    --callout-link: #f9e79f;
  }

  .callout-module__An9kQa__callout.callout-module__An9kQa__orange {
    --callout-accent: #fb8532;
    --callout-bg: #fb85321a;
    --callout-border: #fb853266;
    --callout-link: #fdebd0;
  }

  .callout-module__An9kQa__callout.callout-module__An9kQa__purple {
    --callout-accent: #a371f7;
    --callout-bg: #a371f71a;
    --callout-border: #a371f766;
    --callout-link: #e8daff;
  }

  .callout-module__An9kQa__callout.callout-module__An9kQa__pink {
    --callout-accent: #db61a2;
    --callout-bg: #db61a21a;
    --callout-border: #db61a266;
    --callout-link: #ffdceb;
  }

  .callout-module__An9kQa__callout.callout-module__An9kQa__cyan {
    --callout-accent: #39c5cf;
    --callout-bg: #39c5cf1a;
    --callout-border: #39c5cf66;
    --callout-link: #d1f4f6;
  }

  .callout-module__An9kQa__callout.callout-module__An9kQa__gray {
    --callout-accent: #8b949e;
    --callout-bg: #8b949e1a;
    --callout-border: #8b949e66;
    --callout-link: #e6edf3;
  }

  .callout-module__An9kQa__callout .callout-module__An9kQa__icon-area {
    color: var(--callout-accent);
    flex-shrink: 0;
    justify-content: center;
    align-items: center;
    margin-top: 2px;
    font-size: 18px;
    display: flex;
  }

  .callout-module__An9kQa__callout .callout-module__An9kQa__content-area {
    color: inherit;
    word-break: keep-all;
    flex: 1;
  }

  .callout-module__An9kQa__callout .callout-module__An9kQa__content-area a {
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-thickness: min(2px, max(1px, .05em));
    -webkit-text-decoration-color: var(--callout-border);
    text-decoration-color: var(--callout-border);
    text-underline-position: under;
    color: var(--callout-link);
  }

  .callout-module__An9kQa__callout {
    background-color: var(--callout-bg);
    border-color: var(--callout-border);
    color: var(--callout-accent);
  }
}

/* [project]/frontend/src/app/(views)/_components/piece/piece-badge.module.css [app-client] (css) */
@layer components {
  .piece-badge-module__m4bY1G__plot-badge {
    --plot-badge-accent: #9fe600;
    --plot-badge-accent-shine: #e3ffc3;
    --plot-badge-accent-deep: #85b83d;
  }

  .piece-badge-module__m4bY1G__plot-badge-stage-1 {
    --plot-badge-accent: #f97316;
    --plot-badge-accent-shine: #fdba74;
    --plot-badge-accent-deep: #c2410c;
  }

  .piece-badge-module__m4bY1G__plot-badge-stage-2 {
    --plot-badge-accent: #fbbf24;
    --plot-badge-accent-shine: #fde68a;
    --plot-badge-accent-deep: #d97706;
  }

  .piece-badge-module__m4bY1G__plot-badge-stage-3 {
    --plot-badge-accent: #9fe600;
    --plot-badge-accent-shine: #e3ffc3;
    --plot-badge-accent-deep: #85b83d;
  }

  @keyframes piece-badge-module__m4bY1G__plot-ring-shine {
    0%, 100% {
      opacity: .85;
      stroke: var(--plot-badge-accent);
    }

    50% {
      opacity: 1;
      stroke: var(--plot-badge-accent-shine);
    }
  }

  @keyframes piece-badge-module__m4bY1G__plot-glow-shadow {
    0%, 100% {
      box-shadow: inset 0 0 4px color-mix(in srgb, var(--plot-badge-accent-shine) 35%, transparent),
        0 0 2px 0px color-mix(in srgb, var(--plot-badge-accent) 60%, transparent),
        0 0 5px 0px color-mix(in srgb, var(--plot-badge-accent-deep) 30%, transparent);
      opacity: .9;
    }

    50% {
      box-shadow: inset 0 0 7px color-mix(in srgb, var(--plot-badge-accent-shine) 55%, transparent),
        0 0 4px 0px color-mix(in srgb, var(--plot-badge-accent) 90%, transparent),
        0 0 8px 1px color-mix(in srgb, var(--plot-badge-accent-deep) 45%, transparent);
      opacity: 1;
    }
  }

  @keyframes piece-badge-module__m4bY1G__plot-glow-pulse {
    0%, 100% {
      opacity: .75;
    }

    50% {
      opacity: 1;
    }
  }

  @keyframes piece-badge-module__m4bY1G__plot-sparkle-rise {
    0% {
      opacity: 0;
      transform: translateY(0)translateX(0)scale(0);
    }

    8% {
      opacity: 1;
      transform: translateY(-3px)translateX(0)scale(1.1);
    }

    40% {
      opacity: 1;
      transform: translateY(-12px)translateX(1px)scale(1);
    }

    100% {
      opacity: 0;
      transform: translateY(-24px)translateX(-1px)scale(.3);
    }
  }

  .piece-badge-module__m4bY1G__badge-row {
    --piece-badge-size: 22px;
    align-items: center;
    gap: 4px;
    display: flex;
  }

  .piece-badge-module__m4bY1G__multi-char-badge {
    height: var(--piece-badge-size);
    min-height: var(--piece-badge-size);
    box-sizing: border-box;
    background: color-mix(in srgb, var(--color-black) 82%, transparent);
    color: var(--color-white);
    font-size: 10px;
    font-weight: var(--font-weight-medium);
    cursor: help;
    filter: drop-shadow(0 0 1px color-mix(in srgb, var(--color-black) 48%, transparent))
      drop-shadow(0 1px 2px color-mix(in srgb, var(--color-black) 28%, transparent));
    border: none;
    border-radius: 999px;
    flex-shrink: 0;
    justify-content: center;
    align-items: center;
    gap: 3px;
    padding: 0 7px;
    line-height: 1;
    display: inline-flex;
  }

  .piece-badge-module__m4bY1G__multi-char-icon {
    opacity: .92;
    font-size: 13px;
    line-height: 0;
  }

  .piece-badge-module__m4bY1G__multi-char-count {
    font-size: 11px;
    font-weight: var(--font-weight-medium);
    letter-spacing: -.02em;
    line-height: 1;
  }

  .piece-badge-module__m4bY1G__plot-badge {
    width: var(--piece-badge-size);
    height: var(--piece-badge-size);
    cursor: help;
    filter: drop-shadow(0 0 1px color-mix(in srgb, var(--color-black) 48%, transparent))
      drop-shadow(0 1px 2px color-mix(in srgb, var(--color-black) 28%, transparent))
      drop-shadow(0 0 3px color-mix(in srgb, var(--plot-badge-accent) 72%, transparent))
      drop-shadow(0 0 7px color-mix(in srgb, var(--plot-badge-accent-shine) 42%, transparent));
    background: none;
    border: none;
    flex-shrink: 0;
    padding: 0;
    position: relative;
    overflow: visible;
  }

  .piece-badge-module__m4bY1G__plot-badge .piece-badge-module__m4bY1G__core {
    z-index: 2;
    width: var(--piece-badge-size);
    height: var(--piece-badge-size);
    background: color-mix(in srgb, var(--color-black) 85%, transparent);
    color: var(--color-white);
    border-radius: 50%;
    justify-content: center;
    align-items: center;
    font-size: 11px;
    line-height: 0;
    display: flex;
    position: relative;
  }

  .piece-badge-module__m4bY1G__plot-badge .piece-badge-module__m4bY1G__ring {
    z-index: 3;
    pointer-events: none;
    width: 26px;
    height: 26px;
    position: absolute;
    inset: -2px;
    transform: rotate(-90deg);
  }

  .piece-badge-module__m4bY1G__plot-badge .piece-badge-module__m4bY1G__ring-track {
    fill: none;
    stroke: color-mix(in srgb, var(--plot-badge-accent) 24%, var(--color-black) 22%);
    stroke-width: 2px;
  }

  .piece-badge-module__m4bY1G__plot-badge .piece-badge-module__m4bY1G__ring-fill {
    fill: none;
    stroke: var(--plot-badge-accent);
    stroke-width: 2.25px;
    stroke-linecap: round;
    filter: drop-shadow(0 0 1px color-mix(in srgb, var(--color-black) 42%, transparent))
      drop-shadow(0 0 2px color-mix(in srgb, var(--plot-badge-accent) 85%, transparent));
    transition: stroke-dasharray .3s;
  }

  .piece-badge-module__m4bY1G__plot-badge-stage-1 .piece-badge-module__m4bY1G__ring-fill {
    stroke-dasharray: 23 69;
  }

  .piece-badge-module__m4bY1G__plot-badge-stage-2 .piece-badge-module__m4bY1G__ring-fill {
    stroke-dasharray: 46 69;
  }

  .piece-badge-module__m4bY1G__plot-badge-stage-3 .piece-badge-module__m4bY1G__ring-fill {
    stroke-dasharray: 69 69;
    animation: 1.4s ease-in-out infinite piece-badge-module__m4bY1G__plot-ring-shine;
  }

  .piece-badge-module__m4bY1G__plot-badge-stage-3:before {
    content: "";
    background: radial-gradient(circle closest-side at center,
      color-mix(in srgb, var(--plot-badge-accent-shine) 50%, transparent) 0%,
      color-mix(in srgb, var(--plot-badge-accent) 38%, transparent) 62%,
      color-mix(in srgb, var(--plot-badge-accent-deep) 18%, transparent) 100%,
      transparent 100%);
    z-index: 0;
    pointer-events: none;
    border-radius: 50%;
    animation: 1.2s ease-in-out infinite piece-badge-module__m4bY1G__plot-glow-pulse;
    position: absolute;
    inset: -2px;
  }

  .piece-badge-module__m4bY1G__plot-badge-stage-3:after {
    content: "";
    box-shadow: inset 0 0 5px color-mix(in srgb, var(--plot-badge-accent-shine) 45%, transparent),
      0 0 3px 0px color-mix(in srgb, var(--plot-badge-accent) 75%, transparent),
      0 0 6px 1px color-mix(in srgb, var(--plot-badge-accent-deep) 35%, transparent);
    z-index: 1;
    pointer-events: none;
    background: none;
    border-radius: 50%;
    animation: 1.2s ease-in-out infinite piece-badge-module__m4bY1G__plot-glow-shadow;
    position: absolute;
    inset: -2px;
  }

  .piece-badge-module__m4bY1G__plot-badge-stage-3 .piece-badge-module__m4bY1G__core {
    z-index: 2;
  }

  .piece-badge-module__m4bY1G__plot-badge-stage-3 .piece-badge-module__m4bY1G__ring {
    z-index: 4;
  }

  .piece-badge-module__m4bY1G__sparkles {
    z-index: 6;
    pointer-events: none;
    border-radius: 50%;
    position: absolute;
    inset: -2px;
    overflow: visible;
  }

  .piece-badge-module__m4bY1G__sparkles i {
    background: var(--color-white);
    width: 3px;
    height: 3px;
    box-shadow: 0 0 3px var(--color-white),
      0 0 5px var(--plot-badge-accent-shine),
      0 0 8px var(--plot-badge-accent);
    opacity: 0;
    border-radius: 50%;
    margin-left: -1.5px;
    animation: 1.6s ease-out infinite piece-badge-module__m4bY1G__plot-sparkle-rise;
    position: absolute;
    bottom: 0;
    left: 50%;
  }

  .piece-badge-module__m4bY1G__sparkles i:first-child {
    margin-left: -9px;
    animation-delay: 0s;
  }

  .piece-badge-module__m4bY1G__sparkles i:nth-child(2) {
    width: 2px;
    height: 2px;
    margin-left: -5px;
    animation-delay: .15s;
  }

  .piece-badge-module__m4bY1G__sparkles i:nth-child(3) {
    margin-left: -1px;
    animation-delay: .3s;
  }

  .piece-badge-module__m4bY1G__sparkles i:nth-child(4) {
    width: 2.5px;
    height: 2.5px;
    margin-left: 3px;
    animation-delay: .45s;
  }

  .piece-badge-module__m4bY1G__sparkles i:nth-child(5) {
    margin-left: 7px;
    animation-delay: .6s;
  }

  .piece-badge-module__m4bY1G__sparkles i:nth-child(6) {
    width: 3px;
    height: 3px;
    margin-left: -3px;
    animation-delay: .75s;
  }

  .piece-badge-module__m4bY1G__sparkles i:nth-child(7) {
    width: 2px;
    height: 2px;
    margin-left: 1px;
    animation-delay: .9s;
  }

  .piece-badge-module__m4bY1G__sparkles i:nth-child(8) {
    margin-left: -7px;
    animation-delay: 1.05s;
  }

  .piece-badge-module__m4bY1G__sparkles i:nth-child(9) {
    width: 2.5px;
    height: 2.5px;
    margin-left: 5px;
    animation-delay: 1.2s;
  }

  .piece-badge-module__m4bY1G__sparkles i:nth-child(10) {
    width: 2px;
    height: 2px;
    margin-left: -1px;
    animation-delay: 1.35s;
  }

  .piece-badge-module__m4bY1G__sparkles i:nth-child(11) {
    margin-left: -4px;
    animation-delay: 1.5s;
  }

  .piece-badge-module__m4bY1G__sparkles i:nth-child(12) {
    width: 2.5px;
    height: 2.5px;
    margin-left: 4px;
    animation-delay: 1.65s;
  }

  .piece-badge-module__m4bY1G__sparkles i:nth-child(3), .piece-badge-module__m4bY1G__sparkles i:nth-child(6), .piece-badge-module__m4bY1G__sparkles i:nth-child(9), .piece-badge-module__m4bY1G__sparkles i:nth-child(12) {
    background: var(--color-white);
    clip-path: polygon(50% 0%, 58% 38%, 98% 38%, 66% 58%, 79% 98%, 50% 72%, 21% 98%, 34% 58%, 2% 38%, 42% 38%);
    border-radius: 0;
    width: 3px;
    height: 3px;
  }
}

/* [project]/frontend/src/app/(views)/_components/social-stats/social-stats.module.css [app-client] (css) */
@layer components {
  .social-stats-module__KbVMHa__stats-row {
    gap: 8px;
    margin-top: auto;
    padding-top: 8px;
    display: flex;
  }

  .social-stats-module__KbVMHa__stats-row.social-stats-module__KbVMHa__large {
    background-color: var(--gray-4);
    border-radius: 50px;
    gap: 9px;
    padding: 6px 12px;
    display: inline-flex;
  }

  .social-stats-module__KbVMHa__stats-row.social-stats-module__KbVMHa__large .social-stats-module__KbVMHa__icon {
    font-size: 18px;
  }

  .social-stats-module__KbVMHa__stats-row.social-stats-module__KbVMHa__large .social-stats-module__KbVMHa__stat-item {
    background-color: #0000;
    font-size: 14px;
  }

  .social-stats-module__KbVMHa__stat-item {
    color: #fff;
    font-size: 13px;
    font-weight: var(--font-weight-medium);
    white-space: nowrap;
    border-radius: 4px;
    align-items: center;
    gap: 4px;
    padding: 4px 0;
    display: flex;
  }

  .social-stats-module__KbVMHa__stat-item .social-stats-module__KbVMHa__icon {
    opacity: .9;
    font-size: 13px;
  }
}

/* [project]/frontend/src/app/(views)/_elements/dropdown/dropdown.module.css [app-client] (css) */
@layer components {
  .dropdown-module__ae3MNq__dropdown-content {
    background-color: var(--gray-4);
    z-index: var(--z-index-header);
    box-shadow: 0 10px 38px var(--gray-1);
    border-radius: 6px;
    padding: 5px;
  }

  .dropdown-module__ae3MNq__dropdown-trigger-btn {
    background-color: var(--gray-2);
    border: 1px solid var(--gray-5);
    cursor: pointer;
    border-radius: 8px;
    justify-content: center;
    align-items: center;
    width: 35px;
    height: 35px;
    display: inline-flex;
  }

  .dropdown-module__ae3MNq__dropdown-trigger-btn:hover {
    background-color: var(--gray-6);
  }

  .dropdown-module__ae3MNq__dropdown-trigger-btn-sm {
    width: 24px;
    height: 24px;
    font-size: 14px;
  }

  .dropdown-module__ae3MNq__dropdown-item {
    color: var(--gray-12);
    -webkit-user-select: none;
    user-select: none;
    cursor: pointer;
    border-radius: 3px;
    outline: none;
    align-items: center;
    gap: 8px;
    height: 25px;
    padding: 0 10px;
    font-size: 13px;
    line-height: 1;
    display: flex;
    position: relative;
  }

  .dropdown-module__ae3MNq__dropdown-item[data-highlighted] {
    background-color: var(--lime-9-primary);
    color: var(--lime-contrast);
  }

  .dropdown-module__ae3MNq__dropdown-item[data-disabled] {
    opacity: .4;
    cursor: not-allowed;
    pointer-events: none;
  }

  .dropdown-module__ae3MNq__dropdown-item-icon {
    flex-shrink: 0;
    align-items: center;
    display: flex;
  }

  .dropdown-module__ae3MNq__dropdown-item-shortcut {
    margin-left: auto;
  }

  .dropdown-module__ae3MNq__dropdown-separator {
    background-color: var(--gray-4);
    height: 1px;
    margin: 5px;
  }
}

/* [project]/frontend/src/app/(views)/_components/resource-list/resource-list.module.css [app-client] (css) */
@layer components {
  .resource-list-module__adD0Cq__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: stretch;
    gap: 16px;
    padding-bottom: 20px;
    display: grid;
  }

  .resource-list-module__adD0Cq__card-wrapper {
    flex-direction: column;
    width: 100%;
    min-width: 0;
    height: 100%;
    display: flex;
    position: relative;
  }

  .resource-list-module__adD0Cq__grid-horizontal {
    flex-wrap: nowrap;
    width: max-content;
    padding-bottom: 0;
    display: flex;
  }

  .resource-list-module__adD0Cq__grid-horizontal .resource-list-module__adD0Cq__card-wrapper {
    flex: none;
    width: 200px;
  }

  .resource-list-module__adD0Cq__grid-carousel {
    gap: var(--carousel-gap);
    flex-wrap: nowrap;
    width: 100%;
    padding-bottom: 0;
    display: flex;
  }

  .resource-list-module__adD0Cq__grid-carousel .resource-list-module__adD0Cq__card-wrapper {
    flex: 0 0
        calc((100% - var(--carousel-gap) * (var(--carousel-columns, 4) - 1)) /
          var(--carousel-columns, 4));
    width: calc((100% - var(--carousel-gap) * (var(--carousel-columns, 4) - 1)) /
        var(--carousel-columns, 4));
    min-width: 0;
  }

  .resource-list-module__adD0Cq__card-body {
    flex-direction: column;
    gap: 4px;
    width: 100%;
    min-width: 0;
    display: flex;
  }

  .resource-list-module__adD0Cq__card-inner {
    flex-direction: column;
    gap: 8px;
    width: 100%;
    min-width: 0;
    display: flex;
  }

  .resource-list-module__adD0Cq__dropdown-wrapper {
    z-index: 10;
    position: absolute;
    top: 8px;
    right: 8px;
  }

  .resource-list-module__adD0Cq__thumbnail {
    aspect-ratio: 2 / 3;
    background-color: var(--gray-5);
    border-radius: 12px;
    flex-shrink: 0;
    width: 100%;
    transition: border-color .2s;
    position: relative;
    overflow: hidden;
  }

  .resource-list-module__adD0Cq__thumbnail > .resource-list-module__adD0Cq__thumb-img {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
  }

  .resource-list-module__adD0Cq__thumbnail > .resource-list-module__adD0Cq__placeholder {
    z-index: 0;
    color: var(--gray-9);
    justify-content: center;
    align-items: center;
    font-size: 44px;
    line-height: 0;
    display: flex;
    position: absolute;
    inset: 0;
  }

  .resource-list-module__adD0Cq__info {
    flex-direction: column;
    gap: 4px;
    width: 100%;
    min-width: 0;
    display: flex;
  }

  .resource-list-module__adD0Cq__summary {
    color: var(--gray-11);
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    width: 100%;
    font-size: 13px;
    line-height: 1.3;
    display: -webkit-box;
    overflow: hidden;
  }

  .resource-list-module__adD0Cq__caption {
    color: var(--gray-10);
    font-size: 12px;
  }

  .resource-list-module__adD0Cq__card {
    cursor: pointer;
    text-align: left;
    background: none;
    border: none;
    flex-direction: column;
    gap: 8px;
    width: 100%;
    min-width: 0;
    padding: 0;
    display: flex;
    position: relative;
  }

  .resource-list-module__adD0Cq__card:hover .resource-list-module__adD0Cq__thumbnail:before {
    content: "";
    border: 2px solid var(--lime-9-primary);
    box-sizing: border-box;
    pointer-events: none;
    z-index: 2;
    border-radius: 12px;
    display: block;
    position: absolute;
    inset: 0;
  }

  .resource-list-module__adD0Cq__card:hover .resource-list-module__adD0Cq__info .resource-list-module__adD0Cq__summary {
    text-underline-position: under;
    text-decoration: underline;
  }

  .resource-list-module__adD0Cq__content-indicators {
    z-index: 3;
    align-items: center;
    gap: 4px;
    display: flex;
    position: absolute;
    top: 8px;
    right: 8px;
  }

  .resource-list-module__adD0Cq__content-indicator {
    background-color: var(--color-black);
    width: 22px;
    height: 22px;
    color: var(--color-white);
    cursor: help;
    border: none;
    border-radius: 50%;
    justify-content: center;
    align-items: center;
    padding: 0;
    font-size: 12px;
    line-height: 0;
    display: inline-flex;
  }

  .resource-list-module__adD0Cq__content-indicator:hover svg path {
    fill: var(--lime-9-primary);
  }

  .resource-list-module__adD0Cq__status-badge {
    box-sizing: border-box;
    z-index: 3;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    border-radius: 6px;
    align-items: center;
    gap: 4px;
    height: 24px;
    padding: 0 8px;
    font-size: 11px;
    font-weight: 600;
    display: flex;
    position: absolute;
    top: 8px;
    left: 8px;
  }

  .resource-list-module__adD0Cq__status-badge.resource-list-module__adD0Cq__status-draft {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    background-color: var(--color-black);
    color: var(--color-white);
  }

  .resource-list-module__adD0Cq__status-badge.resource-list-module__adD0Cq__status-pending {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    background-color: color-mix(in srgb, var(--color-star) 36%, var(--gray-4));
    color: color-mix(in srgb, var(--gray-12) 82%, var(--color-star) 18%);
    border: 1px solid color-mix(in srgb, var(--color-star) 48%, var(--gray-8));
  }

  .resource-list-module__adD0Cq__status-badge.resource-list-module__adD0Cq__status-rejected {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    background-color: color-mix(in srgb, var(--color-red) 24%, var(--gray-4));
    color: color-mix(in srgb, var(--color-red) 68%, var(--gray-12));
    border: 1px solid color-mix(in srgb, var(--color-red) 46%, var(--gray-8));
  }

  .resource-list-module__adD0Cq__status-badge.resource-list-module__adD0Cq__status-approved {
    background-color: var(--lime-6);
    color: var(--lime-11);
    border: 1px solid var(--lime-8);
  }

  .resource-list-module__adD0Cq__status-badge.resource-list-module__adD0Cq__status-need-submit {
    background-color: var(--gray-6);
    color: var(--gray-12);
    border: 1px solid var(--gray-8);
  }

  .resource-list-module__adD0Cq__version-badge {
    color: var(--lime-11);
    background-color: var(--lime-6);
    font-size: 12px;
    font-weight: var(--font-weight-semi-bold);
    align-items: center;
    padding: 2px 6px;
    display: flex;
  }

  .resource-list-module__adD0Cq__resource-badges {
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 4px;
    max-width: 100%;
    display: flex;
  }

  .resource-list-module__adD0Cq__resource-badge {
    background-color: color-mix(in srgb, var(--color-black) 30%, transparent);
    height: 22px;
    color: var(--color-white);
    font-size: 11px;
    font-weight: var(--font-weight-semi-bold);
    white-space: nowrap;
    border-radius: 6px;
    align-items: center;
    gap: 3px;
    padding: 0 7px;
    line-height: 1;
    display: inline-flex;
  }

  .resource-list-module__adD0Cq__resource-badge-icon {
    opacity: .9;
    flex-shrink: 0;
    font-size: 12px;
    line-height: 0;
  }

  .resource-list-module__adD0Cq__current-overlay {
    background-color: color-mix(in srgb, var(--color-black) 40%, transparent);
    z-index: 2;
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
  }

  .resource-list-module__adD0Cq__current-badge {
    color: var(--lime-9-primary);
    flex-direction: column;
    align-items: center;
    gap: 4px;
    font-size: 14px;
    font-weight: 600;
    display: flex;
  }

  .resource-list-module__adD0Cq__current-badge .resource-list-module__adD0Cq__check-icon {
    font-size: 28px;
  }

  .resource-list-module__adD0Cq__stats-overlay {
    background: linear-gradient(to top,
      color-mix(in srgb, var(--color-black) 60%, transparent),
      transparent);
    z-index: 1;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end;
    width: 100%;
    padding-bottom: 8px;
    padding-right: 12px;
    display: flex;
    position: absolute;
    bottom: 0;
    left: 0;
  }

  .resource-list-module__adD0Cq__name-row {
    min-width: 0;
    max-width: 100%;
    width: min(100%, max-content);
    align-self: flex-start;
    align-items: center;
    gap: 4px;
    display: flex;
  }

  .resource-list-module__adD0Cq__name {
    font-size: 16px;
    font-weight: var(--font-weight-medium);
    color: var(--gray-12);
    white-space: nowrap;
    text-overflow: ellipsis;
    flex: 1;
    min-width: 0;
    overflow: hidden;
  }

  .resource-list-module__adD0Cq__unsafe-badge-wrap {
    flex-shrink: 0;
    align-items: center;
    line-height: 0;
    display: inline-flex;
  }

  .resource-list-module__adD0Cq__unsafe-badge-icon {
    width: 19px;
    height: 19px;
    display: block;
  }

  .resource-list-module__adD0Cq__rejection-reason {
    color: color-mix(in srgb, var(--color-red) 72%, var(--gray-12));
    -webkit-line-clamp: 3;
    line-clamp: 3;
    word-break: break-word;
    -webkit-box-orient: vertical;
    width: 100%;
    font-size: 12px;
    line-height: 1.35;
    display: -webkit-box;
    overflow: hidden;
  }

  .resource-list-module__adD0Cq__author-row {
    background-color: var(--gray-5);
    width: max-content;
    min-width: 0;
    max-width: 100%;
    color: inherit;
    border-radius: 4px;
    align-items: center;
    gap: 4px;
    padding: 2px 4px;
    text-decoration: none;
    transition: color .15s;
    display: inline-flex;
  }

  .resource-list-module__adD0Cq__author-row:hover {
    color: var(--lime-11);
    background-color: var(--gray-7);
  }

  .resource-list-module__adD0Cq__author {
    color: color-mix(in srgb, var(--gray-12) 54%, transparent);
    white-space: nowrap;
    text-overflow: ellipsis;
    min-width: 0;
    font-size: 12px;
    overflow: hidden;
  }

  .resource-list-module__adD0Cq__creator-verified-wrap {
    flex-shrink: 0;
    align-items: center;
    line-height: 0;
    display: inline-flex;
  }

  .resource-list-module__adD0Cq__creator-verified-badge {
    width: 12px;
    height: 12px;
    display: block;
  }

  .resource-list-module__adD0Cq__below-card {
    width: 100%;
    margin-top: 8px;
  }

  .resource-list-module__adD0Cq__empty-state {
    color: var(--gray-9);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 40px 0;
    font-size: 14px;
    display: flex;
  }

  @media (max-width: 991px) {
    .resource-list-module__adD0Cq__grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .resource-list-module__adD0Cq__grid-horizontal .resource-list-module__adD0Cq__card-wrapper {
      width: 148px;
    }

    .resource-list-module__adD0Cq__grid-carousel .resource-list-module__adD0Cq__card-wrapper {
      flex: 0 0 var(--carousel-mobile-card-width);
      width: var(--carousel-mobile-card-width);
    }

    .resource-list-module__adD0Cq__summary, .resource-list-module__adD0Cq__caption, .resource-list-module__adD0Cq__author {
      font-size: 11px;
    }

    .resource-list-module__adD0Cq__creator-verified-badge {
      width: 11px;
      height: 11px;
    }
  }
}

/* [project]/frontend/src/app/(views)/_components/resource-list/resource-list-carousel.module.css [app-client] (css) */
@layer components {
  .resource-list-carousel-module__lClYhW__wrap {
    --carousel-columns: 4;
    --carousel-gap: 16px;
  }

  .resource-list-carousel-module__lClYhW__track-wrap {
    --carousel-gap: 16px;
  }

  .resource-list-carousel-module__lClYhW__section-title-dash {
    --title-dash-dot: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6'%3E%3Ccircle cx='3' cy='3' r='1' fill='%23000'/%3E%3C/svg%3E");
  }

  .resource-list-carousel-module__lClYhW__wrap {
    flex-direction: column;
    gap: 24px;
    display: flex;
  }

  .resource-list-carousel-module__lClYhW__wrap[data-preview="true"] {
    margin-bottom: 0;
  }

  .resource-list-carousel-module__lClYhW__section {
    flex-direction: column;
    gap: 16px;
    display: flex;
  }

  .resource-list-carousel-module__lClYhW__section-header {
    flex-direction: column;
    min-width: 0;
    display: flex;
  }

  .resource-list-carousel-module__lClYhW__section-heading {
    flex-direction: column;
    gap: 4px;
    min-width: 0;
    display: flex;
  }

  .resource-list-carousel-module__lClYhW__section-title-row {
    align-items: center;
    gap: 16px;
    min-width: 0;
    display: flex;
  }

  .resource-list-carousel-module__lClYhW__section-title {
    min-width: 0;
    font-size: 20px;
    font-weight: var(--font-weight-semi-bold);
    color: var(--gray-12);
    white-space: nowrap;
    text-overflow: ellipsis;
    flex-shrink: 1;
    line-height: 1.3;
    overflow: hidden;
  }

  .resource-list-carousel-module__lClYhW__section-title-dash {
    background-color: var(--gray-7);
    width: auto;
    min-width: 18px;
    height: 6px;
    min-height: 6px;
    max-height: 6px;
    -webkit-mask-image: var(--title-dash-dot);
    -webkit-mask-image: var(--title-dash-dot);
    mask-image: var(--title-dash-dot);
    flex: auto;
    align-self: center;
    overflow: visible;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: 6px 6px;
    mask-size: 6px 6px;
    -webkit-mask-repeat: space;
    mask-repeat: space;
    -webkit-mask-clip: no-clip;
    mask-clip: no-clip;
  }

  .resource-list-carousel-module__lClYhW__view-all-btn {
    box-sizing: border-box;
    height: 26px;
    font-size: 12px;
    font-weight: var(--font-weight-medium);
    color: var(--gray-11);
    white-space: nowrap;
    border: 1px solid var(--gray-6);
    background-color: var(--gray-3);
    border-radius: 8px;
    flex-shrink: 0;
    align-items: center;
    gap: 2px;
    padding: 0 8px 0 10px;
    line-height: 1;
    text-decoration: none;
    transition: color .15s, background-color .15s, border-color .15s;
    display: flex;
  }

  .resource-list-carousel-module__lClYhW__view-all-btn svg {
    font-size: 12px;
  }

  .resource-list-carousel-module__lClYhW__view-all-btn:hover {
    color: var(--gray-12);
    background-color: var(--gray-4);
    border-color: var(--gray-7);
  }

  .resource-list-carousel-module__lClYhW__view-all-btn:focus-visible {
    outline: 2px solid var(--gray-a8);
    outline-offset: 2px;
  }

  .resource-list-carousel-module__lClYhW__section-subtitle {
    color: var(--gray-10);
    font-size: 14px;
    line-height: 1.4;
  }

  .resource-list-carousel-module__lClYhW__track-wrap {
    position: relative;
  }

  .resource-list-carousel-module__lClYhW__track-scroll {
    gap: var(--carousel-gap);
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    display: flex;
    overflow-x: auto;
  }

  .resource-list-carousel-module__lClYhW__track-scroll::-webkit-scrollbar {
    display: none;
  }

  .resource-list-carousel-module__lClYhW__nav-btn {
    z-index: 2;
    border: 1px solid var(--gray-9);
    background-color: var(--gray-7);
    width: 48px;
    height: 48px;
    color: var(--gray-12);
    cursor: pointer;
    box-shadow: 0 2px 8px color-mix(in srgb, var(--gray-12) 12%, transparent);
    border-radius: 50%;
    justify-content: center;
    align-items: center;
    padding: 0;
    font-size: 22px;
    transition: background-color .15s, border-color .15s, opacity .15s;
    display: flex;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }

  .resource-list-carousel-module__lClYhW__nav-btn:hover:not(:disabled) {
    background-color: var(--gray-5);
    border-color: var(--gray-7);
  }

  .resource-list-carousel-module__lClYhW__nav-btn:disabled {
    opacity: 0;
    pointer-events: none;
  }

  .resource-list-carousel-module__lClYhW__nav-btn-prev {
    left: -24px;
  }

  .resource-list-carousel-module__lClYhW__nav-btn-next {
    right: -24px;
  }

  .resource-list-carousel-module__lClYhW__skeleton-wrap {
    flex-direction: column;
    gap: 24px;
    margin-top: 8px;
    display: flex;
  }

  .resource-list-carousel-module__lClYhW__skeleton-section {
    flex-direction: column;
    gap: 16px;
    display: flex;
  }

  .resource-list-carousel-module__lClYhW__skeleton-title {
    border-radius: 6px;
    width: 140px;
    height: 22px;
  }

  .resource-list-carousel-module__lClYhW__skeleton-card {
    aspect-ratio: 3 / 4;
    border-radius: 10px;
  }

  .resource-list-carousel-module__lClYhW__wrap .resource-list-carousel-module__lClYhW__track-scroll [data-layout="carousel"] {
    --carousel-columns: inherit;
  }

  .resource-list-carousel-module__lClYhW__track-scroll [data-layout="carousel"] {
    gap: var(--carousel-gap);
    flex-wrap: nowrap;
    width: 100%;
    display: flex;
  }

  .resource-list-carousel-module__lClYhW__track-scroll [data-layout="carousel"] > * {
    flex: 0 0
      calc((100% - var(--carousel-gap) * (var(--carousel-columns) - 1)) / var(--carousel-columns));
    width: calc((100% - var(--carousel-gap) * (var(--carousel-columns) - 1)) /
      var(--carousel-columns));
    min-width: 0;
  }

  .resource-list-carousel-module__lClYhW__wrap[data-preview="true"] .resource-list-carousel-module__lClYhW__nav-btn-prev {
    left: 0;
  }

  .resource-list-carousel-module__lClYhW__wrap[data-preview="true"] .resource-list-carousel-module__lClYhW__nav-btn-next {
    right: 0;
  }

  .resource-list-carousel-module__lClYhW__wrap[data-preview="true"] .resource-list-carousel-module__lClYhW__track-scroll {
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
  }

  @media (max-width: 991px) {
    .resource-list-carousel-module__lClYhW__wrap, .resource-list-carousel-module__lClYhW__track-wrap {
      --carousel-gap: 10px;
      --carousel-mobile-card-width: 20%;
    }

    .resource-list-carousel-module__lClYhW__nav-btn {
      display: none;
    }

    .resource-list-carousel-module__lClYhW__track-wrap {
      width: 100vw;
      margin-inline: calc(50% - 50vw);
    }

    .resource-list-carousel-module__lClYhW__track-scroll {
      padding-inline: var(--home-grid-inline-padding, 16px) 0;
      scroll-padding-inline: var(--home-grid-inline-padding, 16px);
      overscroll-behavior-x: contain;
    }

    .resource-list-carousel-module__lClYhW__track-scroll [data-layout="carousel"]:after {
      content: "";
      flex: 0 0 var(--home-grid-inline-padding, 16px);
      pointer-events: none;
      margin-inline-start: calc(-1 * var(--carousel-gap));
    }

    .resource-list-carousel-module__lClYhW__track-wrap .resource-list-carousel-module__lClYhW__track-scroll [data-layout="carousel"] > * {
      flex: 0 0 var(--carousel-mobile-card-width);
      width: var(--carousel-mobile-card-width);
    }

    .resource-list-carousel-module__lClYhW__section-title {
      font-size: 18px;
      line-height: 1.3;
    }

    .resource-list-carousel-module__lClYhW__section-subtitle {
      font-size: 12px;
      line-height: 1.3;
    }

    .resource-list-carousel-module__lClYhW__view-all-btn {
      height: 23.4px;
      padding: 0 6px 0 8px;
      font-size: 11px;
    }

    .resource-list-carousel-module__lClYhW__view-all-btn svg {
      font-size: 10px;
    }
  }

  @media (max-width: 767px) {
    .resource-list-carousel-module__lClYhW__wrap, .resource-list-carousel-module__lClYhW__track-wrap {
      --carousel-mobile-card-width: 28%;
    }

    .resource-list-carousel-module__lClYhW__section {
      gap: 12px;
    }
  }
}

/* [project]/frontend/src/app/(views)/(pages)/home/contest/_components/contest-list/contest-list.module.css [app-client] (css) */
@layer components {
  .contest-list-module__qF9rGW__contest-list-section {
    --grid-padding: 0 var(--home-grid-inline-padding, 24px);
    padding-top: 0;
    padding-bottom: 0;
  }

  .contest-list-module__qF9rGW__contest-list-wrapper {
    align-items: flex-start;
    gap: 12px;
    width: 100%;
    display: flex;
    position: relative;
  }

  .contest-list-module__qF9rGW__actions-wrapper {
    z-index: 2;
    flex-shrink: 0;
    align-items: center;
    height: 38px;
    display: flex;
  }

  .contest-list-module__qF9rGW__expand-toggle {
    aspect-ratio: 1;
    justify-content: center;
    align-items: center;
    height: 38px;
    display: flex;
  }

  .contest-list-module__qF9rGW__expand-toggle .contest-list-module__qF9rGW__expand-toggle-btn {
    aspect-ratio: 1;
    background-color: var(--gray-3);
    border: 1px solid var(--gray-6);
    cursor: pointer;
    border-radius: 8px;
    justify-content: center;
    align-items: center;
    height: 38px;
    padding: 0;
    transition: all .2s;
    display: flex;
  }

  .contest-list-module__qF9rGW__expand-toggle .contest-list-module__qF9rGW__expand-toggle-btn:after {
    content: "";
    background-color: var(--gray-11);
    width: 3px;
    height: 3px;
    box-shadow: 5px 0 0 var(--gray-11),
          -5px 0 0 var(--gray-11);
    border-radius: 50%;
    transition: all .2s;
    display: block;
  }

  .contest-list-module__qF9rGW__expand-toggle .contest-list-module__qF9rGW__expand-toggle-btn:hover {
    background-color: var(--gray-4);
  }

  .contest-list-module__qF9rGW__expand-toggle.contest-list-module__qF9rGW__active .contest-list-module__qF9rGW__expand-toggle-btn:after {
    border: 2px solid var(--gray-11);
    width: 8px;
    height: 8px;
    box-shadow: none;
    background-color: #0000;
    border-bottom: 0;
    border-right: 0;
    border-radius: 0;
    margin-top: 4px;
    transform: rotate(45deg);
  }

  .contest-list-module__qF9rGW__contest-list {
    -webkit-user-select: none;
    user-select: none;
    flex: 1;
    align-items: center;
    gap: 8px;
    min-width: 0;
    transition: -webkit-mask-image .2s, mask-image .2s;
    display: flex;
    overflow-x: auto;
    -webkit-mask-image: linear-gradient(to right, #000 100% 100%);
    mask-image: linear-gradient(to right, #000 100% 100%);
  }

  .contest-list-module__qF9rGW__contest-list::-webkit-scrollbar {
    display: none;
  }

  .contest-list-module__qF9rGW__contest-list .contest-list-module__qF9rGW__contest-item {
    white-space: nowrap;
    flex-shrink: 0;
    align-items: center;
    height: 38px;
    display: flex;
  }

  .contest-list-module__qF9rGW__contest-list .contest-list-module__qF9rGW__contest-item .contest-list-module__qF9rGW__contest-item-body {
    height: 100%;
    font: inherit;
    color: var(--gray-11);
    background-color: var(--gray-5);
    cursor: pointer;
    border: 1px solid #0000;
    border-radius: 9999px;
    align-items: center;
    gap: 4px;
    padding: 0 14px;
    font-size: 14px;
    line-height: 1.4;
    transition: background-color .18s, color .18s;
    display: inline-flex;
  }

  .contest-list-module__qF9rGW__contest-list .contest-list-module__qF9rGW__contest-item .contest-list-module__qF9rGW__contest-item-body:focus-visible {
    outline: 2px solid var(--gray-a8);
    outline-offset: 2px;
  }

  .contest-list-module__qF9rGW__contest-list .contest-list-module__qF9rGW__contest-item:hover .contest-list-module__qF9rGW__contest-item-body {
    background-color: var(--gray-7);
    color: var(--gray-contrast);
  }

  .contest-list-module__qF9rGW__contest-list .contest-list-module__qF9rGW__contest-item.contest-list-module__qF9rGW__active .contest-list-module__qF9rGW__contest-item-body {
    font-weight: var(--font-weight-medium);
    color: var(--lime-contrast);
    background-color: var(--lime-9-primary);
    border-color: var(--lime-9-primary);
  }

  .contest-list-module__qF9rGW__contest-list.contest-list-module__qF9rGW__dragging .contest-list-module__qF9rGW__contest-item {
    pointer-events: none;
  }

  .contest-list-module__qF9rGW__contest-list.contest-list-module__qF9rGW__expanded {
    flex-wrap: wrap;
    align-content: flex-start;
    height: auto;
    overflow-x: visible;
  }

  .contest-list-module__qF9rGW__contest-list.contest-list-module__qF9rGW__fade-right {
    -webkit-mask-image: linear-gradient(to right, #000 95%, #0000);
    mask-image: linear-gradient(to right, #000 95%, #0000);
  }

  .contest-list-module__qF9rGW__contest-list.contest-list-module__qF9rGW__fade-left {
    -webkit-mask-image: linear-gradient(to right, #0000, #000 5%);
    mask-image: linear-gradient(to right, #0000, #000 5%);
  }

  .contest-list-module__qF9rGW__contest-list.contest-list-module__qF9rGW__fade-both {
    -webkit-mask-image: linear-gradient(to right, #0000, #000 5% 95%, #0000);
    mask-image: linear-gradient(to right, #0000, #000 5% 95%, #0000);
  }

  @media (max-width: 767px) {
    .contest-list-module__qF9rGW__actions-wrapper, .contest-list-module__qF9rGW__expand-toggle, .contest-list-module__qF9rGW__expand-toggle .contest-list-module__qF9rGW__expand-toggle-btn {
      height: 34px;
    }

    .contest-list-module__qF9rGW__contest-list {
      gap: 6px;
    }

    .contest-list-module__qF9rGW__contest-list .contest-list-module__qF9rGW__contest-item {
      height: 34px;
    }

    .contest-list-module__qF9rGW__contest-list .contest-list-module__qF9rGW__contest-item .contest-list-module__qF9rGW__contest-item-body {
      padding: 0 11px;
      font-size: 13px;
    }
  }
}

/* [project]/frontend/src/app/(views)/(pages)/home/contest/page-content.module.css [app-client] (css) */
@layer pages {
  .page-content-module__ObeIrW__contest-page {
    flex-direction: column;
    gap: 20px;
    display: flex;
  }

  .page-content-module__ObeIrW__recruit-callout-section, .page-content-module__ObeIrW__carousel-section {
    --grid-padding: 0 var(--home-grid-inline-padding, 24px);
    padding-top: 0;
    padding-bottom: 0;
  }
}

/*# sourceMappingURL=frontend_src_app_%28views%29_03z0da6._.css.map*/