/* ═══════════════════════════════════════════════════════════
   Эко-Справочник ФККО — Big Tech Design System
   Ecological palette × Premium minimalism
   ═══════════════════════════════════════════════════════════ */

:root {
  /* Forest greens */
  --g950: #081C14; --g900: #0F3324; --g800: #1A5C38;
  --g700: #28794A; --g600: #2D7A4F; --g500: #40916C;
  --g400: #52B788; --g300: #74C69D; --g200: #95D5B2;
  --g100: #B7E4C7; --g50: #D8F3DC; --g25: #EDF7EF;

  /* Hazard class colors */
  --h1: #B91C1C; --h1-bg: #FEE2E2; --h1-dot: #EF4444;
  --h2: #C2410C; --h2-bg: #FFEDD5; --h2-dot: #F97316;
  --h3: #B45309; --h3-bg: #FEF3C7; --h3-dot: #F59E0B;
  --h4: #0E7490; --h4-bg: #CFFAFE; --h4-dot: #06B6D4;
  --h5: #15803D; --h5-bg: #DCFCE7; --h5-dot: #22C55E;

  /* Neutrals */
  --bg: #F9FAFB;
  --surface: #FFFFFF;
  --surface-hover: #F3F4F6;
  --text: #111827;
  --text-secondary: #4B5563;
  --text-tertiary: #6B7280;
  --border: #E5E7EB;
  --border-hover: #D1D5DB;
  --shadow-sm: 0 1px 2px rgba(0,0,0,.04);
  --shadow-md: 0 4px 12px rgba(0,0,0,.06);
  --shadow-lg: 0 12px 32px rgba(0,0,0,.08);
  --shadow-xl: 0 24px 48px rgba(0,0,0,.10);

  /* Radii */
  --r-xs: 6px; --r-sm: 8px; --r-md: 12px;
  --r-lg: 16px; --r-xl: 24px; --r-full: 9999px;

  /* Typography */
  --font: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  --font-mono: 'SF Mono', 'Fira Code', 'Cascadia Code', Consolas, monospace;

  /* Transitions */
  --ease: cubic-bezier(.4,0,.2,1);
  --ease-spring: cubic-bezier(.34,1.56,.64,1);
}

/* ═══════════════════════════════════════════════════════════
   Reset & Base
   ═══════════════════════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.6;min-height:100vh;display:flex;flex-direction:column}
main{flex:1}

::selection{background:var(--g200);color:var(--g900)}

/* ═══════════════════════════════════════════════════════════
   Header
   ═══════════════════════════════════════════════════════════ */
.header{background:rgba(255,255,255,.85);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}
.header__inner{max-width:1200px;margin:0 auto;padding:0 24px;height:60px;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);font-weight:700;font-size:1.1rem;letter-spacing:-.01em}
.logo__icon{font-size:1.4rem}
.logo__text{background:linear-gradient(135deg,var(--g700),var(--g500));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.nav{display:flex;align-items:center;gap:4px}
.nav__link{padding:8px 14px;border-radius:var(--r-sm);font-size:.88rem;font-weight:500;color:var(--text-secondary);text-decoration:none;transition:all .15s var(--ease);cursor:pointer}
.nav__link:hover{background:var(--g25);color:var(--g700)}
.nav__dropdown{position:relative}
.nav__menu{display:none;position:absolute;top:100%;right:0;margin-top:4px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-lg);padding:6px;min-width:180px;z-index:200}
.nav__dropdown:hover .nav__menu{display:block}
.nav__menu-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--r-sm);font-size:.85rem;color:var(--text-secondary);text-decoration:none;transition:background .12s}
.nav__menu-item:hover{background:var(--g25);color:var(--g700)}

/* ═══════════════════════════════════════════════════════════
   Theme Toggle
   ═══════════════════════════════════════════════════════════ */
.theme-toggle{background:none;border:1.5px solid var(--border);border-radius:var(--r-full);width:38px;height:38px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);font-size:1.1rem;transition:all .25s var(--ease);margin-left:4px;position:relative;overflow:hidden}
.theme-toggle:hover{border-color:var(--g400);color:var(--g600);background:var(--g25)}
.theme-toggle__icon{position:absolute;transition:all .4s var(--ease-spring)}
.theme-toggle__icon--sun{opacity:0;transform:scale(.5) rotate(-90deg)}
.theme-toggle__icon--moon{opacity:1;transform:scale(1) rotate(0)}
[data-theme="dark"] .theme-toggle__icon--sun{opacity:1;transform:scale(1) rotate(0)}
[data-theme="dark"] .theme-toggle__icon--moon{opacity:0;transform:scale(.5) rotate(90deg)}

