@charset "UTF-8";
:root {
  --primary: 0, 0%, 9%;
  --primary-foreground: 0, 0%, 98%;
  --secondary: 0, 0%, 96%;
  --secondary-foreground: 0, 0%, 9%;
  --muted: 0, 0%, 96%;
  --muted-foreground: 0, 0%, 45%;
  --accent: 0, 0%, 96%;
  --accent-foreground: 0, 0%, 9%;
  --destructive: 0, 84%, 60%;
  --destructive-foreground: 0, 0%, 98%;
  --border: 0, 0%, 90%;
  --input: 0, 0%, 90%;
  --ring: 0, 0%, 9%;
  --background: 0, 0%, 100%;
  --foreground: 0, 0%, 4%;
  --card: 0, 0%, 100%;
  --card-foreground: 0, 0%, 4%;
  --popover: 0, 0%, 100%;
  --popover-foreground: 0, 0%, 4%;
  --border-radius-sm: 4px;
  --primary-color: hsl(var(--primary));
  --primary-hover: hsl(0, 0%, 7%);
  --secondary-color: hsl(var(--muted-foreground));
  --accent-color: hsl(var(--primary));
  --success-color: hsl(142, 76%, 36%);
  --danger-color: hsl(var(--destructive));
  --warning-color: hsl(38, 92%, 50%);
  --bg-primary: hsl(var(--background));
  --bg-secondary: hsl(var(--muted));
  --bg-tertiary: hsl(var(--secondary));
  --bg-dark: hsl(var(--primary));
  --text-primary: hsl(var(--foreground));
  --text-secondary: hsl(var(--muted-foreground));
  --text-muted: hsl(0, 0%, 64%);
  --text-white: hsl(var(--primary-foreground));
  --border-color: hsl(var(--border));
  --border-light: hsl(var(--muted));
  --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --font-sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, 'SF Mono', Consolas, 'Liberation Mono', Menlo, monospace;
  --border-radius: 6px;
  --border-radius-lg: 8px;
  --border-radius-xl: 12px;
  --transition: all 0.15s ease-in-out;
  --container-max-width: 1200px; }

.color_scheme_dark {
  --primary: 0, 0%, 98%;
  --primary-foreground: 0, 0%, 9%;
  --secondary: 0, 0%, 14%;
  --secondary-foreground: 0, 0%, 98%;
  --muted: 0, 0%, 14%;
  --muted-foreground: 0, 0%, 64%;
  --accent: 0, 0%, 14%;
  --accent-foreground: 0, 0%, 98%;
  --destructive: 0, 62%, 30%;
  --destructive-foreground: 0, 0%, 98%;
  --border: 0, 0%, 27%;
  --input: 0, 0%, 27%;
  --ring: 0, 0%, 83%;
  --background: 0, 0%, 4%;
  --foreground: 0, 0%, 98%;
  --card: 0, 0%, 4%;
  --card-foreground: 0, 0%, 98%;
  --popover: 0, 0%, 4%;
  --popover-foreground: 0, 0%, 98%;
  --primary-color: hsl(var(--primary));
  --primary-hover: hsl(0, 0%, 95%);
  --secondary-color: hsl(var(--muted-foreground));
  --accent-color: hsl(var(--primary));
  --success-color: hsl(142, 76%, 36%);
  --danger-color: hsl(var(--destructive));
  --warning-color: hsl(38, 92%, 50%);
  --bg-primary: hsl(var(--background));
  --bg-secondary: hsl(var(--muted));
  --bg-tertiary: hsl(var(--secondary));
  --bg-dark: hsl(var(--primary));
  --text-primary: hsl(var(--foreground));
  --text-secondary: hsl(var(--muted-foreground));
  --text-muted: hsl(0, 0%, 45%);
  --text-white: hsl(var(--primary-foreground));
  --border-color: hsl(var(--border));
  --border-light: hsl(var(--muted)); }

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  width: 100%;
  overflow-x: hidden; }

body {
  font-family: var(--font-sans);
  font-size: 16px;
  line-height: 1.6;
  color: var(--text-primary);
  background-color: var(--bg-primary);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 100%;
  overflow-x: hidden;
  min-width: 320px; }

a {
  color: var(--primary-color);
  text-decoration: none;
  transition: var(--transition); }
  a:hover {
    color: var(--primary-hover); }

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 0.5rem; }

h1 {
  font-size: 2.5rem; }

h2 {
  font-size: 2rem; }

h3 {
  font-size: 1.5rem; }

h4 {
  font-size: 1.25rem; }

h5 {
  font-size: 1.125rem; }

h6 {
  font-size: 1rem; }

p {
  margin-bottom: 1rem; }

@media (max-width: 768px) {
  h1 {
    font-size: 2rem; }

  h2 {
    font-size: 1.75rem; }

  h3 {
    font-size: 1.25rem; } }
.container {
  max-width: var(--container-max-width);
  margin: 0 auto;
  padding: 0 1rem; }
  @media (min-width: 768px) {
    .container {
      padding: 0 2rem; } }

.main-content {
  min-height: calc(100vh - 200px); }

.section {
  padding: 4rem 0; }

.section-title {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 2rem;
  color: var(--text-primary); }

img {
  max-width: 100%;
  height: auto;
  border-radius: var(--border-radius);
  transition: var(--transition); }

.image-placeholder,
.article-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
  border-radius: var(--border-radius);
  font-size: 3rem; }

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  border-radius: var(--border-radius);
  font-size: 0.875rem;
  font-weight: 500;
  transition: var(--transition);
  outline: none;
  border: 1px solid #7a7a7a;
  cursor: pointer;
  text-decoration: none;
  min-height: 2.25rem;
  padding: 0.5rem 1rem;
  gap: .5rem; }
  .btn:focus-visible {
    outline: 2px solid hsl(var(--ring));
    outline-offset: 2px; }
  .btn:disabled {
    pointer-events: none;
    opacity: 0.5; }
  .btn.btn-primary {
    background-color: hsl(var(--primary));
    color: hsl(var(--primary-foreground)); }
    .btn.btn-primary:hover {
      background-color: #262626; }
    .color_scheme_dark .btn.btn-primary {
      background-color: white;
      color: black; }
      .color_scheme_dark .btn.btn-primary:hover {
        background-color: #f3f4f6;
        color: black; }
  .btn.btn-secondary {
    background-color: hsl(var(--secondary));
    color: hsl(var(--secondary-foreground)); }
    .btn.btn-secondary:hover {
      background-color: hsl(var(--secondary)/0.8); }
    .color_scheme_dark .btn.btn-secondary {
      background-color: #374151;
      color: white; }
      .color_scheme_dark .btn.btn-secondary:hover {
        background-color: #4b5563;
        color: white; }
  .btn.btn-outline {
    border: 1px solid hsl(var(--border));
    background-color: hsl(var(--background));
    color: hsl(var(--foreground)); }
    .btn.btn-outline:hover {
      background-color: hsl(var(--accent));
      color: hsl(var(--accent-foreground)); }
    .color_scheme_dark .btn.btn-outline {
      border-color: rgba(255, 255, 255, 0.15);
      background-color: rgba(255, 255, 255, 0.1);
      color: rgba(255, 255, 255, 0.8); }
      .color_scheme_dark .btn.btn-outline:hover {
        background-color: rgba(255, 255, 255, 0.1);
        border-color: rgba(255, 255, 255, 0.25);
        color: white; }
  .btn.btn-ghost {
    background-color: transparent;
    color: hsl(var(--foreground)); }
    .btn.btn-ghost:hover {
      background-color: hsl(var(--accent));
      color: hsl(var(--accent-foreground)); }
  .btn.btn-destructive {
    background-color: hsl(var(--destructive));
    color: hsl(var(--destructive-foreground)); }
    .btn.btn-destructive:hover {
      background-color: hsl(var(--destructive)/0.9); }
  .btn.btn-large {
    height: 2.75rem;
    padding: 0.5rem 2rem;
    border-radius: var(--border-radius-lg); }
  .btn.btn-sm {
    height: 2rem;
    padding: 0.25rem 0.75rem;
    font-size: 0.75rem;
    border-radius: calc(var(--border-radius) - 2px); }
  .btn.btn-icon {
    height: 2.25rem;
    width: 2.25rem;
    padding: 0; }
  .btn.btn-success {
    background-color: var(--success-color);
    color: white;
    border: 1px solid var(--success-color); }
    .btn.btn-success:hover {
      background-color: #149041;
      border-color: #149041; }
    .color_scheme_dark .btn.btn-success {
      background-color: #292929;
      color: #fff;
      border-color: transparent; }
      .color_scheme_dark .btn.btn-success:hover {
        background-color: #111; }
  .btn i {
    margin-right: 0.5rem; }
    .btn i:only-child {
      margin-right: 0; }

.input, .search-input,
.filter-select,
.sort-select, input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"] {
  display: flex;
  height: 2.25rem;
  width: 100%;
  border-radius: var(--border-radius);
  border: 1px solid hsl(var(--border));
  background-color: hsl(var(--background));
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  transition: var(--transition); }
  .input::placeholder, .search-input::placeholder,
  .filter-select::placeholder,
  .sort-select::placeholder, input[type="text"]::placeholder,
  input[type="email"]::placeholder,
  input[type="password"]::placeholder,
  input[type="search"]::placeholder {
    color: hsl(var(--muted-foreground)); }
  .input:focus, .search-input:focus,
  .filter-select:focus,
  .sort-select:focus, input[type="text"]:focus,
  input[type="email"]:focus,
  input[type="password"]:focus,
  input[type="search"]:focus {
    outline: 2px solid hsl(var(--ring));
    outline-offset: 2px;
    border-color: hsl(var(--ring)); }
  .input:disabled, .search-input:disabled,
  .filter-select:disabled,
  .sort-select:disabled, input[type="text"]:disabled,
  input[type="email"]:disabled,
  input[type="password"]:disabled,
  input[type="search"]:disabled {
    cursor: not-allowed;
    opacity: 0.5; }

.select, .filter-select,
.sort-select, select {
  display: flex;
  height: 2.25rem;
  width: 100%;
  align-items: center;
  justify-content: between;
  border-radius: var(--border-radius);
  border: 1px solid hsl(var(--border));
  background-color: hsl(var(--background));
  padding: 0.5rem 2rem 0.5rem 0.75rem;
  font-size: 0.875rem;
  appearance: none;
  cursor: pointer;
  transition: var(--transition);
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 0.5rem center;
  background-size: 1rem; }
  .select:focus, .filter-select:focus,
  .sort-select:focus, select:focus {
    outline: 2px solid hsl(var(--ring));
    outline-offset: 2px;
    border-color: hsl(var(--ring)); }
  .select:disabled, .filter-select:disabled,
  .sort-select:disabled, select:disabled {
    cursor: not-allowed;
    opacity: 0.5; }

.textarea, textarea {
  display: flex;
  min-height: 5rem;
  width: 100%;
  border-radius: var(--border-radius);
  border: 1px solid hsl(var(--border));
  background-color: hsl(var(--background));
  padding: 0.75rem;
  font-size: 0.875rem;
  resize: vertical;
  transition: var(--transition); }
  .textarea::placeholder, textarea::placeholder {
    color: hsl(var(--muted-foreground)); }
  .textarea:focus, textarea:focus {
    outline: 2px solid hsl(var(--ring));
    outline-offset: 2px;
    border-color: hsl(var(--ring)); }
  .textarea:disabled, textarea:disabled {
    cursor: not-allowed;
    opacity: 0.5; }

.form-group {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 1rem; }
  .form-group label {
    font-size: 0.875rem;
    font-weight: 500;
    color: hsl(var(--foreground)); }
  .form-group .form-description {
    font-size: 0.75rem;
    color: hsl(var(--muted-foreground)); }
  .form-group .form-error {
    font-size: 0.75rem;
    color: hsl(var(--destructive)); }

.search-input-wrapper {
  position: relative;
  display: flex;
  align-items: center; }
  .search-input-wrapper i {
    position: absolute;
    left: 0.75rem;
    color: hsl(var(--muted-foreground));
    z-index: 1;
    font-size: 1rem; }
  .search-input-wrapper .input, .search-input-wrapper .search-input,
  .search-input-wrapper .filter-select,
  .search-input-wrapper .sort-select, .search-input-wrapper input[type="text"],
  .search-input-wrapper input[type="email"],
  .search-input-wrapper input[type="password"],
  .search-input-wrapper input[type="search"] {
    padding-left: 2.5rem; }

.card, .post-card,
.product-card,
.guide-item,
.idea-card,
.update-card,
.trend-article,
.topic-card,
.insight-card,
.news-item,
.rule-card,
.stats-card,
.guideline-card,
.benefit-card {
  background: hsl(var(--background));
  border-radius: var(--border-radius-lg);
  border: 1px solid hsl(var(--border));
  box-shadow: var(--shadow-sm);
  transition: var(--transition); }
  .card:hover, .post-card:hover,
  .product-card:hover,
  .guide-item:hover,
  .idea-card:hover,
  .update-card:hover,
  .trend-article:hover,
  .topic-card:hover,
  .insight-card:hover,
  .news-item:hover,
  .rule-card:hover,
  .stats-card:hover,
  .guideline-card:hover,
  .benefit-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md); }
  .card .card-header, .post-card .card-header,
  .product-card .card-header,
  .guide-item .card-header,
  .idea-card .card-header,
  .update-card .card-header,
  .trend-article .card-header,
  .topic-card .card-header,
  .insight-card .card-header,
  .news-item .card-header,
  .rule-card .card-header,
  .stats-card .card-header,
  .guideline-card .card-header,
  .benefit-card .card-header {
    padding: 1.5rem 1.5rem 0; }
    .card .card-header .card-title, .post-card .card-header .card-title,
    .product-card .card-header .card-title,
    .guide-item .card-header .card-title,
    .idea-card .card-header .card-title,
    .update-card .card-header .card-title,
    .trend-article .card-header .card-title,
    .topic-card .card-header .card-title,
    .insight-card .card-header .card-title,
    .news-item .card-header .card-title,
    .rule-card .card-header .card-title,
    .stats-card .card-header .card-title,
    .guideline-card .card-header .card-title,
    .benefit-card .card-header .card-title {
      font-size: 1.25rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 0.5rem; }
    .card .card-header .card-description, .post-card .card-header .card-description,
    .product-card .card-header .card-description,
    .guide-item .card-header .card-description,
    .idea-card .card-header .card-description,
    .update-card .card-header .card-description,
    .trend-article .card-header .card-description,
    .topic-card .card-header .card-description,
    .insight-card .card-header .card-description,
    .news-item .card-header .card-description,
    .rule-card .card-header .card-description,
    .stats-card .card-header .card-description,
    .guideline-card .card-header .card-description,
    .benefit-card .card-header .card-description {
      color: hsl(var(--muted-foreground));
      font-size: 0.875rem;
      line-height: 1.5; }
  .card .card-content, .post-card .card-content,
  .product-card .card-content,
  .guide-item .card-content,
  .idea-card .card-content,
  .update-card .card-content,
  .trend-article .card-content,
  .topic-card .card-content,
  .insight-card .card-content,
  .news-item .card-content,
  .rule-card .card-content,
  .stats-card .card-content,
  .guideline-card .card-content,
  .benefit-card .card-content {
    padding: 1.5rem; }
  .card .card-footer, .post-card .card-footer,
  .product-card .card-footer,
  .guide-item .card-footer,
  .idea-card .card-footer,
  .update-card .card-footer,
  .trend-article .card-footer,
  .topic-card .card-footer,
  .insight-card .card-footer,
  .news-item .card-footer,
  .rule-card .card-footer,
  .stats-card .card-footer,
  .guideline-card .card-footer,
  .benefit-card .card-footer {
    padding: 0 1.5rem 1.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem; }
  .card .card-image, .post-card .card-image,
  .product-card .card-image,
  .guide-item .card-image,
  .idea-card .card-image,
  .update-card .card-image,
  .trend-article .card-image,
  .topic-card .card-image,
  .insight-card .card-image,
  .news-item .card-image,
  .rule-card .card-image,
  .stats-card .card-image,
  .guideline-card .card-image,
  .benefit-card .card-image {
    position: relative;
    width: 100%;
    height: 200px;
    overflow: hidden; }
    .card .card-image img, .post-card .card-image img,
    .product-card .card-image img,
    .guide-item .card-image img,
    .idea-card .card-image img,
    .update-card .card-image img,
    .trend-article .card-image img,
    .topic-card .card-image img,
    .insight-card .card-image img,
    .news-item .card-image img,
    .rule-card .card-image img,
    .stats-card .card-image img,
    .guideline-card .card-image img,
    .benefit-card .card-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: var(--transition); }
      .card .card-image img:hover, .post-card .card-image img:hover,
      .product-card .card-image img:hover,
      .guide-item .card-image img:hover,
      .idea-card .card-image img:hover,
      .update-card .card-image img:hover,
      .trend-article .card-image img:hover,
      .topic-card .card-image img:hover,
      .insight-card .card-image img:hover,
      .news-item .card-image img:hover,
      .rule-card .card-image img:hover,
      .stats-card .card-image img:hover,
      .guideline-card .card-image img:hover,
      .benefit-card .card-image img:hover {
        transform: scale(1.05); }
    .card .card-image .card-image-placeholder, .post-card .card-image .card-image-placeholder,
    .product-card .card-image .card-image-placeholder,
    .guide-item .card-image .card-image-placeholder,
    .idea-card .card-image .card-image-placeholder,
    .update-card .card-image .card-image-placeholder,
    .trend-article .card-image .card-image-placeholder,
    .topic-card .card-image .card-image-placeholder,
    .insight-card .card-image .card-image-placeholder,
    .news-item .card-image .card-image-placeholder,
    .rule-card .card-image .card-image-placeholder,
    .stats-card .card-image .card-image-placeholder,
    .guideline-card .card-image .card-image-placeholder,
    .benefit-card .card-image .card-image-placeholder {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      height: 100%;
      background: hsl(var(--muted));
      color: hsl(var(--muted-foreground));
      font-size: 3rem; }
  .card.card-featured, .card-featured.post-card,
  .card-featured.product-card,
  .card-featured.guide-item,
  .card-featured.idea-card,
  .card-featured.update-card,
  .card-featured.trend-article,
  .card-featured.topic-card,
  .card-featured.insight-card,
  .card-featured.news-item,
  .card-featured.rule-card,
  .card-featured.stats-card,
  .card-featured.guideline-card,
  .card-featured.benefit-card {
    border: 2px solid hsl(var(--primary));
    box-shadow: var(--shadow-md); }
  .card.card-interactive, .card-interactive.post-card,
  .card-interactive.product-card,
  .card-interactive.guide-item,
  .card-interactive.idea-card,
  .card-interactive.update-card,
  .card-interactive.trend-article,
  .card-interactive.topic-card,
  .card-interactive.insight-card,
  .card-interactive.news-item,
  .card-interactive.rule-card,
  .card-interactive.stats-card,
  .card-interactive.guideline-card,
  .card-interactive.benefit-card {
    cursor: pointer; }
    .card.card-interactive:hover, .card-interactive.post-card:hover,
    .card-interactive.product-card:hover,
    .card-interactive.guide-item:hover,
    .card-interactive.idea-card:hover,
    .card-interactive.update-card:hover,
    .card-interactive.trend-article:hover,
    .card-interactive.topic-card:hover,
    .card-interactive.insight-card:hover,
    .card-interactive.news-item:hover,
    .card-interactive.rule-card:hover,
    .card-interactive.stats-card:hover,
    .card-interactive.guideline-card:hover,
    .card-interactive.benefit-card:hover {
      border-color: hsl(var(--primary)); }

.badge, .badge.badge-featured, .tag,
.tech-tag,
.idea-category,
.update-badge,
.product-badge,
.article-category,
.update-category,
.update-impact, .tag.featured,
.tech-tag.featured,
.idea-category.featured,
.update-badge.featured,
.product-badge.featured,
.article-category.featured,
.update-category.featured,
.update-impact.featured {
  display: inline-flex;
  align-items: center;
  border-radius: var(--border-radius);
  padding: 0.125rem 0.625rem;
  font-size: 0.75rem;
  font-weight: 500;
  transition: var(--transition);
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
  border-color: hsl(var(--primary)); }
  .badge.badge-secondary, .badge-secondary.tag,
  .badge-secondary.tech-tag,
  .badge-secondary.idea-category,
  .badge-secondary.update-badge,
  .badge-secondary.product-badge,
  .badge-secondary.article-category,
  .badge-secondary.update-category,
  .badge-secondary.update-impact {
    background: hsl(var(--secondary));
    color: hsl(var(--secondary-foreground));
    border-color: hsl(var(--border)); }
  .badge.badge-outline, .badge-outline.tag,
  .badge-outline.tech-tag,
  .badge-outline.idea-category,
  .badge-outline.update-badge,
  .badge-outline.product-badge,
  .badge-outline.article-category,
  .badge-outline.update-category,
  .badge-outline.update-impact {
    background: transparent;
    color: hsl(var(--foreground));
    border-color: hsl(var(--border)); }
  .badge.badge-destructive, .badge.badge-breaking, .badge-breaking.tag,
  .badge-breaking.tech-tag,
  .badge-breaking.idea-category,
  .badge-breaking.update-badge,
  .badge-breaking.product-badge,
  .badge-breaking.article-category,
  .badge-breaking.update-category,
  .badge-breaking.update-impact, .badge-destructive.tag, .tag.high, .tag.breaking,
  .badge-destructive.tech-tag,
  .tech-tag.high,
  .tech-tag.breaking,
  .badge-destructive.idea-category,
  .idea-category.high,
  .idea-category.breaking,
  .badge-destructive.update-badge,
  .update-badge.high,
  .update-badge.breaking,
  .badge-destructive.product-badge,
  .product-badge.high,
  .product-badge.breaking,
  .badge-destructive.article-category,
  .article-category.high,
  .article-category.breaking,
  .badge-destructive.update-category,
  .update-category.high,
  .update-category.breaking,
  .badge-destructive.update-impact,
  .update-impact.high,
  .update-impact.breaking {
    background: hsl(var(--destructive));
    color: hsl(var(--destructive-foreground));
    border-color: hsl(var(--destructive)); }
  .badge.badge-success, .badge.badge-new, .badge-new.tag,
  .badge-new.tech-tag,
  .badge-new.idea-category,
  .badge-new.update-badge,
  .badge-new.product-badge,
  .badge-new.article-category,
  .badge-new.update-category,
  .badge-new.update-impact, .badge-success.tag, .tag.low, .tag.new,
  .badge-success.tech-tag,
  .tech-tag.low,
  .tech-tag.new,
  .badge-success.idea-category,
  .idea-category.low,
  .idea-category.new,
  .badge-success.update-badge,
  .update-badge.low,
  .update-badge.new,
  .badge-success.product-badge,
  .product-badge.low,
  .product-badge.new,
  .badge-success.article-category,
  .article-category.low,
  .article-category.new,
  .badge-success.update-category,
  .update-category.low,
  .update-category.new,
  .badge-success.update-impact,
  .update-impact.low,
  .update-impact.new {
    background: #16a249;
    color: hsl(var(--primary-foreground));
    border-color: #16a249; }
  .badge.badge-warning, .badge.badge-hot, .badge-hot.tag,
  .badge-hot.tech-tag,
  .badge-hot.idea-category,
  .badge-hot.update-badge,
  .badge-hot.product-badge,
  .badge-hot.article-category,
  .badge-hot.update-category,
  .badge-hot.update-impact, .badge-warning.tag, .tag.medium,
  .badge-warning.tech-tag,
  .tech-tag.medium,
  .badge-warning.idea-category,
  .idea-category.medium,
  .badge-warning.update-badge,
  .update-badge.medium,
  .badge-warning.product-badge,
  .product-badge.medium,
  .badge-warning.article-category,
  .article-category.medium,
  .badge-warning.update-category,
  .update-category.medium,
  .badge-warning.update-impact,
  .update-impact.medium {
    background: #f59f0a;
    color: #171717;
    border-color: #f59f0a; }
  .badge.badge-interactive, .badge-interactive.tag,
  .badge-interactive.tech-tag,
  .badge-interactive.idea-category,
  .badge-interactive.update-badge,
  .badge-interactive.product-badge,
  .badge-interactive.article-category,
  .badge-interactive.update-category,
  .badge-interactive.update-impact {
    cursor: pointer; }
    .badge.badge-interactive:hover, .badge-interactive.tag:hover,
    .badge-interactive.tech-tag:hover,
    .badge-interactive.idea-category:hover,
    .badge-interactive.update-badge:hover,
    .badge-interactive.product-badge:hover,
    .badge-interactive.article-category:hover,
    .badge-interactive.update-category:hover,
    .badge-interactive.update-impact:hover {
      opacity: 0.8; }

.badge-muted {
  background: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
  border-color: hsl(var(--muted)); }

.post-category {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: hsl(var(--primary));
  font-size: 0.875rem;
  font-weight: 500; }
  .post-category i {
    color: hsl(var(--primary));
    font-size: 1rem; }

.checkbox, .checkbox-label {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 0.875rem;
  cursor: pointer;
  line-height: 1; }
  .checkbox input[type="checkbox"], .checkbox-label input[type="checkbox"] {
    appearance: none;
    margin: 0;
    width: 1rem;
    height: 1rem;
    border: 1px solid hsl(var(--border));
    border-radius: 2px;
    background-color: hsl(var(--background));
    position: relative;
    cursor: pointer;
    transition: var(--transition);
    flex-shrink: 0; }
    .checkbox input[type="checkbox"]:hover, .checkbox-label input[type="checkbox"]:hover {
      border-color: hsl(var(--primary)); }
    .checkbox input[type="checkbox"]:focus-visible, .checkbox-label input[type="checkbox"]:focus-visible {
      outline: 2px solid hsl(var(--ring));
      outline-offset: 2px; }
    .checkbox input[type="checkbox"]:checked, .checkbox-label input[type="checkbox"]:checked {
      background-color: hsl(var(--primary));
      border-color: hsl(var(--primary)); }
      .checkbox input[type="checkbox"]:checked::after, .checkbox-label input[type="checkbox"]:checked::after {
        content: '';
        position: absolute;
        left: 4px;
        top: 0px;
        width: 4px;
        height: 8px;
        border: solid hsl(var(--primary-foreground));
        border-width: 0 2px 2px 0;
        transform: rotate(45deg); }
    .checkbox input[type="checkbox"]:disabled, .checkbox-label input[type="checkbox"]:disabled {
      opacity: 0.5;
      cursor: not-allowed; }
      .checkbox input[type="checkbox"]:disabled ~ span, .checkbox-label input[type="checkbox"]:disabled ~ span {
        opacity: 0.5; }
  .checkbox span, .checkbox-label span {
    color: hsl(var(--foreground));
    transition: var(--transition); }
  .checkbox.checkbox-sm, .checkbox-sm.checkbox-label {
    font-size: 0.75rem;
    gap: 0.5rem; }
    .checkbox.checkbox-sm input[type="checkbox"], .checkbox-sm.checkbox-label input[type="checkbox"] {
      width: 0.875rem;
      height: 0.875rem; }
      .checkbox.checkbox-sm input[type="checkbox"]:checked::after, .checkbox-sm.checkbox-label input[type="checkbox"]:checked::after {
        left: 1px;
        top: -1px;
        width: 3px;
        height: 6px; }
  .checkbox.checkbox-lg, .checkbox-lg.checkbox-label {
    font-size: 1rem;
    gap: 1rem; }
    .checkbox.checkbox-lg input[type="checkbox"], .checkbox-lg.checkbox-label input[type="checkbox"] {
      width: 1.25rem;
      height: 1.25rem; }
      .checkbox.checkbox-lg input[type="checkbox"]:checked::after, .checkbox-lg.checkbox-label input[type="checkbox"]:checked::after {
        left: 3px;
        top: 0px;
        width: 5px;
        height: 10px; }

.page-header, .guide-header,
.marketplace-header,
.planning-header,
.trends-header,
.community-header {
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
  padding: 4rem 0;
  text-align: center; }
  .color_scheme_dark .page-header, .color_scheme_dark .guide-header,
  .color_scheme_dark .marketplace-header,
  .color_scheme_dark .planning-header,
  .color_scheme_dark .trends-header,
  .color_scheme_dark .community-header {
    background: hsl(var(--background));
    color: hsl(var(--foreground));
    border-bottom: 1px solid hsl(var(--border)); }
  .page-header .page-header-content, .guide-header .page-header-content,
  .marketplace-header .page-header-content,
  .planning-header .page-header-content,
  .trends-header .page-header-content,
  .community-header .page-header-content,
  .community-header .community-header-content,
  .planning-header .planning-header-content,
  .trends-header .trends-header-content {
    max-width: 800px;
    margin: 0 auto; }
  .page-header .page-title, .guide-header .page-title,
  .marketplace-header .page-title,
  .planning-header .page-title,
  .trends-header .page-title,
  .community-header .page-title {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 1rem;
    color: hsl(var(--primary-foreground)); }
    .color_scheme_dark .page-header .page-title, .color_scheme_dark .guide-header .page-title,
    .color_scheme_dark .marketplace-header .page-title,
    .color_scheme_dark .planning-header .page-title,
    .color_scheme_dark .trends-header .page-title,
    .color_scheme_dark .community-header .page-title {
      color: hsl(var(--foreground)); }
    @media (max-width: 768px) {
      .page-header .page-title, .guide-header .page-title,
      .marketplace-header .page-title,
      .planning-header .page-title,
      .trends-header .page-title,
      .community-header .page-title {
        font-size: 2rem; } }
  .page-header .page-description, .guide-header .page-description,
  .marketplace-header .page-description,
  .planning-header .page-description,
  .trends-header .page-description,
  .community-header .page-description {
    font-size: 1.125rem;
    line-height: 1.6;
    color: hsl(var(--primary-foreground)/0.9);
    margin-bottom: 2rem; }
    .color_scheme_dark .page-header .page-description, .color_scheme_dark .guide-header .page-description,
    .color_scheme_dark .marketplace-header .page-description,
    .color_scheme_dark .planning-header .page-description,
    .color_scheme_dark .trends-header .page-description,
    .color_scheme_dark .community-header .page-description {
      color: hsl(var(--muted-foreground)); }
    @media (max-width: 768px) {
      .page-header .page-description, .guide-header .page-description,
      .marketplace-header .page-description,
      .planning-header .page-description,
      .trends-header .page-description,
      .community-header .page-description {
        font-size: 1rem; } }
  .page-header .page-stats, .guide-header .page-stats,
  .marketplace-header .page-stats,
  .planning-header .page-stats,
  .trends-header .page-stats,
  .community-header .page-stats,
  .community-header .community-stats,
  .planning-header .planning-stats,
  .trends-header .trends-stats {
    display: flex;
    justify-content: center;
    gap: 2rem;
    flex-wrap: wrap;
    margin: 2rem 0; }
    .page-header .page-stats .stat-item, .guide-header .page-stats .stat-item,
    .marketplace-header .page-stats .stat-item,
    .planning-header .page-stats .stat-item,
    .trends-header .page-stats .stat-item,
    .community-header .page-stats .stat-item,
    .community-header .community-stats .stat-item,
    .planning-header .planning-stats .stat-item,
    .trends-header .trends-stats .stat-item {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      font-size: 0.875rem;
      color: hsl(var(--primary-foreground)/0.85); }
      .color_scheme_dark .page-header .page-stats .stat-item, .color_scheme_dark .guide-header .page-stats .stat-item,
      .color_scheme_dark .marketplace-header .page-stats .stat-item,
      .color_scheme_dark .planning-header .page-stats .stat-item,
      .color_scheme_dark .trends-header .page-stats .stat-item,
      .color_scheme_dark .community-header .page-stats .stat-item, .community-header .color_scheme_dark .page-header .community-stats .stat-item, .community-header .color_scheme_dark .guide-header .community-stats .stat-item,
      .community-header .color_scheme_dark .marketplace-header .community-stats .stat-item,
      .community-header .color_scheme_dark .planning-header .community-stats .stat-item,
      .community-header .color_scheme_dark .trends-header .community-stats .stat-item,
      .color_scheme_dark .community-header .community-stats .stat-item, .planning-header .color_scheme_dark .page-header .planning-stats .stat-item, .planning-header .color_scheme_dark .guide-header .planning-stats .stat-item,
      .planning-header .color_scheme_dark .marketplace-header .planning-stats .stat-item,
      .color_scheme_dark .planning-header .planning-stats .stat-item,
      .planning-header .color_scheme_dark .trends-header .planning-stats .stat-item,
      .planning-header .color_scheme_dark .community-header .planning-stats .stat-item, .trends-header .color_scheme_dark .page-header .trends-stats .stat-item, .trends-header .color_scheme_dark .guide-header .trends-stats .stat-item,
      .trends-header .color_scheme_dark .marketplace-header .trends-stats .stat-item,
      .trends-header .color_scheme_dark .planning-header .trends-stats .stat-item,
      .color_scheme_dark .trends-header .trends-stats .stat-item,
      .trends-header .color_scheme_dark .community-header .trends-stats .stat-item {
        color: hsl(var(--muted-foreground)); }
      .page-header .page-stats .stat-item i, .guide-header .page-stats .stat-item i,
      .marketplace-header .page-stats .stat-item i,
      .planning-header .page-stats .stat-item i,
      .trends-header .page-stats .stat-item i,
      .community-header .page-stats .stat-item i,
      .community-header .community-stats .stat-item i,
      .planning-header .planning-stats .stat-item i,
      .trends-header .trends-stats .stat-item i {
        font-size: 1.125rem; }
  .page-header .page-actions, .guide-header .page-actions,
  .marketplace-header .page-actions,
  .planning-header .page-actions,
  .trends-header .page-actions,
  .community-header .page-actions,
  .community-header .community-actions,
  .planning-header .planning-actions,
  .trends-header .trends-actions {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-top: 2rem;
    flex-wrap: wrap; }
  .page-header.page-header-muted, .page-header-muted.guide-header,
  .page-header-muted.marketplace-header,
  .page-header-muted.planning-header,
  .page-header-muted.trends-header,
  .page-header-muted.community-header {
    background: hsl(var(--muted)/0.3);
    color: hsl(var(--foreground)); }
    .page-header.page-header-muted .page-title, .page-header-muted.guide-header .page-title,
    .page-header-muted.marketplace-header .page-title,
    .page-header-muted.planning-header .page-title,
    .page-header-muted.trends-header .page-title,
    .page-header-muted.community-header .page-title {
      color: hsl(var(--foreground)); }
    .page-header.page-header-muted .page-description, .page-header-muted.guide-header .page-description,
    .page-header-muted.marketplace-header .page-description,
    .page-header-muted.planning-header .page-description,
    .page-header-muted.trends-header .page-description,
    .page-header-muted.community-header .page-description {
      color: hsl(var(--muted-foreground)); }
  .page-header.page-header-secondary, .page-header-secondary.guide-header,
  .page-header-secondary.marketplace-header,
  .page-header-secondary.planning-header,
  .page-header-secondary.trends-header,
  .page-header-secondary.community-header {
    background: hsl(var(--secondary));
    color: hsl(var(--secondary-foreground)); }
    .page-header.page-header-secondary .page-title, .page-header-secondary.guide-header .page-title,
    .page-header-secondary.marketplace-header .page-title,
    .page-header-secondary.planning-header .page-title,
    .page-header-secondary.trends-header .page-title,
    .page-header-secondary.community-header .page-title {
      color: hsl(var(--secondary-foreground)); }
    .page-header.page-header-secondary .page-description, .page-header-secondary.guide-header .page-description,
    .page-header-secondary.marketplace-header .page-description,
    .page-header-secondary.planning-header .page-description,
    .page-header-secondary.trends-header .page-description,
    .page-header-secondary.community-header .page-description {
      color: hsl(var(--secondary-foreground)/0.8); }
    .page-header.page-header-secondary .page-stats .stat-item, .page-header-secondary.guide-header .page-stats .stat-item,
    .page-header-secondary.marketplace-header .page-stats .stat-item,
    .page-header-secondary.planning-header .page-stats .stat-item,
    .page-header-secondary.trends-header .page-stats .stat-item,
    .page-header-secondary.community-header .page-stats .stat-item, .page-header.page-header-secondary .community-header .community-stats .stat-item, .community-header .page-header.page-header-secondary .community-stats .stat-item, .page-header-secondary.guide-header .community-header .community-stats .stat-item, .community-header .page-header-secondary.guide-header .community-stats .stat-item,
    .page-header-secondary.marketplace-header .community-header .community-stats .stat-item,
    .community-header .page-header-secondary.marketplace-header .community-stats .stat-item,
    .page-header-secondary.planning-header .community-header .community-stats .stat-item,
    .community-header .page-header-secondary.planning-header .community-stats .stat-item,
    .page-header-secondary.trends-header .community-header .community-stats .stat-item,
    .community-header .page-header-secondary.trends-header .community-stats .stat-item,
    .page-header-secondary.community-header .community-stats .stat-item, .page-header.page-header-secondary .planning-header .planning-stats .stat-item, .planning-header .page-header.page-header-secondary .planning-stats .stat-item, .page-header-secondary.guide-header .planning-header .planning-stats .stat-item, .planning-header .page-header-secondary.guide-header .planning-stats .stat-item,
    .page-header-secondary.marketplace-header .planning-header .planning-stats .stat-item,
    .planning-header .page-header-secondary.marketplace-header .planning-stats .stat-item,
    .page-header-secondary.planning-header .planning-stats .stat-item,
    .page-header-secondary.trends-header .planning-header .planning-stats .stat-item,
    .planning-header .page-header-secondary.trends-header .planning-stats .stat-item,
    .page-header-secondary.community-header .planning-header .planning-stats .stat-item,
    .planning-header .page-header-secondary.community-header .planning-stats .stat-item, .page-header.page-header-secondary .trends-header .trends-stats .stat-item, .trends-header .page-header.page-header-secondary .trends-stats .stat-item, .page-header-secondary.guide-header .trends-header .trends-stats .stat-item, .trends-header .page-header-secondary.guide-header .trends-stats .stat-item,
    .page-header-secondary.marketplace-header .trends-header .trends-stats .stat-item,
    .trends-header .page-header-secondary.marketplace-header .trends-stats .stat-item,
    .page-header-secondary.planning-header .trends-header .trends-stats .stat-item,
    .trends-header .page-header-secondary.planning-header .trends-stats .stat-item,
    .page-header-secondary.trends-header .trends-stats .stat-item,
    .page-header-secondary.community-header .trends-header .trends-stats .stat-item,
    .trends-header .page-header-secondary.community-header .trends-stats .stat-item {
      color: hsl(var(--secondary-foreground)/0.7); }

.featured-section {
  padding: 4rem 0;
  background: hsl(var(--background)); }
  .featured-section .section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem; }
    @media (max-width: 768px) {
      .featured-section .section-header {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch; } }
  .featured-section .section-title {
    font-size: 2rem;
    font-weight: 700;
    color: hsl(var(--foreground));
    margin: 0; }
    @media (max-width: 768px) {
      .featured-section .section-title {
        font-size: 1.5rem; } }
  .featured-section .section-actions {
    display: flex;
    gap: 1rem; }

.content-section {
  padding: 4rem 0;
  background: hsl(var(--muted)/0.3); }
  .content-section .section-title {
    font-size: 2rem;
    font-weight: 700;
    color: hsl(var(--foreground));
    margin-bottom: 2rem;
    text-align: center; }
    @media (max-width: 768px) {
      .content-section .section-title {
        font-size: 1.5rem; } }
  .content-section .content-filters {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 3rem; }
    @media (max-width: 768px) {
      .content-section .content-filters {
        align-items: stretch; } }
    .content-section .content-filters .filter-select,
    .content-section .content-filters .sort-select {
      padding: 0.5rem 1rem;
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      background: hsl(var(--background));
      color: hsl(var(--foreground));
      cursor: pointer; }
      .content-section .content-filters .filter-select:focus,
      .content-section .content-filters .sort-select:focus {
        outline: none;
        border-color: hsl(var(--ring)); }
    .content-section .content-filters .search-wrapper {
      position: relative;
      display: flex;
      align-items: center;
      min-width: 250px; }
      .content-section .content-filters .search-wrapper .bi-search {
        position: absolute;
        left: 0.75rem;
        color: hsl(var(--muted-foreground));
        pointer-events: none; }
      .content-section .content-filters .search-wrapper .search-input {
        padding: 0.5rem 0.5rem 0.5rem 2.5rem;
        border: 1px solid hsl(var(--border));
        border-radius: var(--border-radius);
        background: hsl(var(--background));
        color: hsl(var(--foreground));
        width: 100%; }
        .content-section .content-filters .search-wrapper .search-input:focus {
          outline: none;
          border-color: hsl(var(--ring)); }
        .content-section .content-filters .search-wrapper .search-input::placeholder {
          color: hsl(var(--muted-foreground)); }
  .content-section .content-list {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    margin-bottom: 3rem; }
  .content-section .content-item {
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    padding: 1.5rem;
    transition: var(--transition); }
    .content-section .content-item:hover {
      border-color: hsl(var(--primary));
      box-shadow: var(--shadow-sm); }
    .content-section .content-item .content-item-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 1rem; }
      @media (max-width: 768px) {
        .content-section .content-item .content-item-header {
          flex-direction: column;
          gap: 0.5rem;
          align-items: flex-start; } }
      .content-section .content-item .content-item-header .content-category {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        color: hsl(var(--primary));
        font-size: 0.875rem;
        font-weight: 500; }
        .content-section .content-item .content-item-header .content-category i {
          font-size: 1rem; }
      .content-section .content-item .content-item-header .content-status {
        padding: 0.25rem 0.75rem;
        border-radius: var(--border-radius);
        font-size: 0.75rem;
        font-weight: 600;
        background: hsl(var(--muted));
        color: hsl(var(--muted-foreground)); }
    .content-section .content-item .content-item-title {
      font-size: 1.25rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 0.75rem;
      line-height: 1.3; }
    .content-section .content-item .content-item-description {
      color: hsl(var(--muted-foreground));
      line-height: 1.5;
      margin-bottom: 1rem;
      font-size: 0.875rem; }
    .content-section .content-item .content-item-meta {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: 0.875rem; }
      @media (max-width: 768px) {
        .content-section .content-item .content-item-meta {
          flex-direction: column;
          gap: 0.5rem;
          align-items: flex-start; } }
      .content-section .content-item .content-item-meta .author-info {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        color: hsl(var(--muted-foreground)); }
        .content-section .content-item .content-item-meta .author-info i {
          font-size: 1rem; }
      .content-section .content-item .content-item-meta .content-item-stats {
        display: flex;
        gap: 1rem;
        color: hsl(var(--muted-foreground)); }
        .content-section .content-item .content-item-meta .content-item-stats span {
          display: flex;
          align-items: center;
          gap: 0.25rem; }
  .content-section .load-more-section {
    text-align: center; }
    .content-section .load-more-section .load-more-btn {
      display: inline-flex;
      align-items: center;
      gap: 0.5rem; }

.cta-section {
  padding: 4rem 0;
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
  text-align: center; }
  .cta-section .cta-content {
    max-width: 600px;
    margin: 0 auto; }
    .cta-section .cta-content .cta-text {
      margin-bottom: 2rem; }
      .cta-section .cta-content .cta-text h2 {
        font-size: 2.5rem;
        font-weight: 700;
        margin-bottom: 1rem;
        color: hsl(var(--primary-foreground)); }
        @media (max-width: 768px) {
          .cta-section .cta-content .cta-text h2 {
            font-size: 2rem; } }
      .cta-section .cta-content .cta-text p {
        font-size: 1.125rem;
        color: hsl(var(--primary-foreground)/0.9);
        margin: 0; }
    .cta-section .cta-content .cta-actions {
      display: flex;
      justify-content: center;
      gap: 1rem;
      flex-wrap: wrap; }
      .cta-section .cta-content .cta-actions .btn {
        min-width: 150px; }
        @media (max-width: 480px) {
          .cta-section .cta-content .cta-actions .btn {
            min-width: auto;
            flex: 1; } }
      .cta-section .cta-content .cta-actions .btn-primary {
        background: hsl(var(--primary-foreground));
        color: hsl(var(--primary));
        border-color: hsl(var(--primary-foreground)); }
        .cta-section .cta-content .cta-actions .btn-primary:hover {
          background: hsl(var(--primary-foreground)/0.9); }
      .cta-section .cta-content .cta-actions .btn-outline {
        background: transparent;
        color: hsl(var(--primary-foreground));
        border-color: hsl(var(--primary-foreground)); }
        .cta-section .cta-content .cta-actions .btn-outline:hover {
          background: hsl(var(--primary-foreground)/0.1); }

.section-padding {
  padding: 4rem 0; }

.section-padding-sm {
  padding: 2rem 0; }

.section-padding-lg {
  padding: 6rem 0; }

.posts-filters {
  padding: 2rem 0;
  background: hsl(var(--muted)/0.3);
  border-bottom: 1px solid hsl(var(--border)); }
  .posts-filters .filters-wrapper {
    display: flex;
    flex-direction: column;
    gap: 2rem; }
  .posts-filters .category-tabs {
    display: flex;
    gap: 0.5rem;
    overflow-x: auto;
    padding-bottom: 0.5rem; }
    @media (max-width: 768px) {
      .posts-filters .category-tabs {
        gap: 0.25rem; } }
  .posts-filters .category-tab {
    padding: 0.75rem 1.5rem;
    background: transparent;
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius);
    cursor: pointer;
    transition: var(--transition);
    white-space: nowrap;
    color: hsl(var(--foreground));
    font-size: 0.875rem;
    font-weight: 500; }
    .posts-filters .category-tab:hover {
      background: hsl(var(--accent));
      color: hsl(var(--accent-foreground)); }
    .posts-filters .category-tab.active {
      background: hsl(var(--primary));
      color: hsl(var(--primary-foreground));
      border-color: hsl(var(--primary)); }
    @media (max-width: 768px) {
      .posts-filters .category-tab {
        padding: 0.5rem 1rem;
        font-size: 0.75rem; } }
  .posts-filters .filters-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2rem; }
    @media (max-width: 768px) {
      .posts-filters .filters-controls {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch; } }
  .posts-filters .filters-section {
    display: flex;
    gap: 1rem; }
    @media (max-width: 480px) {
      .posts-filters .filters-section {
        flex-direction: column; } }
    .posts-filters .filters-section .filter-select,
    .posts-filters .filters-section .sort-select {
      min-width: 140px;
      padding: 0 0.75rem;
      background: hsl(var(--background));
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      color: hsl(var(--foreground));
      font-size: 0.875rem;
      cursor: pointer;
      transition: var(--transition); }
      .posts-filters .filters-section .filter-select:focus,
      .posts-filters .filters-section .sort-select:focus {
        outline: none;
        border-color: hsl(var(--ring));
        box-shadow: 0 0 0 2px hsl(var(--ring)/0.2); }
      .posts-filters .filters-section .filter-select:hover,
      .posts-filters .filters-section .sort-select:hover {
        border-color: hsl(var(--ring)); }
      @media (max-width: 480px) {
        .posts-filters .filters-section .filter-select,
        .posts-filters .filters-section .sort-select {
          min-width: auto;
          width: 100%; } }
  .posts-filters .search-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    min-width: 300px; }
    @media (max-width: 768px) {
      .posts-filters .search-wrapper {
        min-width: auto;
        width: 100%; } }
    .posts-filters .search-wrapper i {
      position: absolute;
      left: 1rem;
      color: hsl(var(--muted-foreground));
      font-size: 1rem;
      z-index: 1; }
    .posts-filters .search-wrapper .search-input {
      width: 100%;
      padding: 0.75rem 1rem 0.75rem 2.5rem;
      background: hsl(var(--background));
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      color: hsl(var(--foreground));
      font-size: 0.875rem;
      transition: var(--transition); }
      .posts-filters .search-wrapper .search-input:focus {
        outline: none;
        border-color: hsl(var(--ring));
        box-shadow: 0 0 0 2px hsl(var(--ring)/0.2); }
      .posts-filters .search-wrapper .search-input::placeholder {
        color: hsl(var(--muted-foreground)); }
      .posts-filters .search-wrapper .search-input:hover {
        border-color: hsl(var(--ring)); }

.posts-list-section {
  padding: 4rem 0;
  background: hsl(var(--background)); }
  .posts-list-section .posts-layout {
    display: grid;
    grid-template-columns: 1fr 300px;
    grid-template-areas: "main sidebar";
    gap: 4rem; }
    @media (max-width: 1200px) {
      .posts-list-section .posts-layout {
        grid-template-columns: 1fr;
        grid-template-areas: "sidebar" "main";
        gap: 3rem; } }
  .posts-list-section .posts-main {
    grid-area: main;
    min-width: 0; }
  .posts-list-section .posts-list {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-bottom: 3rem; }
  .posts-list-section .posts-sidebar {
    grid-area: sidebar; }
    .posts-list-section .posts-sidebar .sidebar-content {
      position: sticky;
      top: 2rem; }
      @media (max-width: 1200px) {
        .posts-list-section .posts-sidebar .sidebar-content {
          position: static; } }
    .posts-list-section .posts-sidebar .sidebar-section {
      margin-bottom: 2rem;
      padding: 1.5rem;
      background: hsl(var(--card));
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius-lg); }
      .posts-list-section .posts-sidebar .sidebar-section:last-child {
        margin-bottom: 0; }
    .posts-list-section .posts-sidebar .sidebar-title {
      font-size: 1.125rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 1rem; }
    .posts-list-section .posts-sidebar .popular-tags {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem; }
      .posts-list-section .posts-sidebar .popular-tags .tag {
        padding: 0.25rem 0.75rem;
        background: hsl(var(--muted));
        color: hsl(var(--muted-foreground));
        text-decoration: none;
        border-radius: var(--border-radius);
        font-size: 0.75rem;
        transition: var(--transition); }
        .posts-list-section .posts-sidebar .popular-tags .tag:hover {
          background: hsl(var(--primary));
          color: hsl(var(--primary-foreground)); }
    .posts-list-section .posts-sidebar .recent-activities .activity-item {
      display: flex;
      align-items: flex-start;
      gap: 0.75rem;
      padding: 0.75rem 0;
      border-bottom: 1px solid hsl(var(--border)); }
      .posts-list-section .posts-sidebar .recent-activities .activity-item:last-child {
        border-bottom: none;
        padding-bottom: 0; }
      .posts-list-section .posts-sidebar .recent-activities .activity-item:first-child {
        padding-top: 0; }
      .posts-list-section .posts-sidebar .recent-activities .activity-item i {
        color: hsl(var(--primary));
        font-size: 0.875rem;
        margin-top: 0.125rem; }
      .posts-list-section .posts-sidebar .recent-activities .activity-item span {
        flex: 1;
        font-size: 0.875rem;
        color: hsl(var(--foreground));
        line-height: 1.4; }
      .posts-list-section .posts-sidebar .recent-activities .activity-item time {
        font-size: 0.75rem;
        color: hsl(var(--muted-foreground));
        white-space: nowrap; }

.post-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 2rem;
  background: hsl(var(--background));
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius-lg);
  transition: var(--transition);
  gap: 2rem; }
  .post-item:hover {
    border-color: hsl(var(--primary));
    box-shadow: var(--shadow-sm); }
  .post-item .post-item-content {
    flex: 1; }
  .post-item .post-item-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem; }
    @media (max-width: 768px) {
      .post-item .post-item-header {
        flex-direction: column;
        gap: 0.5rem;
        align-items: flex-start; } }
    .post-item .post-item-header .post-badges {
      display: flex;
      gap: 0.5rem; }
  .post-item .post-item-title {
    margin-bottom: 1rem; }
    .post-item .post-item-title a {
      font-size: 1.5rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      text-decoration: none;
      line-height: 1.3; }
      .post-item .post-item-title a:hover {
        color: hsl(var(--primary)); }
      @media (max-width: 768px) {
        .post-item .post-item-title a {
          font-size: 1.25rem; } }
  .post-item .post-item-excerpt {
    color: hsl(var(--muted-foreground));
    line-height: 1.6;
    margin-bottom: 1.5rem;
    font-size: 0.875rem; }
  .post-item .post-item-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.875rem; }
    @media (max-width: 768px) {
      .post-item .post-item-meta {
        flex-direction: column;
        gap: 1rem;
        align-items: flex-start; } }
    .post-item .post-item-meta .author-info {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: hsl(var(--muted-foreground)); }
      .post-item .post-item-meta .author-info i {
        font-size: 1rem; }
    .post-item .post-item-meta .post-item-stats {
      display: flex;
      gap: 1rem;
      color: hsl(var(--muted-foreground)); }
      .post-item .post-item-meta .post-item-stats span {
        display: flex;
        align-items: center;
        gap: 0.25rem; }
    .post-item .post-item-meta .post-date {
      color: hsl(var(--muted-foreground));
      font-size: 0.75rem; }
  .post-item .post-item-actions {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex-shrink: 0; }
    @media (max-width: 768px) {
      .post-item .post-item-actions {
        flex-direction: row;
        align-self: stretch;
        justify-content: center; } }
    .post-item .post-item-actions .btn.liked {
      color: #dc3545; }
    .post-item .post-item-actions .btn.bookmarked {
      color: hsl(var(--primary)); }
  @media (max-width: 768px) {
    .post-item {
      flex-direction: column;
      gap: 1rem;
      padding: 1.5rem; } }

.posts-sidebar {
  padding: 2rem 0;
  background: hsl(var(--muted)/0.3); }
  .posts-sidebar .sidebar-content {
    max-width: 300px;
    margin: 0 auto; }
    @media (min-width: 1200px) {
      .posts-sidebar .sidebar-content {
        position: sticky;
        top: 2rem; } }
  .posts-sidebar .sidebar-section {
    margin-bottom: 2rem;
    padding: 1.5rem;
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg); }
  .posts-sidebar .sidebar-title {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 1rem;
    color: hsl(var(--foreground)); }
  .posts-sidebar .popular-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem; }
    .posts-sidebar .popular-tags .tag {
      padding: 0.25rem 0.75rem;
      background: hsl(var(--muted));
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      font-size: 0.75rem;
      color: hsl(var(--muted-foreground));
      text-decoration: none;
      transition: var(--transition); }
      .posts-sidebar .popular-tags .tag:hover {
        border-color: hsl(var(--primary));
        color: hsl(var(--primary));
        background: hsl(var(--primary)/0.1); }
  .posts-sidebar .recent-activities {
    display: flex;
    flex-direction: column;
    gap: 1rem; }
    .posts-sidebar .recent-activities .activity-item {
      display: flex;
      align-items: flex-start;
      gap: 0.75rem;
      padding: 0.75rem;
      border-radius: var(--border-radius);
      background: hsl(var(--muted)/0.5); }
      .posts-sidebar .recent-activities .activity-item i {
        flex-shrink: 0;
        margin-top: 0.125rem;
        color: hsl(var(--primary)); }
      .posts-sidebar .recent-activities .activity-item span {
        flex: 1;
        font-size: 0.875rem;
        color: hsl(var(--foreground));
        line-height: 1.4; }
      .posts-sidebar .recent-activities .activity-item time {
        flex-shrink: 0;
        font-size: 0.75rem;
        color: hsl(var(--muted-foreground)); }

.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem; }
  .pagination .pagination-numbers {
    display: flex;
    gap: 0.25rem; }
    @media (max-width: 480px) {
      .pagination .pagination-numbers {
        display: none; } }
  .pagination .pagination-dots {
    color: hsl(var(--muted-foreground));
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem; }
  .pagination .btn {
    min-width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem; }
    .pagination .btn[disabled] {
      opacity: 0.5;
      cursor: not-allowed; }

.contact-info,
.popular-tags {
  gap: .5rem;
  display: flex;
  flex-wrap: wrap; }
  .contact-info .contact-item,
  .popular-tags .contact-item {
    display: flex;
    gap: .5rem; }

.notification-settings {
  display: flex;
  gap: .5rem;
  flex-wrap: wrap;
  flex-direction: column; }

.update-content h4 {
  margin-bottom: 0; }

.summary-items {
  display: flex;
  gap: .5rem;
  flex-direction: column; }
  .summary-items .summary-item {
    display: flex;
    gap: .5rem; }
    .summary-items .summary-item strong {
      width: 5rem;
      display: inline-flex; }

.breadcrumb {
  padding: 1rem 0;
  background: hsl(var(--muted)/0.3);
  border-bottom: 1px solid hsl(var(--border)); }
  .breadcrumb .breadcrumb-list {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 0.875rem; }
    .breadcrumb .breadcrumb-list li {
      display: flex;
      align-items: center; }
      .breadcrumb .breadcrumb-list li:not(:last-child)::after {
        content: '/';
        margin-left: 0.5rem;
        color: hsl(var(--muted-foreground)); }
      .breadcrumb .breadcrumb-list li a {
        color: hsl(var(--primary));
        text-decoration: none; }
        .breadcrumb .breadcrumb-list li a:hover {
          text-decoration: underline; }
      .breadcrumb .breadcrumb-list li:last-child {
        color: hsl(var(--muted-foreground)); }

.post-header {
  padding: 3rem 0;
  background: hsl(var(--background));
  border-bottom: 1px solid hsl(var(--border)); }
  .post-header .post-header-content {
    max-width: 800px;
    margin: 0 auto;
    text-align: center; }
  .post-header .post-meta-top {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem; }
    @media (max-width: 480px) {
      .post-header .post-meta-top {
        flex-direction: column;
        gap: 0.5rem; } }
    .post-header .post-meta-top .post-category {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: hsl(var(--primary));
      font-size: 0.875rem;
      font-weight: 500; }
      .post-header .post-meta-top .post-category i {
        font-size: 1rem; }
    .post-header .post-meta-top .post-badges {
      display: flex;
      gap: 0.5rem; }
  .post-header .post-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: hsl(var(--foreground));
    margin-bottom: 1rem;
    line-height: 1.2; }
    @media (max-width: 768px) {
      .post-header .post-title {
        font-size: 2rem; } }
    @media (max-width: 480px) {
      .post-header .post-title {
        font-size: 1.75rem; } }
  .post-header .post-subtitle {
    font-size: 1.125rem;
    color: hsl(var(--muted-foreground));
    margin-bottom: 2rem;
    line-height: 1.6; }
  .post-header .post-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2rem; }
    @media (max-width: 768px) {
      .post-header .post-meta {
        flex-direction: column;
        gap: 1rem; } }
    .post-header .post-meta .author-info {
      display: flex;
      align-items: center;
      gap: 0.75rem; }
      .post-header .post-meta .author-info .author-avatar {
        font-size: 2rem;
        color: hsl(var(--muted-foreground)); }
      .post-header .post-meta .author-info .author-details {
        text-align: left; }
        .post-header .post-meta .author-info .author-details .author-name {
          display: block;
          font-weight: 600;
          color: hsl(var(--foreground)); }
        .post-header .post-meta .author-info .author-details .author-role {
          font-size: 0.875rem;
          color: hsl(var(--muted-foreground)); }
    .post-header .post-meta .post-stats {
      display: flex;
      gap: 1.5rem; }
      @media (max-width: 480px) {
        .post-header .post-meta .post-stats {
          flex-wrap: wrap;
          gap: 1rem;
          justify-content: center; } }
      .post-header .post-meta .post-stats .stat-item {
        display: flex;
        align-items: center;
        gap: 0.25rem;
        font-size: 0.875rem;
        color: hsl(var(--muted-foreground)); }
        .post-header .post-meta .post-stats .stat-item i {
          font-size: 1rem; }
    .post-header .post-meta .post-actions {
      display: flex;
      gap: 0.5rem; }
      @media (max-width: 480px) {
        .post-header .post-meta .post-actions {
          flex-wrap: wrap;
          justify-content: center; } }

.post-content {
  padding: 4rem 0; }
  .post-content .post-layout {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 4rem;
    max-width: 1200px;
    margin: 0 auto; }
    @media (max-width: 1024px) {
      .post-content .post-layout {
        grid-template-columns: 1fr;
        gap: 3rem; } }

.post-main .post-body {
  color: hsl(var(--foreground));
  line-height: 1.7;
  font-size: 1rem; }
  .post-main .post-body h1, .post-main .post-body h2, .post-main .post-body h3, .post-main .post-body h4, .post-main .post-body h5, .post-main .post-body h6 {
    color: hsl(var(--foreground));
    font-weight: 600;
    margin: 2rem 0 1rem;
    line-height: 1.3; }
    .post-main .post-body h1:first-child, .post-main .post-body h2:first-child, .post-main .post-body h3:first-child, .post-main .post-body h4:first-child, .post-main .post-body h5:first-child, .post-main .post-body h6:first-child {
      margin-top: 0; }
  .post-main .post-body h2 {
    font-size: 1.75rem;
    border-bottom: 1px solid hsl(var(--border));
    padding-bottom: 0.5rem; }
  .post-main .post-body h3 {
    font-size: 1.5rem; }
  .post-main .post-body p {
    margin: 1rem 0; }
  .post-main .post-body ul, .post-main .post-body ol {
    margin: 1rem 0;
    padding-left: 2rem; }
    .post-main .post-body ul li, .post-main .post-body ol li {
      margin: 0.5rem 0; }
  .post-main .post-body a {
    color: hsl(var(--primary));
    text-decoration: underline; }
    .post-main .post-body a:hover {
      text-decoration: none; }
  .post-main .post-body strong {
    font-weight: 600; }
  .post-main .post-body em {
    font-style: italic; }
.post-main .code-block {
  margin: 2rem 0;
  background: hsl(var(--muted));
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius-lg);
  overflow: hidden; }
  .post-main .code-block .code-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    background: hsl(var(--muted)/0.5);
    border-bottom: 1px solid hsl(var(--border)); }
    .post-main .code-block .code-header .code-title {
      font-size: 0.875rem;
      font-weight: 500;
      color: hsl(var(--foreground)); }
    .post-main .code-block .code-header .code-copy {
      padding: 0.25rem 0.5rem;
      font-size: 0.75rem; }
  .post-main .code-block pre {
    margin: 0;
    padding: 1.5rem;
    overflow-x: auto;
    background: transparent; }
    .post-main .code-block pre code {
      font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
      font-size: 0.875rem;
      line-height: 1.5;
      color: hsl(var(--foreground)); }
.post-main .callout {
  margin: 2rem 0;
  padding: 1.5rem;
  border-radius: var(--border-radius-lg);
  border-left: 4px solid; }
  .post-main .callout.callout-info {
    background: hsl(var(--primary)/0.1);
    border-color: hsl(var(--primary)); }
    .post-main .callout.callout-info .callout-header i {
      color: hsl(var(--primary)); }
  .post-main .callout.callout-warning {
    background: rgba(255, 162, 0, 0.1);
    border-color: #ffa200; }
    .post-main .callout.callout-warning .callout-header i {
      color: #ffa200; }
  .post-main .callout.callout-success {
    background: rgba(22, 162, 73, 0.1);
    border-color: #16a249; }
    .post-main .callout.callout-success .callout-header i {
      color: #16a249; }
  .post-main .callout .callout-header {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: hsl(var(--foreground)); }
    .post-main .callout .callout-header i {
      font-size: 1.125rem; }
  .post-main .callout p {
    margin: 0;
    color: hsl(var(--foreground)); }
.post-main .post-tags {
  margin: 3rem 0 2rem;
  padding: 2rem 0;
  border-top: 1px solid hsl(var(--border)); }
  .post-main .post-tags h3 {
    font-size: 1.125rem;
    margin-bottom: 1rem;
    color: hsl(var(--foreground)); }
  .post-main .post-tags .tags-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem; }
    .post-main .post-tags .tags-list .tag {
      padding: 0.5rem 1rem;
      background: hsl(var(--muted));
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      font-size: 0.875rem;
      color: hsl(var(--muted-foreground));
      text-decoration: none;
      transition: var(--transition); }
      .post-main .post-tags .tags-list .tag:hover {
        border-color: hsl(var(--primary));
        color: hsl(var(--primary));
        background: hsl(var(--primary)/0.1); }
.post-main .post-footer {
  padding: 2rem 0;
  border-top: 1px solid hsl(var(--border)); }
  .post-main .post-footer .post-reactions {
    display: flex;
    gap: 1rem;
    margin-bottom: 2rem; }
    @media (max-width: 480px) {
      .post-main .post-footer .post-reactions {
        flex-wrap: wrap;
        gap: 0.5rem; } }
    .post-main .post-footer .post-reactions .reaction-btn {
      display: flex;
      align-items: center;
      gap: 0.5rem; }
  .post-main .post-footer .post-navigation {
    display: flex;
    justify-content: space-between;
    gap: 1rem; }
    @media (max-width: 768px) {
      .post-main .post-footer .post-navigation {
        flex-direction: column; } }
    .post-main .post-footer .post-navigation .btn {
      display: flex;
      align-items: center;
      gap: 0.5rem; }

@media (max-width: 1024px) {
  .post-sidebar {
    order: -1; } }
.post-sidebar .sidebar-section {
  margin-bottom: 2rem;
  padding: 1.5rem;
  background: hsl(var(--background));
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius-lg); }
  .post-sidebar .sidebar-section:first-child {
    position: sticky;
    top: 2rem; }
    @media (max-width: 1024px) {
      .post-sidebar .sidebar-section:first-child {
        position: static; } }
.post-sidebar .sidebar-title {
  font-size: 1.125rem;
  font-weight: 600;
  margin-bottom: 1rem;
  color: hsl(var(--foreground)); }
.post-sidebar .table-of-contents ul {
  list-style: none;
  padding: 0;
  margin: 0; }
  .post-sidebar .table-of-contents ul li {
    margin: 0; }
    .post-sidebar .table-of-contents ul li a {
      display: block;
      padding: 0.5rem 0;
      color: hsl(var(--muted-foreground));
      text-decoration: none;
      font-size: 0.875rem;
      border-bottom: 1px solid transparent;
      transition: var(--transition); }
      .post-sidebar .table-of-contents ul li a:hover {
        color: hsl(var(--primary));
        border-bottom-color: hsl(var(--primary)/0.3); }
.post-sidebar .author-card {
  text-align: center; }
  .post-sidebar .author-card .author-avatar {
    font-size: 4rem;
    color: hsl(var(--muted-foreground));
    margin-bottom: 1rem; }
  .post-sidebar .author-card .author-info h4 {
    font-size: 1.25rem;
    margin-bottom: 0.25rem;
    color: hsl(var(--foreground)); }
  .post-sidebar .author-card .author-info .author-role {
    font-size: 0.875rem;
    color: hsl(var(--primary));
    margin-bottom: 0.75rem; }
  .post-sidebar .author-card .author-info .author-bio {
    font-size: 0.875rem;
    color: hsl(var(--muted-foreground));
    line-height: 1.5;
    margin-bottom: 1rem; }
  .post-sidebar .author-card .author-info .author-stats {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 1rem;
    font-size: 0.875rem;
    color: hsl(var(--muted-foreground)); }
.post-sidebar .related-posts {
  display: flex;
  flex-direction: column;
  gap: 1rem; }
  .post-sidebar .related-posts .related-post {
    padding: 1rem;
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius);
    transition: var(--transition); }
    .post-sidebar .related-posts .related-post:hover {
      border-color: hsl(var(--primary));
      box-shadow: var(--shadow-sm); }
    .post-sidebar .related-posts .related-post h4 {
      margin: 0 0 0.5rem; }
      .post-sidebar .related-posts .related-post h4 a {
        font-size: 0.875rem;
        color: hsl(var(--foreground));
        text-decoration: none;
        line-height: 1.4; }
        .post-sidebar .related-posts .related-post h4 a:hover {
          color: hsl(var(--primary)); }
    .post-sidebar .related-posts .related-post .related-post-meta {
      display: flex;
      gap: 1rem;
      font-size: 0.75rem;
      color: hsl(var(--muted-foreground)); }

.comments-section {
  padding: 4rem 0;
  background: hsl(var(--muted)/0.3); }
  .comments-section .comments-container {
    max-width: 800px;
    margin: 0 auto; }
  .comments-section .comments-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem; }
    .comments-section .comments-header h2 {
      font-size: 1.5rem;
      color: hsl(var(--foreground));
      margin: 0; }
      .comments-section .comments-header h2 .comments-count {
        color: hsl(var(--muted-foreground));
        font-weight: normal; }
    .comments-section .comments-header .comments-sort .sort-select {
      padding: 0.5rem;
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      background: hsl(var(--background));
      color: hsl(var(--foreground));
      font-size: 0.875rem; }
  .comments-section .comment-write {
    display: flex;
    gap: 1rem;
    margin-bottom: 3rem;
    padding: 1.5rem;
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg); }
    .comments-section .comment-write .comment-author {
      flex-shrink: 0;
      font-size: 2rem;
      color: hsl(var(--muted-foreground)); }
    .comments-section .comment-write .comment-form {
      flex: 1; }
      .comments-section .comment-write .comment-form .comment-input {
        width: 100%;
        min-height: 100px;
        padding: 0.75rem;
        border: 1px solid hsl(var(--border));
        border-radius: var(--border-radius);
        background: hsl(var(--background));
        color: hsl(var(--foreground));
        font-size: 0.875rem;
        resize: vertical;
        margin-bottom: 1rem; }
        .comments-section .comment-write .comment-form .comment-input:focus {
          outline: none;
          border-color: hsl(var(--ring)); }
        .comments-section .comment-write .comment-form .comment-input::placeholder {
          color: hsl(var(--muted-foreground)); }
      .comments-section .comment-write .comment-form .comment-actions {
        display: flex;
        justify-content: flex-end;
        gap: 0.5rem; }
  .comments-section .comments-list {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-bottom: 2rem; }
  .comments-section .comment {
    display: flex;
    gap: 1rem;
    padding: 1.5rem;
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg); }
    .comments-section .comment.reply {
      margin-left: 3rem;
      margin-top: 1rem; }
      @media (max-width: 480px) {
        .comments-section .comment.reply {
          margin-left: 1rem; } }
    .comments-section .comment .comment-author {
      flex-shrink: 0;
      font-size: 2rem;
      color: hsl(var(--muted-foreground)); }
    .comments-section .comment .comment-content {
      flex: 1; }
      .comments-section .comment .comment-content .comment-header {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        margin-bottom: 0.75rem; }
        .comments-section .comment .comment-content .comment-header .comment-author-name {
          font-weight: 600;
          color: hsl(var(--foreground)); }
        .comments-section .comment .comment-content .comment-header .comment-author-badge {
          padding: 0.125rem 0.5rem;
          background: hsl(var(--primary));
          color: hsl(var(--primary-foreground));
          border-radius: var(--border-radius);
          font-size: 0.75rem;
          font-weight: 500; }
        .comments-section .comment .comment-content .comment-header .comment-date {
          font-size: 0.875rem;
          color: hsl(var(--muted-foreground));
          margin-left: auto; }
      .comments-section .comment .comment-content .comment-text {
        color: hsl(var(--foreground));
        line-height: 1.6;
        margin-bottom: 1rem; }
      .comments-section .comment .comment-content .comment-actions {
        display: flex;
        gap: 1rem; }
        .comments-section .comment .comment-content .comment-actions .btn {
          padding: 0.25rem 0.5rem;
          font-size: 0.875rem; }
      .comments-section .comment .comment-content .comment-replies {
        margin-top: 1rem; }
  .comments-section .comments-load-more {
    text-align: center; }
    .comments-section .comments-load-more .btn {
      min-width: 200px; }

.write-section {
  padding: 4rem 0;
  background: hsl(var(--background)); }
  .write-section .write-container {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 4rem;
    max-width: 1400px;
    margin: 0 auto; }
    @media (max-width: 1200px) {
      .write-section .write-container {
        grid-template-columns: 1fr;
        gap: 3rem; } }
  .write-section .write-header {
    margin-bottom: 3rem;
    text-align: center; }
    .write-section .write-header .write-title {
      font-size: 2.5rem;
      font-weight: 700;
      color: hsl(var(--foreground));
      margin-bottom: 1rem; }
      @media (max-width: 768px) {
        .write-section .write-header .write-title {
          font-size: 2rem; } }
    .write-section .write-header .write-subtitle {
      font-size: 1.125rem;
      color: hsl(var(--muted-foreground));
      line-height: 1.6; }

.write-form .form-section {
  margin-bottom: 3rem;
  padding: 2rem;
  background: hsl(var(--background));
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius-lg); }
  .write-form .form-section .section-title {
    font-size: 1.5rem;
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 2rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid hsl(var(--border)); }
.write-form .form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem; }
  @media (max-width: 768px) {
    .write-form .form-row {
      grid-template-columns: 1fr; } }
.write-form .form-group {
  margin-bottom: 1.5rem; }
  .write-form .form-group:last-child {
    margin-bottom: 0; }
  .write-form .form-group .label {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 500;
    color: hsl(var(--foreground));
    font-size: 0.875rem; }
    .write-form .form-group .label:after {
      content: ' *';
      color: hsl(var(--destructive)); }
    .write-form .form-group .label:not([for$="*"]):after {
      content: ''; }
  .write-form .form-group .input, .write-form .form-group .search-input,
  .write-form .form-group .filter-select,
  .write-form .form-group .sort-select, .write-form .form-group input[type="text"],
  .write-form .form-group input[type="email"],
  .write-form .form-group input[type="password"],
  .write-form .form-group input[type="search"],
  .write-form .form-group .select,
  .write-form .form-group .filter-select,
  .write-form .form-group .sort-select,
  .write-form .form-group select {
    width: 100%;
    padding: 0 0.75rem;
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius);
    background: hsl(var(--background));
    color: hsl(var(--foreground));
    font-size: 0.875rem;
    transition: var(--transition); }
    .write-form .form-group .input:focus, .write-form .form-group .search-input:focus,
    .write-form .form-group .filter-select:focus,
    .write-form .form-group .sort-select:focus, .write-form .form-group input[type="text"]:focus,
    .write-form .form-group input[type="email"]:focus,
    .write-form .form-group input[type="password"]:focus,
    .write-form .form-group input[type="search"]:focus,
    .write-form .form-group .select:focus,
    .write-form .form-group .filter-select:focus,
    .write-form .form-group .sort-select:focus,
    .write-form .form-group select:focus {
      outline: none;
      border-color: hsl(var(--ring));
      box-shadow: 0 0 0 2px hsl(var(--ring)/0.2); }
    .write-form .form-group .input::placeholder, .write-form .form-group .search-input::placeholder,
    .write-form .form-group .filter-select::placeholder,
    .write-form .form-group .sort-select::placeholder, .write-form .form-group input[type="text"]::placeholder,
    .write-form .form-group input[type="email"]::placeholder,
    .write-form .form-group input[type="password"]::placeholder,
    .write-form .form-group input[type="search"]::placeholder,
    .write-form .form-group .select::placeholder,
    .write-form .form-group .filter-select::placeholder,
    .write-form .form-group .sort-select::placeholder,
    .write-form .form-group select::placeholder {
      color: hsl(var(--muted-foreground)); }
    .write-form .form-group .input:disabled, .write-form .form-group .search-input:disabled,
    .write-form .form-group .filter-select:disabled,
    .write-form .form-group .sort-select:disabled, .write-form .form-group input[type="text"]:disabled,
    .write-form .form-group input[type="email"]:disabled,
    .write-form .form-group input[type="password"]:disabled,
    .write-form .form-group input[type="search"]:disabled,
    .write-form .form-group .select:disabled,
    .write-form .form-group .filter-select:disabled,
    .write-form .form-group .sort-select:disabled,
    .write-form .form-group select:disabled {
      opacity: 0.5;
      cursor: not-allowed; }
  .write-form .form-group .input-help {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 0.5rem;
    font-size: 0.75rem;
    color: hsl(var(--muted-foreground)); }
    .write-form .form-group .input-help .char-count {
      margin-left: auto; }
.write-form .tags-input-wrapper .tags-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.75rem; }
  .write-form .tags-input-wrapper .tags-list .tag {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem 0.75rem;
    background: hsl(var(--primary));
    color: hsl(var(--primary-foreground));
    border-radius: var(--border-radius);
    font-size: 0.75rem; }
    .write-form .tags-input-wrapper .tags-list .tag .tag-remove {
      background: none;
      border: none;
      color: inherit;
      cursor: pointer;
      padding: 0;
      margin: 0;
      font-size: 0.875rem; }
      .write-form .tags-input-wrapper .tags-list .tag .tag-remove:hover {
        opacity: 0.7; }
.write-form .checkbox-group {
  display: flex;
  flex-direction: column;
  gap: 1rem; }
  .write-form .checkbox-group .checkbox-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    cursor: pointer;
    font-size: 0.875rem;
    color: hsl(var(--foreground)); }
    .write-form .checkbox-group .checkbox-item input[type="checkbox"] {
      display: none; }
    .write-form .checkbox-group .checkbox-item .checkbox-checkmark {
      width: 1rem;
      height: 1rem;
      border: 1px solid hsl(var(--border));
      border-radius: 2px;
      position: relative;
      transition: var(--transition); }
      .write-form .checkbox-group .checkbox-item .checkbox-checkmark:after {
        content: '';
        position: absolute;
        top: 1px;
        left: 4px;
        width: 4px;
        height: 8px;
        border: solid hsl(var(--primary-foreground));
        border-width: 0 2px 2px 0;
        transform: rotate(45deg);
        opacity: 0;
        transition: var(--transition); }
    .write-form .checkbox-group .checkbox-item input[type="checkbox"]:checked + .checkbox-checkmark {
      background: hsl(var(--primary));
      border-color: hsl(var(--primary)); }
      .write-form .checkbox-group .checkbox-item input[type="checkbox"]:checked + .checkbox-checkmark:after {
        opacity: 1; }

.editor-toolbar {
  display: flex;
  gap: 0.5rem;
  padding: 0.75rem;
  background: hsl(var(--muted)/0.3);
  border: 1px solid hsl(var(--border));
  border-bottom: none;
  border-radius: var(--border-radius) var(--border-radius) 0 0;
  flex-wrap: wrap; }
  .editor-toolbar .toolbar-group {
    display: flex;
    gap: 0.25rem;
    padding-right: 0.5rem; }
    .editor-toolbar .toolbar-group:not(:last-child) {
      border-right: 1px solid hsl(var(--border)); }
  .editor-toolbar .toolbar-btn {
    padding: 0.5rem;
    background: transparent;
    border: 1px solid transparent;
    border-radius: var(--border-radius);
    color: hsl(var(--foreground));
    cursor: pointer;
    transition: var(--transition); }
    .editor-toolbar .toolbar-btn:hover {
      background: hsl(var(--accent));
      border-color: hsl(var(--border)); }
    .editor-toolbar .toolbar-btn.active {
      background: hsl(var(--primary));
      color: hsl(var(--primary-foreground));
      border-color: hsl(var(--primary)); }
    .editor-toolbar .toolbar-btn i {
      font-size: 0.875rem; }

.editor-container {
  border: 1px solid hsl(var(--border));
  border-radius: 0 0 var(--border-radius) var(--border-radius);
  overflow: hidden; }
  .editor-container .editor-tabs {
    display: flex;
    background: hsl(var(--muted)/0.3);
    border-bottom: 1px solid hsl(var(--border)); }
    .editor-container .editor-tabs .editor-tab {
      padding: 0.75rem 1.5rem;
      background: transparent;
      border: none;
      border-bottom: 2px solid transparent;
      cursor: pointer;
      color: hsl(var(--muted-foreground));
      font-size: 0.875rem;
      display: flex;
      align-items: center;
      gap: 0.5rem;
      transition: var(--transition); }
      .editor-container .editor-tabs .editor-tab:hover {
        color: hsl(var(--foreground));
        background: hsl(var(--accent)/0.5); }
      .editor-container .editor-tabs .editor-tab.active {
        color: hsl(var(--primary));
        border-bottom-color: hsl(var(--primary));
        background: hsl(var(--background)); }
  .editor-container .editor-content {
    position: relative;
    min-height: 500px; }
    .editor-container .editor-content .editor-textarea {
      width: 100%;
      min-height: 500px;
      padding: 1.5rem;
      border: none;
      background: hsl(var(--background));
      color: hsl(var(--foreground));
      font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
      font-size: 0.875rem;
      line-height: 1.6;
      resize: vertical; }
      .editor-container .editor-content .editor-textarea:focus {
        outline: none; }
      .editor-container .editor-content .editor-textarea::placeholder {
        color: hsl(var(--muted-foreground));
        font-family: inherit; }
    .editor-container .editor-content .editor-preview {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: hsl(var(--background)); }
      .editor-container .editor-content .editor-preview .preview-content {
        padding: 1.5rem;
        color: hsl(var(--foreground));
        line-height: 1.7; }
        .editor-container .editor-content .editor-preview .preview-content h1, .editor-container .editor-content .editor-preview .preview-content h2, .editor-container .editor-content .editor-preview .preview-content h3, .editor-container .editor-content .editor-preview .preview-content h4, .editor-container .editor-content .editor-preview .preview-content h5, .editor-container .editor-content .editor-preview .preview-content h6 {
          color: hsl(var(--foreground));
          font-weight: 600;
          margin: 2rem 0 1rem; }
          .editor-container .editor-content .editor-preview .preview-content h1:first-child, .editor-container .editor-content .editor-preview .preview-content h2:first-child, .editor-container .editor-content .editor-preview .preview-content h3:first-child, .editor-container .editor-content .editor-preview .preview-content h4:first-child, .editor-container .editor-content .editor-preview .preview-content h5:first-child, .editor-container .editor-content .editor-preview .preview-content h6:first-child {
            margin-top: 0; }
        .editor-container .editor-content .editor-preview .preview-content h2 {
          font-size: 1.75rem;
          border-bottom: 1px solid hsl(var(--border));
          padding-bottom: 0.5rem; }
        .editor-container .editor-content .editor-preview .preview-content p {
          margin: 1rem 0; }
        .editor-container .editor-content .editor-preview .preview-content code {
          padding: 0.125rem 0.25rem;
          background: hsl(var(--muted));
          border-radius: 2px;
          font-size: 0.875rem; }
        .editor-container .editor-content .editor-preview .preview-content pre {
          padding: 1rem;
          background: hsl(var(--muted));
          border-radius: var(--border-radius);
          overflow-x: auto;
          margin: 1rem 0; }

.form-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 2rem;
  background: hsl(var(--muted)/0.3);
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius-lg);
  margin-top: 2rem; }
  @media (max-width: 768px) {
    .form-actions {
      flex-direction: column;
      gap: 1rem; } }
  .form-actions .actions-left,
  .form-actions .actions-right {
    display: flex;
    gap: 1rem; }
    @media (max-width: 480px) {
      .form-actions .actions-left,
      .form-actions .actions-right {
        flex-direction: column;
        width: 100%; } }
  .form-actions .btn {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 120px;
    justify-content: center; }
    @media (max-width: 480px) {
      .form-actions .btn {
        width: 100%; } }

@media (max-width: 1200px) {
  .write-sidebar {
    order: -1; } }
.write-sidebar .help-section {
  margin-bottom: 2rem;
  padding: 1.5rem;
  background: hsl(var(--background));
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius-lg); }
  .write-sidebar .help-section:first-child {
    position: sticky;
    top: 2rem; }
    @media (max-width: 1200px) {
      .write-sidebar .help-section:first-child {
        position: static; } }
  .write-sidebar .help-section .help-title {
    font-size: 1.125rem;
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 1rem; }
  .write-sidebar .help-section .help-content .help-item {
    margin-bottom: 1.5rem; }
    .write-sidebar .help-section .help-content .help-item:last-child {
      margin-bottom: 0; }
    .write-sidebar .help-section .help-content .help-item h4 {
      font-size: 0.875rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 0.5rem;
      display: flex;
      align-items: center;
      gap: 0.5rem; }
    .write-sidebar .help-section .help-content .help-item ul {
      list-style: none;
      padding: 0;
      margin: 0; }
      .write-sidebar .help-section .help-content .help-item ul li {
        font-size: 0.875rem;
        color: hsl(var(--muted-foreground));
        margin-bottom: 0.25rem;
        padding-left: 1rem;
        position: relative; }
        .write-sidebar .help-section .help-content .help-item ul li:before {
          content: '•';
          position: absolute;
          left: 0;
          color: hsl(var(--primary)); }
.write-sidebar .markdown-help .markdown-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.5rem 0;
  border-bottom: 1px solid hsl(var(--border));
  font-size: 0.875rem; }
  .write-sidebar .markdown-help .markdown-item:last-child {
    border-bottom: none; }
  .write-sidebar .markdown-help .markdown-item code {
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
    background: hsl(var(--muted));
    padding: 0.125rem 0.25rem;
    border-radius: 2px;
    font-size: 0.75rem;
    white-space: pre; }
  .write-sidebar .markdown-help .markdown-item span {
    color: hsl(var(--muted-foreground));
    font-size: 0.75rem; }

.auth-section {
  padding: 4rem 0;
  background: hsl(var(--muted)/0.2);
  min-height: 100vh;
  display: flex;
  align-items: center; }
  .auth-section .auth-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    max-width: 1200px;
    margin: 0 auto;
    align-items: start; }
    @media (max-width: 1024px) {
      .auth-section .auth-container {
        grid-template-columns: 1fr;
        gap: 3rem;
        max-width: 600px; } }

.auth-card {
  background: hsl(var(--background));
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius-lg);
  padding: 3rem;
  box-shadow: var(--shadow-lg); }
  @media (max-width: 768px) {
    .auth-card {
      padding: 2rem; } }
  .auth-card .auth-header {
    text-align: center;
    margin-bottom: 2rem; }
    .auth-card .auth-header .auth-title {
      font-size: 2rem;
      font-weight: 700;
      color: hsl(var(--foreground));
      margin-bottom: 0.75rem; }
    .auth-card .auth-header .auth-subtitle {
      color: hsl(var(--muted-foreground));
      line-height: 1.6; }
  .auth-card .auth-footer {
    text-align: center;
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid hsl(var(--border)); }
    .auth-card .auth-footer p {
      color: hsl(var(--muted-foreground));
      font-size: 0.875rem; }
      .auth-card .auth-footer p a {
        color: hsl(var(--primary));
        text-decoration: none;
        font-weight: 500; }
        .auth-card .auth-footer p a:hover {
          text-decoration: underline; }

.social-login {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-bottom: 2rem; }
  .social-login .social-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 0.75rem;
    width: 100%;
    font-weight: 500; }
    .social-login .social-btn i {
      font-size: 1.125rem; }
    .social-login .social-btn.google-btn:hover {
      background: hsl(var(--accent));
      border-color: hsl(var(--border)); }
    .social-login .social-btn.github-btn:hover {
      background: hsl(var(--accent));
      border-color: hsl(var(--border)); }

.auth-divider {
  position: relative;
  text-align: center;
  margin: 2rem 0; }
  .auth-divider:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 1px;
    background: hsl(var(--border)); }
  .auth-divider span {
    background: hsl(var(--background));
    padding: 0 1rem;
    color: hsl(var(--muted-foreground));
    font-size: 0.875rem; }

.auth-form .form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem; }
  @media (max-width: 480px) {
    .auth-form .form-row {
      grid-template-columns: 1fr; } }
.auth-form .form-group {
  margin-bottom: 1.5rem; }
  .auth-form .form-group:last-child {
    margin-bottom: 0; }
  .auth-form .form-group .label {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 500;
    color: hsl(var(--foreground));
    font-size: 0.875rem; }
  .auth-form .form-group .input, .auth-form .form-group .search-input,
  .auth-form .form-group .filter-select,
  .auth-form .form-group .sort-select, .auth-form .form-group input[type="text"],
  .auth-form .form-group input[type="email"],
  .auth-form .form-group input[type="password"],
  .auth-form .form-group input[type="search"],
  .auth-form .form-group .select,
  .auth-form .form-group .filter-select,
  .auth-form .form-group .sort-select,
  .auth-form .form-group select {
    width: 100%;
    padding: 0 0.75rem;
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius);
    background: hsl(var(--background));
    color: hsl(var(--foreground));
    font-size: 0.875rem;
    transition: var(--transition); }
    .auth-form .form-group .input:focus, .auth-form .form-group .search-input:focus,
    .auth-form .form-group .filter-select:focus,
    .auth-form .form-group .sort-select:focus, .auth-form .form-group input[type="text"]:focus,
    .auth-form .form-group input[type="email"]:focus,
    .auth-form .form-group input[type="password"]:focus,
    .auth-form .form-group input[type="search"]:focus,
    .auth-form .form-group .select:focus,
    .auth-form .form-group .filter-select:focus,
    .auth-form .form-group .sort-select:focus,
    .auth-form .form-group select:focus {
      outline: none;
      border-color: hsl(var(--ring));
      box-shadow: 0 0 0 2px hsl(var(--ring)/0.2); }
    .auth-form .form-group .input::placeholder, .auth-form .form-group .search-input::placeholder,
    .auth-form .form-group .filter-select::placeholder,
    .auth-form .form-group .sort-select::placeholder, .auth-form .form-group input[type="text"]::placeholder,
    .auth-form .form-group input[type="email"]::placeholder,
    .auth-form .form-group input[type="password"]::placeholder,
    .auth-form .form-group input[type="search"]::placeholder,
    .auth-form .form-group .select::placeholder,
    .auth-form .form-group .filter-select::placeholder,
    .auth-form .form-group .sort-select::placeholder,
    .auth-form .form-group select::placeholder {
      color: hsl(var(--muted-foreground)); }
    .auth-form .form-group .input.error, .auth-form .form-group .error.search-input,
    .auth-form .form-group .error.filter-select,
    .auth-form .form-group .error.sort-select, .auth-form .form-group input.error[type="text"],
    .auth-form .form-group input.error[type="email"],
    .auth-form .form-group input.error[type="password"],
    .auth-form .form-group input.error[type="search"],
    .auth-form .form-group .select.error,
    .auth-form .form-group .error.filter-select,
    .auth-form .form-group .error.sort-select,
    .auth-form .form-group select.error {
      border-color: hsl(var(--destructive)); }
    .auth-form .form-group .input.success, .auth-form .form-group .success.search-input,
    .auth-form .form-group .success.filter-select,
    .auth-form .form-group .success.sort-select, .auth-form .form-group input.success[type="text"],
    .auth-form .form-group input.success[type="email"],
    .auth-form .form-group input.success[type="password"],
    .auth-form .form-group input.success[type="search"],
    .auth-form .form-group .select.success,
    .auth-form .form-group .success.filter-select,
    .auth-form .form-group .success.sort-select,
    .auth-form .form-group select.success {
      border-color: #16a249; }
  .auth-form .form-group .input-help {
    margin-top: 0.5rem;
    font-size: 0.75rem; }
    .auth-form .form-group .input-help .input-message {
      color: hsl(var(--muted-foreground)); }
    .auth-form .form-group .input-help .input-error {
      color: hsl(var(--destructive)); }
    .auth-form .form-group .input-help .input-success {
      color: #16a249; }
.auth-form .password-input-wrapper {
  position: relative; }
  .auth-form .password-input-wrapper .password-input {
    padding-right: 3rem; }
  .auth-form .password-input-wrapper .password-toggle {
    position: absolute;
    right: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    color: hsl(var(--muted-foreground));
    cursor: pointer;
    padding: 0.25rem; }
    .auth-form .password-input-wrapper .password-toggle:hover {
      color: hsl(var(--foreground)); }
.auth-form .password-strength {
  margin-top: 0.75rem; }
  .auth-form .password-strength .strength-bar {
    width: 100%;
    height: 4px;
    background: hsl(var(--muted));
    border-radius: 2px;
    overflow: hidden;
    margin-bottom: 0.5rem; }
    .auth-form .password-strength .strength-bar .strength-fill {
      height: 100%;
      width: 0%;
      transition: all 0.3s ease;
      border-radius: 2px; }
      .auth-form .password-strength .strength-bar .strength-fill.weak {
        width: 25%;
        background: hsl(var(--destructive)); }
      .auth-form .password-strength .strength-bar .strength-fill.fair {
        width: 50%;
        background: #ffa200; }
      .auth-form .password-strength .strength-bar .strength-fill.good {
        width: 75%;
        background: #16a249; }
      .auth-form .password-strength .strength-bar .strength-fill.strong {
        width: 100%;
        background: #16a249; }
  .auth-form .password-strength .strength-text {
    font-size: 0.75rem;
    color: hsl(var(--muted-foreground)); }
    .auth-form .password-strength .strength-text span {
      font-weight: 500; }
      .auth-form .password-strength .strength-text span.weak {
        color: hsl(var(--destructive)); }
      .auth-form .password-strength .strength-text span.fair {
        color: #ffa200; }
      .auth-form .password-strength .strength-text span.good, .auth-form .password-strength .strength-text span.strong {
        color: #16a249; }
.auth-form .form-options {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem; }
  @media (max-width: 480px) {
    .auth-form .form-options {
      flex-direction: column;
      gap: 1rem;
      align-items: stretch; } }
  .auth-form .form-options .forgot-password {
    color: hsl(var(--primary));
    text-decoration: none;
    font-size: 0.875rem; }
    .auth-form .form-options .forgot-password:hover {
      text-decoration: underline; }
.auth-form .interests-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.75rem; }
  @media (max-width: 480px) {
    .auth-form .interests-grid {
      grid-template-columns: 1fr; } }
.auth-form .terms-agreement {
  display: flex;
  flex-direction: column;
  gap: 0.75rem; }
  .auth-form .terms-agreement .terms-text {
    font-size: 0.875rem;
    line-height: 1.5; }
    .auth-form .terms-agreement .terms-text a {
      color: hsl(var(--primary));
      text-decoration: none; }
      .auth-form .terms-agreement .terms-text a:hover {
        text-decoration: underline; }
.auth-form .checkbox-item {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  cursor: pointer;
  font-size: 0.875rem;
  color: hsl(var(--foreground)); }
  .auth-form .checkbox-item input[type="checkbox"] {
    display: none; }
  .auth-form .checkbox-item .checkbox-checkmark {
    width: 1rem;
    height: 1rem;
    border: 1px solid hsl(var(--border));
    border-radius: 3px;
    position: relative;
    transition: var(--transition);
    flex-shrink: 0; }
    .auth-form .checkbox-item .checkbox-checkmark:after {
      content: '';
      position: absolute;
      top: 1px;
      left: 4px;
      width: 4px;
      height: 8px;
      border: solid hsl(var(--primary-foreground));
      border-width: 0 2px 2px 0;
      transform: rotate(45deg);
      opacity: 0;
      transition: var(--transition); }
  .auth-form .checkbox-item input[type="checkbox"]:checked + .checkbox-checkmark {
    background: hsl(var(--primary));
    border-color: hsl(var(--primary)); }
    .auth-form .checkbox-item input[type="checkbox"]:checked + .checkbox-checkmark:after {
      opacity: 1; }
  .auth-form .checkbox-item:hover .checkbox-checkmark {
    border-color: hsl(var(--primary)); }
.auth-form .auth-submit {
  width: 100%;
  margin-top: 1rem; }

@media (max-width: 1024px) {
  .auth-benefits {
    order: -1; } }
.auth-benefits h2 {
  font-size: 1.75rem;
  font-weight: 700;
  color: hsl(var(--foreground));
  margin-bottom: 2rem;
  text-align: center; }
  @media (max-width: 1024px) {
    .auth-benefits h2 {
      text-align: left; } }
.auth-benefits .benefits-list {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  margin-bottom: 3rem; }
.auth-benefits .benefit-item {
  display: flex;
  gap: 1rem;
  align-items: flex-start; }
  .auth-benefits .benefit-item .benefit-icon {
    width: 3rem;
    height: 3rem;
    background: hsl(var(--primary)/0.1);
    border: 1px solid hsl(var(--primary)/0.2);
    border-radius: var(--border-radius-lg);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0; }
    .auth-benefits .benefit-item .benefit-icon i {
      font-size: 1.25rem;
      color: hsl(var(--primary)); }
  .auth-benefits .benefit-item .benefit-content h3 {
    font-size: 1.125rem;
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 0.5rem; }
  .auth-benefits .benefit-item .benefit-content p {
    color: hsl(var(--muted-foreground));
    line-height: 1.5;
    font-size: 0.875rem; }
.auth-benefits .stats-showcase {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  padding: 2rem;
  background: hsl(var(--muted)/0.3);
  border-radius: var(--border-radius-lg);
  text-align: center; }
  .auth-benefits .stats-showcase .stat-item .stat-number {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    color: hsl(var(--primary));
    margin-bottom: 0.25rem; }
  .auth-benefits .stats-showcase .stat-item .stat-label {
    font-size: 0.875rem;
    color: hsl(var(--muted-foreground)); }

.search-header {
  padding: 3rem 0 2rem;
  background: hsl(var(--muted)/0.2);
  border-bottom: 1px solid hsl(var(--border)); }
  .search-header .search-header-content {
    text-align: center;
    max-width: 800px;
    margin: 0 auto; }
  .search-header .search-title {
    font-size: 2rem;
    font-weight: 700;
    color: hsl(var(--foreground));
    margin-bottom: 1rem; }
    @media (max-width: 768px) {
      .search-header .search-title {
        font-size: 1.75rem; } }
  .search-header .search-info {
    margin-bottom: 2rem; }
    .search-header .search-info .search-query {
      font-size: 1.125rem;
      color: hsl(var(--foreground));
      margin-bottom: 0.5rem; }
      .search-header .search-info .search-query strong {
        color: hsl(var(--primary)); }
    .search-header .search-info .search-stats {
      font-size: 0.875rem;
      color: hsl(var(--muted-foreground)); }
      .search-header .search-info .search-stats strong {
        font-weight: 600; }
  .search-header .search-form .search-input-wrapper {
    position: relative;
    display: flex;
    max-width: 600px;
    margin: 0 auto;
    gap: 0.75rem; }
    @media (max-width: 768px) {
      .search-header .search-form .search-input-wrapper {
        flex-direction: column;
        max-width: 100%; } }
    .search-header .search-form .search-input-wrapper i {
      position: absolute;
      left: 1rem;
      top: 50%;
      transform: translateY(-50%);
      color: hsl(var(--muted-foreground));
      z-index: 2; }
      @media (max-width: 768px) {
        .search-header .search-form .search-input-wrapper i {
          top: 0.875rem;
          transform: none; } }
    .search-header .search-form .search-input-wrapper .search-input {
      flex: 1;
      padding: 0.75rem 1rem 0.75rem 3rem;
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      background: hsl(var(--background));
      color: hsl(var(--foreground));
      font-size: 1rem; }
      .search-header .search-form .search-input-wrapper .search-input:focus {
        outline: none;
        border-color: hsl(var(--ring));
        box-shadow: 0 0 0 2px hsl(var(--ring)/0.2); }
      .search-header .search-form .search-input-wrapper .search-input::placeholder {
        color: hsl(var(--muted-foreground)); }
    @media (max-width: 768px) {
      .search-header .search-form .search-input-wrapper .search-btn {
        width: 100%; } }

.search-filters {
  padding: 1.5rem 0;
  background: hsl(var(--background));
  border-bottom: 1px solid hsl(var(--border));
  position: sticky;
  top: 0;
  z-index: 10; }
  .search-filters .filters-wrapper {
    display: flex;
    flex-direction: column;
    gap: 1rem; }
    @media (min-width: 1024px) {
      .search-filters .filters-wrapper {
        flex-direction: row;
        justify-content: space-between;
        align-items: center; } }
  .search-filters .search-scope-tabs {
    display: flex;
    gap: 0.5rem;
    overflow-x: auto; }
    @media (max-width: 768px) {
      .search-filters .search-scope-tabs {
        gap: 0.25rem; } }
    .search-filters .search-scope-tabs .scope-tab {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      padding: 0.75rem 1rem;
      background: hsl(var(--background));
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      color: hsl(var(--muted-foreground));
      font-size: 0.875rem;
      font-weight: 500;
      cursor: pointer;
      transition: var(--transition);
      white-space: nowrap;
      flex-shrink: 0; }
      @media (max-width: 768px) {
        .search-filters .search-scope-tabs .scope-tab {
          padding: 0.5rem 0.75rem;
          font-size: 0.8rem; } }
      .search-filters .search-scope-tabs .scope-tab i {
        font-size: 1rem; }
        @media (max-width: 768px) {
          .search-filters .search-scope-tabs .scope-tab i {
            font-size: 0.875rem; } }
      .search-filters .search-scope-tabs .scope-tab .count {
        padding: 0.125rem 0.5rem;
        background: hsl(var(--muted));
        border-radius: var(--border-radius-sm);
        font-size: 0.75rem;
        font-weight: 600; }
      .search-filters .search-scope-tabs .scope-tab:hover {
        background: hsl(var(--accent));
        border-color: hsl(var(--border)); }
      .search-filters .search-scope-tabs .scope-tab.active {
        background: hsl(var(--primary));
        border-color: hsl(var(--primary));
        color: hsl(var(--primary-foreground)); }
        .search-filters .search-scope-tabs .scope-tab.active .count {
          background: hsl(var(--primary-foreground)/0.2);
          color: hsl(var(--primary-foreground)); }
  .search-filters .filter-options {
    display: flex;
    gap: 1rem; }
    @media (max-width: 768px) {
      .search-filters .filter-options {
        gap: 0.75rem; } }
    .search-filters .filter-options .filter-select {
      padding: 0.5rem 0.75rem;
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      background: hsl(var(--background));
      color: hsl(var(--foreground));
      font-size: 0.875rem;
      cursor: pointer; }
      @media (max-width: 768px) {
        .search-filters .filter-options .filter-select {
          flex: 1;
          min-width: 120px; } }
      .search-filters .filter-options .filter-select:focus {
        outline: none;
        border-color: hsl(var(--ring));
        box-shadow: 0 0 0 2px hsl(var(--ring)/0.2); }

.search-results {
  padding: 2rem 0; }
  .search-results .results-layout {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 3rem; }
    @media (max-width: 1024px) {
      .search-results .results-layout {
        grid-template-columns: 1fr;
        gap: 2rem; } }
  .search-results .results-main {
    min-width: 0; }

.results-list {
  display: flex;
  flex-direction: column;
  gap: 1.5rem; }

.result-item {
  padding: 1.5rem;
  background: hsl(var(--background));
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius-lg);
  transition: var(--transition); }
  .result-item:hover {
    border-color: hsl(var(--border));
    box-shadow: var(--shadow-sm); }
  .result-item .result-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1rem; }
    @media (max-width: 768px) {
      .result-item .result-header {
        flex-direction: column;
        gap: 0.75rem; } }
    .result-item .result-header .result-source {
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      padding: 0.25rem 0.75rem;
      background: hsl(var(--muted));
      color: hsl(var(--muted-foreground));
      border-radius: var(--border-radius);
      font-size: 0.75rem;
      font-weight: 500; }
      .result-item .result-header .result-source i {
        font-size: 0.875rem;
        color: hsl(var(--primary)); }
    .result-item .result-header .result-category {
      display: flex;
      gap: 0.5rem;
      flex-wrap: wrap; }
  .result-item .result-title {
    margin-bottom: 0.75rem; }
    .result-item .result-title a {
      font-size: 1.25rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      text-decoration: none;
      line-height: 1.4; }
      .result-item .result-title a:hover {
        color: hsl(var(--primary));
        text-decoration: underline; }
      @media (max-width: 768px) {
        .result-item .result-title a {
          font-size: 1.125rem; } }
  .result-item .result-excerpt {
    color: hsl(var(--muted-foreground));
    line-height: 1.6;
    margin-bottom: 1rem; }
    .result-item .result-excerpt mark {
      background: hsl(var(--primary)/0.2);
      color: hsl(var(--primary));
      padding: 0.125rem 0.25rem;
      border-radius: 2px;
      font-weight: 500; }
  .result-item .result-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
    font-size: 0.875rem;
    color: hsl(var(--muted-foreground)); }
    @media (max-width: 768px) {
      .result-item .result-meta {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem; } }
    .result-item .result-meta .result-author {
      display: flex;
      align-items: center;
      gap: 0.5rem; }
      .result-item .result-meta .result-author i {
        font-size: 1rem; }
    .result-item .result-meta .result-stats {
      display: flex;
      gap: 1rem; }
      @media (max-width: 768px) {
        .result-item .result-meta .result-stats {
          gap: 0.75rem; } }
      .result-item .result-meta .result-stats span {
        display: flex;
        align-items: center;
        gap: 0.25rem; }
        .result-item .result-meta .result-stats span i {
          font-size: 0.875rem; }
      .result-item .result-meta .result-stats .price {
        font-weight: 600;
        color: hsl(var(--primary)); }
    .result-item .result-meta .result-date {
      font-weight: 500; }

@media (max-width: 1024px) {
  .search-sidebar {
    order: -1; } }
.search-sidebar .sidebar-section {
  background: hsl(var(--background));
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius-lg);
  padding: 1.5rem;
  margin-bottom: 1.5rem; }
  .search-sidebar .sidebar-section .sidebar-title {
    font-size: 1rem;
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 1rem; }
  .search-sidebar .sidebar-section .related-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem; }
    .search-sidebar .sidebar-section .related-tags .tag {
      padding: 0.375rem 0.75rem;
      background: hsl(var(--muted));
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      color: hsl(var(--muted-foreground));
      text-decoration: none;
      font-size: 0.875rem;
      transition: var(--transition); }
      .search-sidebar .sidebar-section .related-tags .tag:hover {
        background: hsl(var(--accent));
        color: hsl(var(--accent-foreground)); }
      .search-sidebar .sidebar-section .related-tags .tag.active {
        background: hsl(var(--primary));
        border-color: hsl(var(--primary));
        color: hsl(var(--primary-foreground)); }
  .search-sidebar .sidebar-section .popular-searches ol {
    list-style: none;
    counter-reset: item; }
    .search-sidebar .sidebar-section .popular-searches ol li {
      counter-increment: item;
      margin-bottom: 0.75rem;
      position: relative;
      padding-left: 2rem; }
      .search-sidebar .sidebar-section .popular-searches ol li:before {
        content: counter(item);
        position: absolute;
        left: 0;
        top: 0;
        width: 1.5rem;
        height: 1.5rem;
        background: hsl(var(--primary)/0.1);
        color: hsl(var(--primary));
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0.75rem;
        font-weight: 600; }
      .search-sidebar .sidebar-section .popular-searches ol li a {
        color: hsl(var(--foreground));
        text-decoration: none;
        font-size: 0.875rem;
        line-height: 1.5; }
        .search-sidebar .sidebar-section .popular-searches ol li a:hover {
          color: hsl(var(--primary));
          text-decoration: underline; }
  .search-sidebar .sidebar-section .suggested-searches {
    display: flex;
    flex-direction: column;
    gap: 0.5rem; }
    .search-sidebar .sidebar-section .suggested-searches .suggestion {
      padding: 0.5rem 0.75rem;
      background: hsl(var(--muted)/0.5);
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      color: hsl(var(--muted-foreground));
      text-decoration: none;
      font-size: 0.875rem;
      transition: var(--transition); }
      .search-sidebar .sidebar-section .suggested-searches .suggestion:hover {
        background: hsl(var(--accent));
        color: hsl(var(--accent-foreground));
        border-color: hsl(var(--border)); }
  .search-sidebar .sidebar-section .recent-searches .recent-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0;
    border-bottom: 1px solid hsl(var(--border)); }
    .search-sidebar .sidebar-section .recent-searches .recent-item:last-child {
      border-bottom: none; }
    .search-sidebar .sidebar-section .recent-searches .recent-item a {
      color: hsl(var(--foreground));
      text-decoration: none;
      font-size: 0.875rem;
      flex: 1; }
      .search-sidebar .sidebar-section .recent-searches .recent-item a:hover {
        color: hsl(var(--primary));
        text-decoration: underline; }
    .search-sidebar .sidebar-section .recent-searches .recent-item .recent-remove {
      background: none;
      border: none;
      color: hsl(var(--muted-foreground));
      cursor: pointer;
      padding: 0.25rem;
      border-radius: var(--border-radius-sm);
      transition: var(--transition); }
      .search-sidebar .sidebar-section .recent-searches .recent-item .recent-remove:hover {
        background: hsl(var(--destructive)/0.1);
        color: hsl(var(--destructive)); }
      .search-sidebar .sidebar-section .recent-searches .recent-item .recent-remove i {
        font-size: 0.875rem; }

.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  margin-top: 3rem;
  flex-wrap: wrap; }
  .pagination .pagination-numbers {
    display: flex;
    gap: 0.25rem; }
    @media (max-width: 768px) {
      .pagination .pagination-numbers {
        gap: 0.125rem; } }
    .pagination .pagination-numbers .btn {
      min-width: 2.5rem;
      height: 2.5rem;
      padding: 0;
      display: flex;
      align-items: center;
      justify-content: center; }
      @media (max-width: 768px) {
        .pagination .pagination-numbers .btn {
          min-width: 2rem;
          height: 2rem;
          font-size: 0.875rem; } }
    .pagination .pagination-numbers .pagination-dots {
      display: flex;
      align-items: center;
      padding: 0 0.5rem;
      color: hsl(var(--muted-foreground)); }
  @media (max-width: 768px) {
    .pagination .btn {
      padding: 0.5rem 0.75rem;
      font-size: 0.875rem; }
      .pagination .btn i {
        font-size: 0.75rem; } }

.profile-header {
  padding: 3rem 0 2rem;
  background: hsl(var(--muted)/0.2);
  border-bottom: 1px solid hsl(var(--border)); }
  .profile-header .profile-header-content {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 2rem;
    gap: 2rem; }
    @media (max-width: 1024px) {
      .profile-header .profile-header-content {
        flex-direction: column;
        align-items: stretch; } }
  .profile-header .profile-info {
    display: flex;
    gap: 2rem;
    flex: 1; }
    @media (max-width: 768px) {
      .profile-header .profile-info {
        flex-direction: column;
        gap: 1.5rem; } }
  .profile-header .profile-avatar {
    position: relative;
    flex-shrink: 0; }
    .profile-header .profile-avatar .avatar-image {
      width: 120px;
      height: 120px;
      border-radius: 50%;
      border: 4px solid hsl(var(--background));
      box-shadow: var(--shadow-lg);
      object-fit: cover; }
      @media (max-width: 768px) {
        .profile-header .profile-avatar .avatar-image {
          width: 100px;
          height: 100px; } }
    .profile-header .profile-avatar .avatar-edit {
      position: absolute;
      bottom: 0;
      right: 0;
      width: 2.5rem;
      height: 2.5rem;
      background: hsl(var(--primary));
      border: 2px solid hsl(var(--background));
      border-radius: 50%;
      color: hsl(var(--primary-foreground));
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: var(--transition); }
      .profile-header .profile-avatar .avatar-edit:hover {
        background: hsl(var(--primary)/0.9);
        transform: scale(1.05); }
      .color_scheme_dark .profile-header .profile-avatar .avatar-edit:hover {
        background: hsl(var(--primary));
        filter: brightness(1.1); }
      .color_scheme_light .profile-header .profile-avatar .avatar-edit:hover {
        background: hsl(var(--primary));
        filter: brightness(0.9); }
      .profile-header .profile-avatar .avatar-edit i {
        font-size: 0.875rem; }
  .profile-header .profile-details {
    flex: 1; }
    .profile-header .profile-details .profile-name {
      font-size: 2rem;
      font-weight: 700;
      color: hsl(var(--foreground));
      margin-bottom: 0.25rem; }
      @media (max-width: 768px) {
        .profile-header .profile-details .profile-name {
          font-size: 1.75rem; } }
    .profile-header .profile-details .profile-username {
      font-size: 1.125rem;
      color: hsl(var(--muted-foreground));
      margin-bottom: 1rem; }
    .profile-header .profile-details .profile-meta {
      display: flex;
      flex-wrap: wrap;
      gap: 1.5rem;
      margin-bottom: 1rem;
      font-size: 0.875rem;
      color: hsl(var(--muted-foreground)); }
      @media (max-width: 768px) {
        .profile-header .profile-details .profile-meta {
          gap: 1rem; } }
      .profile-header .profile-details .profile-meta span {
        display: flex;
        align-items: center;
        gap: 0.5rem; }
        .profile-header .profile-details .profile-meta span i {
          font-size: 1rem; }
    .profile-header .profile-details .profile-bio {
      color: hsl(var(--foreground));
      line-height: 1.6;
      margin-bottom: 1rem;
      max-width: 600px; }
    .profile-header .profile-details .profile-tags {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem; }
      .profile-header .profile-details .profile-tags .tag {
        padding: 0.375rem 0.75rem;
        background: hsl(var(--primary)/0.1);
        border: 1px solid hsl(var(--primary)/0.2);
        border-radius: var(--border-radius);
        color: hsl(var(--primary));
        font-size: 0.875rem;
        font-weight: 500; }
  .profile-header .profile-actions {
    display: flex;
    gap: 1rem;
    flex-shrink: 0; }
    @media (max-width: 1024px) {
      .profile-header .profile-actions {
        justify-content: center; } }
    @media (max-width: 768px) {
      .profile-header .profile-actions {
        flex-direction: column; } }
    .profile-header .profile-actions .btn {
      display: flex;
      align-items: center;
      gap: 0.5rem; }
  .profile-header .profile-stats {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 2rem;
    padding: 2rem;
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg); }
    @media (max-width: 1024px) {
      .profile-header .profile-stats {
        grid-template-columns: repeat(3, 1fr);
        gap: 1.5rem; } }
    @media (max-width: 768px) {
      .profile-header .profile-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
        padding: 1.5rem; } }
    .profile-header .profile-stats .stat-item {
      text-align: center; }
      .profile-header .profile-stats .stat-item .stat-number {
        display: block;
        font-size: 1.75rem;
        font-weight: 700;
        color: hsl(var(--primary));
        margin-bottom: 0.25rem; }
        @media (max-width: 768px) {
          .profile-header .profile-stats .stat-item .stat-number {
            font-size: 1.5rem; } }
      .profile-header .profile-stats .stat-item .stat-label {
        font-size: 0.875rem;
        color: hsl(var(--muted-foreground));
        font-weight: 500; }

.profile-content {
  padding: 2rem 0; }
  .profile-content .profile-layout {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 3rem; }
    @media (max-width: 1024px) {
      .profile-content .profile-layout {
        grid-template-columns: 1fr;
        gap: 2rem; } }
  .profile-content .profile-tabs {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 2rem;
    border-bottom: 1px solid hsl(var(--border));
    overflow-x: auto; }
    .profile-content .profile-tabs .tab-button {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      padding: 1rem 1.5rem;
      background: none;
      border: none;
      border-bottom: 2px solid transparent;
      color: hsl(var(--muted-foreground));
      font-weight: 500;
      cursor: pointer;
      transition: var(--transition);
      white-space: nowrap; }
      @media (max-width: 768px) {
        .profile-content .profile-tabs .tab-button {
          padding: 0.75rem 1rem;
          font-size: 0.875rem; } }
      .profile-content .profile-tabs .tab-button i {
        font-size: 1rem; }
      .profile-content .profile-tabs .tab-button .tab-count {
        padding: 0.125rem 0.5rem;
        background: hsl(var(--muted));
        border-radius: var(--border-radius-sm);
        font-size: 0.75rem;
        font-weight: 600;
        -webkit-border-radius: 1rem;
        -moz-border-radius: 1rem;
        border-radius: 1rem; }
      .profile-content .profile-tabs .tab-button:hover {
        color: hsl(var(--foreground));
        background: hsl(var(--accent)/0.5); }
      .profile-content .profile-tabs .tab-button.active {
        color: hsl(var(--primary));
        border-bottom-color: hsl(var(--primary)); }
        .profile-content .profile-tabs .tab-button.active .tab-count {
          background: hsl(var(--primary)/0.2);
          color: hsl(var(--primary)); }
  .profile-content .tab-content {
    display: none; }
    .profile-content .tab-content.active {
      display: block; }
    .profile-content .tab-content .content-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 2rem;
      flex-wrap: wrap;
      gap: 1rem; }
      .profile-content .tab-content .content-header h2 {
        font-size: 1.5rem;
        font-weight: 600;
        color: hsl(var(--foreground)); }
      .profile-content .tab-content .content-header .content-filters {
        display: flex;
        gap: 1rem; }
        @media (max-width: 768px) {
          .profile-content .tab-content .content-header .content-filters {
            gap: 0.5rem; } }
        .profile-content .tab-content .content-header .content-filters .filter-select {
          padding: 0.5rem 0.75rem;
          border: 1px solid hsl(var(--border));
          border-radius: var(--border-radius);
          background: hsl(var(--background));
          color: hsl(var(--foreground));
          font-size: 0.875rem;
          cursor: pointer; }
          .profile-content .tab-content .content-header .content-filters .filter-select:focus {
            outline: none;
            border-color: hsl(var(--ring));
            box-shadow: 0 0 0 2px hsl(var(--ring)/0.2); }
      .profile-content .tab-content .content-header .bookmark-filters {
        display: flex;
        gap: 0.5rem;
        flex-wrap: wrap; }
        .profile-content .tab-content .content-header .bookmark-filters .filter-tag {
          padding: 0.375rem 0.75rem;
          background: hsl(var(--muted));
          border: 1px solid hsl(var(--border));
          border-radius: var(--border-radius);
          color: hsl(var(--muted-foreground));
          font-size: 0.875rem;
          cursor: pointer;
          transition: var(--transition); }
          .profile-content .tab-content .content-header .bookmark-filters .filter-tag:hover {
            background: hsl(var(--accent));
            color: hsl(var(--accent-foreground)); }
          .profile-content .tab-content .content-header .bookmark-filters .filter-tag.active {
            background: hsl(var(--primary));
            border-color: hsl(var(--primary));
            color: hsl(var(--primary-foreground)); }
  .profile-content .posts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    gap: 1.5rem;
    margin-bottom: 2rem; }
    @media (max-width: 768px) {
      .profile-content .posts-grid {
        grid-template-columns: 1fr; } }
  .profile-content .post-card {
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    padding: 1.5rem;
    transition: var(--transition); }
    .profile-content .post-card:hover {
      border-color: hsl(var(--border));
      box-shadow: var(--shadow-sm); }
    .profile-content .post-card .post-card-header {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      margin-bottom: 1rem; }
      .profile-content .post-card .post-card-header .post-category {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        color: hsl(var(--muted-foreground));
        font-size: 0.875rem; }
      .profile-content .post-card .post-card-header .post-status .badge, .profile-content .post-card .post-card-header .post-status .tag,
      .profile-content .post-card .post-card-header .post-status .tech-tag,
      .profile-content .post-card .post-card-header .post-status .idea-category,
      .profile-content .post-card .post-card-header .post-status .update-badge,
      .profile-content .post-card .post-card-header .post-status .product-badge,
      .profile-content .post-card .post-card-header .post-status .article-category,
      .profile-content .post-card .post-card-header .post-status .update-category,
      .profile-content .post-card .post-card-header .post-status .update-impact {
        font-size: 0.75rem; }
    .profile-content .post-card .post-title {
      margin-bottom: 0.75rem; }
      .profile-content .post-card .post-title a {
        font-size: 1.125rem;
        font-weight: 600;
        color: hsl(var(--foreground));
        text-decoration: none;
        line-height: 1.4; }
        .profile-content .post-card .post-title a:hover {
          color: hsl(var(--primary));
          text-decoration: underline; }
    .profile-content .post-card .post-excerpt {
      color: hsl(var(--muted-foreground));
      line-height: 1.5;
      margin-bottom: 1rem;
      font-size: 0.875rem; }
    .profile-content .post-card .post-meta {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 1rem;
      font-size: 0.875rem;
      color: hsl(var(--muted-foreground)); }
      .profile-content .post-card .post-meta .post-stats {
        display: flex;
        gap: 1rem; }
        .profile-content .post-card .post-meta .post-stats span {
          display: flex;
          align-items: center;
          gap: 0.25rem; }
        .profile-content .post-card .post-meta .post-stats .price {
          font-weight: 600;
          color: hsl(var(--primary)); }
    .profile-content .post-card .post-actions {
      display: flex;
      gap: 0.75rem;
      padding-top: 1rem;
      border-top: 1px solid hsl(var(--border)); }
      .profile-content .post-card .post-actions .btn {
        display: flex;
        align-items: center;
        gap: 0.5rem; }
  .profile-content .liked-list {
    display: flex;
    flex-direction: column;
    gap: 1rem; }
  .profile-content .liked-item {
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    padding: 1.5rem;
    transition: var(--transition); }
    .profile-content .liked-item:hover {
      border-color: hsl(var(--border));
      box-shadow: var(--shadow-sm); }
    .profile-content .liked-item .liked-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 0.75rem;
      font-size: 0.875rem; }
      .profile-content .liked-item .liked-header .liked-category {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        color: hsl(var(--muted-foreground)); }
      .profile-content .liked-item .liked-header .liked-date {
        color: hsl(var(--muted-foreground)); }
    .profile-content .liked-item .liked-title {
      margin-bottom: 0.5rem; }
      .profile-content .liked-item .liked-title a {
        font-size: 1.125rem;
        font-weight: 600;
        color: hsl(var(--foreground));
        text-decoration: none; }
        .profile-content .liked-item .liked-title a:hover {
          color: hsl(var(--primary));
          text-decoration: underline; }
    .profile-content .liked-item .liked-author {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: hsl(var(--muted-foreground));
      font-size: 0.875rem;
      margin-bottom: 0.75rem; }
    .profile-content .liked-item .liked-stats {
      display: flex;
      gap: 1rem;
      font-size: 0.875rem;
      color: hsl(var(--muted-foreground)); }
      .profile-content .liked-item .liked-stats span {
        display: flex;
        align-items: center;
        gap: 0.25rem; }
  .profile-content .bookmarks-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 1.5rem; }
    @media (max-width: 768px) {
      .profile-content .bookmarks-grid {
        grid-template-columns: 1fr; } }
  .profile-content .bookmark-card {
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    padding: 1.5rem;
    transition: var(--transition); }
    .profile-content .bookmark-card:hover {
      border-color: hsl(var(--border));
      box-shadow: var(--shadow-sm); }
    .profile-content .bookmark-card .bookmark-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 1rem; }
      .profile-content .bookmark-card .bookmark-header .bookmark-category {
        padding: 0.25rem 0.75rem;
        background: hsl(var(--muted));
        border-radius: var(--border-radius);
        color: hsl(var(--muted-foreground));
        font-size: 0.75rem;
        font-weight: 500; }
      .profile-content .bookmark-card .bookmark-header .bookmark-remove {
        background: none;
        border: none;
        color: hsl(var(--primary));
        cursor: pointer;
        padding: 0.25rem;
        border-radius: var(--border-radius-sm);
        transition: var(--transition); }
        .profile-content .bookmark-card .bookmark-header .bookmark-remove:hover {
          background: hsl(var(--destructive)/0.1);
          color: hsl(var(--destructive)); }
        .profile-content .bookmark-card .bookmark-header .bookmark-remove i {
          font-size: 1.125rem; }
    .profile-content .bookmark-card .bookmark-title {
      margin-bottom: 0.75rem; }
      .profile-content .bookmark-card .bookmark-title a {
        font-size: 1.125rem;
        font-weight: 600;
        color: hsl(var(--foreground));
        text-decoration: none;
        line-height: 1.4; }
        .profile-content .bookmark-card .bookmark-title a:hover {
          color: hsl(var(--primary));
          text-decoration: underline; }
    .profile-content .bookmark-card .bookmark-excerpt {
      color: hsl(var(--muted-foreground));
      line-height: 1.5;
      margin-bottom: 1rem;
      font-size: 0.875rem; }
    .profile-content .bookmark-card .bookmark-meta {
      display: flex;
      justify-content: space-between;
      font-size: 0.875rem;
      color: hsl(var(--muted-foreground)); }
  .profile-content .activity-timeline {
    display: flex;
    flex-direction: column;
    gap: 1rem; }
  .profile-content .activity-item {
    display: flex;
    gap: 1rem;
    padding: 1.5rem;
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg); }
    .profile-content .activity-item .activity-icon {
      width: 2.5rem;
      height: 2.5rem;
      background: hsl(var(--primary)/0.1);
      border: 1px solid hsl(var(--primary)/0.2);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0; }
      .profile-content .activity-item .activity-icon i {
        font-size: 1rem;
        color: hsl(var(--primary)); }
    .profile-content .activity-item .activity-content {
      flex: 1; }
      .profile-content .activity-item .activity-content p {
        color: hsl(var(--foreground));
        margin-bottom: 0.5rem;
        line-height: 1.5; }
        .profile-content .activity-item .activity-content p strong {
          font-weight: 600; }
      .profile-content .activity-item .activity-content .activity-time {
        font-size: 0.875rem;
        color: hsl(var(--muted-foreground)); }

.profile-tabs-section {
  background: hsl(var(--background));
  border-bottom: 1px solid hsl(var(--border));
  padding: 0 0 1px; }
  .profile-tabs-section .profile-tabs {
    display: flex;
    gap: 0.5rem;
    margin: 0;
    overflow-x: auto; }
    .profile-tabs-section .profile-tabs .tab-button {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      padding: 1rem 1.5rem;
      background: none;
      border: none;
      border-bottom: 2px solid transparent;
      color: hsl(var(--muted-foreground));
      font-weight: 500;
      cursor: pointer;
      transition: var(--transition);
      white-space: nowrap; }
      @media (max-width: 768px) {
        .profile-tabs-section .profile-tabs .tab-button {
          padding: 0.75rem 1rem;
          font-size: 0.875rem; } }
      .profile-tabs-section .profile-tabs .tab-button i {
        font-size: 1rem; }
      .profile-tabs-section .profile-tabs .tab-button .tab-count {
        padding: 0.125rem 0.5rem;
        background: hsl(var(--muted));
        border-radius: var(--border-radius-sm);
        font-size: 0.75rem;
        font-weight: 600;
        -webkit-border-radius: 1rem;
        -moz-border-radius: 1rem;
        border-radius: 1rem; }
      .profile-tabs-section .profile-tabs .tab-button:hover {
        color: hsl(var(--foreground));
        background: hsl(var(--accent)/0.5); }
      .profile-tabs-section .profile-tabs .tab-button.active {
        color: hsl(var(--primary));
        border-bottom-color: hsl(var(--primary)); }
        .profile-tabs-section .profile-tabs .tab-button.active .tab-count {
          background: hsl(var(--primary)/0.2);
          color: hsl(var(--primary)); }

@media (max-width: 1024px) {
  .profile-sidebar {
    order: -1; } }
.profile-sidebar .sidebar-section {
  background: hsl(var(--background));
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius-lg);
  padding: 1.5rem;
  margin-bottom: 1.5rem; }
  .profile-sidebar .sidebar-section .sidebar-title {
    font-size: 1rem;
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 1rem; }
  .profile-sidebar .sidebar-section .monthly-stats {
    display: flex;
    flex-direction: column;
    gap: 1rem; }
    .profile-sidebar .sidebar-section .monthly-stats .monthly-stat {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 0.75rem;
      background: hsl(var(--muted)/0.3);
      border-radius: var(--border-radius); }
      .profile-sidebar .sidebar-section .monthly-stats .monthly-stat .stat-number {
        font-size: 1.25rem;
        font-weight: 700;
        color: hsl(var(--primary)); }
      .profile-sidebar .sidebar-section .monthly-stats .monthly-stat .stat-label {
        font-size: 0.875rem;
        color: hsl(var(--muted-foreground)); }
  .profile-sidebar .sidebar-section .badges-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem; }
    .profile-sidebar .sidebar-section .badges-grid .badge-item {
      display: flex;
      flex-direction: column;
      align-items: center;
      padding: 1rem;
      background: hsl(var(--muted)/0.3);
      border-radius: var(--border-radius);
      text-align: center; }
      .profile-sidebar .sidebar-section .badges-grid .badge-item i {
        font-size: 1.5rem;
        color: hsl(var(--primary));
        margin-bottom: 0.5rem; }
      .profile-sidebar .sidebar-section .badges-grid .badge-item span {
        font-size: 0.75rem;
        color: hsl(var(--muted-foreground));
        font-weight: 500; }
  .profile-sidebar .sidebar-section .interests-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem; }
    .profile-sidebar .sidebar-section .interests-tags .tag {
      padding: 0.375rem 0.75rem;
      background: hsl(var(--primary)/0.1);
      border: 1px solid hsl(var(--primary)/0.2);
      border-radius: var(--border-radius);
      color: hsl(var(--primary));
      font-size: 0.875rem;
      font-weight: 500; }
  .profile-sidebar .sidebar-section .suggested-users {
    display: flex;
    flex-direction: column;
    gap: 1rem; }
    .profile-sidebar .sidebar-section .suggested-users .suggested-user {
      display: flex;
      align-items: center;
      gap: 0.75rem; }
      .profile-sidebar .sidebar-section .suggested-users .suggested-user .user-avatar {
        width: 40px;
        height: 40px;
        border-radius: 50%;
        object-fit: cover; }
      .profile-sidebar .sidebar-section .suggested-users .suggested-user .user-info {
        flex: 1; }
        .profile-sidebar .sidebar-section .suggested-users .suggested-user .user-info .user-name {
          display: block;
          font-weight: 600;
          color: hsl(var(--foreground));
          font-size: 0.875rem;
          margin-bottom: 0.125rem; }
        .profile-sidebar .sidebar-section .suggested-users .suggested-user .user-info .user-role {
          display: block;
          font-size: 0.75rem;
          color: hsl(var(--muted-foreground)); }
      .profile-sidebar .sidebar-section .suggested-users .suggested-user .btn {
        font-size: 0.75rem;
        padding: 0.375rem 0.75rem; }

.breadcrumb-section {
  padding: 1rem 0;
  background: hsl(var(--muted)/0.3);
  border-bottom: 1px solid hsl(var(--border)); }
  .breadcrumb-section .breadcrumb {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: hsl(var(--muted-foreground)); }
    .breadcrumb-section .breadcrumb a {
      color: hsl(var(--muted-foreground));
      text-decoration: none;
      transition: var(--transition); }
      .breadcrumb-section .breadcrumb a:hover {
        color: hsl(var(--primary)); }
    .breadcrumb-section .breadcrumb i {
      font-size: 0.75rem; }
    .breadcrumb-section .breadcrumb span {
      color: hsl(var(--foreground));
      font-weight: 500; }

.product-detail-header {
  padding: 3rem 0;
  background: hsl(var(--background)); }
  .product-detail-header .product-detail-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem; }
    @media (max-width: 1024px) {
      .product-detail-header .product-detail-layout {
        grid-template-columns: 1fr;
        gap: 2rem; } }

.product-gallery .main-image {
  position: relative;
  margin-bottom: 1rem;
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  background: hsl(var(--muted)); }
  .product-gallery .main-image img {
    width: 100%;
    height: 400px;
    object-fit: cover; }
  .product-gallery .main-image .product-badges {
    position: absolute;
    top: 1rem;
    left: 1rem;
    display: flex;
    gap: 0.5rem; }
.product-gallery .thumbnail-images {
  display: flex;
  gap: 0.5rem;
  overflow-x: auto; }
  .product-gallery .thumbnail-images .thumbnail {
    width: 80px;
    height: 60px;
    object-fit: cover;
    border-radius: var(--border-radius);
    border: 2px solid transparent;
    cursor: pointer;
    transition: var(--transition); }
    .product-gallery .thumbnail-images .thumbnail.active, .product-gallery .thumbnail-images .thumbnail:hover {
      border-color: hsl(var(--primary)); }

.product-info .product-category {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.375rem 0.75rem;
  background: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
  border-radius: var(--border-radius);
  font-size: 0.875rem;
  font-weight: 500;
  margin-bottom: 1rem; }
  .product-info .product-category i {
    font-size: 1rem; }
.product-info .product-title {
  font-size: 2rem;
  font-weight: 700;
  color: hsl(var(--foreground));
  margin-bottom: 0.5rem;
  line-height: 1.3; }
  @media (max-width: 768px) {
    .product-info .product-title {
      font-size: 1.75rem; } }
.product-info .product-subtitle {
  font-size: 1.125rem;
  color: hsl(var(--muted-foreground));
  margin-bottom: 1.5rem;
  line-height: 1.5; }
.product-info .product-rating {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 1.5rem; }
  .product-info .product-rating .stars {
    display: flex;
    gap: 0.125rem; }
    .product-info .product-rating .stars i {
      color: #fbbf24;
      font-size: 1rem; }
  .product-info .product-rating .rating-score {
    font-weight: 600;
    color: hsl(var(--foreground)); }
  .product-info .product-rating .rating-count {
    color: hsl(var(--muted-foreground));
    font-size: 0.875rem; }
.product-info .product-author {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 1rem;
  background: hsl(var(--muted)/0.5);
  border-radius: var(--border-radius);
  margin-bottom: 1.5rem; }
  .product-info .product-author .author-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover; }
  .product-info .product-author .author-info {
    flex: 1; }
    .product-info .product-author .author-info .author-name {
      display: block;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 0.125rem; }
    .product-info .product-author .author-info .author-badge {
      display: inline-flex;
      align-items: center;
      padding: 0.125rem 0.5rem;
      background: hsl(var(--primary)/0.1);
      color: hsl(var(--primary));
      border-radius: var(--border-radius-sm);
      font-size: 0.75rem;
      font-weight: 500; }
.product-info .product-tech-stack {
  margin-bottom: 2rem; }
  .product-info .product-tech-stack h3 {
    font-size: 1rem;
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 0.75rem; }
  .product-info .product-tech-stack .tech-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem; }
    .product-info .product-tech-stack .tech-tags .tech-tag {
      padding: 0.25rem 0.75rem;
      background: hsl(var(--primary)/0.1);
      border: 1px solid hsl(var(--primary)/0.2);
      color: hsl(var(--primary));
      border-radius: var(--border-radius);
      font-size: 0.875rem;
      font-weight: 500; }
.product-info .product-pricing {
  padding: 1.5rem;
  background: hsl(var(--muted)/0.3);
  border-radius: var(--border-radius-lg);
  margin-bottom: 2rem; }
  .product-info .product-pricing .price-info {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem; }
    .product-info .product-pricing .price-info .price-original {
      font-size: 1rem;
      color: hsl(var(--muted-foreground));
      text-decoration: line-through; }
    .product-info .product-pricing .price-info .price-sale {
      font-size: 1.75rem;
      font-weight: 700;
      color: hsl(var(--primary)); }
    .product-info .product-pricing .price-info .discount-rate {
      padding: 0.25rem 0.5rem;
      background: hsl(var(--destructive));
      color: hsl(var(--destructive-foreground));
      border-radius: var(--border-radius);
      font-size: 0.75rem;
      font-weight: 600; }
  .product-info .product-pricing .payment-options {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    font-size: 0.875rem;
    color: hsl(var(--muted-foreground)); }
.product-info .product-actions {
  display: flex;
  gap: 0.75rem;
  margin-bottom: 2rem; }
  @media (max-width: 768px) {
    .product-info .product-actions {
      flex-direction: column; } }
  .product-info .product-actions .btn-large {
    padding: 0.875rem 2rem;
    font-size: 1.125rem;
    font-weight: 600;
    flex: 1; }
.product-info .product-guarantee {
  display: flex;
  flex-direction: column;
  gap: 0.75rem; }
  .product-info .product-guarantee .guarantee-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.875rem;
    color: hsl(var(--foreground)); }
    .product-info .product-guarantee .guarantee-item i {
      color: hsl(var(--primary));
      font-size: 1rem; }

.product-detail-tabs {
  padding: 3rem 0;
  background: hsl(var(--muted)/0.2); }
  .product-detail-tabs .tab-navigation {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 3rem;
    border-bottom: 1px solid hsl(var(--border));
    overflow-x: auto; }
    .product-detail-tabs .tab-navigation .tab-btn {
      padding: 1rem 1.5rem;
      background: none;
      border: none;
      border-bottom: 2px solid transparent;
      color: hsl(var(--muted-foreground));
      font-weight: 500;
      cursor: pointer;
      transition: var(--transition);
      white-space: nowrap; }
      .product-detail-tabs .tab-navigation .tab-btn:hover {
        color: hsl(var(--foreground));
        background: hsl(var(--accent)/0.5); }
      .product-detail-tabs .tab-navigation .tab-btn.active {
        color: hsl(var(--primary));
        border-bottom-color: hsl(var(--primary)); }
  .product-detail-tabs .tab-content-wrapper .tab-content {
    display: none; }
    .product-detail-tabs .tab-content-wrapper .tab-content.active {
      display: block; }
    .product-detail-tabs .tab-content-wrapper .tab-content .content-section h2 {
      font-size: 1.75rem;
      font-weight: 700;
      color: hsl(var(--foreground));
      margin-bottom: 1.5rem; }
    .product-detail-tabs .tab-content-wrapper .tab-content .content-section h3 {
      font-size: 1.25rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 1rem; }
    .product-detail-tabs .tab-content-wrapper .tab-content .content-section p {
      color: hsl(var(--foreground));
      line-height: 1.6;
      margin-bottom: 1.5rem; }
    .product-detail-tabs .tab-content-wrapper .tab-content .content-section ul {
      margin-bottom: 1.5rem;
      padding-left: 1.5rem; }
      .product-detail-tabs .tab-content-wrapper .tab-content .content-section ul li {
        color: hsl(var(--foreground));
        line-height: 1.6;
        margin-bottom: 0.5rem; }
        .product-detail-tabs .tab-content-wrapper .tab-content .content-section ul li strong {
          font-weight: 600;
          color: hsl(var(--primary)); }

.stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1.5rem;
  margin-bottom: 2rem; }
  .stats-grid .stat-card {
    text-align: center;
    padding: 2rem;
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg); }
    .stats-grid .stat-card .stat-number {
      display: block;
      font-size: 2rem;
      font-weight: 700;
      color: hsl(var(--primary));
      margin-bottom: 0.5rem; }
    .stats-grid .stat-card .stat-label {
      color: hsl(var(--muted-foreground));
      font-weight: 500; }

.features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 2rem; }
  .features-grid .feature-card {
    padding: 2rem;
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg); }
    .features-grid .feature-card .feature-icon {
      width: 3rem;
      height: 3rem;
      background: hsl(var(--primary)/0.1);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 1rem; }
      .features-grid .feature-card .feature-icon i {
        font-size: 1.5rem;
        color: hsl(var(--primary)); }
    .features-grid .feature-card h3 {
      font-size: 1.25rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 1rem; }
    .features-grid .feature-card ul {
      list-style: none;
      padding: 0; }
      .features-grid .feature-card ul li {
        padding: 0.25rem 0;
        color: hsl(var(--muted-foreground));
        position: relative;
        padding-left: 1.5rem; }
        .features-grid .feature-card ul li:before {
          content: "✓";
          position: absolute;
          left: 0;
          color: hsl(var(--primary));
          font-weight: 600; }

.demo-video {
  margin-bottom: 2rem; }
  .demo-video .video-placeholder {
    aspect-ratio: 16/9;
    background: hsl(var(--muted));
    border-radius: var(--border-radius-lg);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    cursor: pointer;
    transition: var(--transition); }
    .demo-video .video-placeholder:hover {
      background: hsl(var(--muted)/0.8); }
    .demo-video .video-placeholder i {
      font-size: 4rem;
      color: hsl(var(--primary)); }
    .demo-video .video-placeholder span {
      font-size: 1.125rem;
      font-weight: 500;
      color: hsl(var(--foreground)); }

.demo-highlights h3 {
  margin-bottom: 1rem; }
.demo-highlights ul {
  list-style: none;
  padding: 0; }
  .demo-highlights ul li {
    padding: 0.5rem 0;
    padding-left: 2rem;
    position: relative; }
    .demo-highlights ul li:before {
      content: "▶";
      position: absolute;
      left: 0;
      color: hsl(var(--primary)); }

.installation-steps {
  margin-bottom: 2rem; }
  .installation-steps .step {
    display: flex;
    gap: 1.5rem;
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid hsl(var(--border)); }
    .installation-steps .step:last-child {
      border-bottom: none;
      margin-bottom: 0;
      padding-bottom: 0; }
    .installation-steps .step .step-number {
      width: 2.5rem;
      height: 2.5rem;
      background: hsl(var(--primary));
      color: hsl(var(--primary-foreground));
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 600;
      flex-shrink: 0; }
    .installation-steps .step .step-content {
      flex: 1; }
      .installation-steps .step .step-content h3 {
        margin-bottom: 0.75rem; }
      .installation-steps .step .step-content p, .installation-steps .step .step-content ul {
        margin-bottom: 0; }

.installation-support {
  padding: 2rem;
  background: hsl(var(--muted)/0.3);
  border-radius: var(--border-radius-lg); }
  .installation-support h3 {
    margin-bottom: 1rem; }
  .installation-support p {
    margin-bottom: 1.5rem; }
  .installation-support .support-options {
    display: flex;
    gap: 1rem; }
    @media (max-width: 768px) {
      .installation-support .support-options {
        flex-direction: column; } }

.reviews-summary {
  margin-bottom: 2rem;
  padding: 2rem;
  background: hsl(var(--background));
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius-lg); }
  .reviews-summary .rating-overview {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 2rem; }
    @media (max-width: 768px) {
      .reviews-summary .rating-overview {
        grid-template-columns: 1fr; } }
    .reviews-summary .rating-overview .overall-rating {
      text-align: center; }
      .reviews-summary .rating-overview .overall-rating .rating-number {
        display: block;
        font-size: 3rem;
        font-weight: 700;
        color: hsl(var(--primary));
        margin-bottom: 0.5rem; }
      .reviews-summary .rating-overview .overall-rating .stars {
        margin-bottom: 0.5rem; }
      .reviews-summary .rating-overview .overall-rating .total-reviews {
        color: hsl(var(--muted-foreground));
        font-size: 0.875rem; }
    .reviews-summary .rating-overview .rating-distribution {
      display: flex;
      flex-direction: column;
      gap: 0.5rem; }
      .reviews-summary .rating-overview .rating-distribution .rating-bar {
        display: flex;
        align-items: center;
        gap: 1rem;
        font-size: 0.875rem; }
        .reviews-summary .rating-overview .rating-distribution .rating-bar span:first-child {
          width: 2rem;
          color: hsl(var(--muted-foreground)); }
        .reviews-summary .rating-overview .rating-distribution .rating-bar .bar {
          flex: 1;
          height: 0.5rem;
          background: hsl(var(--muted));
          border-radius: var(--border-radius);
          overflow: hidden; }
          .reviews-summary .rating-overview .rating-distribution .rating-bar .bar .fill {
            height: 100%;
            background: #fbbf24;
            transition: var(--transition); }
        .reviews-summary .rating-overview .rating-distribution .rating-bar span:last-child {
          width: 2rem;
          text-align: right;
          color: hsl(var(--muted-foreground)); }

.reviews-list {
  display: flex;
  flex-direction: column;
  gap: 1.5rem; }
  .reviews-list .review-item {
    padding: 1.5rem;
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg); }
    .reviews-list .review-item .review-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 1rem; }
      .reviews-list .review-item .review-header .reviewer-info {
        display: flex;
        align-items: center;
        gap: 0.75rem; }
        .reviews-list .review-item .review-header .reviewer-info .reviewer-avatar {
          width: 40px;
          height: 40px;
          border-radius: 50%;
          object-fit: cover; }
        .reviews-list .review-item .review-header .reviewer-info .reviewer-name {
          font-weight: 600;
          color: hsl(var(--foreground));
          margin-bottom: 0.25rem; }
        .reviews-list .review-item .review-header .reviewer-info .review-rating {
          display: flex;
          gap: 0.125rem; }
          .reviews-list .review-item .review-header .reviewer-info .review-rating i {
            color: #fbbf24;
            font-size: 0.875rem; }
      .reviews-list .review-item .review-header .review-date {
        color: hsl(var(--muted-foreground));
        font-size: 0.875rem; }
    .reviews-list .review-item .review-content {
      color: hsl(var(--foreground));
      line-height: 1.6;
      margin: 0; }

.support-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1.5rem;
  margin-bottom: 2rem; }
  .support-grid .support-card {
    text-align: center;
    padding: 2rem;
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg); }
    .support-grid .support-card .support-icon {
      width: 3rem;
      height: 3rem;
      background: hsl(var(--primary)/0.1);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0 auto 1rem; }
      .support-grid .support-card .support-icon i {
        font-size: 1.5rem;
        color: hsl(var(--primary)); }
    .support-grid .support-card h3 {
      margin-bottom: 0.75rem; }
    .support-grid .support-card p {
      color: hsl(var(--muted-foreground));
      margin-bottom: 1.5rem; }

.faq-section h3 {
  margin-bottom: 1.5rem; }
.faq-section .faq-list .faq-item {
  margin-bottom: 1.5rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid hsl(var(--border)); }
  .faq-section .faq-list .faq-item:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0; }
  .faq-section .faq-list .faq-item h4 {
    color: hsl(var(--foreground));
    font-weight: 600;
    margin-bottom: 0.5rem; }
  .faq-section .faq-list .faq-item p {
    color: hsl(var(--muted-foreground));
    margin: 0; }

.related-products {
  padding: 3rem 0;
  background: hsl(var(--muted)/0.2); }
  .related-products h2 {
    font-size: 1.75rem;
    font-weight: 700;
    color: hsl(var(--foreground));
    margin-bottom: 2rem;
    text-align: center; }
  .related-products .products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.5rem; }
    .related-products .products-grid .product-card {
      background: hsl(var(--background));
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius-lg);
      overflow: hidden;
      transition: var(--transition); }
      .related-products .products-grid .product-card:hover {
        box-shadow: var(--shadow-md);
        transform: translateY(-2px); }
      .related-products .products-grid .product-card .product-image img {
        width: 100%;
        height: 200px;
        object-fit: cover; }
      .related-products .products-grid .product-card .product-content {
        padding: 1.5rem; }
        .related-products .products-grid .product-card .product-content .product-category {
          display: inline-flex;
          align-items: center;
          gap: 0.5rem;
          padding: 0.25rem 0.75rem;
          background: hsl(var(--muted));
          color: hsl(var(--muted-foreground));
          border-radius: var(--border-radius);
          font-size: 0.75rem;
          font-weight: 500;
          margin-bottom: 1rem; }
        .related-products .products-grid .product-card .product-content .product-title {
          font-size: 1.125rem;
          font-weight: 600;
          color: hsl(var(--foreground));
          margin-bottom: 1rem; }
        .related-products .products-grid .product-card .product-content .product-price .price-sale {
          font-size: 1.25rem;
          font-weight: 700;
          color: hsl(var(--primary)); }

.product-register-form {
  padding: 3rem 0;
  background: hsl(var(--background)); }
  .product-register-form .container {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 4rem;
    max-width: 1400px; }
    @media (max-width: 1200px) {
      .product-register-form .container {
        grid-template-columns: 1fr;
        gap: 2rem; } }
  .product-register-form .register-form {
    background: hsl(var(--card));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    padding: 2rem; }

.form-steps {
  display: flex;
  justify-content: space-between;
  margin-bottom: 3rem;
  position: relative; }
  @media (max-width: 768px) {
    .form-steps {
      flex-direction: column;
      gap: 1rem; } }
  .form-steps::before {
    content: '';
    position: absolute;
    top: 1.25rem;
    left: 2.5rem;
    right: 2.5rem;
    height: 2px;
    background: hsl(var(--border));
    z-index: 1; }
    @media (max-width: 768px) {
      .form-steps::before {
        display: none; } }
  .form-steps .step {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    position: relative;
    z-index: 2;
    background: hsl(var(--background));
    padding: 0 1rem; }
    @media (max-width: 768px) {
      .form-steps .step {
        flex-direction: row;
        background: none;
        padding: 0; } }
    .form-steps .step .step-number {
      width: 2.5rem;
      height: 2.5rem;
      border-radius: 50%;
      background: hsl(var(--muted));
      color: hsl(var(--muted-foreground));
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 600;
      transition: var(--transition); }
    .form-steps .step span {
      font-size: 0.875rem;
      color: hsl(var(--muted-foreground));
      font-weight: 500;
      text-align: center; }
      @media (max-width: 768px) {
        .form-steps .step span {
          flex: 1; } }
    .form-steps .step.active .step-number {
      background: hsl(var(--primary));
      color: hsl(var(--primary-foreground)); }
    .form-steps .step.active span {
      color: hsl(var(--primary));
      font-weight: 600; }
    .form-steps .step.completed .step-number {
      background: hsl(var(--primary));
      color: hsl(var(--primary-foreground)); }
      .form-steps .step.completed .step-number::before {
        content: "✓"; }
    .form-steps .step.completed span {
      color: hsl(var(--foreground)); }

.form-section {
  display: none; }
  .form-section.active {
    display: block; }
  .form-section .section-header {
    margin-bottom: 2rem;
    text-align: center; }
    .form-section .section-header h2 {
      font-size: 1.75rem;
      font-weight: 700;
      color: hsl(var(--foreground));
      margin-bottom: 0.5rem; }
    .form-section .section-header p {
      color: hsl(var(--muted-foreground));
      font-size: 1rem; }

.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem; }
  @media (max-width: 768px) {
    .form-grid {
      grid-template-columns: 1fr;
      gap: 1rem; } }
  .form-grid .full-width {
    grid-column: 1 / -1; }

.form-group {
  display: flex;
  flex-direction: column; }
  .form-group label {
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 0;
    font-size: 0.875rem; }
  .form-group .form-input,
  .form-group .form-select {
    height: 2.25rem; }
  .form-group .form-input,
  .form-group .form-select,
  .form-group .form-textarea {
    padding: 0 0.75rem;
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius);
    background: hsl(var(--background));
    color: hsl(var(--foreground));
    font-size: 0.875rem;
    transition: var(--transition); }
    .form-group .form-input:focus,
    .form-group .form-select:focus,
    .form-group .form-textarea:focus {
      outline: none;
      border-color: hsl(var(--ring));
      box-shadow: 0 0 0 2px hsl(var(--ring)/0.2); }
    .form-group .form-input.error,
    .form-group .form-select.error,
    .form-group .form-textarea.error {
      border-color: hsl(var(--destructive));
      box-shadow: 0 0 0 2px hsl(var(--destructive)/0.2); }
    .form-group .form-input::placeholder,
    .form-group .form-select::placeholder,
    .form-group .form-textarea::placeholder {
      color: hsl(var(--muted-foreground)); }
  .form-group .form-textarea {
    resize: vertical;
    min-height: 120px; }
  .form-group .form-hint {
    font-size: 0.75rem;
    color: hsl(var(--muted-foreground));
    margin-top: 0.25rem;
    line-height: 1.4; }

.price-input {
  position: relative;
  display: flex;
  align-items: center; }
  .price-input .currency {
    position: absolute;
    left: 0.75rem;
    color: hsl(var(--muted-foreground));
    font-weight: 600;
    z-index: 1; }
  .price-input .form-input {
    padding-left: 2rem; }

.editor-toolbar {
  display: flex;
  gap: 0.25rem;
  padding: 0.5rem;
  background: hsl(var(--muted)/0.3);
  border: 1px solid hsl(var(--border));
  border-bottom: none;
  border-radius: var(--border-radius) var(--border-radius) 0 0; }
  .editor-toolbar .editor-btn {
    padding: 0.5rem;
    background: none;
    border: none;
    border-radius: var(--border-radius-sm);
    color: hsl(var(--muted-foreground));
    cursor: pointer;
    transition: var(--transition); }
    .editor-toolbar .editor-btn:hover {
      background: hsl(var(--accent));
      color: hsl(var(--accent-foreground)); }
    .editor-toolbar .editor-btn i {
      font-size: 0.875rem; }

.editor-preview {
  padding: 0.75rem;
  border: 1px solid hsl(var(--border));
  border-radius: 0 0 var(--border-radius) var(--border-radius);
  background: hsl(var(--background));
  min-height: 200px;
  color: hsl(var(--foreground));
  line-height: 1.6; }

.tech-stack-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1.5rem; }
  .tech-stack-grid .tech-category h4 {
    font-size: 0.875rem;
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 0.75rem;
    border-bottom: 1px solid hsl(var(--border));
    padding-bottom: 0.5rem; }
  .tech-stack-grid .tech-category .tech-options {
    display: flex;
    flex-direction: column;
    gap: 0; }
  .tech-stack-grid .tech-category .tech-option {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    padding: 0.5rem;
    border-radius: var(--border-radius);
    transition: var(--transition); }
    .tech-stack-grid .tech-category .tech-option:hover {
      background: hsl(var(--accent)/0.5); }
    .tech-stack-grid .tech-category .tech-option input[type="checkbox"] {
      margin: 0;
      accent-color: hsl(var(--primary)); }
    .tech-stack-grid .tech-category .tech-option span {
      font-size: 0.875rem;
      color: hsl(var(--foreground)); }

.file-upload-area {
  border: 2px dashed hsl(var(--border));
  border-radius: var(--border-radius-lg);
  padding: 2rem;
  text-align: center;
  cursor: pointer;
  transition: var(--transition);
  background: hsl(var(--muted)/0.1); }
  .file-upload-area:hover, .file-upload-area.drag-over {
    border-color: hsl(var(--primary));
    background: hsl(var(--primary)/0.05); }
  .file-upload-area .upload-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem; }
    .file-upload-area .upload-placeholder i {
      font-size: 2rem;
      color: hsl(var(--muted-foreground)); }
    .file-upload-area .upload-placeholder p {
      font-weight: 500;
      color: hsl(var(--foreground));
      margin: 0; }
    .file-upload-area .upload-placeholder span {
      font-size: 0.875rem;
      color: hsl(var(--muted-foreground)); }

.uploaded-files {
  margin-top: 1rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem; }
  .uploaded-files .file-item {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem;
    background: hsl(var(--muted)/0.3);
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius); }
    .uploaded-files .file-item img {
      width: 40px;
      height: 40px;
      object-fit: cover;
      border-radius: var(--border-radius-sm); }
    .uploaded-files .file-item span {
      font-size: 0.875rem;
      color: hsl(var(--foreground)); }
    .uploaded-files .file-item button {
      background: none;
      border: none;
      color: hsl(var(--destructive));
      cursor: pointer;
      padding: 0.25rem;
      border-radius: var(--border-radius-sm);
      transition: var(--transition); }
      .uploaded-files .file-item button:hover {
        background: hsl(var(--destructive)/0.1); }

.license-options {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1rem; }
  .license-options .license-option {
    cursor: pointer; }
    .license-options .license-option input[type="radio"] {
      display: none; }
    .license-options .license-option .license-card {
      padding: 1.5rem;
      border: 2px solid hsl(var(--border));
      border-radius: var(--border-radius-lg);
      background: hsl(var(--background));
      transition: var(--transition); }
      .license-options .license-option .license-card h4 {
        font-size: 1rem;
        font-weight: 600;
        color: hsl(var(--foreground));
        margin-bottom: 0.5rem; }
      .license-options .license-option .license-card p {
        color: hsl(var(--muted-foreground));
        margin-bottom: 1rem;
        font-size: 0.875rem; }
      .license-options .license-option .license-card .license-features {
        display: flex;
        flex-direction: column;
        gap: 0.25rem; }
        .license-options .license-option .license-card .license-features span {
          font-size: 0.75rem;
          color: hsl(var(--muted-foreground)); }
          .license-options .license-option .license-card .license-features span:first-child {
            color: hsl(var(--primary)); }
    .license-options .license-option:hover .license-card {
      border-color: hsl(var(--primary)/0.5); }
    .license-options .license-option input:checked + .license-card {
      border-color: hsl(var(--primary));
      background: hsl(var(--primary)/0.05); }

.publish-options {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1rem; }
  .publish-options .publish-option {
    cursor: pointer; }
    .publish-options .publish-option input[type="radio"] {
      display: none; }
    .publish-options .publish-option .option-content {
      padding: 1rem;
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      background: hsl(var(--background));
      text-align: center;
      transition: var(--transition); }
      .publish-options .publish-option .option-content h4 {
        font-size: 0.875rem;
        font-weight: 600;
        color: hsl(var(--foreground));
        margin-bottom: 0.25rem; }
      .publish-options .publish-option .option-content p {
        font-size: 0.75rem;
        color: hsl(var(--muted-foreground));
        margin: 0; }
    .publish-options .publish-option:hover .option-content {
      border-color: hsl(var(--primary)/0.5); }
    .publish-options .publish-option input:checked + .option-content {
      border-color: hsl(var(--primary));
      background: hsl(var(--primary)/0.05); }

.scheduled-date {
  margin-top: 1rem; }

.terms-agreement {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.5rem;
  background: hsl(var(--muted)/0.3);
  border-radius: var(--border-radius); }
  .terms-agreement .checkbox-label {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    cursor: pointer;
    font-size: 0.875rem; }
    .terms-agreement .checkbox-label input[type="checkbox"] {
      display: none; }
    .terms-agreement .checkbox-label .checkmark {
      width: 1.25rem;
      height: 1.25rem;
      border: 2px solid hsl(var(--border));
      border-radius: var(--border-radius-sm);
      display: flex;
      align-items: center;
      justify-content: center;
      transition: var(--transition);
      flex-shrink: 0; }
      .terms-agreement .checkbox-label .checkmark::after {
        content: "✓";
        color: transparent;
        font-size: 0.75rem;
        font-weight: 600; }
    .terms-agreement .checkbox-label span {
      color: hsl(var(--foreground)); }
    .terms-agreement .checkbox-label input:checked + .checkmark {
      background: hsl(var(--primary));
      border-color: hsl(var(--primary)); }
      .terms-agreement .checkbox-label input:checked + .checkmark::after {
        color: hsl(var(--primary-foreground)); }

.form-navigation {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid hsl(var(--border)); }
  @media (max-width: 768px) {
    .form-navigation {
      flex-direction: column;
      gap: 1rem; } }
  .form-navigation .btn {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 2rem;
    font-weight: 600; }

.register-sidebar {
  display: flex;
  flex-direction: column;
  gap: 1.5rem; }
  @media (max-width: 1200px) {
    .register-sidebar {
      order: -1; } }
  .register-sidebar .sidebar-card {
    background: hsl(var(--card));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    padding: 1.5rem; }
    .register-sidebar .sidebar-card h3 {
      font-size: 1.125rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 1rem; }

.guide-steps {
  display: flex;
  flex-direction: column;
  gap: 1rem; }
  .guide-steps .guide-step {
    display: flex;
    gap: 0.75rem; }
    .guide-steps .guide-step i {
      width: 2rem;
      height: 2rem;
      background: hsl(var(--primary)/0.1);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: hsl(var(--primary));
      font-size: 0.875rem;
      flex-shrink: 0; }
    .guide-steps .guide-step div {
      flex: 1; }
      .guide-steps .guide-step div h4 {
        font-size: 0.875rem;
        font-weight: 600;
        color: hsl(var(--foreground));
        margin-bottom: 0.25rem; }
      .guide-steps .guide-step div p {
        font-size: 0.75rem;
        color: hsl(var(--muted-foreground));
        line-height: 1.4;
        margin: 0; }

.commission-info .commission-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.75rem 0;
  border-bottom: 1px solid hsl(var(--border)); }
  .commission-info .commission-item:last-child {
    border-bottom: none; }
  .commission-info .commission-item.total {
    font-weight: 600;
    color: hsl(var(--primary));
    border-top: 2px solid hsl(var(--border));
    margin-top: 0.5rem;
    padding-top: 1rem; }
  .commission-info .commission-item span {
    color: hsl(var(--foreground));
    font-size: 0.875rem; }
  .commission-info .commission-item strong {
    color: hsl(var(--primary));
    font-weight: 600; }
.commission-info .commission-divider {
  height: 1px;
  background: hsl(var(--border));
  margin: 0.5rem 0; }

.commission-note {
  font-size: 0.75rem;
  color: hsl(var(--muted-foreground));
  margin-top: 1rem;
  padding: 0.75rem;
  background: hsl(var(--muted)/0.3);
  border-radius: var(--border-radius);
  text-align: center; }

.support-links {
  display: flex;
  flex-direction: column;
  gap: 0.5rem; }
  .support-links .support-link {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    color: hsl(var(--foreground));
    text-decoration: none;
    border-radius: var(--border-radius);
    transition: var(--transition);
    font-size: 0.875rem; }
    .support-links .support-link:hover {
      background: hsl(var(--accent));
      color: hsl(var(--accent-foreground)); }
    .support-links .support-link i {
      color: hsl(var(--primary));
      font-size: 1rem; }

.marketplace-filters {
  padding: 2rem 0;
  background: hsl(var(--muted)/0.3);
  border-bottom: 1px solid hsl(var(--border)); }
  .marketplace-filters .filters-wrapper {
    display: flex;
    flex-direction: column;
    gap: 2rem; }
    @media (min-width: 1024px) {
      .marketplace-filters .filters-wrapper {
        flex-direction: row;
        justify-content: space-between;
        align-items: center; } }
  .marketplace-filters .category-tabs {
    display: flex;
    gap: 0.5rem;
    overflow-x: auto;
    padding-bottom: 0.5rem; }
    @media (max-width: 768px) {
      .marketplace-filters .category-tabs {
        gap: 0.25rem; } }
  .marketplace-filters .filters-controls {
    display: flex;
    flex-direction: column;
    gap: 1rem; }
    @media (min-width: 768px) {
      .marketplace-filters .filters-controls {
        flex-direction: row;
        align-items: center; } }
  .marketplace-filters .filters-section {
    display: flex;
    gap: 1rem; }
    @media (max-width: 480px) {
      .marketplace-filters .filters-section {
        flex-direction: column; } }
    .marketplace-filters .filters-section .filter-select {
      min-width: 140px;
      padding: 0.5rem 0.75rem;
      background: hsl(var(--background));
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      color: hsl(var(--foreground));
      font-size: 0.875rem;
      cursor: pointer;
      transition: var(--transition); }
      .marketplace-filters .filters-section .filter-select:focus {
        outline: none;
        border-color: hsl(var(--ring));
        box-shadow: 0 0 0 2px hsl(var(--ring)/0.2); }
      .marketplace-filters .filters-section .filter-select:hover {
        border-color: hsl(var(--ring)); }
      @media (max-width: 480px) {
        .marketplace-filters .filters-section .filter-select {
          min-width: auto;
          width: 100%; } }
  .marketplace-filters .search-wrapper {
    position: relative;
    display: flex;
    align-items: center; }
    @media (max-width: 768px) {
      .marketplace-filters .search-wrapper {
        min-width: auto;
        width: 100%; } }
    .marketplace-filters .search-wrapper i {
      position: absolute;
      left: 1rem;
      color: hsl(var(--muted-foreground));
      font-size: 1rem;
      z-index: 1; }
    .marketplace-filters .search-wrapper .search-input {
      width: 100%;
      padding: 0.5rem 1rem 0.5rem 2.5rem;
      background: hsl(var(--background));
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      color: hsl(var(--foreground));
      font-size: 0.875rem;
      transition: var(--transition); }
      .marketplace-filters .search-wrapper .search-input:focus {
        outline: none;
        border-color: hsl(var(--ring));
        box-shadow: 0 0 0 2px hsl(var(--ring)/0.2); }
      .marketplace-filters .search-wrapper .search-input::placeholder {
        color: hsl(var(--muted-foreground)); }
      .marketplace-filters .search-wrapper .search-input:hover {
        border-color: hsl(var(--ring)); }

.marketplace-products {
  padding: 4rem 0;
  background: hsl(var(--background)); }
  .marketplace-products .products-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    gap: 2rem;
    margin-bottom: 3rem; }
    @media (max-width: 768px) {
      .marketplace-products .products-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem; } }

.category-tab {
  padding: 0.75rem 1.5rem;
  background: transparent;
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius);
  cursor: pointer;
  transition: var(--transition);
  white-space: nowrap;
  color: hsl(var(--foreground));
  font-size: 0.875rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 0.5rem; }
  .category-tab:hover {
    background: hsl(var(--accent));
    color: hsl(var(--accent-foreground)); }
  .category-tab.active {
    background: hsl(var(--primary));
    color: hsl(var(--primary-foreground));
    border-color: hsl(var(--primary)); }
  @media (max-width: 768px) {
    .category-tab {
      padding: 0.5rem 1rem;
      font-size: 0.75rem; } }
  .category-tab .count {
    padding: 0.125rem 0.5rem;
    background: hsl(var(--muted));
    border-radius: var(--border-radius-sm);
    font-size: 0.75rem;
    font-weight: 600;
    color: hsl(var(--muted-foreground)); }
  .category-tab.active .count {
    background: hsl(var(--primary-foreground)/0.2);
    color: hsl(var(--primary-foreground)); }
  .category-tab:hover .count {
    background: hsl(var(--accent-foreground)/0.2);
    color: hsl(var(--accent-foreground)); }

.product-header .wishlist-date {
  font-size: 0.75rem;
  color: hsl(var(--muted-foreground));
  font-weight: 500;
  padding: 0.25rem 0.5rem;
  background: hsl(var(--muted)/0.5);
  border-radius: var(--border-radius-sm); }

.wishlist-stats {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem; }
  .wishlist-stats .stat-item {
    text-align: center;
    padding: 1rem;
    background: hsl(var(--muted)/0.3);
    border-radius: var(--border-radius); }
    .wishlist-stats .stat-item .stat-number {
      display: block;
      font-size: 1.5rem;
      font-weight: 700;
      color: hsl(var(--primary));
      margin-bottom: 0.25rem; }
    .wishlist-stats .stat-item .stat-label {
      font-size: 0.75rem;
      color: hsl(var(--muted-foreground));
      font-weight: 500; }

.popular-tags .tag {
  position: relative; }
  .popular-tags .tag .count {
    margin-left: 0.5rem;
    font-size: 0.75rem;
    color: hsl(var(--muted-foreground));
    font-weight: 600; }

.recommended-products {
  display: flex;
  flex-direction: column;
  gap: 1rem; }
  .recommended-products .recommended-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    background: hsl(var(--muted)/0.2);
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius);
    transition: var(--transition); }
    .recommended-products .recommended-item:hover {
      background: hsl(var(--accent)/0.5);
      border-color: hsl(var(--primary)/0.3); }
    .recommended-products .recommended-item img {
      width: 60px;
      height: 40px;
      object-fit: cover;
      border-radius: var(--border-radius-sm);
      flex-shrink: 0; }
    .recommended-products .recommended-item .item-info {
      flex: 1; }
      .recommended-products .recommended-item .item-info h4 {
        font-size: 0.875rem;
        font-weight: 600;
        color: hsl(var(--foreground));
        margin-bottom: 0.25rem;
        line-height: 1.3; }
      .recommended-products .recommended-item .item-info .item-rating {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.5rem; }
        .recommended-products .recommended-item .item-info .item-rating .stars {
          display: flex;
          gap: 0.125rem; }
          .recommended-products .recommended-item .item-info .item-rating .stars i {
            font-size: 0.75rem;
            color: #fbbf24; }
        .recommended-products .recommended-item .item-info .item-rating .price {
          font-size: 0.75rem;
          font-weight: 600;
          color: hsl(var(--primary)); }
    .recommended-products .recommended-item .btn-sm {
      flex-shrink: 0;
      width: 2rem;
      height: 2rem;
      padding: 0;
      display: flex;
      align-items: center;
      justify-content: center; }
      .recommended-products .recommended-item .btn-sm i {
        font-size: 0.875rem; }

.wishlist-btn.active {
  color: hsl(var(--destructive)) !important;
  border-color: hsl(var(--destructive)) !important; }
  .wishlist-btn.active:hover {
    background: hsl(var(--destructive)/0.1) !important; }
  .wishlist-btn.active i {
    color: hsl(var(--destructive)) !important; }

.recent-activities .activity-item {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 0.75rem 0;
  border-bottom: 1px solid hsl(var(--border)); }
  .recent-activities .activity-item:last-child {
    border-bottom: none;
    padding-bottom: 0; }
  .recent-activities .activity-item:first-child {
    padding-top: 0; }
  .recent-activities .activity-item i {
    color: hsl(var(--destructive));
    font-size: 0.875rem;
    margin-top: 0.125rem;
    flex-shrink: 0; }
  .recent-activities .activity-item span {
    flex: 1;
    font-size: 0.875rem;
    color: hsl(var(--foreground));
    line-height: 1.4; }
  .recent-activities .activity-item time {
    font-size: 0.75rem;
    color: hsl(var(--muted-foreground));
    white-space: nowrap;
    flex-shrink: 0; }

.wishlist-items {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin-bottom: 3rem; }
  .wishlist-items .wishlist-item {
    display: flex;
    gap: 1.5rem;
    padding: 1.5rem;
    background: hsl(var(--card));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    transition: var(--transition); }
    .wishlist-items .wishlist-item:hover {
      border-color: hsl(var(--primary)/0.3);
      box-shadow: var(--shadow-md); }
    @media (max-width: 768px) {
      .wishlist-items .wishlist-item {
        flex-direction: column;
        gap: 1rem;
        padding: 1rem; } }
    .wishlist-items .wishlist-item .item-thumbnail {
      position: relative;
      flex-shrink: 0;
      width: 160px;
      height: 100px;
      border-radius: var(--border-radius);
      overflow: hidden; }
      @media (max-width: 768px) {
        .wishlist-items .wishlist-item .item-thumbnail {
          width: 100%;
          height: 200px; } }
      .wishlist-items .wishlist-item .item-thumbnail img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
      .wishlist-items .wishlist-item .item-thumbnail .item-badge {
        position: absolute;
        top: 0.5rem;
        left: 0.5rem;
        padding: 0.25rem 0.5rem;
        border-radius: var(--border-radius-sm);
        font-size: 0.75rem;
        font-weight: 600; }
        .wishlist-items .wishlist-item .item-thumbnail .item-badge.featured {
          background: hsl(var(--warning-color)/0.9);
          color: white; }
        .wishlist-items .wishlist-item .item-thumbnail .item-badge.new {
          background: hsl(var(--success-color)/0.9);
          color: white; }
    .wishlist-items .wishlist-item .item-content {
      flex: 1;
      min-width: 0;
      display: flex;
      flex-direction: column; }
      .wishlist-items .wishlist-item .item-content .item-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 0.75rem; }
        @media (max-width: 640px) {
          .wishlist-items .wishlist-item .item-content .item-header {
            flex-direction: column;
            align-items: flex-start;
            gap: 0.5rem; } }
        .wishlist-items .wishlist-item .item-content .item-header .item-category {
          display: inline-flex;
          align-items: center;
          gap: 0.5rem;
          padding: 0.25rem 0.75rem;
          background: hsl(var(--muted));
          color: hsl(var(--muted-foreground));
          border-radius: var(--border-radius);
          font-size: 0.75rem;
          font-weight: 500; }
          .wishlist-items .wishlist-item .item-content .item-header .item-category i {
            font-size: 0.875rem; }
        .wishlist-items .wishlist-item .item-content .item-header .wishlist-date {
          font-size: 0.75rem;
          color: hsl(var(--muted-foreground));
          font-weight: 500;
          padding: 0.25rem 0.5rem;
          background: hsl(var(--muted)/0.5);
          border-radius: var(--border-radius-sm); }
      .wishlist-items .wishlist-item .item-content .item-title {
        margin-bottom: 0.75rem; }
        .wishlist-items .wishlist-item .item-content .item-title a {
          font-size: 1.125rem;
          font-weight: 600;
          color: hsl(var(--foreground));
          text-decoration: none;
          line-height: 1.4; }
          .wishlist-items .wishlist-item .item-content .item-title a:hover {
            color: hsl(var(--primary)); }
      .wishlist-items .wishlist-item .item-content .item-description {
        color: hsl(var(--muted-foreground));
        line-height: 1.6;
        margin-bottom: 1rem;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden; }
        @media (max-width: 768px) {
          .wishlist-items .wishlist-item .item-content .item-description {
            -webkit-line-clamp: 3; } }
      .wishlist-items .wishlist-item .item-content .item-tech {
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
        margin-bottom: 1rem; }
        .wishlist-items .wishlist-item .item-content .item-tech .tech-tag {
          padding: 0.25rem 0.5rem;
          background: hsl(var(--muted));
          color: hsl(var(--muted-foreground));
          border-radius: var(--border-radius-sm);
          font-size: 0.75rem;
          font-weight: 500; }
      .wishlist-items .wishlist-item .item-content .item-meta {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-top: auto; }
        @media (max-width: 640px) {
          .wishlist-items .wishlist-item .item-content .item-meta {
            flex-direction: column;
            align-items: flex-start;
            gap: 0.5rem; } }
        .wishlist-items .wishlist-item .item-content .item-meta .item-author {
          display: flex;
          align-items: center;
          gap: 0.5rem;
          font-size: 0.875rem;
          color: hsl(var(--muted-foreground)); }
          .wishlist-items .wishlist-item .item-content .item-meta .item-author i {
            font-size: 1rem; }
        .wishlist-items .wishlist-item .item-content .item-meta .item-rating {
          display: flex;
          align-items: center;
          gap: 0.5rem;
          font-size: 0.875rem; }
          .wishlist-items .wishlist-item .item-content .item-meta .item-rating .stars {
            display: flex;
            gap: 0.125rem; }
            .wishlist-items .wishlist-item .item-content .item-meta .item-rating .stars i {
              font-size: 0.875rem;
              color: #fbbf24; }
          .wishlist-items .wishlist-item .item-content .item-meta .item-rating span {
            color: hsl(var(--muted-foreground)); }
    .wishlist-items .wishlist-item .item-actions {
      flex-shrink: 0;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      align-items: flex-end;
      gap: 1rem;
      min-width: 150px; }
      @media (max-width: 768px) {
        .wishlist-items .wishlist-item .item-actions {
          flex-direction: row;
          justify-content: space-between;
          align-items: center;
          min-width: auto;
          width: 100%; } }
      .wishlist-items .wishlist-item .item-actions .item-price {
        text-align: right; }
        @media (max-width: 768px) {
          .wishlist-items .wishlist-item .item-actions .item-price {
            text-align: left; } }
        .wishlist-items .wishlist-item .item-actions .item-price .price-original {
          display: block;
          font-size: 0.875rem;
          color: hsl(var(--muted-foreground));
          text-decoration: line-through;
          margin-bottom: 0.25rem; }
        .wishlist-items .wishlist-item .item-actions .item-price .price-sale {
          display: block;
          font-size: 1.125rem;
          font-weight: 700;
          color: hsl(var(--primary)); }
      .wishlist-items .wishlist-item .item-actions .action-buttons {
        display: flex;
        align-items: center;
        gap: 0.5rem; }
        @media (max-width: 768px) {
          .wishlist-items .wishlist-item .item-actions .action-buttons {
            flex-wrap: wrap; } }
        .wishlist-items .wishlist-item .item-actions .action-buttons .wishlist-btn.active {
          color: hsl(var(--destructive));
          border-color: hsl(var(--destructive)); }
          .wishlist-items .wishlist-item .item-actions .action-buttons .wishlist-btn.active:hover {
            background: hsl(var(--destructive)/0.1); }
          .wishlist-items .wishlist-item .item-actions .action-buttons .wishlist-btn.active i {
            color: hsl(var(--destructive)); }

.products-layout {
  display: grid;
  grid-template-columns: 1fr 300px;
  grid-template-areas: "main sidebar";
  gap: 4rem; }
  @media (max-width: 1200px) {
    .products-layout {
      grid-template-columns: 1fr;
      grid-template-areas: "sidebar" "main";
      gap: 3rem; } }
  .products-layout .products-main {
    grid-area: main;
    min-width: 0; }
  .products-layout .products-sidebar {
    grid-area: sidebar; }
    .products-layout .products-sidebar .sidebar-content {
      position: sticky;
      top: 2rem; }
      @media (max-width: 1200px) {
        .products-layout .products-sidebar .sidebar-content {
          position: static; } }
    .products-layout .products-sidebar .sidebar-section {
      margin-bottom: 2rem;
      padding: 1.5rem;
      background: hsl(var(--card));
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius-lg); }
      .products-layout .products-sidebar .sidebar-section:last-child {
        margin-bottom: 0; }
      .products-layout .products-sidebar .sidebar-section .sidebar-title {
        font-size: 1.125rem;
        font-weight: 600;
        color: hsl(var(--foreground));
        margin-bottom: 1rem; }

.product-card .product-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem; }
  .product-card .product-header .product-category {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem 0.75rem;
    background: hsl(var(--muted));
    color: hsl(var(--muted-foreground));
    border-radius: var(--border-radius);
    font-size: 0.75rem;
    font-weight: 500; }
    .product-card .product-header .product-category i {
      font-size: 0.875rem; }
.product-card .product-actions .wishlist-btn {
  transition: var(--transition); }
  .product-card .product-actions .wishlist-btn[data-wishlist="true"] {
    color: hsl(var(--destructive));
    border-color: hsl(var(--destructive)); }
    .product-card .product-actions .wishlist-btn[data-wishlist="true"]:hover {
      background: hsl(var(--destructive)/0.1); }

.quick-support {
  padding: 4rem 0;
  background: hsl(var(--muted)/0.3); }
  .quick-support .support-options {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    margin-top: 2rem; }
    @media (max-width: 768px) {
      .quick-support .support-options {
        grid-template-columns: 1fr;
        gap: 1.5rem; } }
  .quick-support .support-card {
    display: flex;
    flex-direction: column;
    padding: 2rem;
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    transition: var(--transition); }
    .quick-support .support-card:hover {
      transform: translateY(-2px);
      box-shadow: var(--shadow-lg); }
    .quick-support .support-card .support-icon {
      width: 4rem;
      height: 4rem;
      display: flex;
      align-items: center;
      justify-content: center;
      background: hsl(var(--primary)/0.1);
      border-radius: var(--border-radius-lg);
      margin-bottom: 1.5rem; }
      .quick-support .support-card .support-icon i {
        font-size: 1.5rem;
        color: hsl(var(--primary)); }
    .quick-support .support-card .support-content {
      flex: 1;
      margin-bottom: 1.5rem; }
      .quick-support .support-card .support-content h3 {
        font-size: 1.25rem;
        font-weight: 600;
        color: hsl(var(--foreground));
        margin-bottom: 0.5rem; }
      .quick-support .support-card .support-content p {
        color: hsl(var(--muted-foreground));
        line-height: 1.6;
        margin-bottom: 1rem; }
      .quick-support .support-card .support-content .support-info {
        display: flex;
        flex-direction: column;
        gap: 0.5rem; }
        .quick-support .support-card .support-content .support-info .status {
          font-size: 0.875rem;
          font-weight: 500;
          padding: 0.25rem 0.75rem;
          border-radius: var(--border-radius); }
          .quick-support .support-card .support-content .support-info .status.online {
            background: hsl(var(--success-color)/0.1);
            color: hsl(var(--success-color)); }
        .quick-support .support-card .support-content .support-info .response-time {
          font-size: 0.75rem;
          color: hsl(var(--muted-foreground)); }
    .quick-support .support-card .btn {
      margin-top: auto; }

.contact-form-section {
  padding: 4rem 0;
  background: hsl(var(--background)); }
  .contact-form-section .contact-layout {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 4rem; }
    @media (max-width: 1024px) {
      .contact-form-section .contact-layout {
        grid-template-columns: 1fr;
        gap: 3rem; } }
  .contact-form-section .form-container .form-header {
    margin-bottom: 2rem; }
    .contact-form-section .form-container .form-header h2 {
      font-size: 1.5rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 0.5rem; }
    .contact-form-section .form-container .form-header p {
      color: hsl(var(--muted-foreground));
      line-height: 1.6; }
  .contact-form-section .contact-form .form-group {
    margin-bottom: 1.5rem; }
    .contact-form-section .contact-form .form-group label {
      display: block;
      font-size: 0.875rem;
      font-weight: 500;
      color: hsl(var(--foreground));
      margin-bottom: 0.5rem; }
    .contact-form-section .contact-form .form-group .form-select,
    .contact-form-section .contact-form .form-group .form-input,
    .contact-form-section .contact-form .form-group .form-textarea {
      width: 100%;
      padding: 0.75rem 1rem;
      background: hsl(var(--background));
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      color: hsl(var(--foreground));
      font-size: 0.875rem;
      transition: var(--transition); }
      .contact-form-section .contact-form .form-group .form-select:focus,
      .contact-form-section .contact-form .form-group .form-input:focus,
      .contact-form-section .contact-form .form-group .form-textarea:focus {
        outline: none;
        border-color: hsl(var(--ring));
        box-shadow: 0 0 0 2px hsl(var(--ring)/0.2); }
      .contact-form-section .contact-form .form-group .form-select::placeholder,
      .contact-form-section .contact-form .form-group .form-input::placeholder,
      .contact-form-section .contact-form .form-group .form-textarea::placeholder {
        color: hsl(var(--muted-foreground)); }
    .contact-form-section .contact-form .form-group .form-textarea {
      resize: vertical;
      min-height: 120px; }
  .contact-form-section .contact-form .form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem; }
    @media (max-width: 640px) {
      .contact-form-section .contact-form .form-row {
        grid-template-columns: 1fr; } }
  .contact-form-section .contact-form .radio-group {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap; }
    @media (max-width: 640px) {
      .contact-form-section .contact-form .radio-group {
        flex-direction: column;
        gap: 0.5rem; } }
    .contact-form-section .contact-form .radio-group .radio-item {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      cursor: pointer; }
      .contact-form-section .contact-form .radio-group .radio-item input[type="radio"] {
        display: none; }
      .contact-form-section .contact-form .radio-group .radio-item .radio-mark {
        width: 1rem;
        height: 1rem;
        border: 2px solid hsl(var(--border));
        border-radius: 50%;
        position: relative;
        transition: var(--transition); }
        .contact-form-section .contact-form .radio-group .radio-item .radio-mark::after {
          content: '';
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%) scale(0);
          width: 0.5rem;
          height: 0.5rem;
          background: hsl(var(--primary));
          border-radius: 50%;
          transition: var(--transition); }
      .contact-form-section .contact-form .radio-group .radio-item input[type="radio"]:checked + .radio-mark {
        border-color: hsl(var(--primary)); }
        .contact-form-section .contact-form .radio-group .radio-item input[type="radio"]:checked + .radio-mark::after {
          transform: translate(-50%, -50%) scale(1); }
      .contact-form-section .contact-form .radio-group .radio-item .radio-label {
        font-size: 0.875rem;
        color: hsl(var(--foreground)); }
  .contact-form-section .contact-form .character-count {
    text-align: right;
    margin-top: 0.5rem;
    font-size: 0.75rem;
    color: hsl(var(--muted-foreground)); }
  .contact-form-section .contact-form .file-upload .file-input {
    display: none; }
  .contact-form-section .contact-form .file-upload .file-label {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    border: 2px dashed hsl(var(--border));
    border-radius: var(--border-radius);
    cursor: pointer;
    transition: var(--transition);
    text-align: center; }
    .contact-form-section .contact-form .file-upload .file-label:hover, .contact-form-section .contact-form .file-upload .file-label.drag-over {
      border-color: hsl(var(--primary));
      background: hsl(var(--primary)/0.05); }
    .contact-form-section .contact-form .file-upload .file-label i {
      font-size: 2rem;
      color: hsl(var(--muted-foreground));
      margin-bottom: 1rem; }
    .contact-form-section .contact-form .file-upload .file-label span {
      font-size: 0.875rem;
      color: hsl(var(--foreground));
      margin-bottom: 0.5rem; }
    .contact-form-section .contact-form .file-upload .file-label small {
      font-size: 0.75rem;
      color: hsl(var(--muted-foreground)); }
  .contact-form-section .contact-form .file-upload .file-list {
    margin-top: 1rem; }
    .contact-form-section .contact-form .file-upload .file-list .file-item {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 0.75rem;
      background: hsl(var(--muted)/0.3);
      border-radius: var(--border-radius);
      margin-bottom: 0.5rem; }
      .contact-form-section .contact-form .file-upload .file-list .file-item .file-info {
        display: flex;
        align-items: center;
        gap: 0.5rem; }
        .contact-form-section .contact-form .file-upload .file-list .file-item .file-info i {
          color: hsl(var(--muted-foreground)); }
        .contact-form-section .contact-form .file-upload .file-list .file-item .file-info .file-name {
          font-size: 0.875rem;
          color: hsl(var(--foreground)); }
        .contact-form-section .contact-form .file-upload .file-list .file-item .file-info .file-size {
          font-size: 0.75rem;
          color: hsl(var(--muted-foreground)); }
  .contact-form-section .contact-form .checkbox-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer; }
    .contact-form-section .contact-form .checkbox-item input[type="checkbox"] {
      display: none; }
    .contact-form-section .contact-form .checkbox-item .checkbox-mark {
      width: 1rem;
      height: 1rem;
      border: 2px solid hsl(var(--border));
      border-radius: var(--border-radius-sm);
      position: relative;
      transition: var(--transition); }
      .contact-form-section .contact-form .checkbox-item .checkbox-mark::after {
        content: '';
        position: absolute;
        top: 1px;
        left: 4px;
        width: 4px;
        height: 8px;
        border: solid hsl(var(--primary-foreground));
        border-width: 0 2px 2px 0;
        transform: rotate(45deg) scale(0);
        transition: var(--transition); }
    .contact-form-section .contact-form .checkbox-item input[type="checkbox"]:checked + .checkbox-mark {
      background: hsl(var(--primary));
      border-color: hsl(var(--primary)); }
      .contact-form-section .contact-form .checkbox-item input[type="checkbox"]:checked + .checkbox-mark::after {
        transform: rotate(45deg) scale(1); }
    .contact-form-section .contact-form .checkbox-item .checkbox-label {
      font-size: 0.875rem;
      color: hsl(var(--foreground)); }
      .contact-form-section .contact-form .checkbox-item .checkbox-label a {
        color: hsl(var(--primary));
        text-decoration: underline; }
        .contact-form-section .contact-form .checkbox-item .checkbox-label a:hover {
          text-decoration: none; }
  .contact-form-section .contact-form .form-actions {
    display: flex;
    gap: 1rem;
    margin-top: 2rem; }
    @media (max-width: 640px) {
      .contact-form-section .contact-form .form-actions {
        flex-direction: column; } }

.contact-sidebar .sidebar-content {
  position: sticky;
  top: 2rem; }
  @media (max-width: 1024px) {
    .contact-sidebar .sidebar-content {
      position: static; } }
.contact-sidebar .sidebar-section {
  padding: 1.5rem;
  background: hsl(var(--card));
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius-lg);
  margin-bottom: 1.5rem; }
  .contact-sidebar .sidebar-section:last-child {
    margin-bottom: 0; }
  .contact-sidebar .sidebar-section h3 {
    font-size: 1.125rem;
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 1rem; }
.contact-sidebar .faq-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem; }
  .contact-sidebar .faq-list .faq-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    background: hsl(var(--muted)/0.3);
    border-radius: var(--border-radius);
    text-decoration: none;
    color: hsl(var(--foreground));
    transition: var(--transition); }
    .contact-sidebar .faq-list .faq-item:hover {
      background: hsl(var(--accent)); }
    .contact-sidebar .faq-list .faq-item i {
      color: hsl(var(--muted-foreground));
      font-size: 1rem; }
    .contact-sidebar .faq-list .faq-item span {
      font-size: 0.875rem; }
.contact-sidebar .view-all-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1rem;
  color: hsl(var(--primary));
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: 500; }
  .contact-sidebar .view-all-link:hover {
    text-decoration: underline; }
  .contact-sidebar .view-all-link i {
    font-size: 0.75rem; }
.contact-sidebar .contact-info {
  display: flex;
  flex-direction: column;
  gap: 1rem; }
  .contact-sidebar .contact-info .contact-item {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem; }
    .contact-sidebar .contact-info .contact-item i {
      color: hsl(var(--muted-foreground));
      font-size: 1rem;
      margin-top: 0.125rem;
      flex-shrink: 0; }
    .contact-sidebar .contact-info .contact-item div strong {
      display: block;
      font-size: 0.875rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 0.25rem; }
    .contact-sidebar .contact-info .contact-item div span {
      font-size: 0.875rem;
      color: hsl(var(--muted-foreground));
      line-height: 1.4; }
.contact-sidebar .response-times {
  display: flex;
  flex-direction: column;
  gap: 0.75rem; }
  .contact-sidebar .response-times .time-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 0;
    border-bottom: 1px solid hsl(var(--border)); }
    .contact-sidebar .response-times .time-item:last-child {
      border-bottom: none; }
    .contact-sidebar .response-times .time-item .priority {
      font-size: 0.75rem;
      font-weight: 500;
      padding: 0.25rem 0.5rem;
      border-radius: var(--border-radius-sm); }
      .contact-sidebar .response-times .time-item .priority.urgent {
        background: hsl(var(--destructive)/0.1);
        color: hsl(var(--destructive)); }
      .contact-sidebar .response-times .time-item .priority.high {
        background: hsl(var(--warning-color)/0.1);
        color: hsl(var(--warning-color)); }
      .contact-sidebar .response-times .time-item .priority.medium {
        background: hsl(var(--primary)/0.1);
        color: hsl(var(--primary)); }
      .contact-sidebar .response-times .time-item .priority.low {
        background: hsl(var(--muted));
        color: hsl(var(--muted-foreground)); }
    .contact-sidebar .response-times .time-item .time {
      font-size: 0.875rem;
      color: hsl(var(--foreground));
      font-weight: 500; }
.contact-sidebar .additional-support {
  display: flex;
  flex-direction: column;
  gap: 0.5rem; }
  .contact-sidebar .additional-support .support-link {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    background: hsl(var(--muted)/0.3);
    border-radius: var(--border-radius);
    text-decoration: none;
    color: hsl(var(--foreground));
    transition: var(--transition); }
    .contact-sidebar .additional-support .support-link:hover {
      background: hsl(var(--accent)); }
    .contact-sidebar .additional-support .support-link i {
      color: hsl(var(--muted-foreground));
      font-size: 1rem; }
    .contact-sidebar .additional-support .support-link span {
      font-size: 0.875rem; }
.contact-sidebar .contact-actions {
  display: flex;
  flex-direction: column;
  gap: 0.5rem; }

.btn-block {
  width: 100%; }

.input-group {
  display: flex;
  border-radius: var(--border-radius);
  overflow: hidden; }
  .input-group .form-input {
    flex: 1;
    border-radius: 0;
    border-right: none; }
    .input-group .form-input:focus {
      z-index: 1;
      position: relative; }
  .input-group .btn {
    border-radius: 0;
    border-left: none; }

.help-search,
.faq-search {
  padding: 3rem 0;
  background: hsl(var(--muted)/0.3); }
  .help-search .search-box,
  .faq-search .search-box {
    max-width: 800px;
    margin: 0 auto;
    text-align: center; }
    .help-search .search-box .search-wrapper,
    .faq-search .search-box .search-wrapper {
      display: flex;
      align-items: center;
      background: hsl(var(--background));
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius-lg);
      padding: 0.5rem;
      box-shadow: var(--shadow-sm);
      margin-bottom: 1.5rem; }
      @media (max-width: 640px) {
        .help-search .search-box .search-wrapper,
        .faq-search .search-box .search-wrapper {
          gap: 0.75rem;
          padding: 1rem; } }
      .help-search .search-box .search-wrapper i,
      .faq-search .search-box .search-wrapper i {
        color: hsl(var(--muted-foreground));
        font-size: 1.25rem;
        margin: 0 1rem; }
        @media (max-width: 640px) {
          .help-search .search-box .search-wrapper i,
          .faq-search .search-box .search-wrapper i {
            margin: 0; } }
      .help-search .search-box .search-wrapper .search-input,
      .faq-search .search-box .search-wrapper .search-input {
        flex: 1;
        border: none;
        outline: none;
        background: transparent;
        color: hsl(var(--foreground));
        font-size: 1rem;
        padding: 0.75rem 0; }
        @media (max-width: 640px) {
          .help-search .search-box .search-wrapper .search-input,
          .faq-search .search-box .search-wrapper .search-input {
            width: 100%; } }
        .help-search .search-box .search-wrapper .search-input::placeholder,
        .faq-search .search-box .search-wrapper .search-input::placeholder {
          color: hsl(var(--muted-foreground)); }
      .help-search .search-box .search-wrapper .search-btn,
      .faq-search .search-box .search-wrapper .search-btn {
        margin-left: 0.5rem; }
        @media (max-width: 640px) {
          .help-search .search-box .search-wrapper .search-btn,
          .faq-search .search-box .search-wrapper .search-btn {
            margin-left: 0;
            width: 100%; } }
    .help-search .search-box .popular-searches,
    .faq-search .search-box .popular-searches {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 1rem;
      flex-wrap: wrap; }
      @media (max-width: 640px) {
        .help-search .search-box .popular-searches,
        .faq-search .search-box .popular-searches {
          flex-direction: column;
          gap: 0.75rem; } }
      .help-search .search-box .popular-searches .popular-label,
      .faq-search .search-box .popular-searches .popular-label {
        color: hsl(var(--muted-foreground));
        font-size: 0.875rem;
        font-weight: 500; }
      .help-search .search-box .popular-searches .search-tag,
      .faq-search .search-box .popular-searches .search-tag {
        padding: 0.25rem 0.75rem;
        background: hsl(var(--background));
        border: 1px solid hsl(var(--border));
        border-radius: var(--border-radius);
        color: hsl(var(--foreground));
        text-decoration: none;
        font-size: 0.875rem;
        transition: var(--transition); }
        .help-search .search-box .popular-searches .search-tag:hover,
        .faq-search .search-box .popular-searches .search-tag:hover {
          background: hsl(var(--accent));
          border-color: hsl(var(--primary)); }

.quick-help {
  padding: 4rem 0;
  background: hsl(var(--background)); }
  .quick-help .quick-help-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 2rem;
    margin-top: 2rem; }
    @media (max-width: 768px) {
      .quick-help .quick-help-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem; } }
  .quick-help .help-card {
    position: relative;
    padding: 2rem;
    background: hsl(var(--card));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    transition: var(--transition); }
    .quick-help .help-card:hover {
      transform: translateY(-2px);
      box-shadow: var(--shadow-lg); }
    .quick-help .help-card .help-icon {
      width: 3rem;
      height: 3rem;
      display: flex;
      align-items: center;
      justify-content: center;
      background: hsl(var(--primary)/0.1);
      border-radius: var(--border-radius-lg);
      margin-bottom: 1.5rem; }
      .quick-help .help-card .help-icon i {
        font-size: 1.5rem;
        color: hsl(var(--primary)); }
    .quick-help .help-card h3 {
      font-size: 1.25rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 0.75rem; }
    .quick-help .help-card p {
      color: hsl(var(--muted-foreground));
      line-height: 1.6;
      margin-bottom: 1.5rem; }
    .quick-help .help-card ul {
      list-style: none;
      margin: 1.5rem 0; }
      .quick-help .help-card ul li {
        margin-bottom: 0.5rem; }
        .quick-help .help-card ul li a {
          color: hsl(var(--muted-foreground));
          text-decoration: none;
          font-size: 0.875rem;
          transition: var(--transition); }
          .quick-help .help-card ul li a:hover {
            color: hsl(var(--primary)); }
    .quick-help .help-card .help-link {
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      color: hsl(var(--primary));
      text-decoration: none;
      font-weight: 500;
      font-size: 0.875rem; }
      .quick-help .help-card .help-link:hover {
        text-decoration: underline; }

.detailed-help,
.terms-content,
.privacy-content,
.guidelines-content {
  padding: 4rem 0;
  background: hsl(var(--background)); }
  .detailed-help .help-layout,
  .detailed-help .terms-layout,
  .detailed-help .privacy-layout,
  .detailed-help .guidelines-layout,
  .terms-content .help-layout,
  .terms-content .terms-layout,
  .terms-content .privacy-layout,
  .terms-content .guidelines-layout,
  .privacy-content .help-layout,
  .privacy-content .terms-layout,
  .privacy-content .privacy-layout,
  .privacy-content .guidelines-layout,
  .guidelines-content .help-layout,
  .guidelines-content .terms-layout,
  .guidelines-content .privacy-layout,
  .guidelines-content .guidelines-layout {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 4rem; }
    @media (max-width: 1024px) {
      .detailed-help .help-layout,
      .detailed-help .terms-layout,
      .detailed-help .privacy-layout,
      .detailed-help .guidelines-layout,
      .terms-content .help-layout,
      .terms-content .terms-layout,
      .terms-content .privacy-layout,
      .terms-content .guidelines-layout,
      .privacy-content .help-layout,
      .privacy-content .terms-layout,
      .privacy-content .privacy-layout,
      .privacy-content .guidelines-layout,
      .guidelines-content .help-layout,
      .guidelines-content .terms-layout,
      .guidelines-content .privacy-layout,
      .guidelines-content .guidelines-layout {
        grid-template-columns: 1fr;
        gap: 3rem; } }
    .detailed-help .help-layout .help-content,
    .detailed-help .help-layout .terms-main,
    .detailed-help .help-layout .privacy-main,
    .detailed-help .help-layout .guidelines-main,
    .detailed-help .terms-layout .help-content,
    .detailed-help .terms-layout .terms-main,
    .detailed-help .terms-layout .privacy-main,
    .detailed-help .terms-layout .guidelines-main,
    .detailed-help .privacy-layout .help-content,
    .detailed-help .privacy-layout .terms-main,
    .detailed-help .privacy-layout .privacy-main,
    .detailed-help .privacy-layout .guidelines-main,
    .detailed-help .guidelines-layout .help-content,
    .detailed-help .guidelines-layout .terms-main,
    .detailed-help .guidelines-layout .privacy-main,
    .detailed-help .guidelines-layout .guidelines-main,
    .terms-content .help-layout .help-content,
    .terms-content .help-layout .terms-main,
    .terms-content .help-layout .privacy-main,
    .terms-content .help-layout .guidelines-main,
    .terms-content .terms-layout .help-content,
    .terms-content .terms-layout .terms-main,
    .terms-content .terms-layout .privacy-main,
    .terms-content .terms-layout .guidelines-main,
    .terms-content .privacy-layout .help-content,
    .terms-content .privacy-layout .terms-main,
    .terms-content .privacy-layout .privacy-main,
    .terms-content .privacy-layout .guidelines-main,
    .terms-content .guidelines-layout .help-content,
    .terms-content .guidelines-layout .terms-main,
    .terms-content .guidelines-layout .privacy-main,
    .terms-content .guidelines-layout .guidelines-main,
    .privacy-content .help-layout .help-content,
    .privacy-content .help-layout .terms-main,
    .privacy-content .help-layout .privacy-main,
    .privacy-content .help-layout .guidelines-main,
    .privacy-content .terms-layout .help-content,
    .privacy-content .terms-layout .terms-main,
    .privacy-content .terms-layout .privacy-main,
    .privacy-content .terms-layout .guidelines-main,
    .privacy-content .privacy-layout .help-content,
    .privacy-content .privacy-layout .terms-main,
    .privacy-content .privacy-layout .privacy-main,
    .privacy-content .privacy-layout .guidelines-main,
    .privacy-content .guidelines-layout .help-content,
    .privacy-content .guidelines-layout .terms-main,
    .privacy-content .guidelines-layout .privacy-main,
    .privacy-content .guidelines-layout .guidelines-main,
    .guidelines-content .help-layout .help-content,
    .guidelines-content .help-layout .terms-main,
    .guidelines-content .help-layout .privacy-main,
    .guidelines-content .help-layout .guidelines-main,
    .guidelines-content .terms-layout .help-content,
    .guidelines-content .terms-layout .terms-main,
    .guidelines-content .terms-layout .privacy-main,
    .guidelines-content .terms-layout .guidelines-main,
    .guidelines-content .privacy-layout .help-content,
    .guidelines-content .privacy-layout .terms-main,
    .guidelines-content .privacy-layout .privacy-main,
    .guidelines-content .privacy-layout .guidelines-main,
    .guidelines-content .guidelines-layout .help-content,
    .guidelines-content .guidelines-layout .terms-main,
    .guidelines-content .guidelines-layout .privacy-main,
    .guidelines-content .guidelines-layout .guidelines-main {
      min-width: 0; }
    .detailed-help .help-layout .help-sidebar .sidebar-content,
    .detailed-help .help-layout .terms-sidebar .sidebar-content,
    .detailed-help .help-layout .privacy-sidebar .sidebar-content,
    .detailed-help .help-layout .guidelines-sidebar .sidebar-content,
    .detailed-help .terms-layout .help-sidebar .sidebar-content,
    .detailed-help .terms-layout .terms-sidebar .sidebar-content,
    .detailed-help .terms-layout .privacy-sidebar .sidebar-content,
    .detailed-help .terms-layout .guidelines-sidebar .sidebar-content,
    .detailed-help .privacy-layout .help-sidebar .sidebar-content,
    .detailed-help .privacy-layout .terms-sidebar .sidebar-content,
    .detailed-help .privacy-layout .privacy-sidebar .sidebar-content,
    .detailed-help .privacy-layout .guidelines-sidebar .sidebar-content,
    .detailed-help .guidelines-layout .help-sidebar .sidebar-content,
    .detailed-help .guidelines-layout .terms-sidebar .sidebar-content,
    .detailed-help .guidelines-layout .privacy-sidebar .sidebar-content,
    .detailed-help .guidelines-layout .guidelines-sidebar .sidebar-content,
    .terms-content .help-layout .help-sidebar .sidebar-content,
    .terms-content .help-layout .terms-sidebar .sidebar-content,
    .terms-content .help-layout .privacy-sidebar .sidebar-content,
    .terms-content .help-layout .guidelines-sidebar .sidebar-content,
    .terms-content .terms-layout .help-sidebar .sidebar-content,
    .terms-content .terms-layout .terms-sidebar .sidebar-content,
    .terms-content .terms-layout .privacy-sidebar .sidebar-content,
    .terms-content .terms-layout .guidelines-sidebar .sidebar-content,
    .terms-content .privacy-layout .help-sidebar .sidebar-content,
    .terms-content .privacy-layout .terms-sidebar .sidebar-content,
    .terms-content .privacy-layout .privacy-sidebar .sidebar-content,
    .terms-content .privacy-layout .guidelines-sidebar .sidebar-content,
    .terms-content .guidelines-layout .help-sidebar .sidebar-content,
    .terms-content .guidelines-layout .terms-sidebar .sidebar-content,
    .terms-content .guidelines-layout .privacy-sidebar .sidebar-content,
    .terms-content .guidelines-layout .guidelines-sidebar .sidebar-content,
    .privacy-content .help-layout .help-sidebar .sidebar-content,
    .privacy-content .help-layout .terms-sidebar .sidebar-content,
    .privacy-content .help-layout .privacy-sidebar .sidebar-content,
    .privacy-content .help-layout .guidelines-sidebar .sidebar-content,
    .privacy-content .terms-layout .help-sidebar .sidebar-content,
    .privacy-content .terms-layout .terms-sidebar .sidebar-content,
    .privacy-content .terms-layout .privacy-sidebar .sidebar-content,
    .privacy-content .terms-layout .guidelines-sidebar .sidebar-content,
    .privacy-content .privacy-layout .help-sidebar .sidebar-content,
    .privacy-content .privacy-layout .terms-sidebar .sidebar-content,
    .privacy-content .privacy-layout .privacy-sidebar .sidebar-content,
    .privacy-content .privacy-layout .guidelines-sidebar .sidebar-content,
    .privacy-content .guidelines-layout .help-sidebar .sidebar-content,
    .privacy-content .guidelines-layout .terms-sidebar .sidebar-content,
    .privacy-content .guidelines-layout .privacy-sidebar .sidebar-content,
    .privacy-content .guidelines-layout .guidelines-sidebar .sidebar-content,
    .guidelines-content .help-layout .help-sidebar .sidebar-content,
    .guidelines-content .help-layout .terms-sidebar .sidebar-content,
    .guidelines-content .help-layout .privacy-sidebar .sidebar-content,
    .guidelines-content .help-layout .guidelines-sidebar .sidebar-content,
    .guidelines-content .terms-layout .help-sidebar .sidebar-content,
    .guidelines-content .terms-layout .terms-sidebar .sidebar-content,
    .guidelines-content .terms-layout .privacy-sidebar .sidebar-content,
    .guidelines-content .terms-layout .guidelines-sidebar .sidebar-content,
    .guidelines-content .privacy-layout .help-sidebar .sidebar-content,
    .guidelines-content .privacy-layout .terms-sidebar .sidebar-content,
    .guidelines-content .privacy-layout .privacy-sidebar .sidebar-content,
    .guidelines-content .privacy-layout .guidelines-sidebar .sidebar-content,
    .guidelines-content .guidelines-layout .help-sidebar .sidebar-content,
    .guidelines-content .guidelines-layout .terms-sidebar .sidebar-content,
    .guidelines-content .guidelines-layout .privacy-sidebar .sidebar-content,
    .guidelines-content .guidelines-layout .guidelines-sidebar .sidebar-content {
      position: sticky;
      top: 2rem; }
      @media (max-width: 1024px) {
        .detailed-help .help-layout .help-sidebar .sidebar-content,
        .detailed-help .help-layout .terms-sidebar .sidebar-content,
        .detailed-help .help-layout .privacy-sidebar .sidebar-content,
        .detailed-help .help-layout .guidelines-sidebar .sidebar-content,
        .detailed-help .terms-layout .help-sidebar .sidebar-content,
        .detailed-help .terms-layout .terms-sidebar .sidebar-content,
        .detailed-help .terms-layout .privacy-sidebar .sidebar-content,
        .detailed-help .terms-layout .guidelines-sidebar .sidebar-content,
        .detailed-help .privacy-layout .help-sidebar .sidebar-content,
        .detailed-help .privacy-layout .terms-sidebar .sidebar-content,
        .detailed-help .privacy-layout .privacy-sidebar .sidebar-content,
        .detailed-help .privacy-layout .guidelines-sidebar .sidebar-content,
        .detailed-help .guidelines-layout .help-sidebar .sidebar-content,
        .detailed-help .guidelines-layout .terms-sidebar .sidebar-content,
        .detailed-help .guidelines-layout .privacy-sidebar .sidebar-content,
        .detailed-help .guidelines-layout .guidelines-sidebar .sidebar-content,
        .terms-content .help-layout .help-sidebar .sidebar-content,
        .terms-content .help-layout .terms-sidebar .sidebar-content,
        .terms-content .help-layout .privacy-sidebar .sidebar-content,
        .terms-content .help-layout .guidelines-sidebar .sidebar-content,
        .terms-content .terms-layout .help-sidebar .sidebar-content,
        .terms-content .terms-layout .terms-sidebar .sidebar-content,
        .terms-content .terms-layout .privacy-sidebar .sidebar-content,
        .terms-content .terms-layout .guidelines-sidebar .sidebar-content,
        .terms-content .privacy-layout .help-sidebar .sidebar-content,
        .terms-content .privacy-layout .terms-sidebar .sidebar-content,
        .terms-content .privacy-layout .privacy-sidebar .sidebar-content,
        .terms-content .privacy-layout .guidelines-sidebar .sidebar-content,
        .terms-content .guidelines-layout .help-sidebar .sidebar-content,
        .terms-content .guidelines-layout .terms-sidebar .sidebar-content,
        .terms-content .guidelines-layout .privacy-sidebar .sidebar-content,
        .terms-content .guidelines-layout .guidelines-sidebar .sidebar-content,
        .privacy-content .help-layout .help-sidebar .sidebar-content,
        .privacy-content .help-layout .terms-sidebar .sidebar-content,
        .privacy-content .help-layout .privacy-sidebar .sidebar-content,
        .privacy-content .help-layout .guidelines-sidebar .sidebar-content,
        .privacy-content .terms-layout .help-sidebar .sidebar-content,
        .privacy-content .terms-layout .terms-sidebar .sidebar-content,
        .privacy-content .terms-layout .privacy-sidebar .sidebar-content,
        .privacy-content .terms-layout .guidelines-sidebar .sidebar-content,
        .privacy-content .privacy-layout .help-sidebar .sidebar-content,
        .privacy-content .privacy-layout .terms-sidebar .sidebar-content,
        .privacy-content .privacy-layout .privacy-sidebar .sidebar-content,
        .privacy-content .privacy-layout .guidelines-sidebar .sidebar-content,
        .privacy-content .guidelines-layout .help-sidebar .sidebar-content,
        .privacy-content .guidelines-layout .terms-sidebar .sidebar-content,
        .privacy-content .guidelines-layout .privacy-sidebar .sidebar-content,
        .privacy-content .guidelines-layout .guidelines-sidebar .sidebar-content,
        .guidelines-content .help-layout .help-sidebar .sidebar-content,
        .guidelines-content .help-layout .terms-sidebar .sidebar-content,
        .guidelines-content .help-layout .privacy-sidebar .sidebar-content,
        .guidelines-content .help-layout .guidelines-sidebar .sidebar-content,
        .guidelines-content .terms-layout .help-sidebar .sidebar-content,
        .guidelines-content .terms-layout .terms-sidebar .sidebar-content,
        .guidelines-content .terms-layout .privacy-sidebar .sidebar-content,
        .guidelines-content .terms-layout .guidelines-sidebar .sidebar-content,
        .guidelines-content .privacy-layout .help-sidebar .sidebar-content,
        .guidelines-content .privacy-layout .terms-sidebar .sidebar-content,
        .guidelines-content .privacy-layout .privacy-sidebar .sidebar-content,
        .guidelines-content .privacy-layout .guidelines-sidebar .sidebar-content,
        .guidelines-content .guidelines-layout .help-sidebar .sidebar-content,
        .guidelines-content .guidelines-layout .terms-sidebar .sidebar-content,
        .guidelines-content .guidelines-layout .privacy-sidebar .sidebar-content,
        .guidelines-content .guidelines-layout .guidelines-sidebar .sidebar-content {
          position: static; } }

.help-section,
.terms-article,
.privacy-section,
.guideline-section {
  margin-bottom: 4rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid hsl(var(--border)); }
  .help-section:last-child,
  .terms-article:last-child,
  .privacy-section:last-child,
  .guideline-section:last-child {
    margin-bottom: 0;
    border-bottom: none; }
  .help-section .section-title,
  .terms-article .section-title,
  .privacy-section .section-title,
  .guideline-section .section-title {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 1.5rem;
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 2rem; }
    .help-section .section-title i,
    .terms-article .section-title i,
    .privacy-section .section-title i,
    .guideline-section .section-title i {
      color: hsl(var(--primary)); }
  .help-section .article-title,
  .terms-article .article-title,
  .privacy-section .article-title,
  .guideline-section .article-title {
    font-size: 1.25rem;
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 1.5rem; }

.help-article,
.article-content,
.section-content {
  margin-bottom: 2rem; }
  .help-article:last-child,
  .article-content:last-child,
  .section-content:last-child {
    margin-bottom: 0; }
  .help-article h3,
  .article-content h3,
  .section-content h3 {
    font-size: 1.125rem;
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 1rem; }
  .help-article h4,
  .article-content h4,
  .section-content h4 {
    font-size: 1rem;
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 0.75rem; }
  .help-article p,
  .article-content p,
  .section-content p {
    color: hsl(var(--muted-foreground));
    line-height: 1.7;
    margin-bottom: 1rem; }
  .help-article ul, .help-article ol,
  .article-content ul,
  .article-content ol,
  .section-content ul,
  .section-content ol {
    color: hsl(var(--muted-foreground));
    line-height: 1.7;
    margin: 1rem 0;
    padding-left: 0;
    list-style: none;
    counter-reset: item; }
    .help-article ul li, .help-article ol li,
    .article-content ul li,
    .article-content ol li,
    .section-content ul li,
    .section-content ol li {
      margin-bottom: 1rem;
      padding-left: 2rem;
      position: relative; }
      .help-article ul li::before, .help-article ol li::before,
      .article-content ul li::before,
      .article-content ol li::before,
      .section-content ul li::before,
      .section-content ol li::before {
        content: counter(item);
        counter-increment: item;
        position: absolute;
        left: 0;
        top: 0;
        width: 1.5rem;
        height: 1.5rem;
        background: hsl(var(--primary));
        color: hsl(var(--primary-foreground));
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0.75rem;
        font-weight: 600;
        flex-shrink: 0; }
  .help-article ul li::before,
  .article-content ul li::before,
  .section-content ul li::before {
    content: "";
    width: 0.375rem;
    height: 0.375rem;
    background: hsl(var(--primary));
    border-radius: 50%;
    top: 0.5rem; }
  .help-article strong,
  .article-content strong,
  .section-content strong {
    color: hsl(var(--foreground));
    font-weight: 600; }

.step-guide {
  margin: 2rem 0; }
  .step-guide .step-item {
    display: flex;
    gap: 1rem;
    margin-bottom: 2rem; }
    .step-guide .step-item:last-child {
      margin-bottom: 0; }
    .step-guide .step-item .step-number {
      flex-shrink: 0;
      width: 2rem;
      height: 2rem;
      display: flex;
      align-items: center;
      justify-content: center;
      background: hsl(var(--primary));
      color: hsl(var(--primary-foreground));
      border-radius: 50%;
      font-weight: 600;
      font-size: 0.875rem; }
    .step-guide .step-item .step-content {
      flex: 1; }
      .step-guide .step-item .step-content h4 {
        margin-bottom: 0.5rem; }

.feature-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1.5rem;
  margin: 2rem 0; }
  .feature-list .feature-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.5rem;
    background: hsl(var(--card));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg); }
    .feature-list .feature-item i {
      color: hsl(var(--primary));
      font-size: 1.25rem;
      margin-top: 0.25rem;
      flex-shrink: 0; }
    .feature-list .feature-item h4 {
      margin-bottom: 0.5rem; }

.note-box,
.warning-box,
.important-box,
.tip-box {
  display: flex;
  gap: 1rem;
  padding: 1rem 1.5rem;
  border-radius: var(--border-radius);
  margin: 1.5rem 0; }
  .note-box i,
  .warning-box i,
  .important-box i,
  .tip-box i {
    flex-shrink: 0;
    font-size: 1.25rem;
    margin-top: 0.125rem; }
  .note-box p,
  .warning-box p,
  .important-box p,
  .tip-box p {
    margin: 0; }

.note-box {
  background: hsl(var(--primary)/0.1);
  border: 1px solid hsl(var(--primary)/0.2); }
  .note-box i {
    color: hsl(var(--primary)); }

.warning-box {
  background: hsl(var(--warning-color)/0.1);
  border: 1px solid hsl(var(--warning-color)/0.2); }
  .warning-box i {
    color: hsl(var(--warning-color)); }

.important-box {
  background: hsl(var(--destructive)/0.1);
  border: 1px solid hsl(var(--destructive)/0.2); }
  .important-box i {
    color: hsl(var(--destructive)); }

.tip-box {
  background: hsl(var(--success-color)/0.1);
  border: 1px solid hsl(var(--success-color)/0.2); }
  .tip-box i {
    color: hsl(var(--success-color)); }

.sidebar-section {
  padding: 1.5rem;
  background: hsl(var(--card));
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius-lg);
  margin-bottom: 1.5rem; }
  .sidebar-section:last-child {
    margin-bottom: 0; }
  .sidebar-section h3 {
    font-size: 1.125rem;
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 1rem; }
  .sidebar-section p {
    color: hsl(var(--muted-foreground));
    line-height: 1.6;
    margin-bottom: 1rem; }

.quick-links,
.help-links {
  display: flex;
  flex-direction: column; }
  .quick-links .quick-link,
  .quick-links .help-link,
  .help-links .quick-link,
  .help-links .help-link {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem;
    background: hsl(var(--muted)/0.3);
    border-radius: var(--border-radius);
    text-decoration: none;
    color: hsl(var(--foreground));
    transition: var(--transition); }
    .quick-links .quick-link:hover,
    .quick-links .help-link:hover,
    .help-links .quick-link:hover,
    .help-links .help-link:hover {
      background: hsl(var(--accent)); }
    .quick-links .quick-link i,
    .quick-links .help-link i,
    .help-links .quick-link i,
    .help-links .help-link i {
      color: hsl(var(--muted-foreground));
      font-size: 1rem; }
    .quick-links .quick-link span,
    .quick-links .help-link span,
    .help-links .quick-link span,
    .help-links .help-link span {
      font-size: 0.875rem; }

.terms-toc,
.privacy-toc,
.guidelines-toc {
  padding: 3rem 0;
  background: hsl(var(--muted)/0.3); }
  .terms-toc .toc-card,
  .privacy-toc .toc-card,
  .guidelines-toc .toc-card {
    max-width: 800px;
    margin: 0 auto;
    padding: 2rem;
    background: hsl(var(--card));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg); }
    .terms-toc .toc-card h2,
    .privacy-toc .toc-card h2,
    .guidelines-toc .toc-card h2 {
      font-size: 1.5rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 1.5rem;
      text-align: center; }
  .terms-toc .toc-list,
  .privacy-toc .toc-list,
  .guidelines-toc .toc-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1rem; }
    @media (max-width: 768px) {
      .terms-toc .toc-list,
      .privacy-toc .toc-list,
      .guidelines-toc .toc-list {
        grid-template-columns: 1fr; } }
  .terms-toc .toc-item,
  .privacy-toc .toc-item,
  .guidelines-toc .toc-item {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.5rem;
    background: hsl(var(--background));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius);
    text-decoration: none;
    color: hsl(var(--foreground));
    transition: var(--transition); }
    .terms-toc .toc-item:hover, .terms-toc .toc-item.active,
    .privacy-toc .toc-item:hover,
    .privacy-toc .toc-item.active,
    .guidelines-toc .toc-item:hover,
    .guidelines-toc .toc-item.active {
      background: hsl(var(--accent));
      border-color: hsl(var(--primary)); }
    .terms-toc .toc-item .toc-number,
    .privacy-toc .toc-item .toc-number,
    .guidelines-toc .toc-item .toc-number {
      flex-shrink: 0;
      min-width: 2.5rem;
      width: auto;
      height: 2rem;
      padding: 0 0.5rem;
      display: flex;
      align-items: center;
      justify-content: center;
      background: hsl(var(--muted));
      color: hsl(var(--muted-foreground));
      border-radius: 1rem;
      font-weight: 600;
      font-size: 0.75rem;
      white-space: nowrap; }
    .terms-toc .toc-item .toc-title,
    .privacy-toc .toc-item .toc-title,
    .guidelines-toc .toc-item .toc-title {
      font-size: 0.875rem;
      font-weight: 500; }
    .terms-toc .toc-item i,
    .privacy-toc .toc-item i,
    .guidelines-toc .toc-item i {
      color: hsl(var(--primary));
      font-size: 1.25rem; }
    .terms-toc .toc-item:hover .toc-number, .terms-toc .toc-item.active .toc-number,
    .privacy-toc .toc-item:hover .toc-number,
    .privacy-toc .toc-item.active .toc-number,
    .guidelines-toc .toc-item:hover .toc-number,
    .guidelines-toc .toc-item.active .toc-number {
      background: hsl(var(--primary));
      color: hsl(var(--primary-foreground)); }

.terms-info,
.privacy-info,
.guidelines-info {
  display: flex;
  gap: 2rem;
  margin-top: 1.5rem;
  flex-wrap: wrap; }
  @media (max-width: 640px) {
    .terms-info,
    .privacy-info,
    .guidelines-info {
      flex-direction: column;
      gap: 0.75rem; } }
  .terms-info .info-item .info-label,
  .privacy-info .info-item .info-label,
  .guidelines-info .info-item .info-label {
    color: hsl(var(--muted-foreground));
    font-size: 0.875rem;
    margin-right: 0.5rem; }
  .terms-info .info-item .info-value,
  .privacy-info .info-item .info-value,
  .guidelines-info .info-item .info-value {
    font-weight: 500;
    font-size: 0.875rem; }

.faq-categories {
  padding: 4rem 0;
  background: hsl(var(--background)); }
  .faq-categories .category-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 2rem;
    margin-top: 2rem; }
    @media (max-width: 768px) {
      .faq-categories .category-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem; } }
  .faq-categories .category-card {
    padding: 2rem;
    background: hsl(var(--card));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    text-align: center;
    cursor: pointer;
    transition: var(--transition); }
    .faq-categories .category-card:hover {
      transform: translateY(-2px);
      box-shadow: var(--shadow-lg);
      border-color: hsl(var(--primary)); }
    .faq-categories .category-card .category-icon {
      width: 4rem;
      height: 4rem;
      display: flex;
      align-items: center;
      justify-content: center;
      background: hsl(var(--primary)/0.1);
      border-radius: var(--border-radius-lg);
      margin: 0 auto 1.5rem; }
      .faq-categories .category-card .category-icon i {
        font-size: 1.5rem;
        color: hsl(var(--primary)); }
    .faq-categories .category-card h3 {
      font-size: 1.125rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 0.75rem; }
    .faq-categories .category-card p {
      color: hsl(var(--muted-foreground));
      line-height: 1.6;
      margin-bottom: 1rem; }
    .faq-categories .category-card .category-count {
      font-size: 0.875rem;
      color: hsl(var(--primary));
      font-weight: 500; }

.faq-list {
  padding: 4rem 0;
  background: hsl(var(--background)); }
  .faq-list .faq-filters {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 2rem;
    flex-wrap: wrap; }
    .faq-list .faq-filters .filter-tab {
      padding: 0.5rem 1rem;
      background: transparent;
      border: 1px solid hsl(var(--border));
      border-radius: var(--border-radius);
      color: hsl(var(--foreground));
      cursor: pointer;
      transition: var(--transition);
      font-size: 0.875rem; }
      .faq-list .faq-filters .filter-tab:hover {
        background: hsl(var(--accent)); }
      .faq-list .faq-filters .filter-tab.active {
        background: hsl(var(--primary));
        color: hsl(var(--primary-foreground));
        border-color: hsl(var(--primary)); }
  .faq-list .faq-items .faq-item {
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    margin-bottom: 1rem;
    overflow: hidden;
    transition: var(--transition); }
    .faq-list .faq-items .faq-item.active {
      border-color: hsl(var(--primary)); }
    .faq-list .faq-items .faq-item .faq-question {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 1.5rem;
      cursor: pointer;
      background: hsl(var(--card));
      user-select: none; }
      .faq-list .faq-items .faq-item .faq-question:hover {
        background: hsl(var(--accent)/0.5); }
      .faq-list .faq-items .faq-item .faq-question h3 {
        font-size: 1rem;
        font-weight: 600;
        color: hsl(var(--foreground));
        margin: 0; }
      .faq-list .faq-items .faq-item .faq-question .faq-toggle {
        background: none;
        border: none;
        cursor: pointer;
        padding: 0.5rem;
        border-radius: var(--border-radius);
        transition: var(--transition); }
        .faq-list .faq-items .faq-item .faq-question .faq-toggle:hover {
          background: hsl(var(--muted)); }
        .faq-list .faq-items .faq-item .faq-question .faq-toggle i {
          font-size: 1.25rem;
          color: hsl(var(--muted-foreground)); }
    .faq-list .faq-items .faq-item .faq-answer {
      padding: 0 1.5rem;
      background: hsl(var(--background));
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.3s ease, padding 0.3s ease; }
      .faq-list .faq-items .faq-item .faq-answer.active {
        padding: 1.5rem; }
      .faq-list .faq-items .faq-item .faq-answer p {
        color: hsl(var(--muted-foreground));
        line-height: 1.7;
        margin-bottom: 1rem; }
        .faq-list .faq-items .faq-item .faq-answer p:last-child {
          margin-bottom: 0; }
      .faq-list .faq-items .faq-item .faq-answer ul, .faq-list .faq-items .faq-item .faq-answer ol {
        color: hsl(var(--muted-foreground));
        line-height: 1.7;
        margin: 1rem 0;
        padding-left: 1.5rem; }

.notices-list {
  padding: 4rem 0;
  background: hsl(var(--background)); }
  .notices-list .notices-layout {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 4rem; }
    @media (max-width: 1024px) {
      .notices-list .notices-layout {
        grid-template-columns: 1fr;
        gap: 3rem; } }
    .notices-list .notices-layout .notices-main {
      min-width: 0; }
    .notices-list .notices-layout .notices-sidebar .sidebar-content {
      position: sticky;
      top: 2rem; }
      @media (max-width: 1024px) {
        .notices-list .notices-layout .notices-sidebar .sidebar-content {
          position: static; } }
  .notices-list .notices-filters {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
    gap: 2rem; }
    @media (max-width: 768px) {
      .notices-list .notices-filters {
        flex-direction: column;
        align-items: stretch;
        gap: 1rem; } }
    .notices-list .notices-filters .filter-tabs {
      display: flex;
      gap: 0.5rem;
      flex-wrap: wrap; }
      .notices-list .notices-filters .filter-tabs .filter-tab {
        padding: 0.5rem 1rem;
        background: transparent;
        border: 1px solid hsl(var(--border));
        border-radius: var(--border-radius);
        color: hsl(var(--foreground));
        cursor: pointer;
        transition: var(--transition);
        font-size: 0.875rem;
        white-space: nowrap; }
        .notices-list .notices-filters .filter-tabs .filter-tab:hover {
          background: hsl(var(--accent)); }
        .notices-list .notices-filters .filter-tabs .filter-tab.active {
          background: hsl(var(--primary));
          color: hsl(var(--primary-foreground));
          border-color: hsl(var(--primary)); }
        .notices-list .notices-filters .filter-tabs .filter-tab .count {
          margin-left: 0.5rem;
          opacity: 0.8; }
  .notices-list .notice-item {
    padding: 2rem;
    background: hsl(var(--card));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    margin-bottom: 2rem;
    transition: var(--transition); }
    .notices-list .notice-item:hover {
      border-color: hsl(var(--primary)/0.3); }
    .notices-list .notice-item .notice-header {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      margin-bottom: 1rem; }
      @media (max-width: 640px) {
        .notices-list .notice-item .notice-header {
          flex-direction: column;
          gap: 0.5rem; } }
      .notices-list .notice-item .notice-header .notice-type {
        display: flex;
        align-items: center;
        gap: 0.75rem; }
        .notices-list .notice-item .notice-header .notice-type .type-badge {
          padding: 0.25rem 0.75rem;
          border-radius: var(--border-radius);
          font-size: 0.75rem;
          font-weight: 600; }
          .notices-list .notice-item .notice-header .notice-type .type-badge.service {
            background: hsl(var(--primary)/0.1);
            color: hsl(var(--primary)); }
          .notices-list .notice-item .notice-header .notice-type .type-badge.update {
            background: hsl(var(--success-color)/0.1);
            color: hsl(var(--success-color)); }
          .notices-list .notice-item .notice-header .notice-type .type-badge.event {
            background: hsl(var(--warning-color)/0.1);
            color: hsl(var(--warning-color)); }
        .notices-list .notice-item .notice-header .notice-type .notice-title {
          font-size: 1.25rem;
          font-weight: 600;
          color: hsl(var(--foreground));
          margin: 0; }
      .notices-list .notice-item .notice-header .notice-date {
        color: hsl(var(--muted-foreground));
        font-size: 0.875rem;
        white-space: nowrap; }
    .notices-list .notice-item .notice-preview {
      margin-bottom: 1.5rem; }
      .notices-list .notice-item .notice-preview p {
        color: hsl(var(--muted-foreground));
        line-height: 1.7; }
    .notices-list .notice-item .notice-footer {
      display: flex;
      justify-content: space-between;
      align-items: center; }
      @media (max-width: 640px) {
        .notices-list .notice-item .notice-footer {
          flex-direction: column;
          gap: 1rem;
          align-items: stretch; } }
      .notices-list .notice-item .notice-footer .notice-stats {
        display: flex;
        gap: 1rem; }
        .notices-list .notice-item .notice-footer .notice-stats .stat-item {
          display: flex;
          align-items: center;
          gap: 0.25rem;
          color: hsl(var(--muted-foreground));
          font-size: 0.875rem; }
          .notices-list .notice-item .notice-footer .notice-stats .stat-item i {
            font-size: 0.875rem; }

.important-notices {
  padding: 4rem 0;
  background: hsl(var(--muted)/0.3); }
  .important-notices .important-notices-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 2rem;
    margin-top: 2rem; }
    @media (max-width: 768px) {
      .important-notices .important-notices-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem; } }
  .important-notices .notice-card {
    position: relative;
    padding: 2rem;
    background: hsl(var(--card));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    cursor: pointer;
    transition: var(--transition); }
    .important-notices .notice-card:hover {
      transform: translateY(-2px);
      box-shadow: var(--shadow-lg); }
    .important-notices .notice-card.important {
      border-color: hsl(var(--warning-color)); }
    .important-notices .notice-card.urgent {
      border-color: hsl(var(--destructive)); }
    .important-notices .notice-card .notice-badge {
      position: absolute;
      top: 1rem;
      right: 1rem;
      padding: 0.25rem 0.75rem;
      border-radius: var(--border-radius);
      font-size: 0.75rem;
      font-weight: 600; }
      .important-notices .notice-card .notice-badge.important {
        background: hsl(var(--warning-color)/0.1);
        color: hsl(var(--warning-color)); }
      .important-notices .notice-card .notice-badge.urgent {
        background: hsl(var(--destructive)/0.1);
        color: hsl(var(--destructive)); }
    .important-notices .notice-card .notice-content h3 {
      font-size: 1.125rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 0.75rem;
      padding-right: 2rem; }
    .important-notices .notice-card .notice-content p {
      color: hsl(var(--muted-foreground));
      line-height: 1.6;
      margin-bottom: 1rem; }
    .important-notices .notice-card .notice-content .notice-meta {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: 0.875rem;
      color: hsl(var(--muted-foreground)); }
      .important-notices .notice-card .notice-content .notice-meta .notice-views {
        display: flex;
        align-items: center;
        gap: 0.25rem; }
        .important-notices .notice-card .notice-content .notice-meta .notice-views i {
          font-size: 0.875rem; }

.guide-content {
  padding: 4rem 0;
  background: hsl(var(--background)); }
  .guide-content .content-layout {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 4rem; }
    @media (max-width: 1024px) {
      .guide-content .content-layout {
        grid-template-columns: 1fr;
        gap: 3rem; } }
    .guide-content .content-layout .guide-main {
      min-width: 0; }
  .guide-content .guide-section {
    margin-bottom: 4rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid hsl(var(--border)); }
    .guide-content .guide-section:last-child {
      margin-bottom: 0;
      border-bottom: none; }
  .guide-content .content-card {
    padding: 2rem;
    background: hsl(var(--card));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    margin-bottom: 2rem; }
    .guide-content .content-card h3 {
      font-size: 1.125rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 1rem; }
    .guide-content .content-card p {
      color: hsl(var(--muted-foreground));
      line-height: 1.7;
      margin-bottom: 1.5rem; }
  .guide-content .step-list .step-item {
    display: flex;
    gap: 1rem;
    margin-bottom: 2rem;
    align-items: flex-start; }
    .guide-content .step-list .step-item:last-child {
      margin-bottom: 0; }
    .guide-content .step-list .step-item .step-number {
      flex-shrink: 0;
      width: 2rem;
      height: 2rem;
      display: flex;
      align-items: center;
      justify-content: center;
      background: hsl(var(--primary));
      color: hsl(var(--primary-foreground));
      border-radius: 50%;
      font-weight: 600;
      font-size: 0.875rem; }
    .guide-content .step-list .step-item .step-content {
      flex: 1; }
      .guide-content .step-list .step-item .step-content h4 {
        font-size: 1rem;
        font-weight: 600;
        color: hsl(var(--foreground));
        margin-bottom: 0.5rem; }
      .guide-content .step-list .step-item .step-content p {
        color: hsl(var(--muted-foreground));
        line-height: 1.6;
        margin: 0; }

.guidelines-content {
  padding: 4rem 0;
  background: hsl(var(--background)); }

.community-principles {
  padding: 4rem 0;
  background: hsl(var(--muted)/0.3); }
  .community-principles .principles-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    margin-top: 2rem; }
    @media (max-width: 768px) {
      .community-principles .principles-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem; } }
  .community-principles .principle-card {
    padding: 2rem;
    background: hsl(var(--card));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    text-align: center;
    transition: var(--transition); }
    .community-principles .principle-card:hover {
      transform: translateY(-2px);
      box-shadow: var(--shadow-lg); }
    .community-principles .principle-card .principle-icon {
      width: 4rem;
      height: 4rem;
      display: flex;
      align-items: center;
      justify-content: center;
      background: hsl(var(--primary)/0.1);
      border-radius: var(--border-radius-lg);
      margin: 0 auto 1.5rem; }
      .community-principles .principle-card .principle-icon i {
        font-size: 1.5rem;
        color: hsl(var(--primary)); }
    .community-principles .principle-card h3 {
      font-size: 1.125rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 0.75rem; }
    .community-principles .principle-card p {
      color: hsl(var(--muted-foreground));
      line-height: 1.6; }

.good-practices,
.bad-practices {
  margin: 2rem 0; }
  .good-practices h3,
  .bad-practices h3 {
    font-size: 1.125rem;
    font-weight: 600;
    color: hsl(var(--foreground));
    margin-bottom: 1.5rem; }
  .good-practices .practice-grid,
  .bad-practices .practice-grid {
    display: grid;
    gap: 1.5rem; }
    @media (min-width: 768px) {
      .good-practices .practice-grid,
      .bad-practices .practice-grid {
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); } }
  .good-practices .practice-item,
  .bad-practices .practice-item {
    display: flex;
    gap: 1rem;
    padding: 1.5rem;
    border-radius: var(--border-radius-lg);
    border: 1px solid; }
    .good-practices .practice-item.good,
    .bad-practices .practice-item.good {
      background: hsl(var(--success-color)/0.05);
      border-color: hsl(var(--success-color)/0.2); }
      .good-practices .practice-item.good i,
      .bad-practices .practice-item.good i {
        color: hsl(var(--success-color));
        font-size: 1.25rem;
        margin-top: 0.125rem;
        flex-shrink: 0; }
    .good-practices .practice-item.bad,
    .bad-practices .practice-item.bad {
      background: hsl(var(--destructive)/0.05);
      border-color: hsl(var(--destructive)/0.2); }
      .good-practices .practice-item.bad i,
      .bad-practices .practice-item.bad i {
        color: hsl(var(--destructive));
        font-size: 1.25rem;
        margin-top: 0.125rem;
        flex-shrink: 0; }
    .good-practices .practice-item div,
    .bad-practices .practice-item div {
      flex: 1; }
      .good-practices .practice-item div h4,
      .bad-practices .practice-item div h4 {
        font-size: 1rem;
        font-weight: 600;
        color: hsl(var(--foreground));
        margin-bottom: 0.5rem; }
      .good-practices .practice-item div p,
      .bad-practices .practice-item div p {
        color: hsl(var(--muted-foreground));
        line-height: 1.6;
        margin-bottom: 0.75rem; }
        .good-practices .practice-item div p:last-child,
        .bad-practices .practice-item div p:last-child {
          margin-bottom: 0; }
      .good-practices .practice-item div .example,
      .bad-practices .practice-item div .example {
        font-size: 0.875rem;
        padding: 0.75rem;
        background: hsl(var(--muted)/0.3);
        border-radius: var(--border-radius);
        margin-top: 0.75rem; }
        .good-practices .practice-item div .example strong,
        .bad-practices .practice-item div .example strong {
          color: hsl(var(--foreground));
          font-weight: 600; }

.penalties-grid {
  display: grid;
  gap: 1.5rem;
  margin: 2rem 0; }
  @media (min-width: 768px) {
    .penalties-grid {
      grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); } }
  .penalties-grid .penalty-item {
    padding: 1.5rem;
    background: hsl(var(--card));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg); }
    .penalties-grid .penalty-item .penalty-level {
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      padding: 0.25rem 0.75rem;
      border-radius: var(--border-radius);
      font-size: 0.75rem;
      font-weight: 600;
      margin-bottom: 1rem; }
      .penalties-grid .penalty-item .penalty-level.warning {
        background: hsl(var(--warning-color)/0.1);
        color: hsl(var(--warning-color)); }
      .penalties-grid .penalty-item .penalty-level.suspension {
        background: hsl(var(--destructive)/0.1);
        color: hsl(var(--destructive)); }
      .penalties-grid .penalty-item .penalty-level.permanent {
        background: #333333;
        color: white; }
    .penalties-grid .penalty-item h4 {
      font-size: 1rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 0.75rem; }
    .penalties-grid .penalty-item p {
      color: hsl(var(--muted-foreground));
      line-height: 1.6;
      margin-bottom: 1rem; }
      .penalties-grid .penalty-item p:last-child {
        margin-bottom: 0; }
    .penalties-grid .penalty-item ul {
      margin: 0.75rem 0;
      padding-left: 1.5rem; }
      .penalties-grid .penalty-item ul li {
        color: hsl(var(--muted-foreground));
        line-height: 1.6;
        margin-bottom: 0.25rem; }

.privacy-rights {
  margin: 2rem 0; }
  .privacy-rights .rights-grid {
    display: grid;
    gap: 1.5rem;
    margin-top: 1.5rem; }
    @media (min-width: 768px) {
      .privacy-rights .rights-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); } }
  .privacy-rights .right-item {
    padding: 1.5rem;
    background: hsl(var(--card));
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius-lg);
    transition: var(--transition); }
    .privacy-rights .right-item:hover {
      border-color: hsl(var(--primary)/0.3); }
    .privacy-rights .right-item .right-icon {
      width: 2.5rem;
      height: 2.5rem;
      display: flex;
      align-items: center;
      justify-content: center;
      background: hsl(var(--primary)/0.1);
      border-radius: var(--border-radius);
      margin-bottom: 1rem; }
      .privacy-rights .right-item .right-icon i {
        font-size: 1.125rem;
        color: hsl(var(--primary)); }
    .privacy-rights .right-item h4 {
      font-size: 1rem;
      font-weight: 600;
      color: hsl(var(--foreground));
      margin-bottom: 0.75rem; }
    .privacy-rights .right-item p {
      color: hsl(var(--muted-foreground));
      line-height: 1.6;
      margin: 0; }

.data-management {
  margin: 2rem 0; }
  .data-management .management-actions {
    display: grid;
    gap: 1rem;
    margin-top: 1.5rem; }
    @media (min-width: 768px) {
      .data-management .management-actions {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); } }
  .data-management .action-item {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.5rem;
    background: hsl(var(--muted)/0.3);
    border: 1px solid hsl(var(--border));
    border-radius: var(--border-radius);
    text-decoration: none;
    color: hsl(var(--foreground));
    transition: var(--transition); }
    .data-management .action-item:hover {
      background: hsl(var(--accent));
      border-color: hsl(var(--primary)); }
    .data-management .action-item i {
      font-size: 1.125rem;
      color: hsl(var(--primary));
      flex-shrink: 0; }
    .data-management .action-item span {
      font-weight: 500; }

@media (max-width: 768px) {
  .help-layout .help-sidebar,
  .help-layout .terms-sidebar,
  .help-layout .privacy-sidebar,
  .help-layout .guidelines-sidebar,
  .terms-layout .help-sidebar,
  .terms-layout .terms-sidebar,
  .terms-layout .privacy-sidebar,
  .terms-layout .guidelines-sidebar,
  .privacy-layout .help-sidebar,
  .privacy-layout .terms-sidebar,
  .privacy-layout .privacy-sidebar,
  .privacy-layout .guidelines-sidebar,
  .guidelines-layout .help-sidebar,
  .guidelines-layout .terms-sidebar,
  .guidelines-layout .privacy-sidebar,
  .guidelines-layout .guidelines-sidebar {
    order: -1; } }
.section {
  padding: 4rem 0; }
  .section--primary {
    background: var(--bg-primary); }
  .section--secondary {
    background: var(--bg-secondary); }
  .section--accent {
    background: var(--primary-color);
    color: var(--text-white); }

.section-title {
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 3rem;
  color: var(--text-primary);
  line-height: 1.2; }
  @media (max-width: 768px) {
    .section-title {
      font-size: 1.75rem;
      margin-bottom: 2rem; } }

.section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
  gap: 1rem; }
  @media (max-width: 768px) {
    .section-header {
      flex-direction: column;
      align-items: stretch; } }

.grid {
  display: grid;
  gap: 2rem; }
  .grid--1 {
    grid-template-columns: 1fr; }
  .grid--2 {
    grid-template-columns: 1fr; }
    @media (min-width: 768px) {
      .grid--2 {
        grid-template-columns: repeat(2, 1fr); } }
  .grid--3 {
    grid-template-columns: 1fr; }
    @media (min-width: 768px) {
      .grid--3 {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) {
      .grid--3 {
        grid-template-columns: repeat(3, 1fr); } }
  .grid--4 {
    grid-template-columns: 1fr; }
    @media (min-width: 768px) {
      .grid--4 {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) {
      .grid--4 {
        grid-template-columns: repeat(4, 1fr); } }
  .grid--tight {
    gap: 1rem; }
  .grid--loose {
    gap: 3rem; }

.card--interactive {
  cursor: pointer;
  transition: all 0.2s ease; }
  .card--interactive:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
    border-color: var(--primary-color); }
.card--featured {
  border: 2px solid var(--primary-color);
  position: relative; }
  .card--featured::before {
    content: 'Featured';
    position: absolute;
    top: -0.5rem;
    left: 1rem;
    background: var(--primary-color);
    color: var(--text-white);
    padding: 0.25rem 0.75rem;
    border-radius: var(--border-radius);
    font-size: 0.75rem;
    font-weight: 600;
    z-index: 10; }
.card--success {
  border-left: 4px solid var(--success-color); }
.card--warning {
  border-left: 4px solid #f59e0b; }
.card--error {
  border-left: 4px solid #ef4444; }
.card--info {
  border-left: 4px solid var(--primary-color); }

.icon-circle {
  width: 3rem;
  height: 3rem;
  background: var(--primary-color);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-white);
  flex-shrink: 0; }
  .icon-circle i {
    font-size: 1.25rem; }
  .icon-circle--sm {
    width: 2rem;
    height: 2rem; }
    .icon-circle--sm i {
      font-size: 1rem; }
  .icon-circle--lg {
    width: 4rem;
    height: 4rem; }
    .icon-circle--lg i {
      font-size: 1.5rem; }
  .icon-circle--xl {
    width: 5rem;
    height: 5rem; }
    .icon-circle--xl i {
      font-size: 2rem; }
  .icon-circle--secondary {
    background: var(--bg-secondary);
    color: var(--text-primary); }
  .icon-circle--success {
    background: var(--success-color); }
  .icon-circle--warning {
    background: #f59e0b; }
  .icon-circle--error {
    background: #ef4444; }

.meta {
  display: flex;
  gap: 1rem;
  align-items: center;
  font-size: 0.875rem;
  color: var(--text-secondary);
  flex-wrap: wrap; }
  .meta__item {
    display: flex;
    align-items: center;
    gap: 0.25rem; }
  .meta--centered {
    justify-content: center; }
  .meta--small {
    font-size: 0.75rem;
    gap: 0.75rem; }

.badge, .badge.badge-featured, .tag,
.tech-tag,
.idea-category,
.update-badge,
.product-badge,
.article-category,
.update-category,
.update-impact, .tag.featured,
.tech-tag.featured,
.idea-category.featured,
.update-badge.featured,
.product-badge.featured,
.article-category.featured,
.update-category.featured,
.update-impact.featured {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.75rem;
  font-size: 0.75rem;
  font-weight: 600;
  border-radius: var(--border-radius);
  background: var(--bg-secondary);
  color: var(--text-secondary); }
  .badge--primary {
    background: var(--primary-color);
    color: var(--text-white); }
  .badge--success {
    background: #dcfce7;
    color: #166534; }
  .badge--warning {
    background: #fef3c7;
    color: #92400e; }
  .badge--error {
    background: #fecaca;
    color: #991b1b; }
  .badge--info {
    background: #dbeafe;
    color: #1e40af; }
  .badge--sm {
    padding: 0.125rem 0.5rem;
    font-size: 0.625rem; }
  .badge--lg {
    padding: 0.375rem 1rem;
    font-size: 0.875rem; }

.filter-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
  padding: 1.5rem;
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  margin-bottom: 2rem; }
  @media (max-width: 768px) {
    .filter-bar {
      flex-direction: column;
      align-items: stretch; } }
  .filter-bar__group {
    display: flex;
    align-items: center;
    gap: 0.5rem; }
    .filter-bar__group label {
      font-size: 0.875rem;
      font-weight: 500;
      color: var(--text-secondary);
      white-space: nowrap; }
    .filter-bar__group select, .filter-bar__group input {
      padding: 0.5rem;
      border: 1px solid var(--border-color);
      border-radius: var(--border-radius);
      background: var(--bg-primary);
      color: var(--text-primary);
      font-size: 0.875rem; }
      .filter-bar__group select:focus, .filter-bar__group input:focus {
        outline: none;
        border-color: var(--primary-color); }
  .filter-bar__actions {
    margin-left: auto; }
    @media (max-width: 768px) {
      .filter-bar__actions {
        margin-left: 0;
        width: 100%;
        justify-self: center; } }

.progress {
  width: 100%;
  height: 0.5rem;
  background: var(--bg-secondary);
  border-radius: var(--border-radius);
  overflow: hidden; }
  .progress__fill {
    height: 100%;
    background: var(--primary-color);
    transition: width 0.3s ease; }
  .progress--success .progress__fill {
    background: var(--success-color); }
  .progress--warning .progress__fill {
    background: #f59e0b; }
  .progress--error .progress__fill {
    background: #ef4444; }
  .progress--sm {
    height: 0.25rem; }
  .progress--lg {
    height: 0.75rem; }

.action-group {
  display: flex;
  gap: 0.5rem;
  align-items: center; }
  .action-group--center {
    justify-content: center; }
  .action-group--end {
    justify-content: flex-end; }
  @media (max-width: 768px) {
    .action-group--responsive {
      flex-direction: column;
      gap: 0.75rem; }
      .action-group--responsive .btn {
        width: 100%;
        justify-content: center; } }

.list-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 1.5rem;
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  transition: var(--transition);
  gap: 1rem; }
  .list-item:hover {
    border-color: var(--primary-color);
    box-shadow: var(--shadow-sm); }
  .list-item__content {
    flex: 1; }
  .list-item__actions {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex-shrink: 0; }
    @media (max-width: 768px) {
      .list-item__actions {
        flex-direction: row; } }
  @media (max-width: 768px) {
    .list-item {
      flex-direction: column;
      align-items: stretch; }
      .list-item__actions {
        margin-top: 1rem; } }

@media (max-width: 575px) {
  .hide-sm {
    display: none; } }
.show-sm {
  display: none; }

@media (min-width: 576px) {
  .show-sm {
    display: revert; } }
.show-sm-flex {
  display: none; }

@media (min-width: 576px) {
  .show-sm-flex {
    display: flex; } }
.show-sm-inline {
  display: none; }

@media (min-width: 576px) {
  .show-sm-inline {
    display: inline; } }
.show-sm-inline-block {
  display: none; }

@media (min-width: 576px) {
  .show-sm-inline-block {
    display: inline-block; } }
@media (max-width: 767px) {
  .hide-md {
    display: none; } }
.show-md {
  display: none; }

@media (min-width: 768px) {
  .show-md {
    display: revert; } }
.show-md-flex {
  display: none; }

@media (min-width: 768px) {
  .show-md-flex {
    display: flex; } }
.show-md-inline {
  display: none; }

@media (min-width: 768px) {
  .show-md-inline {
    display: inline; } }
.show-md-inline-block {
  display: none; }

@media (min-width: 768px) {
  .show-md-inline-block {
    display: inline-block; } }
@media (max-width: 991px) {
  .hide-lg {
    display: none; } }
.show-lg {
  display: none; }

@media (min-width: 992px) {
  .show-lg {
    display: revert; } }
.show-lg-flex {
  display: none; }

@media (min-width: 992px) {
  .show-lg-flex {
    display: flex; } }
.show-lg-inline {
  display: none; }

@media (min-width: 992px) {
  .show-lg-inline {
    display: inline; } }
.show-lg-inline-block {
  display: none; }

@media (min-width: 992px) {
  .show-lg-inline-block {
    display: inline-block; } }
@media (max-width: 1199px) {
  .hide-xl {
    display: none; } }
.show-xl {
  display: none; }

@media (min-width: 1200px) {
  .show-xl {
    display: revert; } }
.show-xl-flex {
  display: none; }

@media (min-width: 1200px) {
  .show-xl-flex {
    display: flex; } }
.show-xl-inline {
  display: none; }

@media (min-width: 1200px) {
  .show-xl-inline {
    display: inline; } }
.show-xl-inline-block {
  display: none; }

@media (min-width: 1200px) {
  .show-xl-inline-block {
    display: inline-block; } }
@media (max-width: 1399px) {
  .hide-xxl {
    display: none; } }
.show-xxl {
  display: none; }

@media (min-width: 1400px) {
  .show-xxl {
    display: revert; } }
.show-xxl-flex {
  display: none; }

@media (min-width: 1400px) {
  .show-xxl-flex {
    display: flex; } }
.show-xxl-inline {
  display: none; }

@media (min-width: 1400px) {
  .show-xxl-inline {
    display: inline; } }
.show-xxl-inline-block {
  display: none; }

@media (min-width: 1400px) {
  .show-xxl-inline-block {
    display: inline-block; } }
.show-mobile-only {
  display: revert; }
  @media (min-width: 768px) {
    .show-mobile-only {
      display: none; } }

.show-mobile-only-flex {
  display: flex; }
  @media (min-width: 768px) {
    .show-mobile-only-flex {
      display: none; } }

.show-mobile-only-inline {
  display: inline; }
  @media (min-width: 768px) {
    .show-mobile-only-inline {
      display: none; } }

.show-mobile-only-inline-block {
  display: inline-block; }
  @media (min-width: 768px) {
    .show-mobile-only-inline-block {
      display: none; } }

@media (max-width: 767px) {
  .hide-mobile {
    display: none; } }

.show-desktop-only {
  display: none; }
  @media (min-width: 768px) {
    .show-desktop-only {
      display: revert; } }

.show-desktop-only-flex {
  display: none; }
  @media (min-width: 768px) {
    .show-desktop-only-flex {
      display: flex; } }

@media (min-width: 768px) {
  .hide-desktop {
    display: none; } }

.visible {
  visibility: visible; }

.invisible {
  visibility: hidden; }

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important; }

.sr-only-focusable:focus {
  position: static !important;
  width: auto !important;
  height: auto !important;
  padding: inherit !important;
  margin: inherit !important;
  overflow: visible !important;
  clip: auto !important;
  white-space: normal !important; }

@media (max-width: 575px) {
  .hide-sm {
    display: none; } }
.show-mobile-only {
  display: revert; }

@media (min-width: 768px) {
  .show-mobile-only {
    display: none; } }
.show-mobile-only-flex {
  display: flex; }

@media (min-width: 768px) {
  .show-mobile-only-flex {
    display: none; } }
.header {
  position: sticky;
  top: 0;
  background-color: var(--bg-primary);
  border-bottom: 1px solid var(--border-color);
  z-index: 1000;
  backdrop-filter: blur(10px); }

.navbar-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem;
  max-width: var(--container-max-width);
  margin: 0 auto; }
  @media (min-width: 768px) {
    .navbar-container {
      padding: 1rem 2rem; } }
.navbar-brand .brand-logo {
  display: flex;
  flex-direction: column;
  text-decoration: none; }
  .navbar-brand .brand-logo h1 {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--text-primary);
    margin: 0; }
  .navbar-brand .brand-logo .brand-tagline {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: -0.25rem;
    letter-spacing: -.6px; }
.navbar-menu {
  display: none;
  list-style: none;
  gap: 2rem; }
  @media (min-width: 768px) {
    .navbar-menu {
      display: flex; } }
  .navbar-menu .nav-link {
    color: var(--text-secondary);
    font-weight: 500;
    padding: 0.5rem 0;
    border-bottom: 2px solid transparent;
    transition: var(--transition); }
    .navbar-menu .nav-link:hover, .navbar-menu .nav-link.active {
      color: var(--text-primary);
      border-bottom-color: var(--primary-color); }
.navbar-auth {
  display: flex;
  align-items: center;
  gap: 0.5rem; }
  @media (max-width: 767px) {
    .navbar-auth {
      gap: 0.25rem; } }

.theme-toggle {
  background: transparent;
  border: 1px solid var(--border-color);
  color: var(--text-secondary);
  cursor: pointer;
  transition: var(--transition); }
  .theme-toggle:hover {
    background-color: var(--bg-secondary);
    color: var(--primary-color); }

.mobile-toggle {
  display: flex;
  flex-direction: column;
  gap: 3px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0.5rem; }
  @media (min-width: 768px) {
    .mobile-toggle {
      display: none; } }
  .mobile-toggle span {
    width: 20px;
    height: 2px;
    background-color: var(--text-primary);
    transition: var(--transition); }
  .mobile-toggle.active span:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px); }
  .mobile-toggle.active span:nth-child(2) {
    opacity: 0; }
  .mobile-toggle.active span:nth-child(3) {
    transform: rotate(-45deg) translate(7px, -6px); }

.mobile-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease-in-out; }
  @supports (height: 100dvh) {
    .mobile-menu {
      height: 100dvh; } }
  @media (min-width: 768px) {
    .mobile-menu {
      display: none; } }
  .mobile-menu.active {
    opacity: 1;
    visibility: visible; }
  .mobile-menu::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px); }
  .mobile-menu-content {
    position: absolute;
    top: 0;
    right: 0;
    width: 85%;
    max-width: 320px;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    background-color: var(--bg-primary);
    box-shadow: -4px 0 20px rgba(0, 0, 0, 0.15);
    transform: translateX(100%);
    transition: transform 0.3s ease-in-out;
    display: flex;
    flex-direction: column;
    overflow-y: auto; }
    @supports (height: 100dvh) {
      .mobile-menu-content {
        height: 100dvh; } }
  .mobile-menu.active .mobile-menu-content {
    transform: translateX(0); }
  .mobile-menu-header {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    padding: 1.5rem;
    border-bottom: 1px solid var(--border-color);
    background-color: var(--bg-primary);
    gap: 1rem; }
  .mobile-menu-logo {
    text-align: center; }
    .mobile-menu-logo h2 {
      font-size: 1.5rem;
      font-weight: 800;
      margin: 0;
      line-height: 1.2; }
    .mobile-menu-logo span {
      font-size: 0.75rem;
      color: var(--text-secondary);
      margin-top: -0.25rem;
      display: block;
      letter-spacing: -0.5px; }
  .mobile-menu .mobile-theme-toggle {
    background: none;
    border: 1px solid var(--border-color);
    color: var(--text-secondary);
    font-size: 1.25rem;
    cursor: pointer;
    padding: 0.5rem;
    border-radius: var(--border-radius);
    transition: var(--transition);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px; }
    .mobile-menu .mobile-theme-toggle:hover {
      background-color: var(--bg-secondary);
      color: var(--primary-color); }
  .mobile-menu-close {
    background: none;
    border: none;
    color: var(--text-secondary);
    font-size: 1.5rem;
    cursor: pointer;
    padding: 0.5rem;
    border-radius: var(--border-radius);
    transition: var(--transition);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px; }
    .mobile-menu-close:hover {
      background-color: var(--bg-secondary);
      color: var(--text-primary); }

.mobile-nav {
  flex: 1;
  overflow-y: auto; }

.mobile-nav-links {
  list-style: none;
  margin: 0;
  padding: 0; }
  .mobile-nav-links li {
    border-bottom: 1px solid var(--border-light); }
    .mobile-nav-links li:last-child {
      border-bottom: none; }
  .mobile-nav-links .mobile-nav-link {
    display: block;
    padding: 1rem 1.5rem;
    color: var(--text-primary);
    font-weight: 500;
    text-decoration: none;
    transition: var(--transition); }
    .mobile-nav-links .mobile-nav-link:hover {
      background-color: var(--bg-secondary);
      color: var(--primary-color); }
    .mobile-nav-links .mobile-nav-link.active {
      background-color: var(--bg-secondary);
      font-weight: 600;
      border-left: 3px solid var(--primary-color); }

.mobile-auth-actions {
  margin-top: auto;
  padding: 1.5rem;
  border-top: 1px solid var(--border-color);
  background-color: var(--bg-primary);
  display: flex;
  flex-direction: column;
  gap: 0.75rem; }
  .mobile-auth-actions .btn-mobile {
    width: 100%;
    justify-content: center; }
    .mobile-auth-actions .btn-mobile.btn-icon {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 0.5rem; }
      .mobile-auth-actions .btn-mobile.btn-icon span {
        font-size: 0.875rem; }

.footer {
  background: hsl(var(--muted)/0.3);
  border-top: 1px solid hsl(var(--border));
  color: hsl(var(--foreground));
  padding: 3rem 0 1rem; }
  .footer .footer-content {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-bottom: 2rem; }
    @media (min-width: 768px) {
      .footer .footer-content {
        grid-template-columns: 1fr 2fr;
        gap: 3rem; } }
  .footer .footer-brand h3 {
    color: hsl(var(--foreground));
    margin-bottom: 0.5rem;
    font-size: 1.25rem;
    font-weight: 600; }
  .footer .footer-brand p {
    color: hsl(var(--muted-foreground));
    margin-bottom: 0; }
  .footer .footer-links {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem; }
    @media (min-width: 768px) {
      .footer .footer-links {
        grid-template-columns: repeat(3, 1fr); } }
  .footer .footer-section h4 {
    color: hsl(var(--foreground));
    margin-bottom: 1rem;
    font-size: 1rem;
    font-weight: 600; }
  .footer .footer-section ul {
    list-style: none;
    padding: 0;
    margin: 0; }
    .footer .footer-section ul li {
      margin-bottom: 0.5rem; }
      .footer .footer-section ul li a {
        color: hsl(var(--muted-foreground));
        text-decoration: none;
        transition: var(--transition); }
        .footer .footer-section ul li a:hover {
          color: hsl(var(--foreground)); }
  .footer .footer-bottom {
    border-top: 1px solid hsl(var(--border));
    padding-top: 1rem;
    text-align: center; }
    .footer .footer-bottom p {
      color: hsl(var(--muted-foreground));
      margin-bottom: 0;
      font-size: 0.875rem; }

.tools-nav {
  padding: 2rem 0;
  background-color: var(--bg-secondary); }
  .tools-nav-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 1rem; }

.tool-nav-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 1rem;
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius);
  cursor: pointer;
  transition: var(--transition); }
  .tool-nav-item:hover {
    border-color: var(--primary-color); }
  .tool-nav-item.active {
    background: var(--primary-color);
    color: var(--text-white);
    border-color: var(--primary-color); }
  .tool-nav-item i {
    font-size: 1.25rem; }
  .tool-nav-item span {
    font-size: 0.875rem;
    font-weight: 500; }

.quick-start {
  padding: 4rem 0; }
  .quick-start-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    margin-top: 2rem; }
  .quick-start-card {
    padding: 2rem;
    background: var(--bg-primary);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius-lg);
    text-align: center; }
  .quick-start-icon {
    margin-bottom: 1rem; }
    .quick-start-icon i {
      font-size: 3rem;
      color: var(--primary-color); }

.categories {
  padding: 4rem 0; }
  .categories-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
    margin-top: 2rem; }

.category-card {
  padding: 2rem;
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  text-align: center;
  transition: var(--transition); }
  .category-card:hover {
    border-color: var(--primary-color);
    transform: translateY(-2px); }
  .category-card .category-icon {
    margin-bottom: 1rem; }
    .category-card .category-icon i {
      font-size: 2.5rem;
      color: var(--primary-color); }
  .category-card .category-stats {
    margin-top: 1rem;
    font-size: 0.875rem;
    color: var(--text-secondary); }

.latest-guides {
  padding: 4rem 0;
  background-color: var(--bg-secondary); }
  .latest-guides .section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem; }
    @media (max-width: 768px) {
      .latest-guides .section-header {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch; } }

.filter-select,
.sort-select {
  padding: 0.5rem 1rem;
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius);
  background: var(--bg-primary);
  color: var(--text-primary);
  cursor: pointer; }
  .filter-select:focus,
  .sort-select:focus {
    outline: none;
    ring: 2px solid var(--ring); }

.marketplace-filters {
  padding: 2rem 0;
  background-color: var(--bg-secondary); }
  .marketplace-filters .filter-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
    margin-top: 1rem; }
  .marketplace-filters .filter-item {
    display: flex;
    flex-direction: column;
    gap: 0.5rem; }

.marketplace-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
  gap: 2rem;
  margin-top: 2rem; }

.marketplace-card {
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  transition: var(--transition); }
  .marketplace-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg); }
  .marketplace-card .card-image {
    height: 200px;
    background-size: cover;
    background-position: center;
    position: relative; }
    .marketplace-card .card-image .price-tag {
      position: absolute;
      top: 1rem;
      right: 1rem;
      padding: 0.5rem 1rem;
      background: var(--primary-color);
      color: var(--text-white);
      border-radius: var(--border-radius);
      font-weight: 600; }
  .marketplace-card .card-content {
    padding: 1.5rem; }
  .marketplace-card .card-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.5rem; }
  .marketplace-card .card-description {
    color: var(--text-secondary);
    margin-bottom: 1rem;
    line-height: 1.5; }
  .marketplace-card .card-tech-stack {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem; }
  .marketplace-card .card-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border-color); }
  .marketplace-card .card-author {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--text-secondary); }
  .marketplace-card .card-stats {
    display: flex;
    gap: 1rem;
    font-size: 0.875rem;
    color: var(--text-secondary); }

.tech-badge {
  padding: 0.25rem 0.5rem;
  background: var(--bg-secondary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius);
  font-size: 0.75rem;
  color: var(--text-secondary); }

.price-filter {
  display: flex;
  align-items: center;
  gap: 0.5rem; }
  .price-filter input[type="range"] {
    flex: 1; }
  .price-filter .price-display {
    font-weight: 600;
    color: var(--primary-color); }

.featured-ideas {
  padding: 4rem 0;
  background: var(--bg-secondary); }
  .featured-ideas .ideas-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    align-items: start; }
    @media (min-width: 768px) {
      .featured-ideas .ideas-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2.5rem; } }
    @media (min-width: 1200px) {
      .featured-ideas .ideas-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 3rem; } }

.idea-card.featured {
  height: auto;
  min-height: 600px;
  display: flex;
  flex-direction: column;
  position: relative;
  border: 1px solid var(--primary-color); }
  .idea-card.featured::before {
    content: attr(data-badge);
    position: absolute;
    top: -10px;
    padding: 0.25rem 0.75rem;
    border-radius: var(--border-radius);
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-white);
    z-index: 2;
    background: var(--accent-color); }
  .idea-card.featured .idea-badge {
    display: none; }
  .idea-card.featured .idea-header {
    margin-bottom: 1rem; }
    .idea-card.featured .idea-header .idea-status {
      padding: 0.25rem 0.75rem;
      border-radius: var(--border-radius);
      font-size: 0.75rem;
      font-weight: 500; }
      .idea-card.featured .idea-header .idea-status.planning {
        background: #e3f2fd;
        color: #1976d2; }
      .idea-card.featured .idea-header .idea-status.in-progress {
        background: #fff3e0;
        color: #f57c00; }
      .idea-card.featured .idea-header .idea-status.launched {
        background: #e8f5e8;
        color: #2e7d32; }
  .idea-card.featured .idea-title {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.3;
    margin-bottom: 1rem;
    min-height: 3.2rem; }
  .idea-card.featured .idea-description {
    flex: 1;
    line-height: 1.6;
    margin-bottom: 1.5rem; }
  .idea-card.featured .idea-tech {
    margin-bottom: 1.5rem; }
    .idea-card.featured .idea-tech .tech-tag {
      display: inline-block;
      padding: 0.25rem 0.75rem;
      margin: 0.25rem 0.25rem 0.25rem 0;
      background: var(--bg-tertiary);
      border-radius: var(--border-radius);
      font-size: 0.75rem;
      color: var(--text-secondary); }
  .idea-card.featured .idea-progress {
    margin-bottom: 1.5rem; }
    .idea-card.featured .idea-progress .progress-bar {
      width: 100%;
      height: 0.5rem;
      background: var(--bg-tertiary);
      border-radius: var(--border-radius);
      overflow: hidden;
      margin-bottom: 0.5rem; }
      .idea-card.featured .idea-progress .progress-bar .progress-fill {
        height: 100%;
        background: var(--primary-color);
        transition: width 0.3s ease; }
      .color_scheme_dark .idea-card.featured .idea-progress .progress-bar {
        background: rgba(255, 255, 255, 0.08); }
        .color_scheme_dark .idea-card.featured .idea-progress .progress-bar .progress-fill {
          background: white; }
      .idea-card.featured .idea-progress .progress-bar.success .progress-fill {
        background: var(--success-color); }
      .color_scheme_dark .idea-card.featured .idea-progress .progress-bar.success .progress-fill {
        background: white; }
    .idea-card[data-status="planning"] .idea-card.featured .idea-progress .progress-fill, .idea-card .idea-status.planning ~ * .idea-card.featured .idea-progress .progress-fill {
      background: #1976d2; }
    .color_scheme_dark .idea-card[data-status="planning"] .idea-card.featured .idea-progress .progress-fill, .color_scheme_dark .idea-card .idea-status.planning ~ * .idea-card.featured .idea-progress .progress-fill {
      background: white; }
    .idea-card[data-status="in-progress"] .idea-card.featured .idea-progress .progress-fill, .idea-card .idea-status.in-progress ~ * .idea-card.featured .idea-progress .progress-fill {
      background: #f57c00; }
    .color_scheme_dark .idea-card[data-status="in-progress"] .idea-card.featured .idea-progress .progress-fill, .color_scheme_dark .idea-card .idea-status.in-progress ~ * .idea-card.featured .idea-progress .progress-fill {
      background: white; }
    .idea-card[data-status="launched"] .idea-card.featured .idea-progress .progress-fill, .idea-card .idea-status.launched ~ * .idea-card.featured .idea-progress .progress-fill {
      background: #2e7d32; }
    .color_scheme_dark .idea-card[data-status="launched"] .idea-card.featured .idea-progress .progress-fill, .color_scheme_dark .idea-card .idea-status.launched ~ * .idea-card.featured .idea-progress .progress-fill {
      background: white; }
    .idea-card.featured .idea-progress .progress-text {
      font-size: 0.875rem;
      color: var(--text-secondary); }
  .idea-card.featured .idea-meta {
    margin-bottom: 1.5rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border-color); }
    .idea-card.featured .idea-meta .idea-author,
    .idea-card.featured .idea-meta .idea-stats {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      font-size: 0.875rem;
      color: var(--text-secondary);
      margin-bottom: 0.5rem; }
    .idea-card.featured .idea-meta .idea-stats span {
      margin-right: 1rem; }
  .idea-card.featured .idea-team {
    margin-top: auto;
    padding-top: 1rem;
    border-top: 1px solid var(--border-color); }
    .idea-card.featured .idea-team .team-members {
      display: flex;
      align-items: center;
      gap: 0.5rem; }
      .idea-card.featured .idea-team .team-members .member-avatar {
        width: 2rem;
        height: 2rem;
        border-radius: 50%;
        background: var(--bg-tertiary);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0.875rem; }
      .idea-card.featured .idea-team .team-members .member-count {
        background: var(--text-secondary);
        color: var(--text-white);
        font-size: 0.75rem;
        padding: 0.25rem 0.5rem;
        border-radius: var(--border-radius); }
      .idea-card.featured .idea-team .team-members .team-needed {
        font-size: 0.875rem;
        color: var(--text-secondary);
        font-style: italic; }
    .idea-card.featured .idea-team .success-badge {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: var(--success-color);
      font-weight: 600;
      font-size: 0.875rem; }

.planning-hero {
  padding: 4rem 0;
  background: linear-gradient(135deg, var(--bg-secondary), var(--bg-primary)); }
  .planning-hero .hero-content {
    text-align: center;
    max-width: 800px;
    margin: 0 auto; }
  .planning-hero .hero-title {
    font-size: 3rem;
    margin-bottom: 1rem; }
    @media (max-width: 768px) {
      .planning-hero .hero-title {
        font-size: 2rem; } }
  .planning-hero .hero-subtitle {
    font-size: 1.25rem;
    color: var(--text-secondary);
    margin-bottom: 2rem; }

.service-categories {
  padding: 4rem 0; }
  .service-categories .categories-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    margin-top: 2rem; }

.service-category {
  padding: 2rem;
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  text-align: center;
  transition: var(--transition); }
  .service-category:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md); }
  .service-category .category-icon {
    margin-bottom: 1.5rem; }
    .service-category .category-icon i {
      font-size: 3rem;
      color: var(--primary-color); }
  .service-category .category-title {
    font-size: 1.5rem;
    margin-bottom: 1rem; }
  .service-category .category-description {
    color: var(--text-secondary);
    margin-bottom: 1.5rem;
    line-height: 1.6; }
  .service-category .category-features {
    list-style: none;
    margin-bottom: 2rem; }
    .service-category .category-features li {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      margin-bottom: 0.5rem;
      font-size: 0.875rem;
      color: var(--text-secondary); }
      .service-category .category-features li i {
        color: var(--success-color); }

.planning-process {
  padding: 4rem 0;
  background-color: var(--bg-secondary); }
  .planning-process .process-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin-top: 2rem; }

.process-step {
  position: relative;
  padding: 2rem;
  background: var(--bg-primary);
  border-radius: var(--border-radius-lg);
  text-align: center; }
  .process-step .step-number {
    position: absolute;
    top: -1rem;
    left: 50%;
    transform: translateX(-50%);
    width: 2rem;
    height: 2rem;
    background: var(--primary-color);
    color: var(--text-white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600; }
  .process-step .step-icon {
    margin: 1rem 0; }
    .process-step .step-icon i {
      font-size: 2rem;
      color: var(--primary-color); }
  .process-step .step-title {
    font-size: 1.125rem;
    margin-bottom: 0.5rem; }
  .process-step .step-description {
    color: var(--text-secondary);
    font-size: 0.875rem;
    line-height: 1.5; }

.consultation-form {
  padding: 4rem 0; }
  .consultation-form .form-container {
    max-width: 600px;
    margin: 0 auto;
    padding: 2rem;
    background: var(--bg-primary);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius-lg); }
  .consultation-form .form-group {
    margin-bottom: 1.5rem; }
  .consultation-form .form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem; }
    @media (max-width: 768px) {
      .consultation-form .form-row {
        grid-template-columns: 1fr; } }
  .consultation-form textarea {
    min-height: 120px;
    resize: vertical; }
  .consultation-form .form-submit {
    text-align: center;
    margin-top: 2rem; }

.pricing-table {
  padding: 4rem 0;
  background-color: var(--bg-secondary); }
  .pricing-table .pricing-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    margin-top: 2rem; }

.pricing-card {
  padding: 2rem;
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  text-align: center;
  position: relative; }
  .pricing-card.featured {
    border-color: var(--primary-color);
    transform: scale(1.05); }
    .pricing-card.featured .pricing-badge {
      position: absolute;
      top: -0.5rem;
      left: 50%;
      transform: translateX(-50%);
      padding: 0.5rem 1rem;
      background: var(--primary-color);
      color: var(--text-white);
      border-radius: var(--border-radius);
      font-size: 0.875rem;
      font-weight: 600; }
  .pricing-card .pricing-title {
    font-size: 1.5rem;
    margin-bottom: 1rem; }
  .pricing-card .pricing-price {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--primary-color);
    margin-bottom: 0.5rem; }
    .pricing-card .pricing-price .currency {
      font-size: 1rem;
      font-weight: 400; }
  .pricing-card .pricing-period {
    color: var(--text-secondary);
    margin-bottom: 2rem; }
  .pricing-card .pricing-features {
    list-style: none;
    margin-bottom: 2rem; }
    .pricing-card .pricing-features li {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      margin-bottom: 0.75rem;
      font-size: 0.875rem; }
      .pricing-card .pricing-features li i {
        color: var(--success-color); }
      .pricing-card .pricing-features li.unavailable {
        color: var(--text-secondary); }
        .pricing-card .pricing-features li.unavailable i {
          color: var(--text-secondary); }

.latest-updates {
  padding: 4rem 0;
  background-color: hsl(var(--muted)/0.3); }
  .latest-updates .updates-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 3rem;
    flex-wrap: wrap;
    gap: 1rem; }
    .latest-updates .updates-header .update-time {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: hsl(var(--muted-foreground));
      font-size: 0.875rem; }
      .latest-updates .updates-header .update-time i {
        color: hsl(var(--primary)); }
  .latest-updates .updates-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem; }
    @media (min-width: 768px) {
      .latest-updates .updates-grid {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) {
      .latest-updates .updates-grid {
        grid-template-columns: repeat(3, 1fr); } }

.trend-categories {
  padding: 4rem 0; }
  .trend-categories .categories-tabs {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 3rem;
    flex-wrap: wrap; }
  .trend-categories .trends-content {
    min-height: 400px; }

.category-tab {
  padding: 0.75rem 1.5rem;
  background: hsl(var(--background));
  border: 1px solid hsl(var(--border));
  border-radius: var(--border-radius-lg);
  color: hsl(var(--muted-foreground));
  cursor: pointer;
  transition: var(--transition);
  font-weight: 500;
  font-size: 0.875rem; }
  .category-tab:hover {
    background: hsl(var(--accent));
    color: hsl(var(--accent-foreground));
    transform: translateY(-2px); }
  .category-tab.active {
    background: hsl(var(--primary));
    color: hsl(var(--primary-foreground));
    border-color: hsl(var(--primary)); }

.subscription-cta {
  padding: 4rem 0;
  background: hsl(var(--muted)/0.3); }
  .subscription-cta .cta-content {
    text-align: center;
    max-width: 800px;
    margin: 0 auto; }
  .subscription-cta .cta-form {
    margin-top: 2rem; }
    .subscription-cta .cta-form .email-input-wrapper {
      display: flex;
      gap: 0.5rem;
      margin-bottom: 1rem;
      max-width: 400px;
      margin-left: auto;
      margin-right: auto; }
      @media (max-width: 768px) {
        .subscription-cta .cta-form .email-input-wrapper {
          flex-direction: column; } }
      .subscription-cta .cta-form .email-input-wrapper .email-input {
        flex: 1; }
    .subscription-cta .cta-form .subscription-options {
      display: flex;
      justify-content: center;
      gap: 1rem;
      flex-wrap: wrap; }

.community-tabs {
  padding: 1rem 0;
  background-color: var(--bg-primary);
  border-bottom: 1px solid var(--border-color); }
  .community-tabs .tabs-nav {
    display: flex;
    gap: 0.5rem;
    overflow-x: auto;
    padding-bottom: 0.5rem; }
    @media (max-width: 768px) {
      .community-tabs .tabs-nav {
        gap: 0.25rem; } }
  .community-tabs .tab-button {
    padding: 0.75rem 1.5rem;
    background: transparent;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius);
    cursor: pointer;
    transition: var(--transition);
    white-space: nowrap; }
    .community-tabs .tab-button:hover {
      background: var(--bg-secondary); }
    .community-tabs .tab-button.active {
      background: var(--primary-color);
      color: var(--text-white);
      border-color: var(--primary-color); }
    @media (max-width: 768px) {
      .community-tabs .tab-button {
        padding: 0.5rem 1rem;
        font-size: 0.875rem; } }

.community-content {
  padding: 2rem 0; }
  .community-content .content-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem; }
    @media (max-width: 768px) {
      .community-content .content-header {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch; } }
  .community-content .content-filters {
    display: flex;
    gap: 1rem; }
    @media (max-width: 768px) {
      .community-content .content-filters {
        flex-direction: column; } }

.posts-list {
  display: flex;
  flex-direction: column;
  gap: 1rem; }

.post-item {
  padding: 1.5rem;
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  transition: var(--transition); }
  .post-item:hover {
    border-color: var(--primary-color); }
  .post-item .post-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1rem; }
    @media (max-width: 768px) {
      .post-item .post-header {
        flex-direction: column;
        gap: 0.5rem; } }
  .post-item .post-meta {
    display: flex;
    align-items: center;
    gap: 1rem;
    font-size: 0.875rem;
    color: var(--text-secondary); }
    @media (max-width: 768px) {
      .post-item .post-meta {
        flex-wrap: wrap;
        gap: 0.5rem; } }
  .post-item .post-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.5rem; }
    .post-item .post-title a {
      color: var(--text-primary);
      text-decoration: none; }
      .post-item .post-title a:hover {
        color: var(--primary-color); }
  .post-item .post-excerpt {
    color: var(--text-secondary);
    line-height: 1.5;
    margin-bottom: 1rem; }
  .post-item .post-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem; }
  .post-item .post-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 1rem;
    border-top: 1px solid var(--border-color); }
    @media (max-width: 768px) {
      .post-item .post-footer {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch; } }
  .post-item .post-author {
    display: flex;
    align-items: center;
    gap: 0.5rem; }
    .post-item .post-author .author-avatar {
      width: 2rem;
      height: 2rem;
      border-radius: 50%;
      background: var(--bg-secondary); }
    .post-item .post-author .author-info {
      display: flex;
      flex-direction: column;
      gap: 0.125rem; }
      .post-item .post-author .author-info .author-name {
        font-weight: 500;
        font-size: 0.875rem; }
      .post-item .post-author .author-info .author-role {
        font-size: 0.75rem;
        color: var(--text-secondary); }
  .post-item .post-stats {
    display: flex;
    gap: 1rem;
    font-size: 0.875rem;
    color: var(--text-secondary); }
    @media (max-width: 768px) {
      .post-item .post-stats {
        justify-content: space-between; } }

.post-tag {
  padding: 0.25rem 0.5rem;
  background: var(--bg-secondary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius);
  font-size: 0.75rem;
  color: var(--text-secondary);
  text-decoration: none;
  transition: var(--transition); }
  .post-tag:hover {
    border-color: var(--primary-color);
    color: var(--primary-color); }

.community-sidebar .sidebar-section {
  margin-bottom: 2rem;
  padding: 1.5rem;
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg); }
.community-sidebar .sidebar-title {
  font-size: 1.125rem;
  font-weight: 600;
  margin-bottom: 1rem; }
.community-sidebar .popular-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem; }
.community-sidebar .active-users .user-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem; }
.community-sidebar .active-users .user-item {
  display: flex;
  align-items: center;
  gap: 0.75rem; }
  .community-sidebar .active-users .user-item .user-avatar {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: var(--bg-secondary); }
  .community-sidebar .active-users .user-item .user-info {
    flex: 1; }
    .community-sidebar .active-users .user-item .user-info .user-name {
      font-weight: 500;
      font-size: 0.875rem; }
    .community-sidebar .active-users .user-item .user-info .user-status {
      font-size: 0.75rem;
      color: var(--text-secondary); }
  .community-sidebar .active-users .user-item .user-badge {
    padding: 0.125rem 0.5rem;
    background: var(--success-color);
    color: white;
    border-radius: var(--border-radius);
    font-size: 0.625rem;
    font-weight: 600; }

.hot-topics {
  padding: 4rem 0;
  background: var(--bg-secondary); }
  .hot-topics .topics-slider {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem; }
    @media (min-width: 768px) {
      .hot-topics .topics-slider {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1200px) {
      .hot-topics .topics-slider {
        grid-template-columns: repeat(3, 1fr); } }

.topic-card {
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  padding: 1.5rem;
  transition: var(--transition);
  position: relative; }
  .topic-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
    border-color: var(--primary-color); }
  .topic-card.trending {
    border: 2px solid var(--accent-color); }
  .topic-card .topic-badge {
    position: absolute;
    top: -.85rem;
    background: var(--primary-color);
    color: var(--text-white);
    padding: 0.25rem 0.75rem;
    border-radius: var(--border-radius);
    font-size: 0.75rem;
    font-weight: 600;
    z-index: 10; }
  .topic-card .topic-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem; }
    .topic-card .topic-header .topic-category {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: var(--text-secondary);
      font-size: 0.875rem;
      font-weight: 500; }
      .color_scheme_dark .topic-card .topic-header .topic-category {
        color: rgba(255, 255, 255, 0.8); }
    .topic-card .topic-header .topic-meta .replies {
      color: var(--text-secondary);
      font-size: 0.75rem; }
    .topic-card .topic-header .topic-meta .urgent {
      background: var(--danger-color);
      color: var(--text-white);
      padding: 0.25rem 0.5rem;
      border-radius: var(--border-radius);
      font-size: 0.75rem;
      font-weight: 600; }
  .topic-card .topic-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: var(--text-primary);
    line-height: 1.3; }
  .topic-card .topic-excerpt {
    color: var(--text-secondary);
    line-height: 1.5;
    margin-bottom: 1rem;
    font-size: 0.875rem; }
  .topic-card .topic-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem; }
    .topic-card .topic-tags .tag {
      padding: 0.25rem 0.5rem;
      background: var(--bg-secondary);
      border: 1px solid var(--border-color);
      border-radius: var(--border-radius);
      font-size: 0.75rem;
      color: var(--text-secondary); }
  .topic-card .topic-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 1rem;
    border-top: 1px solid var(--border-color); }
    .topic-card .topic-footer .topic-author {
      display: flex;
      align-items: center;
      gap: 0.75rem; }
      .topic-card .topic-footer .topic-author .avatar-placeholder {
        width: 2rem;
        height: 2rem;
        border-radius: 50%;
        background: var(--bg-secondary);
        display: flex;
        align-items: center;
        justify-content: center;
        color: var(--text-secondary); }
      .topic-card .topic-footer .topic-author .author-info {
        display: flex;
        flex-direction: column; }
        .topic-card .topic-footer .topic-author .author-info .author-name {
          font-weight: 500;
          font-size: 0.875rem;
          color: var(--text-primary); }
        .topic-card .topic-footer .topic-author .author-info .author-level {
          font-size: 0.75rem;
          color: var(--text-secondary); }
    .topic-card .topic-footer .topic-stats {
      display: flex;
      gap: 1rem;
      font-size: 0.875rem;
      color: var(--text-secondary); }

.community-posts {
  padding: 4rem 0;
  background: var(--bg-primary); }
  .community-posts .posts-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
    flex-wrap: wrap;
    gap: 1rem; }
    @media (max-width: 768px) {
      .community-posts .posts-header {
        flex-direction: column;
        align-items: stretch; } }
    .community-posts .posts-header .posts-filters {
      display: flex;
      gap: 1rem;
      align-items: center; }
      @media (max-width: 768px) {
        .community-posts .posts-header .posts-filters {
          flex-direction: column;
          align-items: stretch; } }
      .community-posts .posts-header .posts-filters .search-wrapper {
        position: relative;
        display: flex;
        align-items: center;
        min-width: 250px; }
        .community-posts .posts-header .posts-filters .search-wrapper .bi-search {
          position: absolute;
          left: 0.75rem;
          color: var(--text-secondary); }
        .community-posts .posts-header .posts-filters .search-wrapper .search-input {
          padding: 0.5rem 0.5rem 0.5rem 2.5rem;
          border: 1px solid var(--border-color);
          border-radius: var(--border-radius);
          background: var(--bg-primary);
          color: var(--text-primary);
          width: 100%; }
          .community-posts .posts-header .posts-filters .search-wrapper .search-input:focus {
            outline: none;
            border-color: var(--primary-color); }
          .community-posts .posts-header .posts-filters .search-wrapper .search-input::placeholder {
            color: var(--text-muted); }
  .community-posts .posts-list {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    margin-bottom: 3rem; }

.post-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 1.5rem;
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  transition: var(--transition);
  gap: 1.5rem; }
  .post-item:hover {
    border-color: var(--primary-color);
    box-shadow: var(--shadow-sm); }
  .post-item .post-item-content {
    flex: 1;
    margin-right: 1rem; }
  .post-item .post-item-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem; }
    .post-item .post-item-header .post-category {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: var(--primary-color);
      font-size: 0.875rem;
      font-weight: 500; }
      .color_scheme_dark .post-item .post-item-header .post-category {
        color: rgba(255, 255, 255, 0.9); }
    .post-item .post-item-header .post-status {
      padding: 0.25rem 0.75rem;
      border-radius: var(--border-radius);
      font-size: 0.75rem;
      font-weight: 600; }
      .post-item .post-item-header .post-status.solved {
        background: #e8f5e8;
        color: #2e7d32; }
      .post-item .post-item-header .post-status.pending {
        background: #fff3e0;
        color: #f57c00; }
      .post-item .post-item-header .post-status.closed {
        background: #f5f5f5;
        color: #666; }
      .post-item .post-item-header .post-status.featured {
        background: var(--accent-color);
        color: var(--text-white); }
      .post-item .post-item-header .post-status.new {
        background: var(--accent-color);
        color: var(--text-white); }
  .post-item .post-item-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: var(--text-primary);
    line-height: 1.3; }
  .post-item .post-item-excerpt {
    color: var(--text-secondary);
    line-height: 1.5;
    margin-bottom: 1rem;
    font-size: 0.875rem; }
  .post-item .post-item-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.875rem; }
    .post-item .post-item-meta .author-info {
      display: flex;
      align-items: center;
      gap: 0.75rem; }
      .post-item .post-item-meta .author-info .avatar-placeholder {
        width: 2rem;
        height: 2rem;
        border-radius: 50%;
        background: var(--bg-secondary);
        display: flex;
        align-items: center;
        justify-content: center;
        color: var(--text-secondary); }
      .post-item .post-item-meta .author-info .author-details {
        display: flex;
        flex-direction: column; }
        .post-item .post-item-meta .author-info .author-details .author-name {
          font-weight: 500;
          color: var(--text-primary); }
        .post-item .post-item-meta .author-info .author-details .post-time {
          color: var(--text-secondary);
          font-size: 0.75rem; }
    .post-item .post-item-meta .post-item-stats {
      display: flex;
      gap: 1rem;
      color: var(--text-secondary); }
  .post-item .post-item-sidebar {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    flex-shrink: 0;
    min-width: 80px; }
    .post-item .post-item-sidebar .reply-count {
      text-align: center; }
      .post-item .post-item-sidebar .reply-count .count {
        display: block;
        font-size: 1.5rem;
        font-weight: 700; }
      .post-item .post-item-sidebar .reply-count .label {
        font-size: 0.75rem;
        color: var(--text-secondary); }
    .post-item .post-item-sidebar .last-activity {
      font-size: 0.75rem;
      color: var(--text-secondary);
      text-align: center; }
  @media (max-width: 768px) {
    .post-item {
      flex-direction: column;
      gap: 1rem; }
      .post-item .post-item-content {
        margin-right: 0; }
      .post-item .post-item-sidebar {
        flex-direction: row;
        justify-content: space-between;
        align-items: center; } }

.community-rules {
  padding: 4rem 0;
  background: var(--bg-secondary); }
  .community-rules .rules-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem; }
    @media (min-width: 768px) {
      .community-rules .rules-grid {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) {
      .community-rules .rules-grid {
        grid-template-columns: repeat(4, 1fr); } }

.rule-card {
  background: var(--bg-primary);
  border-radius: var(--border-radius-lg);
  padding: 2rem;
  text-align: center;
  border: 1px solid var(--border-color);
  transition: var(--transition); }
  .rule-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
    border-color: var(--primary-color); }
  .rule-card .rule-icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 1.5rem;
    background: var(--primary-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-white); }
    .rule-card .rule-icon i {
      font-size: 2rem; }
  .rule-card h3 {
    color: var(--text-primary);
    margin-bottom: 1rem; }
  .rule-card p {
    color: var(--text-secondary);
    font-size: 0.875rem;
    line-height: 1.6;
    margin: 0; }

.community-stats-section {
  padding: 4rem 0; }
  .community-stats-section .stats-dashboard {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem; }
    @media (min-width: 768px) {
      .community-stats-section .stats-dashboard {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) {
      .community-stats-section .stats-dashboard {
        grid-template-columns: repeat(4, 1fr); } }

.stats-card {
  background: var(--bg-primary);
  border-radius: var(--border-radius-lg);
  padding: 2rem;
  border: 1px solid var(--border-color);
  transition: var(--transition);
  display: flex;
  align-items: center;
  gap: 1.5rem; }
  .stats-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
    border-color: var(--primary-color); }
  .stats-card .stats-icon {
    width: 64px;
    height: 64px;
    background: var(--primary-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-white);
    flex-shrink: 0; }
    .stats-card .stats-icon i {
      font-size: 1.5rem; }
  .stats-card .stats-content {
    display: flex;
    flex-direction: column; }
    .stats-card .stats-content .stats-number {
      font-size: 2rem;
      font-weight: 700;
      color: var(--text-primary);
      line-height: 1; }
    .stats-card .stats-content .stats-label {
      color: var(--text-secondary);
      font-size: 0.875rem;
      margin: 0.25rem 0; }
    .stats-card .stats-content .stats-change {
      color: var(--success-color);
      font-size: 0.75rem;
      font-weight: 500; }
  @media (max-width: 640px) {
    .stats-card {
      flex-direction: column;
      text-align: center;
      gap: 1rem; } }

.floating-write-button {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  width: 3.5rem;
  height: 3.5rem;
  background: var(--primary-color);
  color: var(--text-white);
  border: none;
  border-radius: 50%;
  box-shadow: var(--shadow-lg);
  cursor: pointer;
  transition: var(--transition);
  z-index: 1000; }
  .floating-write-button:hover {
    transform: scale(1.1); }
  .floating-write-button i {
    font-size: 1.25rem; }

body.color_scheme_light {
  --primary: 0, 0%, 9%;
  --primary-foreground: 0, 0%, 98%;
  --secondary: 0, 0%, 96%;
  --secondary-foreground: 0, 0%, 9%;
  --muted: 0, 0%, 96%;
  --muted-foreground: 0, 0%, 45%;
  --accent: 0, 0%, 96%;
  --accent-foreground: 0, 0%, 9%;
  --destructive: 0, 84%, 60%;
  --destructive-foreground: 0, 0%, 98%;
  --border: 0, 0%, 90%;
  --input: 0, 0%, 90%;
  --ring: 0, 0%, 9%;
  --background: 0, 0%, 100%;
  --foreground: 0, 0%, 4%; }
  body.color_scheme_light .theme-toggle i::before {
    content: "\f186"; }

body.color_scheme_dark {
  --primary: 0, 0%, 98%;
  --primary-foreground: 0, 0%, 9%;
  --secondary: 0, 0%, 18%;
  --secondary-foreground: 0, 0%, 98%;
  --muted: 0, 0%, 18%;
  --muted-foreground: 0, 0%, 64%;
  --accent: 0, 0%, 18%;
  --accent-foreground: 0, 0%, 98%;
  --destructive: 0, 62%, 30%;
  --destructive-foreground: 0, 0%, 98%;
  --border: 0, 0%, 25%;
  --input: 0, 0%, 18%;
  --ring: 0, 0%, 98%;
  --background: 0, 0%, 0%;
  --foreground: 0, 0%, 98%;
  --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.15);
  --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.3), 0 2px 4px -2px rgb(0 0 0 / 0.2);
  --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.4), 0 4px 6px -4px rgb(0 0 0 / 0.3);
  --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.4), 0 8px 10px -6px rgb(0 0 0 / 0.3);
  --bg-primary: hsl(var(--background));
  --bg-secondary: hsl(var(--muted));
  --bg-tertiary: hsl(var(--secondary));
  --bg-dark: hsl(0, 0%, 2%);
  --text-primary: hsl(var(--foreground));
  --text-secondary: hsl(var(--muted-foreground));
  --text-muted: hsl(0, 0%, 45%);
  --border-color: hsl(0, 0%, 25%);
  --border-light: hsl(0, 0%, 18%); }
  body.color_scheme_dark .hero,
  body.color_scheme_dark .page-header,
  body.color_scheme_dark .guide-header,
  body.color_scheme_dark .marketplace-header,
  body.color_scheme_dark .planning-header,
  body.color_scheme_dark .trends-header,
  body.color_scheme_dark .community-header,
  body.color_scheme_dark .trends-header,
  body.color_scheme_dark .planning-header,
  body.color_scheme_dark .marketplace-header {
    background: black !important; }
    body.color_scheme_dark .hero .hero-title,
    body.color_scheme_dark .hero .page-title,
    body.color_scheme_dark .hero h1,
    body.color_scheme_dark .page-header .hero-title,
    body.color_scheme_dark .guide-header .hero-title,
    body.color_scheme_dark .marketplace-header .hero-title,
    body.color_scheme_dark .planning-header .hero-title,
    body.color_scheme_dark .trends-header .hero-title,
    body.color_scheme_dark .community-header .hero-title,
    body.color_scheme_dark .page-header .page-title,
    body.color_scheme_dark .guide-header .page-title,
    body.color_scheme_dark .marketplace-header .page-title,
    body.color_scheme_dark .planning-header .page-title,
    body.color_scheme_dark .trends-header .page-title,
    body.color_scheme_dark .community-header .page-title,
    body.color_scheme_dark .page-header h1,
    body.color_scheme_dark .guide-header h1,
    body.color_scheme_dark .marketplace-header h1,
    body.color_scheme_dark .planning-header h1,
    body.color_scheme_dark .trends-header h1,
    body.color_scheme_dark .community-header h1,
    body.color_scheme_dark .trends-header .hero-title,
    body.color_scheme_dark .trends-header .page-title,
    body.color_scheme_dark .trends-header h1,
    body.color_scheme_dark .planning-header .hero-title,
    body.color_scheme_dark .planning-header .page-title,
    body.color_scheme_dark .planning-header h1,
    body.color_scheme_dark .marketplace-header .hero-title,
    body.color_scheme_dark .marketplace-header .page-title,
    body.color_scheme_dark .marketplace-header h1 {
      color: #fafafa !important; }
  body.color_scheme_dark section {
    background: black !important; }
  body.color_scheme_dark .feature-card {
    background-color: black !important;
    border-color: #333333 !important; }
  body.color_scheme_dark .post-card {
    background-color: black !important;
    border-color: #333333 !important; }
  body.color_scheme_dark .guide-card, body.color_scheme_dark .guides-list .guide-item, .guides-list body.color_scheme_dark .guide-item {
    background-color: black !important;
    border-color: #333333 !important; }
  body.color_scheme_dark .ai-tools-showcase .tool-card {
    background-color: black !important; }
  body.color_scheme_dark .header {
    border-bottom-color: #333333 !important; }
  body.color_scheme_dark .featured-guides {
    background: black !important; }
  body.color_scheme_dark .tools-nav,
  body.color_scheme_dark .quick-start,
  body.color_scheme_dark .categories,
  body.color_scheme_dark .latest-guides,
  body.color_scheme_dark .community-stats,
  body.color_scheme_dark .popular-posts,
  body.color_scheme_dark .latest-updates,
  body.color_scheme_dark .trend-categories,
  body.color_scheme_dark .expert-insights,
  body.color_scheme_dark .weekly-report,
  body.color_scheme_dark .news-feed,
  body.color_scheme_dark .subscription-cta,
  body.color_scheme_dark .marketplace-filters,
  body.color_scheme_dark .success-stories,
  body.color_scheme_dark .idea-showcase {
    background: black !important; }
  body.color_scheme_dark .feature-link {
    color: #fafafa !important;
    text-decoration: none !important; }
    body.color_scheme_dark .feature-link:hover {
      text-decoration: underline !important; }
  body.color_scheme_dark .stat-number {
    color: #fafafa !important; }
  body.color_scheme_dark .post-category {
    cursor: pointer !important;
    transition: all 0.2s ease !important; }
    body.color_scheme_dark .post-category:hover {
      border-color: #595959 !important;
      transform: translateY(-1px) !important; }

@media (prefers-color-scheme: dark) {
  body:not(.color_scheme_light):not(.color_scheme_dark) {
    --primary: 0, 0%, 98%;
    --primary-foreground: 0, 0%, 9%;
    --secondary: 0, 0%, 18%;
    --secondary-foreground: 0, 0%, 98%;
    --muted: 0, 0%, 18%;
    --muted-foreground: 0, 0%, 64%;
    --accent: 0, 0%, 18%;
    --accent-foreground: 0, 0%, 98%;
    --destructive: 0, 62%, 30%;
    --destructive-foreground: 0, 0%, 98%;
    --border: 0, 0%, 25%;
    --input: 0, 0%, 18%;
    --ring: 0, 0%, 98%;
    --background: 0, 0%, 0%;
    --foreground: 0, 0%, 98%;
    --border-color: hsl(0, 0%, 25%);
    --border-light: hsl(0, 0%, 18%); }

  body:not(.color_scheme_light):not(.color_scheme_dark) .hero,
  body:not(.color_scheme_light):not(.color_scheme_dark) .page-header,
  body:not(.color_scheme_light):not(.color_scheme_dark) .guide-header,
  body:not(.color_scheme_light):not(.color_scheme_dark) .marketplace-header,
  body:not(.color_scheme_light):not(.color_scheme_dark) .planning-header,
  body:not(.color_scheme_light):not(.color_scheme_dark) .trends-header,
  body:not(.color_scheme_light):not(.color_scheme_dark) .community-header,
  body:not(.color_scheme_light):not(.color_scheme_dark) .trends-header,
  body:not(.color_scheme_light):not(.color_scheme_dark) .planning-header,
  body:not(.color_scheme_light):not(.color_scheme_dark) .marketplace-header {
    background: black !important; }
    body:not(.color_scheme_light):not(.color_scheme_dark) .hero .hero-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .hero .page-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .hero h1,
    body:not(.color_scheme_light):not(.color_scheme_dark) .page-header .hero-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .guide-header .hero-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .marketplace-header .hero-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .planning-header .hero-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .trends-header .hero-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .community-header .hero-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .page-header .page-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .guide-header .page-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .marketplace-header .page-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .planning-header .page-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .trends-header .page-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .community-header .page-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .page-header h1,
    body:not(.color_scheme_light):not(.color_scheme_dark) .guide-header h1,
    body:not(.color_scheme_light):not(.color_scheme_dark) .marketplace-header h1,
    body:not(.color_scheme_light):not(.color_scheme_dark) .planning-header h1,
    body:not(.color_scheme_light):not(.color_scheme_dark) .trends-header h1,
    body:not(.color_scheme_light):not(.color_scheme_dark) .community-header h1,
    body:not(.color_scheme_light):not(.color_scheme_dark) .trends-header .hero-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .trends-header .page-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .trends-header h1,
    body:not(.color_scheme_light):not(.color_scheme_dark) .planning-header .hero-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .planning-header .page-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .planning-header h1,
    body:not(.color_scheme_light):not(.color_scheme_dark) .marketplace-header .hero-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .marketplace-header .page-title,
    body:not(.color_scheme_light):not(.color_scheme_dark) .marketplace-header h1 {
      color: #fafafa !important; }
  body:not(.color_scheme_light):not(.color_scheme_dark) section {
    background: black !important; }
  body:not(.color_scheme_light):not(.color_scheme_dark) .feature-card {
    background-color: black !important;
    border-color: #333333 !important; }
  body:not(.color_scheme_light):not(.color_scheme_dark) .post-card {
    background-color: black !important;
    border-color: #333333 !important; }
  body:not(.color_scheme_light):not(.color_scheme_dark) .guide-card, body:not(.color_scheme_light):not(.color_scheme_dark) .guides-list .guide-item, .guides-list body:not(.color_scheme_light):not(.color_scheme_dark) .guide-item {
    background-color: black !important;
    border-color: #333333 !important; }
  body:not(.color_scheme_light):not(.color_scheme_dark) .ai-tools-showcase .tool-card {
    background-color: black !important; }
  body:not(.color_scheme_light):not(.color_scheme_dark) .header {
    border-bottom-color: #333333 !important; }
  body:not(.color_scheme_light):not(.color_scheme_dark) .featured-guides {
    background: black !important; }
  body:not(.color_scheme_light):not(.color_scheme_dark) .tools-nav,
  body:not(.color_scheme_light):not(.color_scheme_dark) .quick-start,
  body:not(.color_scheme_light):not(.color_scheme_dark) .categories,
  body:not(.color_scheme_light):not(.color_scheme_dark) .latest-guides,
  body:not(.color_scheme_light):not(.color_scheme_dark) .community-stats,
  body:not(.color_scheme_light):not(.color_scheme_dark) .popular-posts,
  body:not(.color_scheme_light):not(.color_scheme_dark) .latest-updates,
  body:not(.color_scheme_light):not(.color_scheme_dark) .trend-categories,
  body:not(.color_scheme_light):not(.color_scheme_dark) .expert-insights,
  body:not(.color_scheme_light):not(.color_scheme_dark) .weekly-report,
  body:not(.color_scheme_light):not(.color_scheme_dark) .news-feed,
  body:not(.color_scheme_light):not(.color_scheme_dark) .subscription-cta,
  body:not(.color_scheme_light):not(.color_scheme_dark) .marketplace-filters,
  body:not(.color_scheme_light):not(.color_scheme_dark) .success-stories,
  body:not(.color_scheme_light):not(.color_scheme_dark) .idea-showcase {
    background: black !important; }
  body:not(.color_scheme_light):not(.color_scheme_dark) .feature-link {
    color: #fafafa !important;
    text-decoration: none !important; }
    body:not(.color_scheme_light):not(.color_scheme_dark) .feature-link:hover {
      text-decoration: underline !important; }
  body:not(.color_scheme_light):not(.color_scheme_dark) .stat-number {
    color: #fafafa !important; }
  body:not(.color_scheme_light):not(.color_scheme_dark) .post-category {
    border: 1px solid #404040 !important;
    background-color: var(--primary-color) !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important; }
    body:not(.color_scheme_light):not(.color_scheme_dark) .post-category:hover {
      border-color: #595959 !important;
      transform: translateY(-1px) !important; } }
.section-title {
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 3rem;
  color: var(--text-primary);
  line-height: 1.2; }
  @media (max-width: 768px) {
    .section-title {
      font-size: 1.75rem;
      margin-bottom: 2rem; } }

.section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
  flex-wrap: wrap;
  gap: 1rem; }
  @media (max-width: 768px) {
    .section-header {
      flex-direction: column;
      align-items: stretch; } }
  .section-header .section-actions {
    display: flex;
    gap: 1rem;
    align-items: center; }
    @media (max-width: 768px) {
      .section-header .section-actions {
        justify-content: center; } }

.section-footer {
  text-align: center;
  margin-top: 3rem; }

.guides-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  margin-bottom: 3rem; }
  @media (min-width: 768px) {
    .guides-grid {
      grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1024px) {
    .guides-grid {
      grid-template-columns: repeat(3, 1fr); } }

.guides-list {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin-bottom: 3rem; }

.content-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem; }
  @media (min-width: 768px) {
    .content-grid.content-grid-2 {
      grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 768px) {
    .content-grid.content-grid-3 {
      grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1024px) {
    .content-grid.content-grid-3 {
      grid-template-columns: repeat(3, 1fr); } }
  @media (min-width: 768px) {
    .content-grid.content-grid-4 {
      grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1024px) {
    .content-grid.content-grid-4 {
      grid-template-columns: repeat(4, 1fr); } }

.filter-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
  padding: 1.5rem;
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  margin-bottom: 2rem; }
  @media (max-width: 768px) {
    .filter-bar {
      flex-direction: column;
      align-items: stretch; } }
  .filter-bar .filter-group {
    display: flex;
    align-items: center;
    gap: 0.5rem; }
    .filter-bar .filter-group label {
      font-size: 0.875rem;
      font-weight: 500;
      color: var(--text-secondary); }
    .filter-bar .filter-group select, .filter-bar .filter-group input {
      padding: 0.5rem;
      border: 1px solid var(--border-color);
      border-radius: var(--border-radius);
      background: var(--bg-primary);
      color: var(--text-primary);
      font-size: 0.875rem; }
      .filter-bar .filter-group select:focus, .filter-bar .filter-group input:focus {
        outline: none;
        border-color: var(--primary-color); }
  .filter-bar .filter-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-left: auto; }
    @media (max-width: 768px) {
      .filter-bar .filter-tags {
        margin-left: 0;
        width: 100%;
        justify-content: center; } }

.hero .hero-title {
  font-size: clamp(24px, 3vw, 48px); }
.hero .hero-content {
  color: #fafafa; }

.tools-nav {
  padding: 2rem 0;
  background: var(--bg-primary);
  border-bottom: 1px solid var(--border-color); }
  .tools-nav .tools-nav-grid {
    display: flex;
    justify-content: center;
    gap: 1rem;
    max-width: 880px;
    margin: 0 auto;
    flex-wrap: wrap; }
  .tools-nav .tool-nav-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    background: transparent;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius);
    cursor: pointer;
    transition: var(--transition);
    text-decoration: none;
    color: var(--text-secondary); }
    .tools-nav .tool-nav-item:hover {
      background-color: hsl(var(--accent));
      color: hsl(var(--accent-foreground));
      border-color: var(--primary-color); }
    .tools-nav .tool-nav-item.active {
      background: var(--primary-color);
      border-color: var(--primary-color);
      color: var(--text-white); }
    .tools-nav .tool-nav-item i {
      font-size: 1.125rem; }
    .tools-nav .tool-nav-item span {
      font-size: 0.875rem;
      font-weight: 500; }

.quick-start {
  padding: 4rem 0;
  background: var(--bg-primary); }
  .quick-start .quick-start-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem; }
    @media (min-width: 768px) {
      .quick-start .quick-start-grid {
        grid-template-columns: repeat(3, 1fr); } }
  .quick-start .quick-start-card {
    text-align: center;
    padding: 2rem;
    background: var(--bg-primary);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius-lg);
    transition: var(--transition); }
    .quick-start .quick-start-card:hover {
      transform: translateY(-4px);
      box-shadow: var(--shadow-lg);
      border-color: var(--border-color); }
    .quick-start .quick-start-card .quick-start-icon {
      width: 64px;
      height: 64px;
      margin: 0 auto 1.5rem;
      background: var(--primary-color);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: white !important; }
      .quick-start .quick-start-card .quick-start-icon i {
        font-size: 2rem;
        color: white !important; }
    .quick-start .quick-start-card h3 {
      font-size: 1.5rem;
      margin-bottom: 1rem;
      color: var(--text-primary); }
    .quick-start .quick-start-card p {
      color: var(--text-secondary);
      line-height: 1.6;
      margin-bottom: 2rem; }

.featured-guides {
  padding: 4rem 0;
  background: #f8f9fa; }
  .featured-guides .guide-card .guide-header, .featured-guides .guides-list .guide-item .guide-header, .guides-list .featured-guides .guide-item .guide-header {
    background: none !important;
    padding: 0 !important;
    margin-bottom: 1rem; }
  .featured-guides .guide-card .guide-actions, .featured-guides .guides-list .guide-item .guide-actions, .guides-list .featured-guides .guide-item .guide-actions {
    display: flex;
    justify-content: space-between;
    align-items: center; }

.categories {
  padding: 4rem 0;
  background: var(--bg-secondary); }
  .categories .categories-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem; }
    @media (min-width: 768px) {
      .categories .categories-grid {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) {
      .categories .categories-grid {
        grid-template-columns: repeat(3, 1fr); } }
  .categories .category-card {
    padding: 2rem;
    background: var(--bg-primary);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius-lg);
    text-align: center;
    transition: var(--transition); }
    .categories .category-card:hover {
      transform: translateY(-2px);
      box-shadow: var(--shadow-md);
      border-color: var(--primary-color); }
    .categories .category-card .category-icon {
      width: 60px;
      height: 60px;
      margin: 0 auto 1rem;
      background: var(--primary-color);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: white !important; }
      .categories .category-card .category-icon i {
        font-size: 1.75rem;
        color: white !important; }
    .categories .category-card h3 {
      font-size: 1.25rem;
      margin-bottom: 0.75rem;
      color: var(--text-primary); }
    .categories .category-card p {
      color: var(--text-secondary);
      line-height: 1.5;
      margin-bottom: 1rem;
      font-size: 0.875rem; }
    .categories .category-card .category-stats {
      color: var(--primary-color);
      font-weight: 500;
      font-size: 0.875rem; }

.guide-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 1.5rem;
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  transition: var(--transition); }
  .guide-item:hover {
    border-color: var(--primary-color);
    box-shadow: var(--shadow-sm); }
  .guide-item .guide-item-content {
    flex: 1;
    margin-right: 1rem; }
  .guide-item .guide-item-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem; }
    .guide-item .guide-item-header .guide-date {
      font-size: 0.875rem;
      color: var(--text-secondary); }
  .guide-item .guide-item-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: var(--text-primary);
    line-height: 1.3; }
  .guide-item .guide-item-excerpt {
    color: var(--text-secondary);
    line-height: 1.5;
    margin-bottom: 1rem;
    font-size: 0.875rem; }
  .guide-item .guide-item-meta {
    display: flex;
    gap: 1rem;
    align-items: center;
    font-size: 0.875rem; }
    .guide-item .guide-item-meta .author {
      color: var(--text-secondary); }
    .guide-item .guide-item-meta .difficulty {
      padding: 0.25rem 0.5rem;
      background: var(--bg-secondary);
      border-radius: var(--border-radius);
      color: var(--text-secondary);
      font-size: 0.75rem; }
    .guide-item .guide-item-meta .views {
      color: var(--text-secondary);
      display: flex;
      align-items: center;
      gap: 0.25rem; }
  .guide-item .guide-item-actions {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex-shrink: 0; }
    @media (max-width: 768px) {
      .guide-item .guide-item-actions {
        flex-direction: row; } }
  @media (max-width: 768px) {
    .guide-item {
      flex-direction: column;
      gap: 1rem; }
      .guide-item .guide-item-content {
        margin-right: 0; }
      .guide-item .guide-item-actions {
        align-self: stretch; } }

.filter-select, .sort-select {
  padding: 0.5rem;
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius);
  background: var(--bg-primary);
  color: var(--text-primary);
  font-size: 0.875rem; }
  .filter-select:focus, .sort-select:focus {
    outline: none;
    border-color: var(--primary-color); }

.marketplace-actions {
  display: flex;
  gap: 1rem;
  justify-content: center;
  margin-top: 2rem; }
  @media (max-width: 768px) {
    .marketplace-actions {
      flex-direction: column; } }

.marketplace-filters {
  padding: 2rem 0;
  background: var(--bg-secondary);
  border-bottom: 1px solid var(--border-color); }
  .marketplace-filters .filters-wrapper {
    display: flex;
    flex-direction: column;
    gap: 2rem; }
    @media (min-width: 1024px) {
      .marketplace-filters .filters-wrapper {
        flex-direction: row;
        align-items: center; } }
  .marketplace-filters .search-section {
    flex: 1; }
    .marketplace-filters .search-section .search-input-wrapper {
      position: relative;
      display: flex;
      align-items: center;
      background: var(--bg-primary);
      border: 1px solid var(--border-color);
      border-radius: var(--border-radius-lg);
      padding: 0.75rem 1rem;
      gap: 0.75rem; }
      .marketplace-filters .search-section .search-input-wrapper:focus-within {
        border-color: var(--primary-color); }
      .marketplace-filters .search-section .search-input-wrapper .bi-search {
        color: var(--text-secondary);
        font-size: 1.125rem; }
      .marketplace-filters .search-section .search-input-wrapper .search-input {
        flex: 1;
        border: none;
        background: transparent;
        outline: none;
        color: var(--text-primary);
        font-size: 1rem; }
        .marketplace-filters .search-section .search-input-wrapper .search-input::placeholder {
          color: var(--text-muted); }
      .marketplace-filters .search-section .search-input-wrapper .search-submit {
        flex-shrink: 0; }
  .marketplace-filters .filters-section {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    align-items: end; }
    @media (max-width: 768px) {
      .marketplace-filters .filters-section {
        flex-direction: column;
        align-items: stretch; } }

.featured-products {
  padding: 4rem 0;
  background: var(--bg-primary); }
  .featured-products .featured-slider {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem; }
    @media (min-width: 1024px) {
      .featured-products .featured-slider {
        grid-template-columns: repeat(2, 1fr); } }

.product-card {
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  transition: var(--transition);
  position: relative; }
  .product-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
    border-color: var(--primary-color); }
  .product-card.featured {
    border: 2px solid var(--primary-color); }
  .product-card .product-badge {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: var(--primary-color);
    color: var(--text-white);
    padding: 0.25rem 0.75rem;
    border-radius: var(--border-radius);
    font-size: 0.75rem;
    font-weight: 600;
    z-index: 10; }
    .product-card .product-badge.free {
      background: var(--success-color); }
  .product-card .product-image {
    position: relative;
    height: 200px;
    overflow: hidden; }
    .product-card .product-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: var(--transition); }
    .product-card .product-image .product-overlay {
      position: absolute;
      inset: 0;
      background: rgba(0, 0, 0, 0.7);
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 1rem;
      opacity: 0;
      transition: var(--transition); }
    .product-card .product-image:hover img {
      transform: scale(1.05); }
    .product-card .product-image:hover .product-overlay {
      opacity: 1; }
  .product-card .product-info {
    padding: 1.5rem; }
  .product-card .product-category {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    margin-bottom: 0.75rem; }
  .product-card .product-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: var(--text-primary);
    line-height: 1.3; }
  .product-card .product-description {
    color: var(--text-secondary);
    line-height: 1.5;
    margin-bottom: 1rem;
    font-size: 0.875rem; }
  .product-card .product-tech {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem; }
  .product-card .product-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
    font-size: 0.875rem; }
    .product-card .product-meta .product-author {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: var(--text-secondary); }
    .product-card .product-meta .product-rating {
      display: flex;
      align-items: center;
      gap: 0.5rem; }
      .product-card .product-meta .product-rating .stars {
        display: flex;
        gap: 0.125rem;
        color: #ffc107; }
      .product-card .product-meta .product-rating span {
        color: var(--text-secondary); }
  .product-card .product-footer {
    display: flex;
    justify-content: space-between;
    align-items: center; }
    .product-card .product-footer .product-price {
      display: flex;
      align-items: baseline;
      gap: 0.5rem; }
      .product-card .product-footer .product-price .price-original {
        color: var(--text-secondary);
        text-decoration: line-through;
        font-size: 0.875rem; }
      .product-card .product-footer .product-price .price-sale,
      .product-card .product-footer .product-price .price-current {
        font-weight: 700;
        font-size: 1.125rem; }
      .product-card .product-footer .product-price .price-free {
        color: var(--success-color);
        font-weight: 700;
        font-size: 1.125rem; }
    .product-card .product-footer .product-actions {
      display: flex;
      gap: 0.5rem;
      align-items: center; }
      .product-card .product-footer .product-actions .wishlist-btn:hover {
        color: #dc3545; }
      .product-card .product-footer .product-actions .wishlist-btn.active {
        color: #dc3545; }

.products-grid-section {
  padding: 4rem 0;
  background: var(--bg-primary); }
  .products-grid-section .view-options {
    display: flex;
    gap: 0.5rem;
    background: var(--bg-secondary);
    border-radius: var(--border-radius);
    padding: 0.25rem; }
    .products-grid-section .view-options .view-btn {
      padding: 0.5rem;
      background: transparent;
      border: none;
      border-radius: var(--border-radius);
      cursor: pointer;
      color: var(--text-secondary);
      transition: var(--transition); }
      .products-grid-section .view-options .view-btn:hover, .products-grid-section .view-options .view-btn.active {
        background: var(--primary-color);
        color: var(--text-white); }
  .products-grid-section .products-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-bottom: 3rem; }
    @media (min-width: 768px) {
      .products-grid-section .products-grid {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) {
      .products-grid-section .products-grid {
        grid-template-columns: repeat(3, 1fr); } }
  .products-grid-section .products-list {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    margin-bottom: 3rem; }
    .products-grid-section .products-list .product-card {
      display: flex;
      flex-direction: row;
      max-width: none;
      height: auto; }
      .products-grid-section .products-list .product-card .product-image {
        width: 300px;
        height: 200px;
        flex-shrink: 0; }
        @media (max-width: 768px) {
          .products-grid-section .products-list .product-card .product-image {
            width: 100%;
            height: 200px; } }
      .products-grid-section .products-list .product-card .product-info {
        flex: 1;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        padding: 1.5rem; }
        .products-grid-section .products-list .product-card .product-info .product-tech {
          margin-bottom: 1rem; }
        .products-grid-section .products-list .product-card .product-info .product-footer {
          margin-top: auto;
          padding-top: 1rem; }
      @media (max-width: 768px) {
        .products-grid-section .products-list .product-card {
          flex-direction: column; }
          .products-grid-section .products-list .product-card .product-image {
            width: 100%; }
          .products-grid-section .products-list .product-card .product-info {
            padding: 1.5rem; } }

.load-more-section {
  text-align: center;
  margin-top: 3rem; }
  .load-more-section .load-more-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem; }

.seller-info {
  padding: 4rem 0;
  background: var(--bg-secondary); }
  .seller-info .seller-benefits {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-bottom: 3rem; }
    @media (min-width: 768px) {
      .seller-info .seller-benefits {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) {
      .seller-info .seller-benefits {
        grid-template-columns: repeat(4, 1fr); } }
  .seller-info .benefit-card {
    text-align: center;
    padding: 2rem;
    background: var(--bg-primary);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius-lg);
    transition: var(--transition); }
    .seller-info .benefit-card:hover {
      transform: translateY(-2px);
      box-shadow: var(--shadow-md);
      border-color: var(--primary-color); }
    .seller-info .benefit-card .benefit-icon {
      width: 60px;
      height: 60px;
      margin: 0 auto 1rem;
      background: var(--primary-color);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--text-white); }
      .seller-info .benefit-card .benefit-icon i {
        font-size: 1.5rem; }
    .seller-info .benefit-card h3 {
      font-size: 1.25rem;
      margin-bottom: 0.75rem;
      color: var(--text-primary); }
    .seller-info .benefit-card p {
      color: var(--text-secondary);
      line-height: 1.5;
      font-size: 0.875rem; }
  .seller-info .seller-cta {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem; }
    .seller-info .seller-cta .seller-guide-link {
      color: var(--primary-color);
      text-decoration: none;
      font-weight: 500; }
      .seller-info .seller-cta .seller-guide-link:hover {
        text-decoration: underline; }

.category-nav {
  padding: 2rem 0;
  background: var(--bg-primary);
  border-bottom: 1px solid var(--border-color); }
  .category-nav .category-nav-grid {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto; }
    @media (max-width: 768px) {
      .category-nav .category-nav-grid {
        gap: 1rem; } }
  .category-nav .category-nav-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.75rem;
    padding: 1.25rem;
    background: transparent;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius-lg);
    cursor: pointer;
    transition: var(--transition);
    color: var(--text-secondary); }
    .category-nav .category-nav-item:hover {
      border-color: var(--primary-color);
      color: var(--primary-color);
      transform: translateY(-2px); }
    .category-nav .category-nav-item.active {
      background: var(--primary-color);
      border-color: var(--primary-color);
      color: var(--text-white); }
    .category-nav .category-nav-item i {
      font-size: 1.75rem; }
    .category-nav .category-nav-item span {
      font-size: 0.875rem;
      font-weight: 500; }

.featured-ideas {
  padding: 4rem 0;
  background: var(--bg-primary); }
  .featured-ideas .ideas-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem; }
    @media (min-width: 768px) {
      .featured-ideas .ideas-grid {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1200px) {
      .featured-ideas .ideas-grid {
        grid-template-columns: repeat(3, 1fr); } }

.idea-card {
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  padding: 1.5rem;
  transition: var(--transition);
  position: relative; }
  .idea-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
    border-color: var(--primary-color); }
  .idea-card .idea-badge {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: var(--primary-color);
    color: var(--text-white);
    padding: 0.25rem 0.75rem;
    border-radius: var(--border-radius);
    font-size: 0.75rem;
    font-weight: 600;
    z-index: 10; }
  .idea-card .idea-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem; }
    .idea-card .idea-header .idea-category {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: var(--text-secondary);
      font-size: 0.875rem;
      font-weight: 500; }
      .color_scheme_dark .idea-card .idea-header .idea-category {
        color: rgba(255, 255, 255, 0.8); }
    .idea-card .idea-header .idea-status {
      padding: 0.25rem 0.75rem;
      border-radius: var(--border-radius);
      font-size: 0.75rem;
      font-weight: 600; }
      .idea-card .idea-header .idea-status.planning {
        background: #e3f2fd;
        color: #1976d2; }
      .idea-card .idea-header .idea-status.in-progress {
        background: #fff3e0; }
      .idea-card .idea-header .idea-status.launched {
        background: #e8f5e8;
        color: #2e7d32; }
  .idea-card .idea-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: var(--text-primary);
    line-height: 1.3; }
  .idea-card .idea-description {
    color: var(--text-secondary);
    line-height: 1.5;
    margin-bottom: 1rem;
    font-size: 0.875rem; }
  .idea-card .idea-tech {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem; }
  .idea-card .idea-progress {
    margin-bottom: 1rem; }
    .idea-card .idea-progress .progress-bar {
      width: 100%;
      height: 8px;
      background: var(--bg-secondary);
      border-radius: 4px;
      overflow: hidden;
      margin-bottom: 0.5rem; }
      .idea-card .idea-progress .progress-bar.success {
        background: #e8f5e8; }
      .idea-card .idea-progress .progress-bar .progress-fill {
        height: 100%;
        background: var(--primary-color);
        transition: width 0.3s ease; }
    .idea-card .idea-progress .progress-text {
      font-size: 0.875rem;
      color: var(--text-secondary); }
  .idea-card .idea-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
    font-size: 0.875rem; }
    .idea-card .idea-meta .idea-author {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: var(--text-secondary); }
    .idea-card .idea-meta .idea-stats {
      display: flex;
      gap: 1rem;
      color: var(--text-secondary); }
  .idea-card .idea-team {
    display: flex;
    justify-content: space-between;
    align-items: center; }
    .idea-card .idea-team .team-members {
      display: flex;
      align-items: center;
      gap: 0.5rem; }
      .idea-card .idea-team .team-members .member-avatar {
        width: 2rem;
        height: 2rem;
        border-radius: 50%;
        background: var(--bg-secondary);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0.875rem; }
      .idea-card .idea-team .team-members .member-count {
        padding: 0.25rem 0.5rem;
        background: var(--bg-secondary);
        border-radius: var(--border-radius);
        font-size: 0.75rem;
        color: var(--text-secondary); }
      .idea-card .idea-team .team-members .team-needed {
        font-size: 0.875rem;
        font-weight: 500; }
    .idea-card .idea-team .success-badge {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: var(--success-color);
      font-weight: 500;
      font-size: 0.875rem; }

.all-ideas {
  padding: 4rem 0;
  background: var(--bg-secondary); }
  .all-ideas .ideas-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
    flex-wrap: wrap;
    gap: 1rem; }
    @media (max-width: 768px) {
      .all-ideas .ideas-header {
        flex-direction: column;
        align-items: stretch; } }
    .all-ideas .ideas-header .ideas-filters {
      display: flex;
      gap: 1rem;
      align-items: center; }
      @media (max-width: 768px) {
        .all-ideas .ideas-header .ideas-filters {
          flex-direction: column;
          align-items: stretch; } }
      .all-ideas .ideas-header .ideas-filters .search-wrapper {
        position: relative;
        display: flex;
        align-items: center;
        min-width: 250px; }
        .all-ideas .ideas-header .ideas-filters .search-wrapper .bi-search {
          position: absolute;
          left: 0.75rem;
          color: var(--text-secondary); }
        .all-ideas .ideas-header .ideas-filters .search-wrapper .search-input {
          padding: 0.5rem 0.5rem 0.5rem 2.5rem;
          border: 1px solid var(--border-color);
          border-radius: var(--border-radius);
          background: var(--bg-primary);
          color: var(--text-primary);
          width: 100%; }
          .all-ideas .ideas-header .ideas-filters .search-wrapper .search-input:focus {
            outline: none;
            border-color: var(--primary-color); }
          .all-ideas .ideas-header .ideas-filters .search-wrapper .search-input::placeholder {
            color: var(--text-muted); }
  .all-ideas .ideas-list {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    margin-bottom: 3rem; }

.idea-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 1.5rem;
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  transition: var(--transition); }
  .idea-item:hover {
    border-color: var(--primary-color);
    box-shadow: var(--shadow-sm); }
  .idea-item .idea-item-content {
    flex: 1;
    margin-right: 1rem; }
  .idea-item .idea-item-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem; }
    .idea-item .idea-item-header .idea-category {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: var(--primary-color);
      font-size: 0.875rem;
      font-weight: 500; }
      .color_scheme_dark .idea-item .idea-item-header .idea-category {
        color: rgba(255, 255, 255, 0.9); }
    .idea-item .idea-item-header .idea-status {
      padding: 0.25rem 0.75rem;
      border-radius: var(--border-radius);
      font-size: 0.75rem;
      font-weight: 600; }
      .idea-item .idea-item-header .idea-status.planning {
        background: #e3f2fd;
        color: #1976d2; }
      .idea-item .idea-item-header .idea-status.in-progress {
        background: #fff3e0;
        color: #f57c00; }
      .idea-item .idea-item-header .idea-status.launched {
        background: #e8f5e8;
        color: #2e7d32; }
  .idea-item .idea-item-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: var(--text-primary);
    line-height: 1.3; }
  .idea-item .idea-item-description {
    color: var(--text-secondary);
    line-height: 1.5;
    margin-bottom: 1rem;
    font-size: 0.875rem; }
  .idea-item .idea-item-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.875rem; }
    .idea-item .idea-item-meta .author-info {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: var(--text-secondary); }
    .idea-item .idea-item-meta .idea-item-stats {
      display: flex;
      gap: 1rem;
      color: var(--text-secondary); }
  .idea-item .idea-item-actions {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex-shrink: 0; }
    @media (max-width: 768px) {
      .idea-item .idea-item-actions {
        flex-direction: row; } }
    .idea-item .idea-item-actions .like-btn:hover {
      color: #dc3545; }
    .idea-item .idea-item-actions .like-btn.liked {
      color: #dc3545; }
  @media (max-width: 768px) {
    .idea-item {
      flex-direction: column;
      gap: 1rem; }
      .idea-item .idea-item-content {
        margin-right: 0; }
      .idea-item .idea-item-actions {
        align-self: stretch; } }

.community-guidelines {
  padding: 4rem 0;
  background: var(--bg-primary); }
  .community-guidelines .guidelines-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem; }
    @media (min-width: 768px) {
      .community-guidelines .guidelines-grid {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) {
      .community-guidelines .guidelines-grid {
        grid-template-columns: repeat(4, 1fr); } }
  .community-guidelines .guideline-card {
    text-align: center;
    padding: 2rem;
    background: var(--bg-primary);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius-lg);
    transition: var(--transition); }
    .community-guidelines .guideline-card:hover {
      transform: translateY(-2px);
      box-shadow: var(--shadow-md);
      border-color: var(--primary-color); }
    .community-guidelines .guideline-card .guideline-icon {
      width: 60px;
      height: 60px;
      margin: 0 auto 1rem;
      background: var(--primary-color);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--text-white); }
      .community-guidelines .guideline-card .guideline-icon i {
        font-size: 1.5rem; }
    .community-guidelines .guideline-card h3 {
      font-size: 1.25rem;
      margin-bottom: 0.75rem;
      color: var(--text-primary); }
    .community-guidelines .guideline-card p {
      color: var(--text-secondary);
      line-height: 1.5;
      font-size: 0.875rem; }

.success-stories {
  padding: 4rem 0;
  background: var(--bg-secondary); }
  .success-stories .stories-carousel {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem; }
    @media (min-width: 768px) {
      .success-stories .stories-carousel {
        grid-template-columns: repeat(2, 1fr); } }
  .success-stories .story-card {
    background: var(--bg-primary);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius-lg);
    overflow: hidden;
    transition: var(--transition); }
    .success-stories .story-card:hover {
      transform: translateY(-4px);
      box-shadow: var(--shadow-lg);
      border-color: var(--primary-color); }
    .success-stories .story-card .story-image {
      height: 200px;
      overflow: hidden; }
      .success-stories .story-card .story-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: var(--transition); }
        .success-stories .story-card .story-image img:hover {
          transform: scale(1.05); }
    .success-stories .story-card .story-content {
      padding: 1.5rem; }
      .success-stories .story-card .story-content h3 {
        font-size: 1.25rem;
        font-weight: 600;
        margin-bottom: 0.75rem;
        color: var(--text-primary); }
      .success-stories .story-card .story-content p {
        color: var(--text-secondary);
        line-height: 1.5;
        margin-bottom: 1rem;
        font-size: 0.875rem; }
      .success-stories .story-card .story-content .story-stats {
        display: flex;
        flex-direction: column;
        gap: 0.5rem; }
        .success-stories .story-card .story-content .story-stats span {
          color: var(--primary-color);
          font-weight: 500;
          font-size: 0.875rem; }

.latest-updates {
  padding: 4rem 0;
  background: var(--bg-primary); }
  .latest-updates .updates-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
    flex-wrap: wrap;
    gap: 1rem; }
    .latest-updates .updates-header .update-time {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: var(--text-secondary);
      font-size: 0.875rem; }
  .latest-updates .updates-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem; }
    @media (min-width: 768px) {
      .latest-updates .updates-grid {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1200px) {
      .latest-updates .updates-grid {
        grid-template-columns: repeat(3, 1fr); } }

.update-card {
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  padding: 1.5rem;
  transition: var(--transition);
  position: relative; }
  .update-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
    border-color: var(--primary-color); }
  .update-card.breaking {
    border: 2px solid #ef4444; }
  .update-card .update-badge {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: #ef4444;
    color: white;
    padding: 0.25rem 0.75rem;
    border-radius: var(--border-radius);
    font-size: 0.75rem;
    font-weight: 600; }
  .update-card .update-source {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1rem; }
    .update-card .update-source .source-icon {
      width: 2rem;
      height: 2rem;
      background: var(--primary-color);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: white;
      font-size: 0.875rem; }
    .update-card .update-source span {
      font-weight: 500;
      color: var(--text-primary); }
  .update-card .update-title {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: var(--text-primary);
    line-height: 1.3; }
  .update-card .update-summary {
    color: var(--text-secondary);
    line-height: 1.5;
    margin-bottom: 1rem;
    font-size: 0.875rem; }
  .update-card .update-meta {
    display: flex;
    gap: 1rem;
    font-size: 0.75rem;
    flex-wrap: wrap; }
    .update-card .update-meta .update-time {
      color: var(--text-secondary); }
    .update-card .update-meta .update-category {
      background: var(--bg-secondary);
      padding: 0.25rem 0.5rem;
      border-radius: var(--border-radius);
      color: var(--text-secondary); }
    .update-card .update-meta .update-impact {
      padding: 0.25rem 0.5rem;
      border-radius: var(--border-radius);
      font-weight: 600; }
      .update-card .update-meta .update-impact.high {
        background: #fef2f2;
        color: #dc2626; }
      .update-card .update-meta .update-impact.medium {
        background: #fefbf2;
        color: #d97706; }
      .update-card .update-meta .update-impact.low {
        background: #f0fdf4;
        color: #16a34a; }

.trend-categories {
  padding: 4rem 0;
  background: var(--bg-secondary); }
  .trend-categories .categories-tabs {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 3rem;
    padding-bottom: 0.5rem; }
    .trend-categories .categories-tabs .category-tab {
      padding: 0.75rem 1.5rem;
      background: transparent;
      border: 1px solid var(--border-color);
      border-radius: var(--border-radius);
      cursor: pointer;
      transition: var(--transition);
      white-space: nowrap;
      color: var(--text-secondary); }
      .trend-categories .categories-tabs .category-tab:hover {
        background: var(--bg-primary);
        border-color: var(--primary-color); }
      .trend-categories .categories-tabs .category-tab.active {
        background: var(--primary-color);
        color: var(--text-white);
        border-color: var(--primary-color); }
  .trend-categories .trends-content .trend-articles {
    display: flex;
    gap: 2rem; }

.trend-article {
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  transition: var(--transition); }
  .trend-article:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
    border-color: var(--primary-color); }
  .trend-article.featured {
    border: 2px solid var(--primary-color); }
    .trend-article.featured .article-image {
      display: block; }
  .trend-article .article-image {
    display: none;
    position: relative;
    height: 200px;
    background: var(--bg-secondary); }
    .trend-article .article-image .article-placeholder {
      position: absolute;
      inset: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 3rem;
      color: var(--text-secondary); }
    .trend-article .article-image .article-category {
      position: absolute;
      top: 1rem;
      left: 1rem;
      background: var(--primary-color);
      color: white;
      padding: 0.25rem 0.75rem;
      border-radius: var(--border-radius);
      font-size: 0.75rem;
      font-weight: 600; }
  .trend-article .article-content {
    padding: 1.5rem; }
  .trend-article .article-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: var(--text-primary);
    line-height: 1.3; }
  .trend-article .article-excerpt {
    color: var(--text-secondary);
    line-height: 1.5;
    margin-bottom: 1rem;
    font-size: 0.875rem; }
  .trend-article .article-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
    font-size: 0.875rem;
    flex-wrap: wrap;
    gap: 1rem; }
    .trend-article .article-meta .author-info {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: var(--text-secondary); }
    .trend-article .article-meta .article-stats {
      display: flex;
      gap: 1rem;
      color: var(--text-secondary); }
  .trend-article .article-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem; }

.weekly-report {
  padding: 4rem 0;
  background: var(--bg-primary); }
  .weekly-report .report-header {
    text-align: center;
    margin-bottom: 3rem; }
    .weekly-report .report-header .report-period {
      color: var(--text-secondary);
      font-size: 1rem;
      margin-top: 0.5rem; }
  .weekly-report .report-content {
    display: grid;
    grid-template-columns: 1fr;
    gap: 3rem; }
    @media (min-width: 1024px) {
      .weekly-report .report-content {
        grid-template-columns: 1fr 1fr; } }
  .weekly-report .report-summary h3 {
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
    color: var(--text-primary); }
  .weekly-report .report-summary .summary-items {
    display: flex;
    flex-direction: column;
    gap: 1.5rem; }
  .weekly-report .report-summary .summary-item {
    display: flex;
    gap: 1rem; }
    .weekly-report .report-summary .summary-item .summary-icon {
      width: 3rem;
      height: 3rem;
      background: var(--primary-color);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: white;
      flex-shrink: 0; }
      .weekly-report .report-summary .summary-item .summary-icon i {
        font-size: 1.25rem; }
    .weekly-report .report-summary .summary-item .summary-content h4 {
      font-size: 1.125rem;
      margin-bottom: 0.5rem;
      color: var(--text-primary); }
    .weekly-report .report-summary .summary-item .summary-content p {
      color: var(--text-secondary);
      line-height: 1.5;
      font-size: 0.875rem; }
  .weekly-report .report-charts {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem; }
    .weekly-report .report-charts .chart-container h4 {
      font-size: 1.125rem;
      margin-bottom: 1rem;
      color: var(--text-primary); }
    .weekly-report .report-charts .chart-container .chart-placeholder {
      background: var(--bg-secondary);
      border: 1px solid var(--border-color);
      border-radius: var(--border-radius);
      padding: 2rem;
      text-align: center;
      color: var(--text-secondary);
      min-height: 200px;
      display: flex;
      align-items: center;
      justify-content: center; }
      .weekly-report .report-charts .chart-container .chart-placeholder canvas {
        max-width: 100%;
        height: auto; }

.expert-insights {
  padding: 4rem 0;
  background: var(--bg-secondary); }
  .expert-insights .insights-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem; }
    @media (min-width: 768px) {
      .expert-insights .insights-grid {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1200px) {
      .expert-insights .insights-grid {
        grid-template-columns: repeat(3, 1fr); } }

.insight-card {
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  padding: 1.5rem;
  transition: var(--transition); }
  .insight-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
    border-color: var(--primary-color); }
  .insight-card .expert-profile {
    display: flex;
    gap: 1rem;
    margin-bottom: 1.5rem; }
    .insight-card .expert-profile .expert-avatar {
      width: 4rem;
      height: 4rem;
      border-radius: 50%;
      background: var(--bg-secondary);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0; }
      .insight-card .expert-profile .expert-avatar .article-placeholder {
        font-size: 1.5rem;
        color: var(--text-secondary); }
    .insight-card .expert-profile .expert-info h4 {
      font-size: 1.125rem;
      margin-bottom: 0.25rem;
      color: var(--text-primary); }
    .insight-card .expert-profile .expert-info span {
      color: var(--text-secondary);
      font-size: 0.875rem; }
    .insight-card .expert-profile .expert-info .expert-credentials {
      display: flex;
      gap: 0.5rem;
      margin-top: 0.5rem; }
      .insight-card .expert-profile .expert-info .expert-credentials .credential {
        background: var(--bg-secondary);
        padding: 0.125rem 0.5rem;
        border-radius: var(--border-radius);
        font-size: 0.75rem;
        color: var(--text-secondary); }
  .insight-card .insight-content h3 {
    font-size: 1.125rem;
    margin-bottom: 0.75rem;
    color: var(--text-primary);
    line-height: 1.3; }
  .insight-card .insight-content p {
    color: var(--text-secondary);
    line-height: 1.5;
    margin-bottom: 1rem;
    font-size: 0.875rem; }
  .insight-card .insight-content .insight-meta {
    display: flex;
    gap: 1rem;
    font-size: 0.875rem;
    color: var(--text-secondary); }
    .insight-card .insight-content .insight-meta .insight-topic {
      background: var(--primary-color);
      color: white;
      padding: 0.125rem 0.5rem;
      border-radius: var(--border-radius);
      font-size: 0.75rem; }

.news-feed {
  padding: 4rem 0;
  background: var(--bg-primary); }
  .news-feed .news-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
    flex-wrap: wrap;
    gap: 1rem; }
    @media (max-width: 768px) {
      .news-feed .news-header {
        flex-direction: column;
        align-items: stretch; } }
    .news-feed .news-header .news-filters {
      display: flex;
      gap: 1rem; }
      @media (max-width: 768px) {
        .news-feed .news-header .news-filters {
          flex-direction: column; } }
  .news-feed .news-list {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    margin-bottom: 3rem; }

.news-item {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 1.5rem;
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  transition: var(--transition); }
  .news-item:hover {
    border-color: var(--primary-color);
    box-shadow: var(--shadow-sm); }
  .news-item .news-content {
    flex: 1;
    margin-right: 1rem; }
  .news-item .news-source {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem; }
    .news-item .news-source .article-placeholder {
      width: 1.5rem;
      height: 1.5rem;
      background: var(--bg-secondary);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.75rem;
      color: var(--text-secondary);
      min-height: initial; }
    .news-item .news-source span {
      color: var(--text-secondary);
      font-size: 0.875rem; }
      .news-item .news-source span.news-time {
        color: var(--text-muted); }
  .news-item .news-title {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: var(--text-primary);
    line-height: 1.3; }
  .news-item .news-summary {
    color: var(--text-secondary);
    line-height: 1.5;
    margin-bottom: 1rem;
    font-size: 0.875rem; }
  .news-item .news-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem; }
  .news-item .news-actions {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex-shrink: 0; }
    @media (max-width: 768px) {
      .news-item .news-actions {
        flex-direction: row; } }
  @media (max-width: 768px) {
    .news-item {
      flex-direction: column;
      gap: 1rem; }
      .news-item .news-content {
        margin-right: 0; }
      .news-item .news-actions {
        align-self: stretch; } }

.subscription-cta .cta-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  align-items: center; }
  @media (min-width: 768px) {
    .subscription-cta .cta-content {
      grid-template-columns: 1fr 1fr; } }
.subscription-cta .cta-text {
  text-align: center; }
  @media (min-width: 768px) {
    .subscription-cta .cta-text {
      text-align: left; } }
  .subscription-cta .cta-text h2 {
    font-size: 2rem;
    margin-bottom: 1rem; }
  .subscription-cta .cta-text p {
    font-size: 1.125rem;
    opacity: 0.9;
    line-height: 1.5; }
.subscription-cta .cta-form .email-input-wrapper {
  display: flex;
  gap: 0.5rem;
  margin-bottom: 1rem; }
  @media (max-width: 480px) {
    .subscription-cta .cta-form .email-input-wrapper {
      flex-direction: column; } }
  .subscription-cta .cta-form .email-input-wrapper .email-input {
    flex: 1;
    padding: 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius);
    background: var(--bg-primary);
    color: var(--text-primary);
    font-size: 1rem; }
    .subscription-cta .cta-form .email-input-wrapper .email-input:focus {
      outline: none;
      border-color: var(--primary-color); }
    .subscription-cta .cta-form .email-input-wrapper .email-input::placeholder {
      color: var(--text-muted); }
    .color_scheme_dark .subscription-cta .cta-form .email-input-wrapper .email-input {
      border: 1px solid rgba(255, 255, 255, 0.3);
      background: rgba(255, 255, 255, 0.1);
      color: white; }
      .color_scheme_dark .subscription-cta .cta-form .email-input-wrapper .email-input:focus {
        border-color: rgba(255, 255, 255, 0.5); }
      .color_scheme_dark .subscription-cta .cta-form .email-input-wrapper .email-input::placeholder {
        color: rgba(255, 255, 255, 0.7); }
.subscription-cta .cta-form .subscription-options {
  display: flex;
  gap: 1rem;
  justify-content: center; }
  @media (min-width: 768px) {
    .subscription-cta .cta-form .subscription-options {
      justify-content: flex-start; } }
  @media (max-width: 480px) {
    .subscription-cta .cta-form .subscription-options {
      flex-direction: column;
      gap: 0.5rem; } }
  .subscription-cta .cta-form .subscription-options .checkbox, .subscription-cta .cta-form .subscription-options .checkbox-label {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.875rem;
    cursor: pointer; }
    .subscription-cta .cta-form .subscription-options .checkbox input[type="checkbox"], .subscription-cta .cta-form .subscription-options .checkbox-label input[type="checkbox"] {
      width: 1rem;
      height: 1rem; }

.hero {
  background: linear-gradient(135deg, var(--bg-secondary) 0%, var(--bg-tertiary) 100%);
  padding: 4rem 0; }
  .hero-container {
    max-width: var(--container-max-width);
    margin: 0 auto;
    padding: 0 1rem;
    display: grid;
    grid-template-columns: 1fr;
    gap: 3rem;
    align-items: center; }
    @media (min-width: 768px) {
      .hero-container {
        padding: 0 2rem;
        grid-template-columns: 1fr 1fr;
        gap: 4rem; } }
  .hero-content {
    text-align: center; }
    @media (min-width: 768px) {
      .hero-content {
        text-align: left; } }
  .hero-title {
    font-size: 2.5rem;
    margin-bottom: 1rem;
    color: var(--text-primary); }
  .hero-description {
    font-size: 1.125rem;
    color: var(--text-secondary);
    margin-bottom: 2rem;
    line-height: 1.7; }
  .hero-actions {
    display: flex;
    flex-direction: column;
    gap: 1rem; }
    @media (min-width: 480px) {
      .hero-actions {
        flex-direction: row;
        justify-content: center; } }
    @media (min-width: 768px) {
      .hero-actions {
        justify-content: flex-start; } }
  .hero-visual {
    display: flex;
    justify-content: center; }

.ai-tools-showcase {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
  max-width: 300px; }
  .ai-tools-showcase .tool-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1.5rem 1rem;
    background-color: var(--bg-primary);
    border-radius: var(--border-radius-lg);
    box-shadow: var(--shadow-md);
    transition: var(--transition); }
    .ai-tools-showcase .tool-card:hover {
      transform: translateY(-2px);
      box-shadow: var(--shadow-lg); }
    .ai-tools-showcase .tool-card .tool-icon {
      width: 40px;
      height: 40px;
      margin-bottom: 0.5rem;
      display: flex;
      align-items: center;
      justify-content: center;
      background: var(--primary-color);
      border-radius: 50%;
      color: var(--text-white); }
      .ai-tools-showcase .tool-card .tool-icon i {
        font-size: 1.5rem; }
    .ai-tools-showcase .tool-card span {
      font-size: 0.875rem;
      font-weight: 500;
      color: var(--text-secondary); }

.features {
  padding: 4rem 0;
  background-color: var(--bg-primary); }
  .features-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem; }
    @media (min-width: 768px) {
      .features-grid {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) {
      .features-grid {
        grid-template-columns: repeat(4, 1fr); } }

.feature-card {
  padding: 2rem;
  background-color: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  text-align: center;
  transition: var(--transition); }
  .feature-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
    border-color: var(--primary-color); }
  .feature-card .feature-icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 1rem;
    background-color: var(--primary-color);
    border-radius: var(--border-radius);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-white); }
    .feature-card .feature-icon svg {
      width: 32px;
      height: 32px; }
    .feature-card .feature-icon i {
      font-size: 2rem; }
  .feature-card h3 {
    margin-bottom: 1rem;
    color: var(--text-primary);
    font-size: 1.25rem; }
  .feature-card p {
    color: var(--text-secondary);
    line-height: 1.6;
    margin-bottom: 1.5rem; }
  .feature-card .feature-link {
    color: var(--primary-color);
    font-weight: 500;
    text-decoration: none;
    font-size: 0.875rem; }
    .feature-card .feature-link:hover {
      text-decoration: underline; }

.guide-card, .guides-list .guide-item {
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg);
  padding: 1.5rem;
  transition: var(--transition); }
  .guide-card:hover, .guides-list .guide-item:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md); }
  .guide-card.featured, .guides-list .featured.guide-item {
    border-color: var(--primary-color);
    position: relative; }
    .guide-card.featured::before, .guides-list .featured.guide-item::before {
      content: 'Featured';
      position: absolute;
      top: -0.5rem;
      background: var(--primary-color);
      color: var(--text-white);
      padding: 0.25rem 0.75rem;
      border-radius: var(--border-radius);
      font-size: 0.75rem;
      font-weight: 600; }
  .guide-card .guide-header, .guides-list .guide-item .guide-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem; }
  .guide-card .guide-category, .guides-list .guide-item .guide-category {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500; }
  .guide-card .guide-difficulty, .guides-list .guide-item .guide-difficulty {
    padding: 0.25rem 0.75rem;
    background: var(--bg-secondary);
    border-radius: var(--border-radius);
    font-size: 0.75rem;
    color: var(--text-secondary); }
  .guide-card .guide-title, .guides-list .guide-item .guide-title {
    font-size: 1.25rem;
    margin-bottom: 0.75rem;
    color: var(--text-primary); }
  .guide-card .guide-excerpt, .guides-list .guide-item .guide-excerpt {
    color: var(--text-secondary);
    margin-bottom: 1rem;
    line-height: 1.5; }
  .guide-card .guide-meta, .guides-list .guide-item .guide-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
    font-size: 0.875rem; }
    .guide-card .guide-meta .guide-author, .guides-list .guide-item .guide-meta .guide-author {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: var(--text-secondary); }
    .guide-card .guide-meta .guide-stats, .guides-list .guide-item .guide-meta .guide-stats {
      display: flex;
      gap: 1rem;
      color: var(--text-secondary); }
  .guide-card .guide-actions, .guides-list .guide-item .guide-actions {
    display: flex;
    gap: 0.5rem; }

.form-group {
  margin-bottom: 1.5rem; }
  .form-group label {
    display: block;
    margin-bottom: 0;
    font-weight: 500;
    color: var(--text-primary); }
  .form-group input:not([type='checkbox']),
  .form-group textarea,
  .form-group select {
    width: 100%;
    padding: 0 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius);
    background-color: var(--bg-primary);
    color: var(--text-primary);
    font-size: 0.875rem;
    transition: var(--transition); }
    .form-group input:not([type='checkbox']):focus,
    .form-group textarea:focus,
    .form-group select:focus {
      outline: none;
      border-color: var(--primary-color);
      box-shadow: 0 0 0 2px hsl(var(--ring)/0.2); }
    .form-group input:not([type='checkbox'])::placeholder,
    .form-group textarea::placeholder,
    .form-group select::placeholder {
      color: var(--text-muted); }
  .form-group textarea {
    resize: vertical;
    min-height: 100px; }

.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  margin-top: 2rem; }
  .pagination-numbers {
    display: flex;
    gap: 0.25rem; }
  .pagination-dots {
    color: var(--text-secondary);
    padding: 0.25rem 0.75rem; }

.stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 2rem;
  margin: 2rem 0; }

.stat-card {
  text-align: center;
  padding: 2rem;
  background: var(--bg-primary);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius-lg); }
  .stat-card .stat-number {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--primary-color);
    display: block; }
  .stat-card .stat-label {
    color: var(--text-secondary);
    font-size: 0.875rem;
    margin-top: 0.5rem; }

.popular-posts {
  padding: 4rem 0;
  background-color: var(--bg-primary); }
  .popular-posts .posts-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-bottom: 3rem; }
    @media (min-width: 768px) {
      .popular-posts .posts-grid {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) {
      .popular-posts .posts-grid {
        grid-template-columns: repeat(3, 1fr); } }
  .popular-posts .section-footer {
    text-align: center; }

.post-card {
  background-color: var(--bg-primary);
  border-radius: var(--border-radius-lg);
  padding: 1.5rem;
  box-shadow: var(--shadow-sm);
  transition: var(--transition);
  border: 1px solid var(--border-color); }
  .post-card:hover {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px); }
  .post-card .post-category {
    display: inline-block;
    color: var(--text-white);
    padding: 0.25rem 0.75rem;
    border-radius: var(--border-radius);
    font-size: 0.75rem;
    font-weight: 500;
    margin-bottom: 1rem; }
  .post-card .post-title {
    margin-bottom: 0.75rem;
    color: var(--text-primary);
    line-height: 1.3;
    font-size: 1.125rem;
    font-weight: 600; }
  .post-card .post-excerpt {
    color: var(--text-secondary);
    margin-bottom: 1rem;
    line-height: 1.5;
    font-size: 0.875rem; }
  .post-card .post-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    font-size: 0.875rem;
    color: var(--text-muted); }
    .post-card .post-meta .post-price {
      color: var(--success-color);
      font-weight: 600; }
    .post-card .post-meta .post-author {
      font-weight: 500; }
    .post-card .post-meta .post-date {
      color: var(--text-secondary); }
    .post-card .post-meta .post-views,
    .post-card .post-meta .post-likes {
      color: var(--text-secondary); }

.community-stats {
  display: flex;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
  margin: 2rem 0; }
  .community-stats .stats-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem; }
    @media (min-width: 768px) {
      .community-stats .stats-grid {
        grid-template-columns: repeat(4, 1fr); } }
  .community-stats .stat-item {
    text-align: center; }
    .community-stats .stat-item .stat-number {
      font-size: 2.5rem;
      font-weight: 700;
      margin-bottom: 0.5rem; }
    .community-stats .stat-item .stat-label {
      font-size: 0.875rem; }

/*# sourceMappingURL=main-new.css.map */
