.tag-page{background:var(--surface-1);min-height:50vh}.tag-page__content{max-width:900px;margin:0 auto;padding:var(--size-8) var(--size-6)}.tag-section{margin-bottom:var(--size-8);padding-bottom:var(--size-8);border-bottom:2px solid var(--gray-3)}.tag-section:last-of-type{border-bottom:none}body.dark .tag-section{border-bottom-color:var(--surface-3)}.tag-section__title{font-family:var(--font-display);font-size:clamp(1.25rem,1.1rem + .75vw,1.75rem);font-weight:800;margin:0 0 var(--size-4) 0;display:flex;align-items:center;gap:.5rem}.tag-section__emoji{font-family:var(--font-emoji)}.tag-section__count{font-family:var(--font-mono);font-size:.75em;font-weight:500;color:var(--gray-6)}.tag-section__cards{display:flex;flex-direction:column;gap:var(--size-3)}.tag-card{background:#fff;border:3px solid black;transition:transform .2s ease,box-shadow .2s ease}.tag-card:hover{transform:translate(-3px,-3px);box-shadow:6px 6px #000}body.dark .tag-card{background:var(--surface-2);border-color:var(--neon-pink)}body.dark .tag-card:hover{box-shadow:6px 6px 0 var(--neon-pink)}.tag-card__link{display:flex;justify-content:space-between;align-items:center;padding:var(--size-4);text-decoration:none;color:inherit;gap:var(--size-4)}.tag-card__title{font-family:var(--font-heading);font-size:clamp(1rem,.95rem + .25vw,1.125rem);font-weight:700;margin:0;color:#000}body.dark .tag-card__title{color:#fff}.tag-card__date{font-family:var(--font-mono);font-size:clamp(.75rem,.7rem + .25vw,.875rem);color:var(--gray-6);flex-shrink:0}.tag-section__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--size-2)}.tag-list-item{border-bottom:1px solid var(--gray-2);padding-bottom:var(--size-2)}.tag-list-item:last-child{border-bottom:none;padding-bottom:0}body.dark .tag-list-item{border-bottom-color:var(--surface-3)}.tag-list-item__link{display:flex;align-items:center;gap:var(--size-3);text-decoration:none;color:inherit;padding:var(--size-2) 0;transition:color .15s ease}.tag-list-item__link:hover{color:var(--deep-pink)}body.dark .tag-list-item__link:hover{color:var(--neon-pink)}.tag-list-item__title{font-family:var(--font-body);font-size:clamp(.95rem,.9rem + .25vw,1.05rem);font-weight:600;flex:1}.tag-list-item__rating{font-family:var(--font-emoji);font-size:clamp(.875rem,.8rem + .35vw,1rem);color:var(--color-pink);flex-shrink:0}.tag-list-item__date{font-family:var(--font-mono);font-size:clamp(.75rem,.7rem + .25vw,.875rem);color:var(--gray-6);flex-shrink:0}.tag-page__back{margin-top:var(--size-8);padding-top:var(--size-6);border-top:2px solid var(--gray-3)}body.dark .tag-page__back{border-top-color:var(--surface-3)}.back-link{font-family:var(--font-mono);font-size:clamp(.875rem,.8rem + .35vw,1rem);color:var(--gray-7);text-decoration:none;transition:color .15s ease}.back-link:hover{color:var(--deep-pink)}body.dark .back-link:hover{color:var(--neon-pink)}.tags-index{background:var(--surface-1);min-height:50vh}.tags-index__content{max-width:900px;margin:0 auto;padding:var(--size-8) var(--size-6)}.tags-index__list{display:flex;flex-wrap:wrap;gap:var(--size-3)}.tags-index__item{background:#fff;border:3px solid black;padding:var(--size-3) var(--size-4);text-decoration:none;color:#000;font-family:var(--font-mono);font-size:clamp(.875rem,.8rem + .35vw,1rem);font-weight:600;transition:transform .15s ease,box-shadow .15s ease;display:flex;align-items:center;gap:var(--size-2)}.tags-index__item:hover{transform:translate(-2px,-2px);box-shadow:4px 4px #000}body.dark .tags-index__item{background:var(--surface-2);border-color:var(--neon-pink);color:#fff}body.dark .tags-index__item:hover{box-shadow:4px 4px 0 var(--neon-pink)}.tags-index__item-name{text-transform:capitalize}.tags-index__item-count{color:var(--gray-6);font-weight:500}@media (max-width: 768px){.tag-page__content,.tags-index__content{padding:var(--size-6) var(--size-4)}.tag-card__link{flex-direction:column;align-items:flex-start;gap:var(--size-2)}.tag-list-item__link{flex-wrap:wrap}.tag-list-item__title{flex-basis:100%}.tags-index__list{gap:var(--size-2)}.tags-index__item{padding:var(--size-2) var(--size-3)}}