/* ═══════════════════════════════════════════════════════════
   Buttons
   ═══════════════════════════════════════════════════════════ */
.btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:var(--r-full);font-size:.88rem;font-weight:600;border:none;cursor:pointer;transition:all .2s var(--ease);text-decoration:none}
.btn--primary{background:var(--g700);color:#fff}
.btn--primary:hover{background:var(--g800);transform:translateY(-1px);box-shadow:var(--shadow-md)}
.btn--outline{background:transparent;color:var(--g700);border:1.5px solid var(--g300)}
.btn--outline:hover{background:var(--g25);border-color:var(--g500)}

/* ═══════════════════════════════════════════════════════════
   Hero (Home)
   ═══════════════════════════════════════════════════════════ */
.hero{position:relative;height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:76px 24px 0;text-align:center;overflow:hidden}
.hero__inner{max-width:800px;width:100%;margin:0 auto;position:relative;z-index:2;display:flex;flex-direction:column;align-items:center}
.hero__title{font-size:3.2rem;font-weight:800;letter-spacing:-.03em;line-height:1.1;color:var(--g950);margin-bottom:12px}
.hero__subtitle{font-size:1.1rem;color:var(--text-secondary);line-height:1.6;margin-bottom:28px;max-width:560px}
.hero__search{position:relative;max-width:640px;width:100%;margin:0 auto 24px}
.hero__meta{display:flex;gap:24px;justify-content:center;flex-wrap:wrap}
.hero__stat{font-size:.82rem;color:var(--text-tertiary);padding:6px 14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-full)}
.hero__scroll{position:absolute;bottom:94px;left:50%;transform:translateX(-50%);z-index:1;color:var(--g500);font-size:.85rem;animation:bounceDown 2s ease-in-out infinite;text-decoration:none;cursor:pointer;transition:color .2s}
.hero__scroll:hover{color:var(--g700)}
@keyframes bounceDown{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}
.hero__bg{position:absolute;inset:0;z-index:0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 0%, rgba(45,122,79,.06) 0%, transparent 60%),
    radial-gradient(circle at 20% 80%, rgba(64,145,108,.04) 0%, transparent 40%),
    radial-gradient(circle at 80% 80%, rgba(116,198,157,.04) 0%, transparent 40%);
}

/* Search input */
.search-input{width:100%;height:60px;padding:0 24px 0 56px;border:2px solid var(--border);border-radius:var(--r-xl);font-family:var(--font);font-size:1.05rem;color:var(--text);background:var(--surface);box-shadow:var(--shadow-sm);transition:all .25s var(--ease);outline:none}
.search-input::placeholder{color:var(--text-tertiary)}
.search-input:focus{border-color:var(--g400);box-shadow:0 0 0 4px rgba(45,122,79,.1),var(--shadow-md)}
.search-input--small{height:44px;font-size:.9rem;padding:0 16px 0 44px;border-radius:var(--r-lg)}
.hero__search::before{content:'';position:absolute;left:18px;top:50%;transform:translateY(-50%);width:20px;height:20px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236B7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z'/%3E%3C/svg%3E") center/contain no-repeat;z-index:1;pointer-events:none}

/* Search results dropdown */
.search-results{display:none;position:absolute;top:72px;left:0;right:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-xl);max-height:480px;overflow-y:auto;z-index:100;text-align:left}
.search-results--visible{display:block}
.search-results__item{display:flex;align-items:center;gap:14px;padding:14px 20px;text-decoration:none;color:var(--text);border-bottom:1px solid var(--g25);transition:background .12s}
.search-results__item:last-child{border-bottom:none}
.search-results__item:hover{background:var(--g25)}
.search-results__item:first-child{border-radius:var(--r-lg) var(--r-lg) 0 0}
.search-results__item:last-child{border-radius:0 0 var(--r-lg) var(--r-lg)}
.search-results__code{font-family:var(--font-mono);font-size:.8rem;color:var(--text-tertiary);min-width:110px}
.search-results__name{font-size:.92rem;flex:1}
.search-results__empty{padding:24px;text-align:center;color:var(--text-tertiary);font-size:.9rem}

/* ═══════════════════════════════════════════════════════════
   Class cards (Home)
   ═══════════════════════════════════════════════════════════ */
