:root{--color-bg-primary:#0a0a0f;--color-bg-secondary:#12121a;--color-bg-card:#1a1a2e;--color-bg-card-hover:#222240;--color-bg-glass:rgba(26,26,46,.7);--color-text-primary:#f0f0f5;--color-text-secondary:#9ca3af;--color-text-muted:#6b7280;--color-accent:#8b5cf6;--color-accent-hover:#7c3aed;--color-accent-glow:rgba(139,92,246,.3);--color-accent-secondary:#ec4899;--color-accent-secondary-hover:#db2777;--color-success:#10b981;--color-warning:#f59e0b;--color-danger:#ef4444;--color-border:hsla(0,0%,100%,.08);--color-border-hover:hsla(0,0%,100%,.15);--gradient-primary:linear-gradient(135deg,#8b5cf6,#ec4899);--gradient-card:linear-gradient(145deg,#1a1a2e,#16162a);--gradient-hero:linear-gradient(180deg,rgba(139,92,246,.15),transparent 60%);--font-primary:"Noto Sans Thai","Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-heading:"Inter","Noto Sans Thai",-apple-system,BlinkMacSystemFont,sans-serif;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--shadow-card:0 4px 20px rgba(0,0,0,.3);--shadow-glow:0 0 30px var(--color-accent-glow);--transition-fast:150ms ease;--transition-base:250ms ease;--transition-slow:400ms ease}*,:after,:before{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-primary);background-color:var(--color-bg-primary);color:var(--color-text-primary);line-height:1.6;min-height:100vh}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}img{max-width:100%;height:auto;display:block}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.section{padding:3rem 0}.section-title{font-family:var(--font-heading);font-size:1.75rem;font-weight:700;margin-bottom:1.5rem;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.card{background:var(--gradient-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.25rem;transition:all var(--transition-base);box-shadow:var(--shadow-card)}.card:hover{border-color:var(--color-border-hover);background:var(--color-bg-card-hover);transform:translateY(-2px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;border:none;border-radius:var(--radius-sm);font-family:var(--font-primary);font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);text-decoration:none}.btn-primary{background:var(--gradient-primary);color:#fff}.btn-primary:hover{opacity:.9;transform:translateY(-1px);box-shadow:var(--shadow-glow)}.btn-secondary{background:var(--color-bg-card);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-bg-card-hover);border-color:var(--color-accent)}.btn-shopee{background:linear-gradient(135deg,#ee4d2d,#f63);color:#fff}.btn-shopee:hover{opacity:.9;transform:translateY(-1px)}.glass{background:var(--color-bg-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-border)}.badge{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:600}.badge-free{background:rgba(16,185,129,.15);color:var(--color-success)}.badge-paid{background:rgba(245,158,11,.15);color:var(--color-warning)}.badge-category{background:rgba(139,92,246,.15);color:var(--color-accent);cursor:pointer;transition:all var(--transition-fast)}.badge-category:hover{background:rgba(139,92,246,.3)}.stars{display:inline-flex;gap:2px;color:var(--color-warning)}.drama-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:1.25rem;gap:1.25rem}.drama-list{display:flex;flex-direction:column;gap:.875rem}.drama-list-item{display:flex;gap:1rem;padding:.75rem!important;overflow:hidden;transition:background var(--transition-fast),border-color var(--transition-fast)}.drama-list-item:hover{background:var(--color-bg-card-hover);border-color:var(--color-border-hover);transform:none}.drama-list-item__cover{flex-shrink:0;width:200px;aspect-ratio:16/9;border-radius:var(--radius-sm);overflow:hidden;background:var(--color-bg-secondary)}.drama-list-item__placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--gradient-primary);font-size:1.75rem}.drama-list-item__body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:.375rem;padding:.125rem 0}.drama-list-item__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.drama-list-item__episodes,.drama-list-item__rating{font-size:.75rem;color:var(--color-text-secondary)}.drama-list-item__title{font-size:1rem;font-weight:600;color:var(--color-text-primary);line-height:1.4;word-break:break-word}.drama-list-item__desc{font-size:.875rem;color:var(--color-text-secondary);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.drama-list-item__desc--muted{color:var(--color-text-muted);font-style:italic}.drama-list-item__tags{display:flex;gap:.375rem;flex-wrap:wrap;margin-top:.25rem}.view-toggle{display:flex;gap:.375rem;margin-left:auto}.view-toggle__btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem .875rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:.8125rem;font-family:var(--font-primary);text-decoration:none;transition:all var(--transition-fast);cursor:pointer}.view-toggle__btn:hover{color:var(--color-text-primary);border-color:var(--color-border-hover)}.view-toggle__btn--active{background:rgba(139,92,246,.15);border-color:var(--color-accent);color:var(--color-accent)}.pagination{justify-content:center;flex-wrap:wrap;gap:.5rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.pagination,.pagination__pages{display:flex;align-items:center}.pagination__pages{gap:.25rem}.pagination__btn,.pagination__page{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;height:2.25rem;padding:0 .75rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:.8125rem;font-family:var(--font-primary);text-decoration:none;transition:all var(--transition-fast)}.pagination__btn:hover,.pagination__page:hover{color:var(--color-text-primary);border-color:var(--color-border-hover)}.pagination__page--active{background:rgba(139,92,246,.2);border-color:var(--color-accent);color:var(--color-accent);font-weight:600;pointer-events:none}.pagination__btn--disabled{opacity:.4;pointer-events:none}.pagination__ellipsis{color:var(--color-text-muted);padding:0 .25rem;font-size:.875rem}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:1rem;gap:1rem}.category-index{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:.75rem;gap:.75rem}.category-index__item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.125rem!important;text-decoration:none;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.category-index__item:hover{transform:translateY(-2px)}.category-index__name{font-size:.9375rem;font-weight:600;color:var(--color-text-primary)}.category-index__count{flex-shrink:0;font-size:.75rem;color:var(--color-text-muted)}.watch-table{width:100%;border-collapse:collapse;font-size:.875rem}.watch-table td,.watch-table th{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--color-border)}.watch-table th{color:var(--color-text-secondary);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.watch-table tr:hover td{background:rgba(139,92,246,.05)}.search-input{width:100%;padding:.75rem 1rem .75rem 2.75rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-primary);font-family:var(--font-primary);font-size:1rem;transition:all var(--transition-fast);outline:none}.search-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-glow)}.search-input::placeholder{color:var(--color-text-muted)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeInUp .5s ease forwards}.skeleton{background:linear-gradient(90deg,var(--color-bg-card) 25%,var(--color-bg-card-hover) 50%,var(--color-bg-card) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}@media (max-width:768px){.container{padding:0 1rem}.section-title{font-size:1.375rem}.drama-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.drama-list-item__cover{width:128px}.drama-list-item__title{font-size:.9375rem}.drama-list-item__desc{-webkit-line-clamp:3;font-size:.8125rem}.view-toggle{width:100%;margin-left:0}.view-toggle__btn{flex:1 1}.pagination__btn{font-size:.75rem;padding:0 .5rem}.product-grid{grid-template-columns:repeat(2,1fr)}.watch-table{font-size:.8125rem}}.yt-embed{max-width:960px}.yt-embed__frame{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--radius-md);overflow:hidden;background:#000;box-shadow:var(--shadow-card)}.yt-embed__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.yt-embed__link{margin-top:.75rem;font-size:.875rem}.yt-embed__link a{color:var(--color-primary);text-decoration:none}.yt-embed__link a:hover{text-decoration:underline}