.classes{padding:64px 24px 80px;background:var(--bg)}
.classes__inner{max-width:1100px;margin:0 auto}
.classes__title{font-size:1.5rem;font-weight:700;color:var(--g950);margin-bottom:24px;letter-spacing:-.01em}
.classes__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}

.class-card{display:flex;flex-direction:column;gap:14px;padding:22px 20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);text-decoration:none;transition:all .25s var(--ease);position:relative;overflow:hidden}
.class-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:transparent}
.class-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px}
.class-card--1{border-left:3px solid var(--h1-dot)}
.class-card--2{border-left:3px solid var(--h2-dot)}
.class-card--3{border-left:3px solid var(--h3-dot)}
.class-card--4{border-left:3px solid var(--h4-dot)}
.class-card--5{border-left:3px solid var(--h5-dot)}
.class-card--1::before{background:var(--h1-dot)}
.class-card--2::before{background:var(--h2-dot)}
.class-card--3::before{background:var(--h3-dot)}
.class-card--4::before{background:var(--h4-dot)}
.class-card--5::before{background:var(--h5-dot)}
.class-card__head{display:flex;align-items:center;gap:10px}
.class-card__badge{width:32px;height:32px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;color:#fff}
.class-card--1 .class-card__badge{background:var(--h1)}
.class-card--2 .class-card__badge{background:var(--h2)}
.class-card--3 .class-card__badge{background:var(--h3)}
.class-card--4 .class-card__badge{background:var(--h4)}
.class-card--5 .class-card__badge{background:var(--h5)}
.class-card__label{font-size:.88rem;font-weight:600;color:var(--text);line-height:1.3}
.class-card__count{font-size:.82rem;color:var(--text-tertiary)}
.class-card__arrow{font-size:1.1rem;color:var(--text-tertiary);align-self:flex-end;transition:transform .2s var(--ease)}
.class-card:hover .class-card__arrow{transform:translateX(4px);color:var(--g600)}

/* ═══════════════════════════════════════════════════════════
   Info section (Home)
   ═══════════════════════════════════════════════════════════ */
.info{padding:0 24px 64px}
.info__inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.info__card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:28px;box-shadow:var(--shadow-sm)}
.info__card h3{font-size:1.05rem;font-weight:700;color:var(--g800);margin-bottom:10px}
.info__card p{font-size:.92rem;color:var(--text-secondary);line-height:1.65}

/* ═══════════════════════════════════════════════════════════
   Waste Detail Page
   ═══════════════════════════════════════════════════════════ */
.waste-detail{padding:40px 24px 64px}
.waste-detail__inner{max-width:800px;margin:0 auto}

/* Breadcrumbs */
.breadcrumbs{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:28px;font-size:.85rem}
.breadcrumbs__link{color:var(--text-tertiary);text-decoration:none;transition:color .15s}
.breadcrumbs__link:hover{color:var(--g600)}
.breadcrumbs__sep{color:var(--text-tertiary);margin:0 2px}
.breadcrumbs__current{color:var(--text-secondary);font-weight:500}

/* Hazard badge */
.hazard-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:var(--r-full);font-size:.85rem;font-weight:600}
.hazard-badge--1{background:var(--h1-bg);color:var(--h1)}
.hazard-badge--2{background:var(--h2-bg);color:var(--h2)}
.hazard-badge--3{background:var(--h3-bg);color:var(--h3)}
.hazard-badge--4{background:var(--h4-bg);color:var(--h4)}
.hazard-badge--5{background:var(--h5-bg);color:var(--h5)}
.hazard-badge--lg{padding:10px 20px;font-size:1rem}
.hazard-badge__num{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800;color:#fff}
.hazard-badge--1 .hazard-badge__num{background:var(--h1)}
.hazard-badge--2 .hazard-badge__num{background:var(--h2)}
.hazard-badge--3 .hazard-badge__num{background:var(--h3)}
.hazard-badge--4 .hazard-badge__num{background:var(--h4)}
.hazard-badge--5 .hazard-badge__num{background:var(--h5)}
.hazard-badge--lg .hazard-badge__num{width:28px;height:28px;font-size:.9rem}

/* Main waste card */
.waste-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:36px;box-shadow:var(--shadow-sm)}
.waste-card__header{margin-bottom:20px}
.waste-card__title{font-size:1.8rem;font-weight:800;color:var(--g950);line-height:1.3;letter-spacing:-.01em;margin-bottom:20px}
.waste-card__code{display:flex;align-items:center;gap:12px;margin-bottom:24px}
.waste-card__code-label{font-size:.82rem;color:var(--text-tertiary);font-weight:500;text-transform:uppercase;letter-spacing:.05em}
.waste-card__code-value{font-family:var(--font-mono);font-size:1.1rem;font-weight:600;color:var(--g700);background:var(--g25);padding:6px 14px;border-radius:var(--r-sm)}
.waste-card__desc{font-size:.95rem;color:var(--text-secondary);line-height:1.7;margin-bottom:28px}
.waste-card__meta{padding-top:20px;border-top:1px solid var(--border)}
.waste-card__updated{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--text-tertiary)}
.waste-card__updated svg{color:var(--g400);flex-shrink:0}

/* Children section */
.waste-children{margin-top:40px}
.waste-children__title{font-size:1.2rem;font-weight:700;color:var(--g950);margin-bottom:18px;letter-spacing:-.01em}
.waste-children__grid{display:flex;flex-direction:column;gap:8px}

.waste-child-card{display:flex;align-items:center;gap:14px;padding:16px 20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);text-decoration:none;transition:all .2s var(--ease)}
.waste-child-card:hover{background:var(--g25);border-color:var(--g200);transform:translateX(4px)}
.waste-child-card__info{flex:1;min-width:0}
.waste-child-card__code{font-family:var(--font-mono);font-size:.8rem;color:var(--text-tertiary);display:block;margin-bottom:2px}
.waste-child-card__name{font-size:.9rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.waste-child-card__arrow{font-size:1rem;color:var(--text-tertiary);transition:transform .2s}
.waste-child-card:hover .waste-child-card__arrow{transform:translateX(4px);color:var(--g600)}

/* ═══════════════════════════════════════════════════════════
   Hazard dots
   ═══════════════════════════════════════════════════════════ */
.hazard-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.hazard-dot--1{background:var(--h1-dot)}
.hazard-dot--2{background:var(--h2-dot)}
.hazard-dot--3{background:var(--h3-dot)}
.hazard-dot--4{background:var(--h4-dot)}
.hazard-dot--5{background:var(--h5-dot)}

/* ═══════════════════════════════════════════════════════════
   Class page
   ═══════════════════════════════════════════════════════════ */
.class-page{padding:40px 24px 64px}
.class-page__inner{max-width:1000px;margin:0 auto}
.class-header{margin-bottom:32px}
.class-header__title{font-size:2rem;font-weight:800;color:var(--g950);letter-spacing:-.02em;margin:18px 0 8px}
.class-header__count{font-size:.92rem;color:var(--text-tertiary);margin-bottom:22px}
.class-header__search{max-width:400px}
.class-page__note{padding:20px;text-align:center;color:var(--text-tertiary);font-size:.9rem}

.class-list{display:flex;flex-direction:column;gap:4px}
.class-item{display:flex;align-items:center;gap:14px;padding:14px 18px;background:var(--surface);border-radius:var(--r-md);text-decoration:none;color:var(--text);border:1px solid transparent;transition:all .2s var(--ease)}
.class-item:hover{background:var(--g25);border-color:var(--g100);transform:translateX(4px)}
.class-item__code{font-family:var(--font-mono);font-size:.82rem;color:var(--text-tertiary);min-width:120px}
.class-item__name{font-size:.92rem;flex:1}
.class-item__arrow{font-size:.9rem;color:var(--text-tertiary);transition:transform .2s}
.class-item:hover .class-item__arrow{transform:translateX(4px);color:var(--g600)}

/* ═══════════════════════════════════════════════════════════
   Footer
   ═══════════════════════════════════════════════════════════ */
.footer{border-top:1px solid var(--border);background:var(--surface);padding:36px 24px;margin-top:auto}
.footer__inner{max-width:1100px;margin:0 auto;display:flex;gap:32px;justify-content:space-between;flex-wrap:wrap}
.footer__brand{font-weight:700;font-size:.92rem;color:var(--text);margin-bottom:4px}
.footer__text{font-size:.82rem;color:var(--text-tertiary);line-height:1.7}
.footer__col--right{text-align:right}

/* ═══════════════════════════════════════════════════════════
   404
   ═══════════════════════════════════════════════════════════ */
.not-found{padding:80px 24px;text-align:center}
.not-found h1{font-size:5rem;font-weight:800;color:var(--g200);letter-spacing:-.04em;line-height:1}
.not-found p{font-size:1.1rem;color:var(--text-secondary);margin:16px 0 28px}

/* ═══════════════════════════════════════════════════════════
   Animations
   ═══════════════════════════════════════════════════════════ */
@keyframes fadeInUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.waste-card,.class-header,.class-list,.waste-children{animation:fadeInUp .4s var(--ease) both}
.class-item:nth-child(1){animation-delay:.05s}
.class-item:nth-child(2){animation-delay:.07s}
.class-item:nth-child(3){animation-delay:.09s}
.class-item:nth-child(4){animation-delay:.11s}
.class-item:nth-child(5){animation-delay:.13s}

/* ═══════════════════════════════════════════════════════════
   Dark Theme — Forest Night
   ═══════════════════════════════════════════════════════════ */
[data-theme="dark"] {
  --bg: #0A1628;
  --surface: #111D2E;
  --surface-hover: #162436;
  --text: #E8EDF2;
  --text-secondary: #94A3B8;
  --text-tertiary: #64748B;
  --border: #1E2D42;
  --border-hover: #2D3F5A;
  --shadow-sm: 0 1px 2px rgba(0,0,0,.3);
  --shadow-md: 0 4px 12px rgba(0,0,0,.4);
  --shadow-lg: 0 12px 32px rgba(0,0,0,.5);
  --shadow-xl: 0 24px 48px rgba(0,0,0,.6);
  --g950: #D8F3DC;
  --g900: #B7E4C7;
  --g800: #95D5B2;
  --g700: #52B788;
  --g600: #40916C;
  --g500: #40916C;
  --g400: #2D7A4F;
  --g300: #1A5C38;
  --g200: #0F3324;
  --g100: #0A2618;
  --g50: #061810;
  --g25: #0E1F2D;
  --h1: #FCA5A5; --h1-bg: #1F1418; --h1-dot: #EF4444;
  --h2: #FDBA74; --h2-bg: #1F1710; --h2-dot: #F97316;
  --h3: #FDE68A; --h3-bg: #1F1A10; --h3-dot: #F59E0B;
  --h4: #67E8F9; --h4-bg: #101E1F; --h4-dot: #06B6D4;
  --h5: #86EFAC; --h5-bg: #101F14; --h5-dot: #22C55E;
}
[data-theme="dark"] .header{background:rgba(17,29,46,.92);border-bottom-color:var(--border)}
[data-theme="dark"] .hero__bg{
  background:
    radial-gradient(ellipse 80% 60% at 50% 0%, rgba(45,122,79,.08) 0%, transparent 60%),
    radial-gradient(circle at 20% 80%, rgba(64,145,108,.06) 0%, transparent 40%),
    radial-gradient(circle at 80% 80%, rgba(116,198,157,.04) 0%, transparent 40%);
}
[data-theme="dark"] .search-input{background:var(--surface);border-color:var(--border);color:var(--text)}
[data-theme="dark"] .search-input:focus{border-color:var(--g500);box-shadow:0 0 0 4px rgba(82,183,136,.12),var(--shadow-md)}
[data-theme="dark"] .search-results{background:var(--surface);border-color:var(--border)}
[data-theme="dark"] .search-results__item{border-bottom-color:var(--g100)}
[data-theme="dark"] .search-results__item:hover{background:var(--surface-hover)}
[data-theme="dark"] .class-card{background:var(--surface);border-color:var(--border)}
[data-theme="dark"] .class-card:hover{border-color:var(--g400);box-shadow:var(--shadow-lg)}
[data-theme="dark"] .class-card--1{border-left-color:var(--h1-dot)}
[data-theme="dark"] .class-card--2{border-left-color:var(--h2-dot)}
[data-theme="dark"] .class-card--3{border-left-color:var(--h3-dot)}
[data-theme="dark"] .class-card--4{border-left-color:var(--h4-dot)}
[data-theme="dark"] .class-card--5{border-left-color:var(--h5-dot)}
[data-theme="dark"] .waste-card{background:var(--surface);border-color:var(--border)}
[data-theme="dark"] .waste-card__code-value{background:var(--g100);color:var(--g500)}
[data-theme="dark"] .waste-child-card{background:var(--surface);border-color:var(--border)}
[data-theme="dark"] .waste-child-card:hover{background:var(--surface-hover);border-color:var(--g400)}
[data-theme="dark"] .class-item{background:var(--surface)}
[data-theme="dark"] .class-item:hover{background:var(--surface-hover);border-color:var(--g300)}
[data-theme="dark"] .info__card{background:var(--surface);border-color:var(--border)}
[data-theme="dark"] .footer{background:var(--surface);border-top-color:var(--border)}
[data-theme="dark"] .hero__stat{background:var(--surface);border-color:var(--border)}
[data-theme="dark"] .nav__link:hover{background:var(--g100);color:var(--g500)}
[data-theme="dark"] .nav__menu{background:var(--surface);border-color:var(--border)}
[data-theme="dark"] .nav__menu-item:hover{background:var(--g100);color:var(--g500)}
[data-theme="dark"] ::selection{background:rgba(82,183,136,.25);color:var(--g200)}
[data-theme="dark"] .logo__text{background:linear-gradient(135deg,var(--g500),var(--g400));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
[data-theme="dark"] .not-found h1{color:var(--g300)}
[data-theme="dark"] .breadcrumbs__link:hover{color:var(--g500)}
[data-theme="dark"] .waste-card__meta{border-top-color:var(--border)}

/* ═══════════════════════════════════════════════════════════
   Responsive
   ═══════════════════════════════════════════════════════════ */
@media(max-width:768px){
  .hero{padding:48px 16px 48px}
  .hero__title{font-size:2rem}
  .hero__subtitle{font-size:1rem}
  .classes__grid{grid-template-columns:1fr}
  .waste-card{padding:24px}
  .waste-card__title{font-size:1.4rem}
  .waste-card__code-value{font-size:.95rem}
  .class-header__title{font-size:1.5rem}
  .footer__inner{flex-direction:column;gap:16px}
  .footer__col--right{text-align:left}
  .class-item__code{min-width:90px;font-size:.75rem}
  .breadcrumbs{font-size:.8rem}
}
@media(max-width:480px){
  .header__inner{padding:0 14px}
  .hero__meta{gap:10px}
  .hero__stat{font-size:.76rem;padding:4px 10px}
  .waste-card__code{flex-direction:column;align-items:flex-start;gap:6px}
}
/* ═══════════════════════════════════════════════════════════
   USP Section (Home)
   ═══════════════════════════════════════════════════════════ */
.usp{padding:80px 24px;background:var(--surface);border-top:1px solid var(--border)}
.usp__inner{max-width:1100px;margin:0 auto}
.usp__title{font-size:1.8rem;font-weight:800;color:var(--g950);letter-spacing:-.02em;margin-bottom:12px;text-align:center}
.usp__subtitle{font-size:1rem;color:var(--text-secondary);text-align:center;max-width:620px;margin:0 auto 48px;line-height:1.6}
.usp__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:18px}

.usp-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-lg);padding:28px 24px;transition:all .25s var(--ease)}
.usp-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--g200)}
.usp-card__icon{font-size:2rem;margin-bottom:14px;line-height:1}
.usp-card__title{font-size:1rem;font-weight:700;color:var(--g800);margin-bottom:8px;letter-spacing:-.01em}
.usp-card__text{font-size:.9rem;color:var(--text-secondary);line-height:1.6}
.usp-card__link{color:var(--g600);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.usp-card__link:hover{color:var(--g700)}

[data-theme="dark"] .usp{background:var(--surface);border-top-color:var(--border)}
[data-theme="dark"] .usp-card{background:var(--bg);border-color:var(--border)}
[data-theme="dark"] .usp-card:hover{border-color:var(--g400);box-shadow:var(--shadow-lg)}

/* Audience Section */
.audience{padding:64px 24px 80px;background:var(--bg)}
.audience__inner{max-width:1100px;margin:0 auto}
.audience__title{font-size:1.5rem;font-weight:700;color:var(--g950);margin-bottom:28px;text-align:center;letter-spacing:-.01em}
.audience__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.audience-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:28px 24px;text-align:center;transition:all .2s var(--ease)}
.audience-card:hover{border-color:var(--g200);box-shadow:var(--shadow-sm)}
.audience-card__emoji{font-size:2.2rem;display:block;margin-bottom:12px}
.audience-card__title{font-size:1rem;font-weight:700;color:var(--g800);margin-bottom:8px}
.audience-card__text{font-size:.9rem;color:var(--text-secondary);line-height:1.6}

[data-theme="dark"] .audience-card{background:var(--surface);border-color:var(--border)}
[data-theme="dark"] .audience-card:hover{border-color:var(--g400)}
