/* Reset ve Base Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    line-height: 1.6;
    color: #1a1a1a;
    background-color: #ffffff;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Header Styles */
.header {
    background: #ffffff;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.08);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
}

.navbar {
    padding: 0;
}

.nav-container {
    width: 100%;
    padding: 0 20px;
    margin: 0;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    height: 70px;
}

.nav-brand {
    display: flex;
    align-items: center;
    font-size: 24px;
    font-weight: 700;
    color: #b10000;
    text-decoration: none;
    justify-self: start;
}

.nav-brand i {
    margin-right: 8px;
    font-size: 28px;
}

.nav-left { display:flex; align-items:center; gap:24px; justify-content:flex-start; }
.nav-menu { display:flex; align-items:center; gap:32px; }
.nav-center { display:flex; align-items:center; justify-content:center; }
.nav-right { display:flex; align-items:center; gap:16px; justify-content:flex-end; }

.nav-link {
    text-decoration: none;
    color: #b10000;
    font-weight: 500;
    transition: color 0.3s ease;
    position: relative;
}

.nav-link:hover {
    color: #b10000;
}

.nav-link:hover::after {
    width: 100%;
}

.nav-link::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 0;
    width: 0;
    height: 2px;
    background: #b10000;
    transition: width 0.3s ease;
}

.nav-link-disabled {
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: all !important;
    position: relative;
}

.nav-link-disabled:hover::before {
    content: attr(title);
    position: absolute;
    bottom: -35px;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.9);
    color: white;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 12px;
    white-space: nowrap;
    z-index: 1000;
}

.nav-link-disabled:hover::after {
    width: 0 !important;
}

/* nav-actions artık nav-right olarak yeniden düzenlendi */

.search-box {
    position: relative;
    display: flex;
    align-items: center;
}

.search-box i {
    position: absolute;
    left: 12px;
    color: #9ca3af;
    z-index: 1;
}

.search-box input {
    padding: 10px 12px 10px 40px;
    border: 2px solid #e5e7eb;
    border-radius: 12px;
    font-size: 14px;
    width: 280px;
    transition: all 0.3s ease;
}

.search-box input:focus {
    outline: none;
    border-color: #b10000;
    box-shadow: 0 0 0 3px rgba(241, 99, 99, 0.1);
}

.btn-upload {
    background: linear-gradient(135deg, #b10000 0%, #800101 100%);
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
}

.btn-upload:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(255, 0, 0, 0.3);
}

.btn-login {
    background: white;
    color: #b10000;
    border: 2px solid #b10000;
    padding: 8px 20px;
    border-radius: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
}

.btn-login:hover {
    background: #b10000;
    color: white;
}

/* Hero Section */
.hero {
    padding: 140px 20px 80px;
    background: linear-gradient(135deg, #b10000 0%, #830101 100%);
    color: white;
    display: flex;
    align-items: center;
    min-height: 600px;
    position: relative;
    overflow: hidden;
}

.hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grid" width="10" height="10" patternUnits="userSpaceOnUse"><path d="M 10 0 L 0 0 0 10" fill="none" stroke="rgba(255,255,255,0.1)" stroke-width="0.5"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');
}

.hero-content {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
    position: relative;
    z-index: 1;
}

.hero-content h1 {
    font-size: 3.5rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 24px;
    background: linear-gradient(135deg, #ffffff 0%, #e0e7ff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.hero-content p {
    font-size: 1.25rem;
    opacity: 0.9;
    margin-bottom: 40px;
    line-height: 1.6;
}

.hero-stats {
    display: flex;
    gap: 40px;
}

.stat {
    text-align: center;
}

.stat strong {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 4px;
}

.stat span {
    opacity: 0.8;
    font-size: 0.9rem;
}

.hero-image {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Home header illustration */
.home-header-illustration { position:absolute; right: 16px; bottom: -16px; width: 420px; height: auto; pointer-events:none; opacity:.9; }
@media (max-width: 1024px) { .home-header-illustration { width: 360px; bottom: -12px; } }
@media (max-width: 768px) { .home-header-illustration { width: 280px; bottom: -10px; right: 8px; opacity:.85; } }
@media (max-width: 640px) { .home-header-illustration { display:none; } }

.floating-card {
    background: rgba(255, 255, 255, 0.95);
    border-radius: 20px;
    padding: 20px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(10px);
    animation: float 6s ease-in-out infinite;
    max-width: 350px;
}

.floating-card img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    border-radius: 12px;
    margin-bottom: 16px;
}

.card-content h4 {
    color: #1a1a1a;
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 8px;
}

.card-content p {
    color: #6b7280;
    font-size: 0.9rem;
}

@keyframes float {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-20px); }
}

/* Categories Section */
.categories {
    padding: 80px 20px;
    background: #f8fafc;
}

.categories h2 {
    text-align: center;
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 60px;
    color: #1a1a1a;
}

.category-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
}

.category-card {
    background: white;
    padding: 32px;
    border-radius: 20px;
    text-align: center;
    transition: all 0.3s ease;
    border: 1px solid #e5e7eb;
    cursor: pointer;
}

.category-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    border-color: #b10000;
}

.category-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #b10000 0%, #800101 100%);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 24px;
    transition: all 0.3s ease;
}

.category-card:hover .category-icon {
    transform: scale(1.1);
}

.category-icon i {
    font-size: 32px;
    color: white;
}

.category-card h3 {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 8px;
    color: #1a1a1a;
}

.category-card p {
    color: #6b7280;
    font-size: 0.9rem;
}

/* Featured Models Section */
.featured-models {
    padding: 80px 20px;
    background: white;
}

/* Last Models Section */
.last-models {
    padding: 80px 20px;
    background: #f8fafc;
}

/* Home: Latest Blogs */
.home-latest-blogs {
    padding: 60px 20px;
    background: white;
}

.home-latest-blogs .section-header {
    margin-bottom: 32px;
}

.home-latest-blogs .section-header h2 {
    font-size: 2rem;
    font-weight: 700;
    color: #1a1a1a;
}

.home-latest-blogs .btn-explore {
    align-self: center;
}

.home-latest-blogs .blog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 24px;
}

.home-latest-blogs .blog-card {
    cursor: pointer;
}

.home-latest-blogs-cta {
    display: flex;
    justify-content: center;
    margin-top: 28px;
}

.section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 60px;
}

.section-header h2 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #1a1a1a;
}

.filter-tabs {
    display: flex;
    gap: 8px;
    background: #f1f5f9;
    padding: 6px;
    border-radius: 12px;
}

.tab {
    padding: 12px 24px;
    border: none;
    background: transparent;
    border-radius: 8px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    color: #64748b;
}

.tab.active {
    background: #b10000;
    color: white;
}

.tab:hover:not(.active) {
    background: rgba(191, 0, 0, 0.1);
    color: #b10000;
}

.models-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 32px;
}

.model-card {
    background: white;
    border-radius: 20px;
    overflow: hidden;
    transition: all 0.3s ease;
    border: 1px solid #e5e7eb;
    cursor: pointer;
}

.model-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
    border-color: #b10000;
}

.model-image {
    position: relative;
    overflow: hidden;
}

.model-image img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.model-card:hover .model-image img {
    transform: scale(1.05);
}

.model-overlay {
    position: absolute;
    top: 12px;
    right: 12px;
    display: flex;
    gap: 8px;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.model-card:hover .model-overlay {
    opacity: 1;
}

.btn-like,
.btn-download {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: none;
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(10px);
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
}

.btn-like:hover,
.btn-download:hover {
    background: white;
    color: #b10000;
    transform: scale(1.1);
}

.model-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    background: #10b981;
    color: white;
}

.model-badge.premium {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

.model-info {
    padding: 24px;
}

.model-info h4 {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 8px;
    color: #1a1a1a;
}

.model-creator {
    color: #6b7280;
    font-size: 0.9rem;
    margin-bottom: 16px;
}

.model-creator strong {
    color: #b10000;
}

.model-stats {
    display: flex;
    gap: 16px;
    font-size: 0.85rem;
    color: #6b7280;
}

.model-stats span {
    display: flex;
    align-items: center;
    gap: 4px;
}

.model-stats i {
    font-size: 0.75rem;
}

/* Profile: Model card title/link improvements */
.model-content h3 .model-link {
    display: block;
    color: inherit;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.model-content h3 .model-link:hover,
.model-content h3 .model-link:focus {
    color: #b10000;
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* Profile: Compact rating stars on cards */
.rating-small {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.rating-small i { color: #fbbf24; font-size: 0.85rem; }
.rating-small .rating-number { color: #6b7280; font-size: 0.85rem; margin-left: 2px; }

/* Profile: Category as a chip */
.model-meta .model-category {
    background: #f3f4f6;
    border: 1px solid #e5e7eb;
    padding: 2px 8px;
    border-radius: 9999px;
    font-size: 0.8rem;
    color: #374151;
}

/* Profile: force 3 columns and smaller cards on profile models grid */
.profile-models-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}
.profile-models-grid .model-image img {
    height: 180px;
}
.profile-models-grid .model-content { padding: 16px; }
.profile-models-grid .model-content h3 { font-size: 1rem; }
.profile-models-grid .model-stats { gap: 12px; font-size: 0.8rem; }
.profile-models-grid .model-stats i { font-size: 0.7rem; }
.profile-models-grid .rating-small i { font-size: 0.8rem; }
.profile-models-grid .model-badge { padding: 4px 10px; font-size: 0.7rem; }

/* Keep responsiveness: on small screens single column still applies via existing media query */

/* Community Section */
.community {
    padding: 80px 20px;
    background: linear-gradient(135deg, #1e293b 0%, #334155 100%);
    color: white;
}

.community-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
}

.community-text h2 {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 24px;
    line-height: 1.2;
}

.community-text p {
    font-size: 1.125rem;
    opacity: 0.9;
    margin-bottom: 32px;
    line-height: 1.6;
}

.community-features {
    list-style: none;
    margin-bottom: 40px;
}

.community-features li {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
    font-size: 1rem;
}

.community-features i {
    color: #10b981;
    font-size: 1.125rem;
}

.btn-join {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: white;
    border: none;
    padding: 16px 32px;
    border-radius: 12px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-join:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(16, 185, 129, 0.3);
}

.community-stats {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
}

.stat-card {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    padding: 32px;
    border-radius: 20px;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.stat-card i {
    font-size: 2.5rem;
    color: #10b981;
    margin-bottom: 16px;
}

.stat-card h3 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 8px;
}

.stat-card p {
    opacity: 0.8;
    font-size: 0.9rem;
}

/* Footer */
.footer {
    background: #1a1a1a;
    color: white;
    padding: 60px 20px 20px;
}

.footer-content {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 40px;
    margin-bottom: 40px;
}

.footer-brand {
    display: flex;
    align-items: center;
    font-size: 24px;
    font-weight: 700;
    color: #b10000;
    margin-bottom: 16px;
}

.footer-brand i {
    margin-right: 8px;
    font-size: 28px;
}

.footer-section p {
    opacity: 0.8;
    line-height: 1.6;
    margin-bottom: 24px;
}

.footer .social-links {
    display: flex;
    gap: 12px;
    align-items: center;
    flex-wrap: wrap;
}

.footer .social-links a {
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-decoration: none;
    transition: all 0.3s ease;
}

.footer .social-links a:hover {
    background: #b10000;
    transform: translateY(-2px);
}

.footer-section h4 {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 20px;
    color: white;
}

.footer-section ul {
    list-style: none;
}

.footer-section li {
    margin-bottom: 12px;
}

.footer-section a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    transition: color 0.3s ease;
}

.footer-section a:hover {
    color: #b10000;
}

.footer-bottom {
    text-align: center;
    padding-top: 40px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    opacity: 0.7;
}

.footer-bottom p {
    margin-bottom: 8px;
}

/* Responsive Design */
@media (max-width: 1024px) {
    .nav-menu {
        display: none;
    }
    
    .search-box input {
        width: 200px;
    }
    
    .hero-content {
        grid-template-columns: 1fr;
        text-align: center;
    }
    
    .hero-content h1 {
        font-size: 2.5rem;
    }
    
    .community-content {
        grid-template-columns: 1fr;
        text-align: center;
    }
    
    .footer-content {
        grid-template-columns: 1fr 1fr;
        gap: 32px;
    }
}

@media (max-width: 768px) {
    .nav-actions {
        gap: 8px;
    }
    
    .search-box {
        display: none;
    }
    
    .hero {
        padding: 120px 20px 60px;
    }
    
    .hero-content h1 {
        font-size: 2rem;
    }
    
    .hero-stats {
        justify-content: center;
        gap: 24px;
    }
    
    .section-header {
        flex-direction: column;
        gap: 24px;
    }
    
    .filter-tabs {
        flex-wrap: wrap;
        justify-content: center;
    }
    
    .models-grid {
        grid-template-columns: 1fr;
    }

    .home-latest-blogs .blog-grid {
        grid-template-columns: 1fr;
    }
    
    .footer-content {
        grid-template-columns: 1fr;
        text-align: center;
    }
}

/* Loading Animation */
@keyframes shimmer {
    0% { background-position: -200px 0; }
    100% { background-position: calc(200px + 100%) 0; }
}

.loading {
    background: linear-gradient(90deg, #f0f0f0 0px, #e0e0e0 40px, #f0f0f0 80px);
    background-size: 200px;
    animation: shimmer 1.5s infinite;
}

/* Scroll Animations */
.fade-in {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.6s ease;
}

.fade-in.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
    background: #b10000;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #800101;
}

/* Forum Page Styles */
.forum-main {
    padding: 100px 20px 40px;
    background: #f8fafc;
}

.forum-header {
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
    color: white;
    padding: 160px 0 20px;
    position: relative;
    overflow: hidden;
}

.forum-header .header-content h1 {
    font-size: 2.25rem;
    font-weight: 700;
    margin-bottom: 8px;
}

.forum-header .header-content p {
    opacity: 0.9;
}

/* Forum header illustration */
.forum-header-illustration {
    position: absolute;
    right: 16px;
    bottom: -12px;
    width: 360px;
    height: auto;
    pointer-events: none;
    opacity: .9;
}
@media (max-width: 900px) { .forum-header-illustration { width: 260px; right: 10px; bottom: -10px; opacity: .85; } }
@media (max-width: 640px) { .forum-header-illustration { display: none; } }

.forum-stats {
    margin-top: 24px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.forum-stats .stat-item {
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 12px;
    padding: 16px;
    text-align: center;
    backdrop-filter: blur(6px);
}

.forum-stats .stat-number {
    font-size: 1.5rem;
    font-weight: 700;
}

.forum-stats .stat-label {
    font-size: 0.85rem;
    opacity: 0.9;
}

.forum-content {
    padding: 40px 0;
}

/* Forum: New Topic Modal */
.modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.6);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: all .25s ease;
    z-index: 1000;
}
.modal-overlay.active { opacity: 1; visibility: visible; }

.new-topic-modal {
    width: min(720px, 92vw);
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    transform: translateY(10px);
    transition: transform .25s ease;
    box-shadow: 0 24px 60px rgba(0,0,0,.2);
}
.modal-overlay.active .new-topic-modal { transform: translateY(0); }

.new-topic-modal .modal-header {
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
    color: #fff;
    padding: 16px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.new-topic-modal .modal-header h2 { font-size: 1.25rem; font-weight: 700; margin: 0; color: #fff; }
.new-topic-modal .modal-header .modal-close { background: transparent; border: 0; color: #fff; font-size: 1.25rem; width: 36px; height: 36px; border-radius: 50%; cursor: pointer; }
.new-topic-modal .modal-header .modal-close:hover { background: rgba(255,255,255,.12); }

.new-topic-modal .modal-body { padding: 20px; max-height: 70vh; overflow-y: auto; }
.new-topic-form { display: flex; flex-direction: column; gap: 16px; }
.new-topic-form .form-group { display: flex; flex-direction: column; gap: 8px; }
.new-topic-form label { font-weight: 600; color: #111827; }
.new-topic-form select,
.new-topic-form input,
.new-topic-form textarea { border: 2px solid #e5e7eb; border-radius: 12px; padding: 10px 12px; font: inherit; }
.new-topic-form select:focus,
.new-topic-form input:focus,
.new-topic-form textarea:focus { outline: none; border-color: #b10000; box-shadow: 0 0 0 3px rgba(177,0,0,.12); }
.new-topic-form small { color: #6b7280; }

.editor-toolbar { display: flex; gap: 8px; }
.editor-btn { border: 2px solid #e5e7eb; background: #fff; color: #374151; padding: 8px 10px; border-radius: 10px; cursor: pointer; transition: all .2s ease; }
.editor-btn:hover { border-color: #fca5a5; color: #b10000; }
.editor-btn:focus-visible { outline: 3px solid rgba(177,0,0,.35); outline-offset: 2px; }

.char-count { text-align: right; color: #6b7280; font-size: .9rem; }
.checkbox-group { display: inline-flex; align-items: center; gap: 8px; color: #374151; }

.form-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 8px; }
.btn-cancel { border: 2px solid #e5e7eb; background: #fff; color: #374151; padding: 10px 14px; border-radius: 10px; font-weight: 600; cursor: pointer; }
.btn-cancel:hover { border-color: #fca5a5; color: #b10000; }
.btn-submit { background: linear-gradient(135deg, #b10000 0%, #8a0000 100%); color: #fff; border: 0; padding: 10px 16px; border-radius: 10px; font-weight: 700; cursor: pointer; }
.btn-submit:hover { box-shadow: 0 10px 20px rgba(177,0,0,.25); transform: translateY(-1px); }

/* Toast container shared */
.toast-container { position: fixed; bottom: 20px; right: 20px; display: flex; flex-direction: column; gap: 8px; z-index: 1100; }
.toast { display: flex; align-items: center; gap: 10px; background: #111827; color: #fff; padding: 10px 14px; border-radius: 10px; opacity: 0; transform: translateY(6px); transition: all .2s ease; }
.toast.show { opacity: 1; transform: translateY(0); }
.toast-success { background: #16a34a; }
.toast-warning { background: #f59e0b; }
.toast-error { background: #dc2626; }
.toast .toast-close { background: transparent; color: #fff; border: 0; cursor: pointer; font-size: 1rem; }

@media (max-width: 640px) {
  .new-topic-modal { width: 96vw; }
  .new-topic-modal .modal-body { max-height: 75vh; }
}

.forum-layout {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 24px;
    align-items: start;
}

.forum-sidebar {
    position: sticky;
    top: 100px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.forum-sidebar .sidebar-section {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    padding: 16px;
}

.forum-sidebar .sidebar-section h3 {
    font-size: 1rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 12px;
}

.category-list {
    list-style: none;
}

.category-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    text-decoration: none;
    color: #374151;
    padding: 10px 12px;
    border-radius: 10px;
    transition: all 0.2s ease;
}

.category-link i {
    color: #b10000;
    margin-right: 8px;
}

.category-link:hover {
    background: #f3f4f6;
}

.category-link.active {
    background: #ffeef0;
    color: #b10000;
}

.category-link .post-count {
    color: #6b7280;
    font-size: 0.85rem;
    margin-left: auto;
}

.active-users {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.user-item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.user-item img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
}

.user-info .username {
    display: block;
    font-weight: 600;
}

.user-status {
    font-size: 0.8rem;
    color: #6b7280;
}

.user-status.online { color: #10b981; }
.user-status.away { color: #f59e0b; }

.rules-list {
    list-style: disc;
    padding-left: 18px;
    color: #4b5563;
}

.forum-main-content {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.forum-header-actions {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    padding: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.forum-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.filter-btn {
    border: 2px solid #e5e7eb;
    background: #ffffff;
    color: #374151;
    padding: 8px 14px;
    border-radius: 10px;
    cursor: pointer;
    font-weight: 500;
    transition: all 0.2s ease;
}

.filter-btn:hover { border-color: #fca5a5; color: #b10000; }
.filter-btn.active { background: #b10000; border-color: #b10000; color: #ffffff; }

/* Forum: Focus states for accessibility */
.filter-btn:focus-visible,
.pagination-btn:focus-visible,
.category-link:focus-visible,
.btn-new-topic:focus-visible {
    outline: 3px solid rgba(177, 0, 0, 0.35);
    outline-offset: 2px;
}

.btn-new-topic {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
    color: #ffffff;
    border: none;
    padding: 10px 16px;
    border-radius: 10px;
    font-weight: 600;
    cursor: pointer;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.btn-new-topic:hover { transform: translateY(-1px); box-shadow: 0 10px 20px rgba(177,0,0,0.25); }

.topics-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.topic-group .group-title {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #111827;
    font-weight: 700;
    margin: 8px 4px;
}

.topic-item {
    display: grid;
    grid-template-columns: 24px 56px 1fr auto auto;
    gap: 16px;
    align-items: center;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    padding: 12px;
}

.topic-item.pinned { border-color: #fca5a5; background: #ffeef0; }
.topic-item.hot { border-color: #fdba74; }

.topic-status {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
}

.topic-status.solved { color: #10b981; }

.topic-avatar img {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover;
}

.topic-content .topic-title {
    font-size: 1rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 6px;
}

.topic-content .topic-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    font-size: 0.85rem;
    color: #6b7280;
}

.topic-content .topic-meta .topic-category {
    background: #f3f4f6;
    border: 1px solid #e5e7eb;
    padding: 2px 8px;
    border-radius: 9999px;
    font-size: 0.75rem;
    color: #374151;
}

.topic-content .topic-excerpt {
    color: #4b5563;
    margin-top: 6px;
    font-size: 0.95rem;
}

.topic-stats {
    display: flex;
    gap: 12px;
    padding: 0 8px;
}

.topic-stats .stat {
    text-align: center;
}

.topic-stats .stat-number {
    display: block;
    font-weight: 700;
    color: #111827;
}

.topic-stats .stat-label {
    font-size: 0.75rem;
    color: #6b7280;
}

.topic-last-post {
    display: flex;
    align-items: center;
    gap: 8px;
}

.topic-last-post .last-post-avatar img {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    object-fit: cover;
}

.topic-last-post .last-post-info {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
}

.last-post-user { font-weight: 600; color: #111827; }
.last-post-time { font-size: 0.8rem; color: #6b7280; }

.forum-pagination {
    margin-top: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.forum-pagination .pagination-btn {
    border: 2px solid #e5e7eb;
    background: #ffffff;
    color: #374151;
    padding: 8px 12px;
    border-radius: 10px;
    cursor: pointer;
    font-weight: 500;
    transition: all 0.2s ease;
}

.forum-pagination .pagination-btn:disabled { opacity: 0.5; cursor: not-allowed; }
.forum-pagination .pagination-btn:hover:not(:disabled) { border-color: #fca5a5; color: #b10000; }
.forum-pagination .pagination-btn.active { background: #b10000; border-color: #b10000; color: #fff; }

.forum-pagination .pagination-pages { display: flex; align-items: center; gap: 6px; }
.forum-pagination .pagination-dots { color: #6b7280; }

/* Forum: nav helpers */
.logo {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
    color: #b10000;
    text-decoration: none;
}

.logo i { font-size: 20px; }

.nav-left { display: flex; align-items: center; gap: 20px; }

/* Responsive for Forum */
@media (max-width: 1024px) {
    .forum-layout { grid-template-columns: 1fr; }
    .forum-sidebar { position: static; }
}

@media (max-width: 768px) {
    .topic-item {
        grid-template-columns: 24px 48px 1fr;
        grid-auto-rows: auto;
    }
    .topic-stats, .topic-last-post { grid-column: 1 / -1; justify-content: flex-start; }
}

/* Model Detail Page Styles */
.model-detail {
    padding: 100px 20px 40px;
    background: white;
}

.breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 40px;
    font-size: 0.9rem;
    color: #6b7280;
}

.breadcrumb a {
    color: #b10000;
    text-decoration: none;
}

.breadcrumb a:hover {
    text-decoration: underline;
}

.model-detail-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: start;
}

.model-gallery {
    position: sticky;
    top: 100px;
}

.main-image {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    margin-bottom: 20px;
    background: #f8fafc;
}

.main-image img {
    width: 100%;
    height: 500px;
    object-fit: cover;
    transition: opacity 0.15s ease;
}

.gallery-controls {
    position: absolute;
    bottom: 20px;
    left: 20px;
    right: 20px;
    display: flex;
    gap: 12px;
}

.gallery-btn {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(10px);
    border: none;
    padding: 12px 16px;
    border-radius: 12px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.9rem;
}

.gallery-btn:hover {
    background: white;
    transform: translateY(-2px);
}

.thumbnail-gallery {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}

.thumbnail {
    width: 100%;
    height: 100px;
    object-fit: cover;
    border-radius: 12px;
    cursor: pointer;
    border: 2px solid transparent;
    transition: all 0.3s ease;
}

.thumbnail:hover,
.thumbnail.active {
    border-color: #b10000;
    transform: scale(1.05);
}

.model-info-panel {
    padding: 20px 0;
}

.model-header {
    display: flex;
    justify-content: space-between;
    align-items: start;
    margin-bottom: 24px;
}

.model-header h1 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 8px;
}

.model-badges {
    display: flex;
    gap: 8px;
}

.badge {
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.badge.free {
    background: #dcfce7;
    color: #166534;
}

.badge.premium {
    background: #fef3c7;
    color: #92400e;
}

.badge.verified {
    background: #dbeafe;
    color: #1e40af;
}

.model-stats-detailed {
    display: flex;
    gap: 32px;
    margin-bottom: 32px;
    padding: 24px;
    background: #f8fafc;
    border-radius: 16px;
}

.model-stats-detailed .stat {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #4b5563;
}

.model-stats-detailed .stat i {
    color: #b10000;
}

.model-actions {
    display: flex;
    gap: 12px;
    margin-bottom: 40px;
    flex-wrap: wrap;
}

.btn-primary {
    background: linear-gradient(135deg, #b10000 0%, #800101 100%);
    color: white;
    border: none;
    padding: 16px 24px;
    border-radius: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
}

.btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(177, 0, 0, 0.3);
}

.btn-secondary {
    background: white;
    color: #b10000;
    border: 2px solid #e5e7eb;
    padding: 14px 20px;
    border-radius: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
}

.btn-secondary:hover {
    border-color: #b10000;
    background: #f8fafc;
}

/* Model Detail Responsive */
@media (max-width: 1024px) {
    .model-detail-content {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .model-gallery {
        position: static;
    }
    .main-image img {
        height: 400px;
    }
}

@media (max-width: 768px) {
    .model-detail {
        padding: 80px 16px 30px;
    }
    .breadcrumb {
        font-size: 0.85rem;
        gap: 6px;
        margin-bottom: 24px;
        flex-wrap: wrap;
    }
    .model-header h1 {
        font-size: 1.75rem;
    }
    .model-stats-detailed {
        flex-wrap: wrap;
        gap: 16px;
        padding: 16px;
    }
    .model-stats-detailed .stat {
        font-size: 0.9rem;
    }
    .model-actions {
        flex-direction: column;
    }
    .model-actions button,
    .model-actions .btn-primary,
    .model-actions .btn-secondary {
        width: 100%;
        justify-content: center;
    }
    .main-image img {
        height: 300px;
    }
    .thumbnail-gallery {
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
    }
    .thumbnail {
        height: 80px;
    }
}

@media (max-width: 480px) {
    .thumbnail-gallery {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Error Page */
.page-header.error {
    padding: 160px 20px 40px;
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
    color: #fff;
    text-align: center;
    position: relative;
    overflow: hidden;
}
.page-header.error h1 { font-size: 4rem; font-weight: 800; margin: 0; }
.page-header.error p { margin-top: 8px; opacity: .9; }

.error-content { padding: 40px 20px 80px; background: #fff; }
.error-wrap { max-width: 720px; margin: 0 auto; text-align: center; }
.error-icon { font-size: 120px; line-height: 1; color: #b10000; }
.error-wrap h2 { margin: 16px 0 8px; color: #111827; }
.error-wrap p { color: #6b7280; }
.error-actions { margin-top: 28px; display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.error-illustration { position: absolute; right: 10px; bottom: -24px; width: 380px; height: auto; pointer-events: none; filter: drop-shadow(0 10px 30px rgba(0,0,0,.15)); }

@media (max-width: 1024px) {
    .error-illustration { width: 320px; right: -40px; bottom: -40px; opacity: .28; }
}
    @media (max-width: 768px) {
    .error-illustration { width: 220px; right: -36px; bottom: -36px; opacity: .24; }
    }

.creator-info {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 24px;
    background: #f8fafc;
    border-radius: 16px;
    margin-bottom: 40px;
}

.creator-avatar img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
}

.creator-details h3 {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 4px;
}

/* Creator name link styling (remove default blue/underline) */
.creator-details h3 a.creator-name-link {
    color: inherit;
    text-decoration: none;
}
.creator-details h3 a.creator-name-link:hover,
.creator-details h3 a.creator-name-link:focus {
    color: #b10000;
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* Make avatar link focus-visible with a ring for accessibility */
.creator-avatar a {
    display: inline-block;
    border-radius: 50%;
}
.creator-avatar a:focus-visible {
    outline: 3px solid rgba(177, 0, 0, 0.35);
    outline-offset: 3px;
}

.creator-details p {
    color: #6b7280;
    font-size: 0.9rem;
    margin-bottom: 8px;
}

.creator-stats {
    color: #6b7280;
    font-size: 0.85rem;
}

.btn-follow {
    background: #b10000;
    color: white;
    border: none;
    padding: 8px 20px;
    border-radius: 8px;
    font-weight: 500;
    cursor: pointer;
    margin-left: auto;
}

.model-description {
    margin-bottom: 40px;
}

.model-description h3,
.model-description h4 {
    color: #1a1a1a;
    margin-bottom: 16px;
}

.model-description p {
    color: #4b5563;
    line-height: 1.6;
    margin-bottom: 24px;
}

.model-description ul {
    margin-left: 20px;
    margin-bottom: 24px;
}

.model-description li {
    color: #4b5563;
    margin-bottom: 8px;
}

.print-settings {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 16px;
    margin-top: 16px;
}

.setting {
    display: flex;
    justify-content: space-between;
    padding: 12px 16px;
    background: #f8fafc;
    border-radius: 8px;
}

.setting span {
    color: #6b7280;
}

.setting strong {
    color: #1a1a1a;
}

.file-info {
    margin-bottom: 40px;
}

.file-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 16px;
}

.file-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: #f8fafc;
    border-radius: 12px;
    transition: background 0.3s ease;
}

.file-item:hover {
    background: #e5e7eb;
}

.file-item i {
    color: #b10000;
    font-size: 1.25rem;
}

.file-size {
    margin-left: auto;
    color: #6b7280;
    font-size: 0.9rem;
}

/* License card */
.license-card {
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    padding: 16px;
    margin: 12px 0 24px;
}

.license-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 8px;
}

.license-header i {
    color: #b10000;
}

.license-head-text { display:flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.license-name { font-weight: 700; color: #111827; }
.license-link { color: #b10000; text-decoration: none; font-weight: 600; font-size: .9rem; }
.license-link:hover { text-decoration: underline; }

.license-desc { color:#374151; margin: 6px 0 12px; }

.license-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

@media (max-width: 768px) {
    .license-grid { grid-template-columns: 1fr; }
}

.license-col { background: #ffffff; border: 1px solid #e5e7eb; border-radius: 12px; padding: 12px; }
.license-col-title { font-weight: 700; color:#111827; margin-bottom: 8px; display:flex; align-items:center; gap:8px; }
.license-col-title i { color:#6b7280; }

.license-tags { list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.tag { display: inline-flex; align-items:center; padding: 6px 10px; border-radius: 9999px; font-size: .85rem; border: 1px solid #e5e7eb; background:#f9fafb; color:#374151; }
.tag-allow { background: #ecfdf5; color:#065f46; border-color:#a7f3d0; }
.tag-cond { background: #fffbeb; color:#92400e; border-color:#fde68a; }
.tag-limit { background: #fef2f2; color:#991b1b; border-color:#fecaca; }

/* Comments Section */
.comments-section {
    padding: 60px 20px;
    background: #f8fafc;
}

.comments-section h2 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 40px;
    text-align: center;
}

.rating-summary {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 40px;
    margin-bottom: 40px;
    padding: 32px;
    background: white;
    border-radius: 20px;
}

.overall-rating {
    text-align: center;
}

.rating-number {
    font-size: 3rem;
    font-weight: 700;
    color: #1a1a1a;
    display: block;
}

.stars {
    margin: 8px 0;
    color: #fbbf24;
}

.rating-count {
    color: #6b7280;
    font-size: 0.9rem;
}

.rating-breakdown {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.rating-bar {
    display: grid;
    grid-template-columns: 60px 1fr 40px;
    align-items: center;
    gap: 12px;
    font-size: 0.9rem;
}

.bar {
    height: 8px;
    background: #e5e7eb;
    border-radius: 4px;
    overflow: hidden;
}

.fill {
    height: 100%;
    background: #fbbf24;
    transition: width 0.3s ease;
}

.comment-form {
    background: white;
    padding: 32px;
    border-radius: 20px;
    margin-bottom: 40px;
}

.comment-form h3 {
    margin-bottom: 24px;
}

.rating-input {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
}

.star-rating {
    display: flex;
    gap: 4px;
}

.star-rating i {
    font-size: 1.5rem;
    color: #e5e7eb;
    cursor: pointer;
    transition: color 0.3s ease;
}

.star-rating i:hover,
.star-rating i.active {
    color: #fbbf24;
}

.comment-form textarea {
    width: 100%;
    padding: 16px;
    border: 2px solid #e5e7eb;
    border-radius: 12px;
    font-family: inherit;
    resize: vertical;
    min-height: 120px;
    margin-bottom: 20px;
}

.comment-form textarea:focus {
    outline: none;
    border-color: #b10000;
}

.comments-list {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.comment {
    display: flex;
    gap: 16px;
    background: white;
    padding: 24px;
    border-radius: 16px;
}

.comment-avatar img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    object-fit: cover;
}

.comment-content {
    flex: 1;
}

.comment-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.comment-header h4 {
    font-weight: 600;
    color: #1a1a1a;
}

.comment-rating {
    color: #fbbf24;
    font-size: 0.85rem;
}

.comment-date {
    color: #6b7280;
    font-size: 0.85rem;
    margin-left: auto;
}

.comment-content p {
    color: #4b5563;
    line-height: 1.6;
    margin-bottom: 16px;
}

.comment-actions {
    display: flex;
    gap: 16px;
}

.btn-like-comment,
.btn-reply {
    background: none;
    border: none;
    color: #6b7280;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.9rem;
    transition: color 0.3s ease;
}

.btn-like-comment:hover,
.btn-reply:hover {
    color: #b10000;
}

/* Related Models */
.related-models {
    padding: 60px 20px;
    background: white;
}

.related-models h2 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 40px;
    text-align: center;
}

/* Offset sections for fixed header so content doesn't hide under navbar */
.profile-edit,
.profile-password,
.profile-content {
    padding: 100px 20px 40px;
    background: #ffffff;
}

@media (max-width: 768px) {
    .profile-edit,
    .profile-password,
    .profile-content {
        padding: 90px 16px 32px;
    }
}
/* Help Page Styles */
.faq-item { transition: all 0.3s ease; margin-bottom: 12px; }
.faq-question { cursor: pointer; padding: 18px 20px; border-radius: 12px; background:#ffffff; border:2px solid #e5e7eb; color:#111827; display:flex; align-items:center; justify-content:space-between; gap:12px; }
.faq-question:hover { background: #fff5f5; border-color:#f9d2d2; }
.faq-item.active .faq-question { background: #fff1f1; border-color:#b10000; }
.faq-question i { transition: transform 0.3s ease; color:#b10000; }

.faq-answer { max-height: 0px; overflow: hidden; transition: max-height 0.3s ease; background:#fff; border-left:3px solid #b10000; margin: 0 0 0 2px; border-radius: 0 0 12px 12px; }
.faq-item.active .faq-answer { padding: 14px 18px 18px; }

/* Search highlight */
mark { background: #ffe8e8; color: #800101; padding: 2px 4px; border-radius: 4px; }

/* No results block */
.no-faq-results { text-align: center; padding: 60px 20px; color: #64748b; }
.no-faq-results i { font-size: 4rem; color: #f4bebe; margin-bottom: 20px; }
.no-faq-results h3 { margin: 0 0 10px 0; color: #374151; }
.no-faq-results p { margin: 0 0 10px 0; }

/* Buttons */
.btn-contact-support, .btn-search { background: linear-gradient(135deg, #b10000 0%, #8a0000 100%); color: #fff; border: none; padding: 10px 16px; border-radius: 10px; font-weight: 600; cursor: pointer; transition: transform .15s ease, box-shadow .2s ease; }
.btn-contact-support:hover, .btn-search:hover { box-shadow: 0 8px 20px rgba(177,0,0,.25); transform: translateY(-1px); }

/* Search input */
#helpSearch { border:2px solid #e5e7eb; border-radius:10px; padding:10px 12px; outline:none; }
#helpSearch:focus { border-color:#b10000; box-shadow: 0 0 0 3px rgba(177,0,0,.18); }

/* Quick links */
.quick-link { color:#b10000; text-decoration:none; font-weight:600; }
.quick-link:hover { text-decoration:underline; text-underline-offset: 2px; }

/* Optional: Help page header gradient (if page adds .page-header--help) */
.page-header.page-header--help {
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
    color: #fff;
}
.page-header.page-header--help { position: relative; overflow: hidden; }
.help-header-illustration { position: absolute; right: 16px; bottom: -12px; width: 340px; height: auto; pointer-events: none; opacity: .9; }
@media (max-width: 900px) { .help-header-illustration { width: 240px; right: 10px; bottom: -10px; opacity: .85; } }
@media (max-width: 640px) { .help-header-illustration { display: none; } }

/* Categories Page Styles */
.page-header {
    padding: 120px 20px 40px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    text-align: center;
}

.page-header h1 {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 16px;
}

.page-header p {
    font-size: 1.25rem;
    opacity: 0.9;
}

/* Legal/Privacy Page Theming */
.page-header.page-header--legal { background: linear-gradient(135deg, #b10000 0%, #8a0000 100%); }
.legal-content { padding: 40px 20px 80px; }
.legal-layout { display: grid; grid-template-columns: 260px 1fr; gap: 24px; align-items: start; max-width: 1200px; margin: 0 auto; }
.legal-main { min-width: 0; }
.legal-toc { position: sticky; top: 100px; align-self: start; background: #ffffff; border: 1px solid #e5e7eb; border-radius: 12px; padding: 16px; }
.legal-toc h3 { font-size: 1rem; font-weight: 700; color: #111827; margin: 0 0 10px; }
.legal-toc nav { display: flex; flex-direction: column; }
.legal-toc a { text-decoration: none; color: #374151; padding: 8px 10px; border-radius: 8px; }
.legal-toc a:hover { background: #f3f4f6; }
.legal-toc a.active { background: #ffeef0; color: #b10000; font-weight: 600; }
.legal-section { margin-bottom: 28px; scroll-margin-top: 110px; }
.legal-section h2 { font-size: 1.4rem; margin-bottom: 10px; color: #111827; }
.legal-section ul { margin-left: 20px; line-height: 1.8; color: #374151; }
.legal-content a { color: #b10000; }
.legal-card { background: #ffffff; border: 1px solid #e5e7eb; border-radius: 12px; padding: 16px 18px; }
.back-to-top { position: fixed; right: 16px; bottom: 16px; width: 44px; height: 44px; border-radius: 50%; border: none; background: #111827; color: #fff; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transform: translateY(6px); transition: all .2s ease; z-index: 900; }
.back-to-top.show { opacity: 1; visibility: visible; transform: translateY(0); }
.legal-content, .legal-toc, .legal-card { box-shadow: none; }
html { scroll-behavior: smooth; }
@media (max-width: 1024px) { .legal-layout { grid-template-columns: 1fr; } .legal-toc { position: static; } }
@media (max-width: 640px) { .legal-toc nav a { padding: 8px; } .legal-card { padding: 14px 14px; } }

.categories-page {
    padding: 60px 20px;
    background: #f8fafc;
}

/* Models Page Theming */
.page-header.page-header--models {
    background: linear-gradient(135deg, #b10000 0%, #830101 100%);
}

.page-header.page-header--models { position: relative; overflow: hidden; }
.models-header-illustration { position: absolute; right: 16px; bottom: -12px; width: 380px; height: auto; pointer-events: none; opacity: .9; }
@media (max-width: 900px) { .models-header-illustration { width: 260px; right: 10px; bottom: -10px; opacity: .85; } }
@media (max-width: 640px) { .models-header-illustration { display: none; } }

/* Models header search */
.models-header-search { margin: 16px auto 0; max-width: 560px; padding: 0 20px; position: relative; z-index: 2; }
.models-header-search .input-wrapper-models { position: relative; }
.models-header-search .input-wrapper-models i { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: #9ca3af; }
.models-header-search input { width: 100%; padding: 12px 16px 12px 44px; border: 2px solid rgba(255,255,255,0.7); border-radius: 12px; background: rgba(255,255,255,0.15); backdrop-filter: blur(4px); color: #fff; font-size: 1rem; transition: all .25s ease; }
.models-header-search input::placeholder { color: rgba(255,255,255,0.8); }
.models-header-search input:focus { outline: none; border-color: #fff; box-shadow: 0 0 0 3px rgba(255,255,255,0.25); background: rgba(255,255,255,0.2); }
@media (prefers-reduced-transparency: reduce) { .models-header-search input { backdrop-filter: none; } }

.models-page { background: #ffffff; }
.models-layout { display: grid; grid-template-columns: 280px 1fr; gap: 24px; }
.models-sidebar .sidebar-section { background:#ffffff; border:1px solid #e5e7eb; border-radius:16px; padding:16px; }
.models-sidebar .sidebar-title { font-size:1rem; font-weight:700; color:#111827; margin:0 0 12px; display:flex; align-items:center; gap:8px; }
.models-sidebar .sidebar-title i { color:#b10000; }
.models-sidebar .category-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:4px; }
.models-sidebar .category-list li { padding:10px 12px; border-radius:10px; cursor:pointer; color:#374151; transition:all .2s ease; }
.models-sidebar .category-list li:hover { background:#f3f4f6; }
.models-sidebar .category-list li.active { background:#ffeef0; color:#b10000; font-weight:600; }
.models-sidebar .category-list li.category-parent { font-weight:600; color:#111827; display:flex; align-items:center; gap:8px; }
.models-sidebar .category-list .category-toggle { font-size:0.75rem; transition:transform 0.2s ease; cursor:pointer; color:#9ca3af; flex-shrink:0; }
.models-sidebar .category-list .category-toggle:hover { color:#b10000; }
.models-sidebar .category-list .category-toggle.expanded { transform:rotate(90deg); }
.models-sidebar .category-children { list-style:none; padding:0; margin:0; max-height:1000px; overflow:hidden; transition:max-height 0.3s ease; }
.models-sidebar .category-children.collapsed { max-height:0; }
.models-sidebar .category-children li { padding-left:32px; font-size:0.9rem; color:#6b7280; position:relative; padding-top:8px; padding-bottom:8px; }
.models-sidebar .category-children li::before { content:'└─'; position:absolute; left:16px; color:#d1d5db; }

.models-sidebar .filter-block { margin-top:12px; }
.models-sidebar .filter-label { font-weight:700; color:#111827; margin:8px 0; display:flex; align-items:center; gap:8px; }
.models-sidebar .filter-label i { color:#b10000; }
.models-sidebar .filter-options { display:flex; flex-wrap:wrap; gap:10px; margin:8px 0; }
.models-sidebar .radio input, .models-sidebar .checkbox input { margin-right:6px; accent-color:#b10000; }
.btn-reset-filters { width:100%; margin-top:10px; border:2px solid #e5e7eb; background:#ffffff; color:#374151; padding:10px 14px; border-radius:12px; font-weight:600; cursor:pointer; transition:all .2s ease; }
.btn-reset-filters:hover { border-color:#fca5a5; color:#b10000; }

.models-content .models-toolbar { background:#ffffff; border:1px solid #e5e7eb; border-radius:16px; padding:12px; margin-bottom:16px; }
.models-content .results-info { color:#64748b; font-weight:600; }
.models-content .sort-select { padding:10px 12px; border:2px solid #e5e7eb; border-radius:10px; background:#ffffff; cursor:pointer; }
.models-content .sort-select:focus { outline:none; border-color:#b10000; box-shadow:0 0 0 3px rgba(177,0,0,.12); }
.models-content .view-btn { border:2px solid #e5e7eb; background:#ffffff; color:#374151; padding:8px 12px; border-radius:10px; cursor:pointer; transition:all .2s ease; }
.models-content .view-btn:hover { border-color:#fca5a5; color:#b10000; }
.models-content .view-btn.active { background:#b10000; border-color:#b10000; color:#ffffff; }

.models-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; }
.models-page .models-grid { grid-template-columns: repeat(3, 1fr); gap: 24px; }

/* Responsive: Models Layout & Grid */
@media (max-width: 1200px) { 
  .models-layout { grid-template-columns: 240px 1fr; gap: 20px; } 
}
@media (max-width: 1100px) { 
  .models-page .models-grid { grid-template-columns: repeat(2, 1fr); } 
}
@media (max-width: 968px) { 
  .models-layout { grid-template-columns: 1fr; }
  .models-sidebar { position: sticky; top: 80px; max-height: calc(100vh - 100px); overflow-y: auto; }
}
@media (max-width: 640px) { 
  .models-page .models-grid { grid-template-columns: 1fr; }
  .models-sidebar { position: static; }
}

/* Sidebar left on desktop, stack on smaller screens */
@media (max-width: 1024px) { .models-layout { grid-template-columns: 1fr; } }
.models-grid .model-card { background:#ffffff; border:1px solid #e5e7eb; border-radius:16px; overflow:hidden; transition:all .25s ease; }
.models-grid .model-card:hover { transform:translateY(-6px); box-shadow:0 14px 34px -10px rgba(0,0,0,.12); border-color:#b10000; }
.models-grid .model-card .badge { background:#dcfce7; color:#166534; }
.models-grid .model-card .badge.premium { background:#fef3c7; color:#92400e; }
.models-grid .model-card .actions .btn { background:rgba(255,255,255,0.9); border:none; border-radius:12px; }

.categories-filter {
    margin-bottom: 40px;
}

.filter-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: white;
    padding: 20px 24px;
    border-radius: 16px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.filter-group {
    display: flex;
    align-items: center;
    gap: 12px;
}

.filter-group label {
    font-weight: 500;
    color: #4b5563;
}

.filter-group select {
    padding: 8px 16px;
    border: 2px solid #e5e7eb;
    border-radius: 8px;
    background: white;
    cursor: pointer;
}

.view-toggle {
    display: flex;
    gap: 8px;
}

.view-btn {
    width: 40px;
    height: 40px;
    border: 2px solid #e5e7eb;
    background: white;
    border-radius: 8px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.view-btn.active {
    background: #b10000;
    border-color: #b10000;
    color: white;
}

.categories-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 32px;
    margin-bottom: 60px;
}

.category-card-large {
    background: white;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    cursor: pointer;
}

.category-card-large:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15);
}

.category-image {
    position: relative;
    height: 200px;
    overflow: hidden;
}

.category-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.category-card-large:hover .category-image img {
    transform: scale(1.05);
}

.category-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.6));
    display: flex;
    align-items: flex-end;
    padding: 20px;
}

.category-stats {
    color: white;
}

.model-count {
    font-size: 1.125rem;
    font-weight: 600;
    display: block;
}

.growth {
    font-size: 0.9rem;
    opacity: 0.9;
}

.category-content {
    padding: 24px;
}

.category-info {
    flex: 1;
}

.category-info h3 {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 8px;
    color: #1a1a1a;
}

.category-info p {
    color: #6b7280;
    margin-bottom: 16px;
    line-height: 1.5;
}

.category-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;
}

.tag {
    background: #f1f5f9;
    color: #475569;
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 0.8rem;
    font-weight: 500;
}

.btn-explore {
    background: #b10000;
    color: white;
    text-decoration: none;
    padding: 10px 20px;
    border-radius: 8px;
    font-weight: 500;
    transition: all 0.3s ease;
    display: inline-block;
}

.btn-explore:hover {
    background: #800101;
    transform: translateY(-1px);
}

/* Pagination */
.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

.page-btn {
    background: white;
    border: 2px solid #e5e7eb;
    padding: 12px 20px;
    border-radius: 12px;
    cursor: pointer;
    font-weight: 500;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
}

.page-btn:hover:not(:disabled) {
    border-color: #b10000;
    color: #b10000;
}

.page-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.page-numbers {
    display: flex;
    gap: 4px;
    margin: 0 16px;
}

.page-number {
    width: 40px;
    height: 40px;
    border: 2px solid #e5e7eb;
    background: white;
    border-radius: 8px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    transition: all 0.3s ease;
}

.page-number.active {
    background: #b10000;
    border-color: #b10000;
    color: white;
}

.page-number:hover:not(.active) {
    border-color: #b10000;
    color: #b10000;
}

.page-dots {
    display: flex;
    align-items: center;
    padding: 0 8px;
    color: #6b7280;
}

/* Auth Page Styles */
.auth-section {
    min-height: 100vh;
    padding: 100px 20px 40px;
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.auth-container {
    max-width: 1200px;
    width: 100%;
}

.auth-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    background: white;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    min-height: 700px;
}

.auth-form-section {
    padding: 60px 40px;
}

.auth-header {
    text-align: center;
    margin-bottom: 40px;
}

.auth-header h1 {
    font-size: 2rem;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 8px;
}

.auth-header p {
    color: #6b7280;
}

.auth-tabs {
    display: flex;
    background: #f1f5f9;
    border-radius: 12px;
    padding: 6px;
    margin-bottom: 32px;
}

.auth-tab {
    flex: 1;
    padding: 12px;
    border: none;
    background: transparent;
    border-radius: 8px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    color: #64748b;
}

.auth-tab.active {
    background: #ffffff;
    color: #b10000;
    box-shadow: 0 2px 8px rgba(177, 0, 0, 0.15);
}
.auth-tab:not(.active):hover {
    background: rgba(177, 0, 0, 0.06);
    color: #b10000;
}

.auth-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.auth-form.hidden {
    display: none;
}

.form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.form-group {
    display: flex;
    flex-direction: column;
}

.form-group.full-width {
    grid-column: 1 / -1;
}

.form-group label {
    font-weight: 500;
    color: #374151;
    margin-bottom: 8px;
}

.input-wrapper {
    position: relative;
}

.input-wrapper i {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: #9ca3af;
    width: 20px;
    text-align: center;
    pointer-events: none;
}

.input-wrapper input {
    width: 100%;
    padding: 14px 56px 14px 60px; /* sağ: toggle ve durum ikonları için; sol: ikon için ekstra boşluk */
    border: 2px solid #e5e7eb;
    border-radius: 12px;
    font-size: 1rem;
    transition: all 0.3s ease;
}

.input-wrapper input:focus {
    outline: none;
    border-color: #b10000;
    box-shadow: 0 0 0 3px rgba(177, 0, 0, 0.12);
}

.password-toggle {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    color: #9ca3af;
    cursor: pointer;
    padding: 4px;
    z-index: 2;
}

/* Autofill durumunda padding ve renklerin korunması */
.input-wrapper input:-webkit-autofill,
.input-wrapper input:-webkit-autofill:hover,
.input-wrapper input:-webkit-autofill:focus {
    -webkit-text-fill-color: #1a1a1a;
    caret-color: #1a1a1a;
    -webkit-box-shadow: 0 0 0px 1000px #f3f6fb inset; /* hafif mavi yerine açık arkaplan */
    box-shadow: 0 0 0px 1000px #f3f6fb inset;
    border: 2px solid #e5e7eb;
    padding-left: 60px !important;
    padding-right: 56px !important;
}

/* Yazarken/placeholder kaybolduğunda da padding sabit kalsın */
.auth-section .input-wrapper input:focus,
.auth-section .input-wrapper input:not(:placeholder-shown) {
    padding-left: 60px !important;
    padding-right: 56px !important;
    text-indent: 0 !important;
}

/* Edge/IE yerleşik clear/reveal butonlarını gizle */
.auth-section input::-ms-reveal,
.auth-section input::-ms-clear {
    display: none;
}

/* Görünüm farklarını azaltmak için */
.auth-section .input-wrapper input[type="email"],
.auth-section .input-wrapper input[type="password"],
.auth-section .input-wrapper input[type="text"] {
    appearance: none;
    -webkit-appearance: none;
}

.form-options {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.checkbox {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    font-size: 0.9rem;
    color: #4b5563;
}

.checkbox input {
    width: 16px;
    height: 16px;
}

.forgot-password {
    color: #b10000;
    text-decoration: none;
    font-size: 0.9rem;
}

.forgot-password:hover {
    text-decoration: underline;
}

.btn-auth-primary {
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
    color: white;
    border: none;
    padding: 16px;
    border-radius: 12px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.btn-auth-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(177, 0, 0, 0.3);
}

.auth-divider {
    text-align: center;
    position: relative;
    margin: 24px 0;
}

.auth-divider::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 1px;
    background: #e5e7eb;
}

.auth-divider span {
    background: white;
    padding: 0 16px;
    color: #6b7280;
    font-size: 0.9rem;
}

.social-auth {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.btn-social {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 12px 16px;
    border: 2px solid #e5e7eb;
    border-radius: 12px;
    background: white;
    cursor: pointer;
    font-weight: 500;
    transition: all 0.3s ease;
}

.btn-social:hover {
    border-color: #d1d5db;
    background: #f9fafb;
    box-shadow: 0 4px 16px rgba(0,0,0,0.06);
}

.btn-social.google:hover {
    border-color: #ea4335;
    color: #ea4335;
}

.btn-social.facebook:hover {
    border-color: #1877f2;
    color: #1877f2;
}

.btn-social.github:hover {
    border-color: #333;
    color: #333;
}

.password-strength {
    margin-top: 8px;
}

.strength-bar {
    height: 4px;
    background: #e5e7eb;
    border-radius: 2px;
    overflow: hidden;
    margin-bottom: 4px;
}

.strength-fill {
    height: 100%;
    background: #ef4444; /* zayıf */
    transition: all 0.3s ease;
    width: 25%;
}

.strength-text {
    font-size: 0.8rem;
    color: #6b7280;
}

.terms-link,
.privacy-link {
    color: #b10000;
    text-decoration: none;
}

.terms-link:hover,
.privacy-link:hover {
    text-decoration: underline;
}

.auth-info-section {
    background: #f3f4f6; /* açık gri sağ panel */
    color: #1f2937; /* koyu metin */
    padding: 60px 40px;
    display: flex;
    align-items: center;
}

.auth-info-content h2 {
    font-size: 1.875rem;
    font-weight: 700;
    margin-bottom: 32px;
    text-align: center;
    color: #1a1a1a;
}

.auth-features {
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin-bottom: 40px;
}

.feature {
    display: flex;
    align-items: center;
    gap: 16px;
}

.feature-icon {
    width: 48px;
    height: 48px;
    background: rgba(177, 0, 0, 0.1); /* kırmızı tema ile uyumlu hafif arkaplan */
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #b10000;
    font-size: 1.25rem;
}

.feature-text h4 {
    font-weight: 600;
    margin-bottom: 4px;
    color: #111827; /* koyu başlık */
}

.feature-text p {
    font-size: 0.9rem;
    color: #4b5563; /* gövde metin rengi */
}

.community-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    text-align: center;
}

.community-stats .stat strong {
    display: block;
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 4px;
    color: #111827; /* koyu metin */
}

.community-stats .stat span {
    font-size: 0.9rem;
    color: #6b7280; /* yardımcı metin */
}

/* Upload Page Styles */
.upload-section {
    padding: 100px 20px 40px;
    background: #f8fafc;
    min-height: 100vh;
}

.upload-header {
    text-align: center;
    margin-bottom: 60px;
}

.upload-header h1 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 16px;
}

.upload-header p {
    font-size: 1.25rem;
    color: #6b7280;
}

.upload-content {
    max-width: 900px;
    margin: 0 auto;
}

.upload-steps {
    display: flex;
    justify-content: center;
    gap: 32px;
    margin-bottom: 60px;
}

.step {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #9ca3af;
    font-weight: 500;
}

.step.active {
    color: #b10000;
}

.step-number {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #e5e7eb;
    color: #6b7280;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.9rem;
}

.step.active .step-number {
    background: #b10000;
    color: white;
}

.step-content {
    display: none;
    background: white;
    border-radius: 20px;
    padding: 40px;
    margin-bottom: 32px;
}

.step-content.active {
    display: block;
}

.file-upload-section h2 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 32px;
    text-align: center;
}

.file-drop-zone {
    border: 3px dashed #d1d5db;
    border-radius: 16px;
    padding: 60px 40px;
    text-align: center;
    transition: all 0.3s ease;
    margin-bottom: 32px;
    cursor: pointer;
}

.file-drop-zone:hover,
.file-drop-zone.dragover {
    border-color: #b10000;
    background: #f8fafc;
}

.drop-zone-content i {
    font-size: 3rem;
    color: #b10000;
    margin-bottom: 16px;
}

.drop-zone-content h3 {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 8px;
    color: #1a1a1a;
}

.drop-zone-content p {
    color: #6b7280;
    margin-bottom: 24px;
}

.btn-browse {
    background: #b10000;
    color: white;
    border: none;
    padding: 12px 24px;
    border-radius: 12px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-browse:hover {
    background: #800101;
}

/* Upload Step 3: Images */
.images-section { background:#fff; padding:24px; border-radius:16px; }
.image-drop-zone { border:2px dashed #e5e7eb; border-radius:14px; padding:30px; text-align:center; background:#f8fafc; cursor:pointer; transition:border-color .3s ease, background .3s ease; }
.image-drop-zone.dragover { border-color:#b10000; background:#fff; }
.image-drop-content i { font-size:2rem; color:#b10000; }
.image-drop-content h3 { margin:10px 0 6px; }
.image-drop-content p { color:#6b7280; margin:0; }
.image-drop-content .btn-browse { display:inline-flex; align-items:center; gap:8px; margin-top:10px; padding:10px 14px; background:#b10000; color:#fff; border:none; border-radius:10px; cursor:pointer; }
.image-drop-content small { display:block; color:#6b7280; margin-top:8px; }
.image-gallery { display:grid; grid-template-columns: repeat(3, 1fr); gap:14px; margin-top:18px; }
.image-thumb { background:#fff; border:1px solid #e5e7eb; border-radius:12px; overflow:hidden; box-shadow:0 2px 10px rgba(0,0,0,.04); }
.image-thumb .thumb { position:relative; aspect-ratio: 4/3; overflow:hidden; }
.image-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.image-thumb .remove { position:absolute; top:8px; right:8px; width:32px; height:32px; border:none; background:rgba(0,0,0,.55); color:#fff; border-radius:50%; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.image-thumb .meta { display:flex; justify-content:space-between; gap:8px; padding:10px 12px; font-size:.85rem; color:#6b7280; }
@media (max-width: 900px){ .image-gallery { grid-template-columns: repeat(2, 1fr);} }
@media (max-width: 600px){ .image-gallery { grid-template-columns: 1fr;} }

.supported-formats {
    margin-top: 24px;
    font-size: 0.9rem;
    color: #6b7280;
}

.supported-formats span {
    background: #f1f5f9;
    color: #475569;
    padding: 4px 8px;
    border-radius: 6px;
    margin: 0 4px;
    font-family: monospace;
}

.upload-tips {
    background: #f8fafc;
    padding: 24px;
    border-radius: 12px;
}

.upload-tips h4 {
    font-weight: 600;
    margin-bottom: 16px;
    color: #1a1a1a;
}

.upload-tips ul {
    list-style: none;
    padding-left: 0;
}

.upload-tips li {
    color: #4b5563;
    margin-bottom: 8px;
    position: relative;
    padding-left: 24px;
}

.upload-tips li::before {
    content: '✓';
    position: absolute;
    left: 0;
    color: #10b981;
    font-weight: bold;
}

.form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-bottom: 40px;
}

.settings-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 16px;
}

.form-grid .form-group input,
.form-grid .form-group select,
.form-grid .form-group textarea {
    width: 100%;
    padding: 12px 16px;
    border: 2px solid #e5e7eb;
    border-radius: 12px;
    font-size: 1rem;
    transition: border-color 0.3s ease;
}

.form-grid .form-group input:focus,
.form-grid .form-group select:focus,
.form-grid .form-group textarea:focus {
    outline: none;
    border-color: #b10000;
}

.form-grid .form-group label {
    display: block;
    font-weight: 500;
    color: #374151;
    margin-bottom: 8px;
}

.form-grid .form-group small {
    color: #6b7280;
    font-size: 0.85rem;
    margin-top: 4px;
    display: block;
}

.print-settings-section {
    margin-top: 40px;
}

.print-settings-section h3 {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 24px;
    color: #1a1a1a;
}

.form-navigation {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 32px;
    border-top: 1px solid #e5e7eb;
}

.btn-prev,
.btn-next,
.btn-publish {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    border-radius: 12px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-prev {
    background: white;
    color: #6b7280;
    border: 2px solid #e5e7eb;
}

.btn-prev:hover:not(:disabled) {
    border-color: #b10000;
    color: #b10000;
}

.btn-prev:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-next,
.btn-publish {
    background: #b10000;
    color: white;
    border: none;
}

.btn-next:hover,
.btn-publish:hover {
    background: #800101;
    transform: translateY(-1px);
}

.preview-card {
    background: white;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    margin-bottom: 32px;
}

.preview-image {
    position: relative;
    height: 250px;
    background: #f8fafc;
}

.preview-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.preview-badge {
    position: absolute;
    top: 12px;
    left: 12px;
}

.preview-info {
    padding: 24px;
}

.preview-info h3 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 8px;
    color: #1a1a1a;
}

.preview-creator {
    color: #6b7280;
    margin-bottom: 16px;
}

.preview-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

.preview-tags .tag {
    background: #f1f5f9;
    color: #475569;
    padding: 4px 12px;
    border-radius: 16px;
    font-size: 0.8rem;
}

.preview-stats {
    display: flex;
    gap: 16px;
    color: #6b7280;
    font-size: 0.9rem;
}

/* Image manage section (Step 4) */
.image-manage-section { background:#fff; border-radius:16px; padding:24px; margin-bottom:24px; }
.image-manage-section .hint { color:#6b7280; margin:-8px 0 14px; font-size:.95rem; }
.image-manager { display:grid; grid-template-columns:repeat(3, 1fr); gap:12px; }
.image-item { border:1px solid #e5e7eb; border-radius:12px; overflow:hidden; background:#fff; box-shadow:0 2px 10px rgba(0,0,0,.04); }
.image-item .thumb { position:relative; aspect-ratio:4/3; overflow:hidden; }
.image-item .thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.image-item .thumb .cover-badge { position:absolute; top:8px; left:8px; background:rgba(177,0,0,0.9); color:#fff; font-weight:700; font-size:.8rem; padding:6px 10px; border-radius:9999px; display:none; align-items:center; gap:6px; }
.image-item.is-cover .thumb .cover-badge { display:inline-flex; }
.image-item .thumb .cover-badge i { color:#ffd166; }
.image-item .controls { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:10px 12px; }
.btn-cover { background:#f3f4f6; border:none; border-radius:10px; padding:8px 12px; cursor:pointer; font-weight:600; color:#374151; }
.image-item.is-cover .btn-cover { background:#b10000; color:#fff; }
.btn-remove { background:#ef4444; color:#fff; border:none; width:36px; height:36px; border-radius:10px; display:flex; align-items:center; justify-content:center; cursor:pointer; }
.image-item.drag-over { outline:3px dashed #b10000; outline-offset:-3px; }
@media (max-width: 900px){ .image-manager { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px){ .image-manager { grid-template-columns: 1fr; } }

.publish-options {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 32px;
}

.publish-option {
    border: 2px solid #e5e7eb;
    border-radius: 12px;
    padding: 20px;
    transition: border-color 0.3s ease;
}

.publish-option:has(input:checked) {
    border-color: #b10000;
    background: #f8fafc;
}

.option-header {
    display: flex;
    align-items: center;
    gap: 16px;
}

.option-header input[type="radio"] {
    width: 20px;
    height: 20px;
}

.option-header label {
    display: flex;
    align-items: center;
    gap: 16px;
    cursor: pointer;
    flex: 1;
}

.option-header i {
    font-size: 1.5rem;
    color: #b10000;
}

.option-header h4 {
    font-weight: 600;
    margin-bottom: 4px;
}

.option-header p {
    color: #6b7280;
    font-size: 0.9rem;
}

.publish-settings {
    background: #f8fafc;
    padding: 24px;
    border-radius: 12px;
    margin-bottom: 32px;
}

.setting-option {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

.setting-option:last-child {
    margin-bottom: 0;
}

.setting-option input[type="checkbox"] {
    width: 18px;
    height: 18px;
}

.setting-option label {
    font-weight: 500;
    color: #374151;
    cursor: pointer;
}

.publish-summary {
    background: white;
    border: 2px solid #e5e7eb;
    border-radius: 12px;
    padding: 24px;
}

.publish-summary h4 {
    font-weight: 600;
    margin-bottom: 16px;
    color: #1a1a1a;
}

.summary-item {
    display: flex;
    justify-content: space-between;
    margin-bottom: 12px;
    color: #4b5563;
}

.summary-item:last-child {
    margin-bottom: 0;
}

.summary-item span:last-child {
    font-weight: 500;
    color: #1a1a1a;
}

/* ==================== COMPETITIONS PAGE STYLES ==================== */

/* Competition Page Header */
.page-header {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    padding: 120px 0 80px 0;
    text-align: center;
    margin-top: 70px;
}

/* Competitions header brand variant */
.page-header.page-header--competitions {
    background: linear-gradient(135deg, #b10000 0%, #830101 100%);
}

/* Competitions header layout and illustration */
.page-header.page-header--competitions { position: relative; overflow: hidden; }
.page-header.page-header--competitions .container { position: relative; z-index: 2; }
.competitions-header-illustration { position: absolute; right: 16px; bottom: -12px; width: 380px; height: auto; pointer-events: none; opacity: .9; z-index: 1; }
@media (max-width: 900px) { .competitions-header-illustration { width: 260px; right: 10px; bottom: -10px; opacity: .85; } }
@media (max-width: 640px) { .competitions-header-illustration { display: none; } }

.page-header h1 {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 16px;
}

.page-header p {
    font-size: 1.2rem;
    opacity: 0.9;
    max-width: 600px;
    margin: 0 auto;
}

/* Active Competition Banner */
.active-competition {
    padding: 60px 0;
    background: #f8fafc;
}

.competition-banner {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 60px;
    align-items: center;
    background: white;
    border-radius: 20px;
    padding: 50px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
}

.competition-banner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 6px;
    background: linear-gradient(90deg, #b10000 0%, #8a0000 100%);
}

.competition-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
    color: white;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 600;
    margin-bottom: 20px;
    animation: pulse 2s infinite;
}

.banner-content h2 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 16px;
    line-height: 1.2;
}

.banner-content p {
    font-size: 1.1rem;
    color: #64748b;
    margin-bottom: 30px;
    line-height: 1.6;
}

.competition-details {
    display: flex;
    gap: 30px;
    margin-bottom: 30px;
    flex-wrap: wrap;
}

.detail {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #b10000;
    font-weight: 600;
}

.detail i {
    font-size: 1.1rem;
}

.competition-countdown {
    margin-bottom: 30px;
}

.countdown-timer {
    display: flex;
    gap: 20px;
    justify-content: flex-start;
}

.time-unit {
    text-align: center;
    background: #f8fafc;
    padding: 16px 20px;
    border-radius: 12px;
    border: 2px solid #e2e8f0;
    min-width: 80px;
}

.time-value {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    color: #b10000;
    line-height: 1;
}

.time-label {
    display: block;
    font-size: 0.85rem;
    color: #64748b;
    font-weight: 500;
    margin-top: 4px;
}

.btn-join-competition {
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
    color: white;
    border: none;
    padding: 16px 32px;
    border-radius: 12px;
    font-size: 1.1rem;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(177, 0, 0, 0.3);
}

.btn-join-competition:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(177, 0, 0, 0.4);
}

.banner-visual {
    position: relative;
}

.competition-image {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}

.competition-image img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    display: block;
}

.image-overlay {
    position: absolute;
    top: 20px;
    right: 20px;
}

.prize-highlight {
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 12px 16px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    font-size: 1.1rem;
}

.prize-highlight i { color: #f59e0b; }

/* Modal header color align to brand on competitions */
.competition-modal .modal-header,
.results-modal .modal-header {
    background: linear-gradient(135deg, #b10000 0%, #830101 100%);
}

/* Competition Categories */
.competition-categories {
    padding: 40px 0 0 0;
}

.competition-categories h2 {
    font-size: 2rem;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 30px;
    text-align: center;
}

.categories-tabs {
    display: flex;
    justify-content: center;
    gap: 0;
    background: #f1f5f9;
    border-radius: 12px;
    padding: 6px;
    max-width: 600px;
    margin: 0 auto;
}

.category-tab {
    background: none;
    border: none;
    padding: 12px 24px;
    border-radius: 8px;
    font-weight: 500;
    color: #64748b;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
    flex: 1;
    text-align: center;
}

.category-tab.active {
    background: white;
    color: #b10000;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.category-tab:hover:not(.active) {
    color: #374151;
}

.category-tab:focus-visible {
    outline: 3px solid rgba(177, 0, 0, 0.35);
    outline-offset: 2px;
}

/* Competitions Grid */
.competitions-section {
    padding: 60px 0;
}

.competitions-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
    gap: 30px;
}

.competition-card {
    background: white;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    border: 1px solid #e2e8f0;
}

.competition-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
}

.competition-card:focus-within {
    outline: 2px solid rgba(177, 0, 0, 0.4);
}

.competition-status {
    position: absolute;
    top: 16px;
    left: 16px;
    right: 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 2;
}

.status-badge {
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
    color: white;
}

.status-badge.active {
    background: #10b981;
}

.status-badge.upcoming {
    background: #f59e0b;
}

.status-badge.completed {
    background: #6b7280;
}

.time-left {
    background: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 500;
}

.competition-image {
    position: relative;
    height: 220px;
    overflow: hidden;
}

.competition-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.competition-card:hover .competition-image img {
    transform: scale(1.05);
}

.competition-overlay {
    position: absolute;
    bottom: 16px;
    right: 16px;
}

.prize-amount {
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 8px 12px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
}

.prize-amount i {
    color: #f59e0b;
}

.winner-badge {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: white;
    padding: 8px 12px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
    font-size: 0.85rem;
}

.competition-content {
    padding: 24px;
}

.competition-content h3 {
    font-size: 1.25rem;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 12px;
    line-height: 1.3;
}

.competition-content p {
    color: #64748b;
    margin-bottom: 20px;
    line-height: 1.5;
}

.competition-meta {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 20px;
}

.meta-item {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #64748b;
    font-size: 0.9rem;
}

.meta-item i {
    width: 16px;
    color: #b10000;
}

.competition-sponsors {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
    font-size: 0.9rem;
    color: #64748b;
}

.sponsor-logos {
    display: flex;
    gap: 8px;
}

.sponsor-logos img {
    height: 20px;
    border-radius: 4px;
}

.winner-info {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
    padding: 12px;
    background: #f8fafc;
    border-radius: 8px;
}

.winner-avatar img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
}

.winner-details {
    flex: 1;
}

.winner-name {
    display: block;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 4px;
}

.winner-prize {
    color: #10b981;
    font-size: 0.9rem;
    font-weight: 500;
}

.competition-actions {
    display: flex;
    gap: 12px;
}

.btn-join,
.btn-notify,
.btn-details,
.btn-results {
    padding: 10px 20px;
    border-radius: 8px;
    font-weight: 500;
    font-size: 0.9rem;
    cursor: pointer;
    transition: all 0.2s ease;
    border: none;
    flex: 1;
    text-align: center;
}

.btn-join {
    background: #b10000;
    color: white;
}

.btn-join:hover {
    background: #800101;
}

.btn-join.joined {
    background: #10b981;
}

.btn-notify {
    background: #f59e0b;
    color: white;
}

.btn-notify:hover {
    background: #d97706;
}

.btn-notify.notified {
    background: #10b981;
}

.btn-details,
.btn-results {
    background: #f1f5f9;
    color: #374151;
    border: 1px solid #e2e8f0;
}

.btn-details:hover,
.btn-results:hover {
    background: #e2e8f0;
}

.btn-join:focus-visible,
.btn-notify:focus-visible,
.btn-details:focus-visible,
.btn-results:focus-visible,
.btn-join-competition:focus-visible {
    outline: 3px solid rgba(177, 0, 0, 0.35);
    outline-offset: 2px;
}

/* Competition Rules */
.competition-rules {
    padding: 80px 0;
    background: #f8fafc;
}

.competition-rules h2 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #1e293b;
    text-align: center;
    margin-bottom: 60px;
}

.rules-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
}

.rule-card {
    background: white;
    padding: 30px;
    border-radius: 16px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    text-align: center;
}

.rule-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px auto;
    color: white;
    font-size: 1.5rem;
}

.rule-card h3 {
    font-size: 1.25rem;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 16px;
}

.rule-card ul {
    list-style: none;
    text-align: left;
}

.rule-card li {
    padding: 8px 0;
    color: #64748b;
    position: relative;
    padding-left: 20px;
}

.rule-card li::before {
    content: '✓';
    position: absolute;
    left: 0;
    color: #10b981;
    font-weight: bold;
}

/* ==================== BLOG PAGE STYLES ==================== */

/* Blog Hero */
.blog-hero {
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
    color: white;
    padding: 120px 0 80px 0;
    margin-top: 70px;
    position: relative;
    overflow: hidden;
}

.blog-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" fill="white" opacity="0.1"><polygon points="0,0 1000,100 0,100"/></svg>');
    background-size: cover;
}

.blog-hero .container {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 60px;
    align-items: center;
}

.hero-content h1 {
    font-size: 3.5rem;
    font-weight: 700;
    margin-bottom: 20px;
    line-height: 1.1;
}

.hero-content p {
    font-size: 1.3rem;
    opacity: 0.9;
    margin-bottom: 40px;
    line-height: 1.5;
}

.hero-stats {
    display: flex;
    gap: 40px;
}

.stat {
    text-align: center;
}

.stat-number {
    display: block;
    font-size: 2.5rem;
    font-weight: 700;
    color: #fbbf24;
    margin-bottom: 8px;
}

.stat-label {
    font-size: 1rem;
    opacity: 0.9;
}

.hero-visual {
    display: flex;
    justify-content: center;
}

/* Blog header illustration */
.blog-header-illustration {
    position: absolute;
    right: 16px;
    bottom: -20px;
    width: 560px;
    height: auto;
    pointer-events: none;
    opacity: .9;
}
@media (max-width: 900px) { .blog-header-illustration { width: 360px; right: 12px; bottom: -12px; opacity: .85; } }
@media (max-width: 640px) { .blog-header-illustration { display: none; } }

.floating-card {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    padding: 30px;
    text-align: center;
    animation: float 3s ease-in-out infinite;
}

.floating-card i {
    font-size: 3rem;
    color: #fbbf24;
    margin-bottom: 16px;
}

.floating-card h3 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 12px;
}

.floating-card p {
    opacity: 0.9;
    font-size: 1rem;
}

@keyframes float {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
}

.blog-detail .article-content {
    padding: 40px 0;
}

.article-header h1 {
    font-size: 2.2rem;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 20px 0;
}

.publish-info { color: #64748b; font-size: .95rem; }

.article-image { margin: 30px 0; border-radius: 12px; overflow: hidden; }
.article-image img { width: 100%; height: auto; display: block; }

.article-body h2 { font-size: 1.6rem; font-weight: 600; color: #1e293b; margin: 36px 0 16px; }
.article-body h3 { font-size: 1.3rem; font-weight: 600; color: #1e293b; margin: 28px 0 12px; }
.article-body h2, .article-body h3 { scroll-margin-top: 90px; position: relative; }
.article-body p { margin-bottom: 16px; color: #374151; }
.article-body .lead { font-size: 1.2rem; background: #f8fafc; border-left: 4px solid #b10000; border-radius: 12px; padding: 18px; }
.article-body blockquote { margin: 28px 0; padding: 20px; background: #f8fafc; border-left: 4px solid #b10000; border-radius: 0 12px 12px 0; font-style: italic; }
.article-body blockquote p { margin: 0 0 8px; }
.article-conclusion { background: #f3f4f6; color: #1f2937; padding: 24px; border-radius: 12px; border: 1px solid #e5e7eb; }
.article-conclusion h3 { color: #1e293b; margin-top: 0; }

.article-tags { display: flex; gap: 10px; flex-wrap: wrap; }
.article-tags .tag { background: #f1f5f9; color: #374151; padding: 6px 12px; border-radius: 20px; font-size: .85rem; }

/* Detail utilities */
.reading-progress { position: fixed; top: 0; left: 0; height: 4px; width: 100%; background: rgba(177,0,0,0.15); z-index: 9999; }
.reading-progress::after { content: ''; display: block; height: 100%; width: var(--progress, 0%); background: linear-gradient(90deg,#b10000,#8a0000); }

.breadcrumb { display:flex; gap:8px; align-items:center; margin: 20px 0 8px; }
.blog-detail > .container > h1 { font-size: 2.2rem; margin: 0 0 10px; color:#1e293b; }
.breadcrumb a { color:#ffd7d7; text-decoration:none; }
.breadcrumb a:hover { text-decoration:underline; }

.share-bar { margin-top:16px; display:flex; gap:10px; flex-wrap: wrap; }
.share-bar .share-btn { background: rgba(255,255,255,.15); color:#fff; border:1px solid rgba(255,255,255,.25); padding:8px 12px; border-radius:8px; cursor:pointer; }
.share-bar .share-btn:hover { background: rgba(255,255,255,.25); }

.detail-layout { display:grid; grid-template-columns: 240px 1fr 300px; gap:40px; }
.toc { position: sticky; top: 90px; align-self: start; background:#fff; border:1px solid #e5e7eb; border-radius:12px; padding:16px; }
.toc h3 { margin:0 0 10px; font-size:1rem; color:#1e293b; }
.toc nav { display:flex; flex-direction:column; gap:8px; }
.toc a { color:#64748b; text-decoration:none; font-size:.95rem; }
.toc a.active, .toc a:hover { color:#b10000; }

.author-box { display:flex; gap:14px; padding:16px; background:#f8fafc; border-radius:12px; margin-top:24px; align-items:center; }
.author-box img { width:64px; height:64px; border-radius:50%; object-fit:cover; }
.author-box h4 { margin:0 0 6px; }

.prev-next { display:flex; justify-content:space-between; margin-top:28px; }
.prev-next a { color:#b10000; text-decoration:none; font-weight:600; }
.prev-next a:hover { text-decoration:underline; }

.aside-widgets { display:flex; flex-direction:column; gap:20px; }
.aside-widgets .widget { background:#fff; border:1px solid #e5e7eb; border-radius:12px; padding:16px; }
.related-posts a { display:block; color:#374151; text-decoration:none; padding:6px 0; }
.related-posts a:hover { color:#b10000; }
.aside-widgets .newsletter-widget { background: linear-gradient(135deg, #b10000 0%, #8a0000 100%); color:#fff; border-color: transparent; }
.aside-widgets .newsletter-widget h3 { color:#fff; margin-top:0; }
.aside-widgets .newsletter-widget p { opacity:.95; }
.aside-widgets .newsletter-widget .newsletter-form input { background:#fff; color:#111827; border: none; }
.aside-widgets .newsletter-widget .newsletter-form button { background:#111827; }
.aside-widgets .newsletter-widget .newsletter-stats span { color:#fff; }

.comments { padding: 40px 0 80px; background:#f8fafc; }
.comments h3 { margin-bottom:16px; }
.comment-form { display:flex; flex-direction: column; gap:12px; align-items:flex-start; margin-bottom:20px; }
.comment-form .field { flex: 1 1 0; min-width: 0; }
.comment-form textarea { width:100%; min-height:110px; resize:vertical; border:1px solid #e5e7eb; border-radius:10px; padding:12px; font-family:inherit; outline: none; }
.comment-form textarea:focus { border-color:#b10000; box-shadow: 0 0 0 3px rgba(177,0,0,.15); }
.comment-form .meta-row { display:flex; justify-content:space-between; gap:8px; margin-top:6px; font-size:.85rem; }
.comment-form .char-counter { color:#6b7280; }
.comment-form .error-text { color:#dc2626; min-height: 1em; }
.comment-form .btn-submit { background: linear-gradient(135deg, #b10000 0%, #8a0000 100%); color:#fff; border:none; padding:12px 16px; border-radius:10px; cursor:pointer; font-weight:600; flex: 0 0 auto; display:inline-flex; align-items:center; gap:8px; height:48px; width:auto; align-self: flex-end; margin-top: 6px; }
.comment-form .btn-submit:disabled { opacity:.6; cursor:not-allowed; }
.comment-list { display:flex; flex-direction:column; gap:16px; }
.comment-item { display:flex; gap:12px; background:#fff; border:1px solid #e5e7eb; border-radius:12px; padding:12px; }
.comment-item img { width:48px; height:48px; border-radius:50%; object-fit:cover; }
.comment-item .meta { color:#64748b; margin-bottom:6px; }

@media (max-width: 640px) {
    .comment-form .btn-submit { align-self: flex-end; }
}

/* Heading anchor link */
.heading-anchor { position:absolute; left:-28px; top:50%; transform:translateY(-50%); opacity:0; transition:opacity .2s ease; color:#b10000; text-decoration:none; font-size:.9rem; }
.article-body h2:hover .heading-anchor, .article-body h3:hover .heading-anchor { opacity:1; }

/* Minimal toast styling for blog detail */
.toast { position: fixed; bottom: 20px; right: 20px; background:#111827; color:#fff; padding:10px 14px; border-radius:10px; opacity:0; transform: translateY(8px); transition: all .25s ease; z-index: 10000; box-shadow: 0 8px 20px rgba(0,0,0,.25); }
.toast.show { opacity:1; transform: translateY(0); }

@media (max-width: 1100px) {
    .detail-layout { grid-template-columns: 1fr; }
    .toc, .aside-widgets { position:static; order:2; }
}

/* Featured Article */
.featured-article {
    padding: 80px 0;
    background: #f8fafc;
}

.featured-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
    background: white;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.featured-image {
    position: relative;
    height: 400px;
}

.featured-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.featured-overlay {
    position: absolute;
    top: 20px;
    left: 20px;
    right: 20px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.featured-badge {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
    color: white;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 600;
}

.article-meta {
    display: flex;
    gap: 12px;
}

.category,
.read-time {
    background: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 6px 12px;
    border-radius: 16px;
    font-size: 0.8rem;
    font-weight: 500;
}

.featured-text {
    padding: 40px 50px;
}

.featured-text h2 {
    font-size: 2.2rem;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 20px;
    line-height: 1.2;
}

.featured-text p {
    font-size: 1.1rem;
    color: #64748b;
    margin-bottom: 30px;
    line-height: 1.6;
}

.article-author {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 25px;
}

.article-author img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    object-fit: cover;
}

.author-info {
    flex: 1;
}

.author-name {
    display: block;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 4px;
}

.publish-date {
    color: #64748b;
    font-size: 0.9rem;
}

.article-stats {
    display: flex;
    gap: 20px;
    margin-bottom: 30px;
}

.stat-item {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #64748b;
    font-size: 0.9rem;
}

.stat-item i {
    color: #b10000;
}

.btn-read-article {
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
    color: white;
    border: none;
    padding: 14px 28px;
    border-radius: 10px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-read-article:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(177, 0, 0, 0.4);
}

/* Blog Categories */
.blog-categories {
    padding: 40px 0;
}

.blog-categories h2 {
    font-size: 2rem;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 30px;
    text-align: center;
}

.categories-filter {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
}

.filter-btn {
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    color: #64748b;
    padding: 10px 20px;
    border-radius: 25px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.filter-btn.active {
    background: #b10000;
    color: white;
    border-color: #b10000;
}

.filter-btn:hover:not(.active) {
    background: #e2e8f0;
    color: #374151;
}

/* Blog Articles */
.blog-articles {
    padding: 60px 0;
}

.articles-layout {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 60px;
}

.articles-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 30px;
}

.blog-card {
    background: white;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    border: 1px solid #e2e8f0;
}

.blog-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
}

.card-image {
    position: relative;
    height: 200px;
    overflow: hidden;
}

.card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.blog-card:hover .card-image img {
    transform: scale(1.05);
}

.card-overlay {
    position: absolute;
    top: 16px;
    left: 16px;
    right: 16px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.category-badge {
    padding: 6px 12px;
    border-radius: 16px;
    font-size: 0.8rem;
    font-weight: 600;
    color: white;
}

.category-badge.tutorial {
    background: #10b981;
}

.category-badge.technique {
    background: #b10000;
}

.category-badge.news {
    background: #ef4444;
}

.category-badge.review {
    background: #f59e0b;
}

.category-badge.tips {
    background: #b10000;
}

.category-badge.beginner {
    background: #06b6d4;
}

.bookmark-btn {
    background: rgba(0, 0, 0, 0.7);
    border: none;
    color: white;
    padding: 8px;
    border-radius: 50%;
    cursor: pointer;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.bookmark-btn:hover {
    background: rgba(0, 0, 0, 0.9);
}

.card-content {
    padding: 24px;
}

.card-content h3 {
    font-size: 1.25rem;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 12px;
    line-height: 1.3;
}

.card-content p {
    color: #64748b;
    margin-bottom: 20px;
    line-height: 1.5;
}

.article-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.article-footer .author-info {
    display: flex;
    align-items: center;
    gap: 10px;
}

.article-footer .author-info img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
}

.article-footer .author-name {
    font-weight: 500;
    color: #374151;
    font-size: 0.9rem;
    margin-bottom: 2px;
}

.article-footer .publish-date {
    color: #9ca3af;
    font-size: 0.8rem;
}

.article-footer .article-stats {
    display: flex;
    gap: 12px;
    font-size: 0.8rem;
    color: #9ca3af;
}

.article-footer .article-stats span {
    display: flex;
    align-items: center;
    gap: 4px;
}

/* Load More */
.load-more-section {
    text-align: center;
    margin-top: 50px;
}

.btn-load-more {
    background: #b10000;
    color: white;
    border: none;
    padding: 14px 32px;
    border-radius: 10px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
}

.btn-load-more:hover {
    background: #800101;
    transform: translateY(-2px);
}

/* Blog Sidebar */
.blog-sidebar {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.sidebar-widget {
    background: white;
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    border: 1px solid #e2e8f0;
}

.sidebar-widget h3 {
    font-size: 1.25rem;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 20px;
}

/* Popular Articles */
.popular-articles {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.popular-item {
    display: flex;
    gap: 15px;
    align-items: flex-start;
}

.popular-item img {
    width: 80px;
    height: 80px;
    border-radius: 8px;
    object-fit: cover;
    flex-shrink: 0;
}

.popular-content h4 {
    font-size: 1rem;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 8px;
    line-height: 1.3;
}

.popular-meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 0.8rem;
    color: #64748b;
}

/* Newsletter Widget */
.newsletter-widget {
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
    color: white;
}

.newsletter-widget h3 {
    color: white;
}

.newsletter-widget p {
    opacity: 0.9;
    margin-bottom: 20px;
}

.newsletter-form {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 15px;
}

.newsletter-form input {
    padding: 12px 16px;
    border: none;
    border-radius: 8px;
    font-size: 1rem;
}

.newsletter-form input::placeholder {
    color: #9ca3af;
}

.newsletter-form button {
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: white;
    padding: 12px 16px;
    border-radius: 8px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.2s ease;
}

.newsletter-form button:hover {
    background: rgba(255, 255, 255, 0.3);
}

.newsletter-stats {
    font-size: 0.85rem;
    opacity: 0.8;
    text-align: center;
}

/* Tags Cloud */
.tags-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.tag {
    background: #f1f5f9;
    color: #64748b;
    padding: 6px 12px;
    border-radius: 16px;
    font-size: 0.85rem;
    text-decoration: none;
    transition: all 0.2s ease;
}

.tag:hover {
    background: #e2e8f0;
    color: #374151;
}

/* Featured Authors */
.featured-authors {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.author-item {
    display: flex;
    gap: 15px;
    align-items: center;
}

.author-item img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    object-fit: cover;
}

.author-details h4 {
    font-size: 1rem;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 4px;
}

.author-details span {
    color: #64748b;
    font-size: 0.85rem;
    display: block;
    margin-bottom: 4px;
}

.author-stats {
    font-size: 0.8rem;
    color: #9ca3af;
}

/* Toast Notifications */
.toast {
    position: fixed;
    top: 90px;
    right: 20px;
    background: white;
    border-radius: 12px;
    padding: 16px 20px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    border-left: 4px solid #b10000;
    max-width: 400px;
    opacity: 0;
    transform: translateX(100%);
    transition: all 0.3s ease;
    z-index: 1050;
}

.toast.show {
    opacity: 1;
    transform: translateX(0);
}

.toast.toast-success {
    border-left-color: #10b981;
}

.toast.toast-warning {
    border-left-color: #f59e0b;
}

.toast.toast-error {
    border-left-color: #ef4444;
}

.toast-content {
    display: flex;
    align-items: center;
    gap: 12px;
}

.toast-content i {
    font-size: 1.2rem;
}

.toast.toast-success .toast-content i {
    color: #10b981;
}

.toast.toast-warning .toast-content i {
    color: #f59e0b;
}

.toast.toast-error .toast-content i {
    color: #ef4444;
}

.toast.toast-info .toast-content i {
    color: #b10000;
}

.toast-content span {
    flex: 1;
    font-weight: 500;
    color: #374151;
}

.toast-close {
    background: none;
    border: none;
    color: #9ca3af;
    cursor: pointer;
    padding: 4px;
    margin-left: 12px;
}

.toast-close:hover {
    color: #374151;
}

/* Responsive Design */
@media (max-width: 768px) {
    /* Competition Page Responsive */
    .competition-banner {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 30px 20px;
        text-align: center;
    }

    .banner-content h2 {
        font-size: 1.8rem;
    }

    .competition-details {
        justify-content: center;
        gap: 20px;
    }

    .countdown-timer {
        justify-content: center;
        gap: 15px;
    }

    .time-unit {
        min-width: 60px;
        padding: 12px 16px;
    }

    .time-value {
        font-size: 1.5rem;
    }

    .categories-tabs {
        flex-wrap: wrap;
        gap: 8px;
        padding: 8px;
    }

    .category-tab {
        padding: 8px 16px;
        font-size: 0.9rem;
    }

    .competitions-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .rules-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    /* Blog Page Responsive */
    .blog-hero .container {
        grid-template-columns: 1fr;
        gap: 30px;
        text-align: center;
    }

    .hero-content h1 {
        font-size: 2.5rem;
    }

    .hero-stats {
        justify-content: center;
        gap: 30px;
    }

    .featured-content {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .featured-text {
        padding: 30px 20px;
    }

    .featured-text h2 {
        font-size: 1.8rem;
    }

    .categories-filter {
        gap: 8px;
    }

    .filter-btn {
        padding: 8px 16px;
        font-size: 0.9rem;
    }

    .articles-layout {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .articles-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .article-footer {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }

    .sidebar-widget {
        padding: 20px;
    }

    .popular-item {
        gap: 12px;
    }

    .popular-item img {
        width: 60px;
        height: 60px;
    }

    .author-item {
        gap: 12px;
    }

    .toast {
        right: 10px;
        left: 10px;
        max-width: none;
    }
}

/* Search Results Page Styles */
.search-header {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    padding: 60px 0 40px;
}

.search-header h1 {
    font-size: 2.5rem;
    margin-bottom: 10px;
    font-weight: 700;
}

.search-stats {
    color: rgba(255, 255, 255, 0.9);
    font-size: 1.1rem;
}

.search-content {
    padding: 40px 0;
}

.search-layout {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 40px;
    align-items: start;
}

.search-filters {
    background: white;
    border-radius: 12px;
    padding: 30px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    position: sticky;
    top: 20px;
}

.search-filters h3 {
    margin-bottom: 20px;
    color: #1f2937;
    font-size: 1.2rem;
}

.filter-group {
    margin-bottom: 30px;
}

.filter-group:last-child {
    margin-bottom: 0;
}

.filter-group h4 {
    margin-bottom: 15px;
    color: #374151;
    font-weight: 600;
}

.filter-option {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
    cursor: pointer;
}

.filter-option input[type="checkbox"],
.filter-option input[type="radio"] {
    width: 18px;
    height: 18px;
}

.filter-option label {
    cursor: pointer;
    flex: 1;
    color: #4b5563;
}

.filter-range {
    display: flex;
    gap: 10px;
    align-items: center;
}

.filter-range input {
    flex: 1;
    padding: 8px 12px;
    border: 2px solid #e5e7eb;
    border-radius: 6px;
    font-size: 14px;
}

.results-section {
    background: white;
}

.results-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 2px solid #e5e7eb;
}

.results-count {
    color: #6b7280;
}

.sort-controls {
    display: flex;
    gap: 15px;
    align-items: center;
}

.sort-select {
    padding: 8px 12px;
    border: 2px solid #e5e7eb;
    border-radius: 6px;
    background: white;
    cursor: pointer;
}

.view-toggle {
    display: flex;
    border: 2px solid #e5e7eb;
    border-radius: 6px;
    overflow: hidden;
}

.view-btn {
    padding: 8px 12px;
    background: white;
    border: none;
    cursor: pointer;
    color: #6b7280;
    transition: all 0.2s ease;
}

.view-btn.active {
    background: #b10000;
    color: white;
}

.results-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 30px;
}

.results-list .results-grid {
    grid-template-columns: 1fr;
    gap: 20px;
}

.result-card {
    background: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    cursor: pointer;
}

.result-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

.results-list .result-card {
    display: flex;
    overflow: visible;
}

.result-image {
    position: relative;
    aspect-ratio: 16/10;
    overflow: hidden;
}

.results-list .result-image {
    width: 200px;
    aspect-ratio: 1;
    flex-shrink: 0;
}

.result-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.result-card:hover .result-image img {
    transform: scale(1.05);
}

.result-badges {
    position: absolute;
    top: 10px;
    left: 10px;
    display: flex;
    gap: 5px;
}

.result-badge {
    background: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 4px 8px;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 500;
}

.result-badge.premium {
    background: linear-gradient(135deg, #fbbf24, #f59e0b);
}

.result-badge.featured {
    background: linear-gradient(135deg, #10b981, #059669);
}

.result-actions {
    position: absolute;
    top: 10px;
    right: 10px;
    display: flex;
    gap: 5px;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.result-card:hover .result-actions {
    opacity: 1;
}

.action-btn {
    width: 36px;
    height: 36px;
    background: rgba(255, 255, 255, 0.9);
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
}

.action-btn:hover {
    background: white;
    transform: scale(1.1);
}

.result-content {
    padding: 20px;
}

.results-list .result-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.result-title {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 8px;
    line-height: 1.4;
}

.result-author {
    color: #b10000;
    text-decoration: none;
    font-weight: 500;
    margin-bottom: 10px;
    display: block;
}

.result-author:hover {
    text-decoration: underline;
}

.result-description {
    color: #6b7280;
    font-size: 0.9rem;
    line-height: 1.5;
    margin-bottom: 15px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.results-list .result-description {
    -webkit-line-clamp: 3;
    line-clamp: 3;
}

.result-stats {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #9ca3af;
    font-size: 0.875rem;
}

.result-stat {
    display: flex;
    align-items: center;
    gap: 4px;
}

.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-top: 40px;
}

.pagination-btn {
    padding: 10px 15px;
    border: 2px solid #e5e7eb;
    background: white;
    color: #6b7280;
    text-decoration: none;
    border-radius: 8px;
    transition: all 0.2s ease;
}

.pagination-btn:hover {
    border-color: #b10000;
    color: #b10000;
}

.pagination-btn.active {
    background: #b10000;
    border-color: #b10000;
    color: white;
}

.pagination-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.no-results {
    text-align: center;
    padding: 60px 20px;
    color: #6b7280;
}

.no-results i {
    font-size: 4rem;
    color: #e5e7eb;
    margin-bottom: 20px;
}

.no-results h3 {
    margin-bottom: 10px;
    color: #374151;
}

.modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.modal-overlay.active {
    opacity: 1;
    visibility: visible;
}

.quick-view-modal {
    background: white;
    border-radius: 12px;
    width: 90%;
    max-width: 600px;
    max-height: 90vh;
    overflow: hidden;
    transform: scale(0.9);
    transition: transform 0.3s ease;
}

.modal-overlay.active .quick-view-modal {
    transform: scale(1);
}

.modal-header {
    display: flex;
    justify-content: between;
    align-items: center;
    padding: 20px;
    border-bottom: 1px solid #e5e7eb;
}

.modal-title {
    font-size: 1.3rem;
    font-weight: 600;
    color: #1f2937;
    flex: 1;
}

.modal-close {
    background: none;
    border: none;
    font-size: 1.5rem;
    color: #9ca3af;
    cursor: pointer;
    padding: 5px;
    border-radius: 4px;
    transition: all 0.2s ease;
}

.modal-close:hover {
    color: #6b7280;
    background: #f3f4f6;
}

.modal-body {
    padding: 0;
    max-height: 60vh;
    overflow-y: auto;
}

.modal-image {
    width: 100%;
    height: 300px;
    object-fit: cover;
}

.modal-content {
    padding: 20px;
}

.modal-author {
    color: #b10000;
    text-decoration: none;
    font-weight: 500;
    margin-bottom: 15px;
    display: block;
}

.modal-description {
    color: #6b7280;
    line-height: 1.6;
    margin-bottom: 20px;
}

.modal-stats {
    display: flex;
    justify-content: space-between;
    padding: 15px 0;
    border-top: 1px solid #e5e7eb;
    border-bottom: 1px solid #e5e7eb;
    margin-bottom: 20px;
}

.modal-stat {
    text-align: center;
}

.modal-stat .value {
    display: block;
    font-size: 1.2rem;
    font-weight: 600;
    color: #1f2937;
}

.modal-stat .label {
    font-size: 0.875rem;
    color: #9ca3af;
}

.modal-actions {
    display: flex;
    gap: 15px;
}

.modal-btn {
    flex: 1;
    padding: 12px 20px;
    border-radius: 8px;
    font-weight: 500;
    text-decoration: none;
    text-align: center;
    transition: all 0.2s ease;
}

.modal-btn.primary {
    background: #b10000;
    color: white;
    border: 2px solid #b10000;
}

.modal-btn.primary:hover {
    background: #800101;
    border-color: #800101;
}

.modal-btn.secondary {
    background: white;
    color: #b10000;
    border: 2px solid #b10000;
}

.modal-btn.secondary:hover {
    background: #b10000;
    color: white;
}

/* Profile Page Styles */
.profile-header {
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
    color: white;
    padding: 60px 0 40px;
}

.profile-info {
    display: flex;
    align-items: center;
    gap: 30px;
}

.profile-avatar {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    object-fit: cover;
    border: 4px solid rgba(255, 255, 255, 0.2);
}

.profile-details h1 {
    font-size: 2.5rem;
    margin-bottom: 10px;
    font-weight: 700;
}

/* Quick stats under name */
.profile-quick-stats { display:flex; gap:16px; margin-top:14px; flex-wrap:wrap; justify-content:center; }
.profile-quick-stats .quick-stat { display:flex; align-items:center; gap:8px; background:rgba(255,255,255,0.6); color:#1f2937; padding:8px 12px; border-radius:12px; font-weight:600; border:1px solid #e5e7eb; }
.profile-quick-stats .quick-stat i { color:#b10000; }
.profile-quick-stats .quick-stat span { font-weight:700; }
.profile-quick-stats .quick-stat small { font-weight:600; color:#6b7280; margin-left:4px; }

.profile-meta {
    display: flex;
    gap: 30px;
    margin-bottom: 20px;
    color: rgba(255, 255, 255, 0.9);
}

.profile-meta span {
    display: flex;
    align-items: center;
    gap: 5px;
}

.profile-bio {
    color: rgba(255, 255, 255, 0.9);
    line-height: 1.6;
    margin-bottom: 20px;
}

.profile-actions {
    display: flex;
    gap: 15px;
}

.btn-profile {
    padding: 12px 24px;
    border-radius: 8px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 2px solid transparent;
}

.btn-profile.primary {
    background: white;
    color: #b10000;
}

.btn-profile.primary:hover {
    background: #f8fafc;
}

.btn-profile.secondary {
    background: transparent;
    color: white;
    border-color: rgba(255, 255, 255, 0.3);
}

.btn-profile.secondary:hover {
    background: rgba(255, 255, 255, 0.1);
}

.profile-stats {
    display: flex;
    justify-content: center;
    gap: 60px;
    margin-top: 40px;
    padding-top: 40px;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.stat-item {
    text-align: center;
}

.stat-value {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 5px;
}

.stat-label {
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.9rem;
}

.profile-content {
    padding: 80px 0 40px;
}

.profile-tabs {
    display: flex;
    border-bottom: 2px solid #e5e7eb;
    margin-bottom: 40px;
    gap: 0;
}

.tab-btn {
    background: none;
    border: none;
    padding: 15px 25px;
    font-size: 1rem;
    font-weight: 500;
    color: #6b7280;
    cursor: pointer;
    border-bottom: 3px solid transparent;
    transition: all 0.2s ease;
}

.tab-btn.active {
    color: #b10000;
    border-bottom-color: #b10000;
}

.tab-btn:hover {
    color: #b10000;
}

.tab-content {
    display: none;
}

.tab-content.active {
    display: block;
}

.models-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 30px;
}

.model-card {
    background: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.model-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

.model-image {
    position: relative;
    aspect-ratio: 16/10;
    overflow: hidden;
}

.model-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.model-card:hover .model-image img {
    transform: scale(1.05);
}

.model-status {
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 4px 8px;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 500;
    color: white;
}

.model-status.published {
    background: #10b981;
}

.model-status.draft {
    background: #f59e0b;
}

.model-status.pending {
    background: #6b7280;
}

.model-info {
    padding: 20px;
}

.model-title {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 10px;
    line-height: 1.4;
}

.model-stats {
    display: flex;
    justify-content: space-between;
    color: #9ca3af;
    font-size: 0.875rem;
    margin-bottom: 15px;
}

.model-actions {
    display: flex;
    gap: 10px;
}

.model-action {
    flex: 1;
    padding: 8px 12px;
    border: 1px solid #e5e7eb;
    background: white;
    color: #6b7280;
    border-radius: 6px;
    text-decoration: none;
    text-align: center;
    font-size: 0.875rem;
    transition: all 0.2s ease;
}

.model-action:hover {
    border-color: #b10000;
    color: #b10000;
}

.model-action.primary {
    background: #b10000;
    color: white;
    border-color: #b10000;
}

.model-action.primary:hover {
    background: #800101;
}

.collections-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 30px;
}

.collection-card {
    background: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.collection-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

.collection-preview {
    position: relative;
    aspect-ratio: 16/10;
    background: #f3f4f6;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
}

.collection-preview img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.collection-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    font-weight: 600;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.collection-card:hover .collection-overlay {
    opacity: 1;
}

.collection-info {
    padding: 20px;
}

.collection-title {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 8px;
}

.collection-meta {
    color: #9ca3af;
    font-size: 0.875rem;
    margin-bottom: 10px;
}

.collection-description {
    color: #6b7280;
    font-size: 0.9rem;
    line-height: 1.5;
}

.activity-feed {
    background: white;
    border-radius: 12px;
    padding: 30px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
}

.activity-item {
    display: flex;
    gap: 15px;
    padding: 20px 0;
    border-bottom: 1px solid #e5e7eb;
}

.activity-item:last-child {
    border-bottom: none;
}

.activity-icon {
    width: 40px;
    height: 40px;
    background: #f3f4f6;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.activity-icon.upload {
    background: #dbeafe;
    color: #2563eb;
}

.activity-icon.like {
    background: #fee2e2;
    color: #dc2626;
}

.activity-icon.comment {
    background: #d1fae5;
    color: #059669;
}

.activity-icon.follow {
    background: #ede9fe;
    color: #7c3aed;
}

.activity-content {
    flex: 1;
}

.activity-text {
    color: #374151;
    line-height: 1.5;
    margin-bottom: 5px;
}

.activity-time {
    color: #9ca3af;
    font-size: 0.875rem;
}

.settings-section {
    background: white;
    border-radius: 12px;
    padding: 30px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    margin-bottom: 30px;
}

.settings-section h3 {
    margin-bottom: 20px;
    color: #1f2937;
    font-size: 1.3rem;
}

.setting-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid #e5e7eb;
}

.setting-item:last-child {
    border-bottom: none;
}

.setting-info {
    flex: 1;
}

.setting-info h4 {
    color: #374151;
    margin-bottom: 5px;
}

.setting-info p {
    color: #6b7280;
    font-size: 0.9rem;
    margin: 0;
}

.setting-control {
    margin-left: 20px;
}

.switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 26px;
}

.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: 0.4s;
    border-radius: 26px;
}

.slider:before {
    position: absolute;
    content: "";
    height: 20px;
    width: 20px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    transition: 0.4s;
    border-radius: 50%;
}

input:checked + .slider {
    background-color: #b10000;
}

input:checked + .slider:before {
    transform: translateX(24px);
}

/* Help Page Styles */
.help-hero {
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
    color: white;
    padding: 80px 0 60px;
    text-align: center;
}

/* Help header search alignment (button next to input) */
.page-header .help-search { display:flex; align-items:center; gap:10px; max-width: 720px; margin: 12px auto 0; position: relative; }
.page-header .help-search .search-input { position: relative; flex: 1; display:flex; align-items:center; }
.page-header .help-search .search-input i { position: absolute; left: 12px; color:#9ca3af; }
.page-header .help-search input { width: 100%; padding: 12px 14px 12px 40px; border-radius: 12px; }
.page-header .help-search .btn-search { position: static; transform: none; height: 44px; padding: 0 16px; border-radius: 10px; white-space: nowrap; }
@media (max-width: 480px) { .page-header .help-search { flex-wrap: wrap; } .page-header .help-search .btn-search { width: 100%; height: 42px; } }

.help-hero h1 {
    font-size: 3rem;
    margin-bottom: 20px;
    font-weight: 700;
}

.help-hero p {
    font-size: 1.2rem;
    margin-bottom: 40px;
    opacity: 0.9;
}

.help-search {
    max-width: 600px;
    margin: 0 auto;
    position: relative;
}

.help-search input {
    width: 100%;
    padding: 16px 60px 16px 20px;
    border: none;
    border-radius: 12px;
    font-size: 1.1rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.help-search .btn-search {
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    background: #b10000;
    color: white;
    border: none;
    padding: 12px 16px;
    border-radius: 8px;
    cursor: pointer;
}

.help-content {
    padding: 60px 0;
}

.help-layout {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 40px;
    align-items: start;
}

.help-sidebar {
    background: white;
    border-radius: 12px;
    padding: 30px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    position: sticky;
    top: 20px;
}

.help-sidebar h3 {
    margin-bottom: 20px;
    color: #1f2937;
}

.quick-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.quick-links li {
    margin-bottom: 10px;
}

.quick-link {
    display: block;
    padding: 10px 15px;
    color: #6b7280;
    text-decoration: none;
    border-radius: 8px;
    transition: all 0.2s ease;
}

.quick-link:hover {
    background: #f3f4f6;
    color: #b10000;
}

.faq-container {
    background: white;
    border-radius: 12px;
    padding: 40px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
}

.faq-category {
    margin-bottom: 40px;
}

.faq-category:last-child {
    margin-bottom: 0;
}

.category-title {
    font-size: 1.5rem;
    color: #1f2937;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #e5e7eb;
}

.faq-item {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    margin-bottom: 15px;
    overflow: hidden;
}

.faq-question {
    background: white;
    border: none;
    width: 100%;
    padding: 20px;
    text-align: left;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: background-color 0.2s ease;
}

.faq-question:hover {
    background: #f8fafc;
}

.faq-question h4 {
    margin: 0;
    color: #1f2937;
    font-weight: 600;
}

.faq-question i {
    color: #b10000;
    transition: transform 0.3s ease;
}

.faq-answer {
    padding: 0 20px;
    background: #f8fafc;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, padding 0.3s ease;
}

.faq-item.active .faq-answer {
    padding: 20px;
    max-height: 300px;
}

.faq-item.active .faq-question i {
    transform: rotate(180deg);
}

.faq-answer p {
    color: #6b7280;
    line-height: 1.6;
    margin: 0;
}

/* Help: search meta and suggestions */
.help-search { position: relative; }
/* search-meta ve temizle kaldırıldı */
.help-search .search-meta, .help-search .btn-clear { display: none !important; }
.search-suggestions { position:absolute; top: calc(100% + 8px); left:0; right:0; background:#fff; border:1px solid #e5e7eb; border-radius: 12px; box-shadow: 0 10px 30px rgba(0,0,0,.08); z-index: 10; overflow:hidden; display:none; }
.search-suggestions .suggestion-item { display:flex; align-items:center; gap:10px; padding:10px 12px; cursor:pointer; }
.search-suggestions .suggestion-item i { color:#b10000; }
.search-suggestions .suggestion-item span { color:#6b7280; }
.search-suggestions .suggestion-item:hover, .search-suggestions .suggestion-item.active { background:#fff1f1; }

/* Help: FAQ controls and actions */
.faq-controls { display:flex; gap:10px; justify-content:flex-end; margin-bottom: 12px; }
.btn-faq { border:2px solid #e5e7eb; background:#fff; color:#374151; padding:8px 12px; border-radius:10px; font-weight:600; cursor:pointer; }
.btn-faq:hover { border-color:#fca5a5; color:#b10000; }
.faq-actions { display:flex; align-items:center; justify-content: space-between; gap:12px; margin-top: 12px; padding-top: 12px; border-top:1px solid #e5e7eb; }
.btn-link { background: transparent; color:#b10000; border:0; font-weight:600; cursor:pointer; }
.btn-link:hover { text-decoration:underline; text-underline-offset: 2px; }
.helpful { display:flex; align-items:center; gap:8px; color:#6b7280; }
.helpful .btn-mini { border:2px solid #e5e7eb; background:#fff; color:#374151; padding:4px 8px; border-radius:8px; cursor:pointer; font-size:.85rem; }
.helpful .btn-mini:hover { border-color:#fca5a5; color:#b10000; }
.helpful.voted .thanks { color:#10b981; font-weight:600; }

/* Help: quick-link active state */
.quick-link.active { background:#ffe8e8; color:#b10000; border-radius:8px; }

/* Help: search meta result count */
/* result-count kaldırıldı */

.contact-support {
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
    color: white;
    padding: 60px 0;
    text-align: center;
    margin-top: 60px;
    border-radius: 12px;
}

.contact-support h2 {
    font-size: 2rem;
    margin-bottom: 15px;
}

.contact-support p {
    margin-bottom: 30px;
    opacity: 0.9;
    font-size: 1.1rem;
}

.support-options {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}

.support-option {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 12px;
    padding: 20px;
    width: min(320px, 100%);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 8px;
}

.support-icon {
    width: 56px;
    height: 56px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.support-icon i { color: #fff; font-size: 1.25rem; }

.support-option h3 { color: #fff; margin-top: 8px; }
.support-option p { color: rgba(255,255,255,.92); margin-bottom: 8px; }

.support-btn, .btn-support {
    padding: 15px 30px;
    background: white;
    color: #b10000;
    text-decoration: none;
    border-radius: 8px;
    font-weight: 500;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 180px;
    justify-content: center;
}

.support-btn:hover, .btn-support:hover {
    background: #f8fafc;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.btn-support:focus-visible { outline: 3px solid rgba(255,255,255,.6); outline-offset: 2px; }

/* Contact Page Styles */
.contact-hero {
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%) !important;
    color: white;
    padding: 100px 0 80px;
    text-align: center;
}

.hero-content h1 {
    font-size: 3rem;
    margin-bottom: 20px;
    font-weight: 700;
}

.hero-content p {
    font-size: 1.2rem;
    margin-bottom: 40px;
    opacity: 0.9;
}

.hero-icons {
    display: flex;
    justify-content: center;
    gap: 40px;
    margin-top: 40px;
}

.hero-icon {
    text-align: center;
}

.hero-icon i {
    font-size: 2rem;
    margin-bottom: 10px;
    display: block;
}

.contact-methods {
    padding: 80px 0;
    background: #f8fafc;
}

.methods-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
    margin-top: 40px;
}

.method-card {
    background: white;
    padding: 40px 30px;
    border-radius: 12px;
    text-align: center;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.method-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

.method-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #b10000, #8a0000) !important;
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    font-size: 2rem;
}

.method-card h3 {
    margin-bottom: 10px;
    color: #1f2937;
}

.method-card p {
    color: #64748b;
    margin-bottom: 20px;
}

.method-link {
    color: #b10000;
    text-decoration: none;
    font-weight: 500;
    display: block;
    margin-bottom: 10px;
}

.btn-chat {
    background: #10b981;
    color: white;
    border: none;
    padding: 12px 24px;
    border-radius: 8px;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.2s ease;
    margin-bottom: 10px;
}

.btn-chat:hover {
    background: #059669;
}

.response-time {
    font-size: 0.875rem;
    color: #94a3b8;
}

.contact-form-section {
    padding: 80px 0;
}

.form-content {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 60px;
    align-items: start;
}

.form-info h2 {
    font-size: 2.5rem;
    margin-bottom: 20px;
    color: #1f2937;
}

.form-info > p {
    color: #64748b;
    margin-bottom: 40px;
    line-height: 1.6;
}

.contact-details {
    margin-bottom: 40px;
}

.detail-item {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.detail-item i {
    width: 50px;
    height: 50px;
    background: #f1f5f9;
    color: #b10000;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 20px;
    font-size: 1.2rem;
}

.detail-item h4 {
    margin: 0 0 5px 0;
    color: #1f2937;
}

.detail-item p {
    margin: 0;
    color: #64748b;
}

.social-links h4 {
    margin-bottom: 15px;
    color: #1f2937;
}

.social-icons {
    display: flex;
    gap: 15px;
}

.social-icons a {
    width: 40px;
    height: 40px;
    background: #f1f5f9;
    color: #64748b;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.2s ease;
}

.social-icons a:hover {
    background: #b10000;
    color: white;
}

.contact-form {
    background: white;
    padding: 40px;
    border-radius: 12px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
}

.form-group {
    margin-bottom: 25px;
}

.form-group label {
    display: block;
    margin-bottom: 8px;
    font-weight: 500;
    color: #374151;
}

.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;
    padding: 12px 16px;
    border: 2px solid #e5e7eb;
    border-radius: 8px;
    font-size: 16px;
    transition: border-color 0.2s ease;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    outline: none;
    border-color: #b10000;
}

.form-group input.error,
.form-group select.error,
.form-group textarea.error {
    border-color: #ef4444;
}

.char-count {
    text-align: right;
    font-size: 0.875rem;
    color: #94a3b8;
    margin-top: 5px;
}

.char-count.warning {
    color: #f59e0b;
}

.file-upload-area {
    border: 2px dashed #d1d5db;
    border-radius: 8px;
    padding: 40px 20px;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
}

.file-upload-area:hover,
.file-upload-area.drag-over {
    border-color: #b10000;
    background: #f8fafc;
}

.file-upload-area input[type="file"] {
    position: absolute;
    left: -9999px;
}

.upload-text i {
    font-size: 3rem;
    color: #d1d5db;
    margin-bottom: 15px;
    display: block;
}

.upload-text p {
    margin: 0 0 5px 0;
    color: #374151;
    font-weight: 500;
}

.upload-text small {
    color: #94a3b8;
}

.uploaded-files {
    margin-top: 20px;
}

.uploaded-file {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
    background: #f8fafc;
    border-radius: 8px;
    margin-bottom: 10px;
}

.file-info {
    display: flex;
    align-items: center;
}

.file-info i {
    color: #b10000;
    margin-right: 12px;
    font-size: 1.2rem;
}

.file-details {
    display: flex;
    flex-direction: column;
}

.file-name {
    font-weight: 500;
    color: #374151;
}

.file-size {
    font-size: 0.875rem;
    color: #94a3b8;
}

.remove-file {
    background: none;
    border: none;
    color: #ef4444;
    cursor: pointer;
    padding: 5px;
    border-radius: 4px;
    transition: background-color 0.2s ease;
}

.remove-file:hover {
    background: #fee2e2;
}

.checkbox-group {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.checkbox-group input[type="checkbox"] {
    width: auto;
    margin: 0;
    margin-top: 3px;
}

.checkbox-group label {
    margin-bottom: 0;
    line-height: 1.5;
}

.checkbox-group a {
    color: #b10000;
    text-decoration: none;
}

.btn-submit {
    width: 100%;
    background: #b10000;
    color: white;
    border: none;
    padding: 16px 24px;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.btn-submit:hover:not(:disabled) {
    background: #800101;
}

.btn-submit:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.form-status {
    margin-top: 20px;
    padding: 16px;
    border-radius: 8px;
    display: none;
    align-items: center;
    gap: 8px;
}

.form-status.success {
    background: #d1fae5;
    color: #065f46;
    border: 1px solid #a7f3d0;
}

.form-status.error {
    background: #fee2e2;
    color: #991b1b;
    border: 1px solid #fca5a5;
}

.field-error {
    color: #ef4444;
    font-size: 0.875rem;
    margin-top: 5px;
}

.quick-help {
    padding: 80px 0;
    background: #f8fafc;
    text-align: center;
}

.quick-help h2 {
    font-size: 2.5rem;
    margin-bottom: 10px;
    color: #1f2937;
}

.quick-help > p {
    color: #64748b;
    margin-bottom: 50px;
}

.help-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
}

.help-card {
    background: white;
    padding: 30px;
    border-radius: 12px;
    text-decoration: none;
    color: inherit;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
}

.help-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    text-decoration: none;
    color: inherit;
}

.help-card i {
    font-size: 2.5rem;
    color: #b10000;
    margin-bottom: 20px;
    display: block;
}

.help-card h3 {
    margin-bottom: 15px;
    color: #1f2937;
}

.help-card p {
    color: #64748b;
    margin: 0;
}

/* Mobile Responsive Styles for New Pages */
@media (max-width: 768px) {
    .search-layout {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .search-filters {
        position: static;
    }
    
    .results-header {
        flex-direction: column;
        gap: 15px;
        align-items: flex-start;
    }
    
    .sort-controls {
        width: 100%;
        justify-content: space-between;
    }
    
    .profile-info {
        flex-direction: column;
        text-align: center;
        gap: 20px;
    }
    
    .profile-meta {
        justify-content: center;
        gap: 20px;
    }
    
    .profile-stats {
        gap: 30px;
    }
    
    .profile-tabs {
        overflow-x: auto;
        white-space: nowrap;
        padding-bottom: 10px;
    }
    
    .help-layout {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .help-sidebar {
        position: static;
    }
    
    .hero-icons {
        flex-direction: column;
        gap: 20px;
    }
    
    .methods-grid {
        grid-template-columns: 1fr;
    }
    
    .form-content {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    
    .help-grid {
        grid-template-columns: 1fr;
    }
    
    .hero-content h1,
    .form-info h2,
    .quick-help h2 {
        font-size: 2rem;
    }
    
    .support-options {
        flex-direction: column;
        align-items: center;
    }
}

/* Additional Profile and Help Page Missing Styles */

/* Navigation and Header Missing Styles */
.nav-menu {
    display: flex;
    gap: 30px;
    align-items: center;
}

.nav-link {
    color: #374151;
    text-decoration: none;
    font-weight: 500;
    padding: 8px 16px;
    border-radius: 8px;
    transition: all 0.2s ease;
}

.nav-link:hover {
    color: #b10000;
    background: #f8fafc;
}

.nav-actions {
    display: flex;
    align-items: center;
    gap: 20px;
}

.user-menu {
    position: relative;
}

.user-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #b10000;
    color: white;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-weight: 600;
    transition: all 0.2s ease;
}

.user-avatar:hover {
    background: #800101;
    transform: scale(1.05);
}

.user-dropdown {
    position: absolute;
    top: 50px;
    right: 0;
    background: white;
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    min-width: 200px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.3s ease;
    z-index: 1000;
}

.user-menu:hover .user-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.dropdown-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 20px;
    color: #374151;
    text-decoration: none;
    transition: all 0.2s ease;
    border-bottom: 1px solid #f3f4f6;
}

.dropdown-item:first-child {
    border-radius: 12px 12px 0 0;
}

.dropdown-item:last-child {
    border-bottom: none;
    border-radius: 0 0 12px 12px;
}

.dropdown-item:hover {
    background: #f8fafc;
    color: #b10000;
}

.dropdown-item.active {
    background: #ffeef0;
    color: #b10000;
}

.dropdown-item i {
    width: 16px;
    text-align: center;
}

/* Profile Page Missing Styles */
.profile-cover {
    position: relative;
    margin-bottom: 40px;
}

.cover-image {
    height: 300px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 12px;
    position: relative;
    overflow: hidden;
}

.cover-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.btn-edit-cover {
    position: absolute;
    top: 20px;
    right: 20px;
    background: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    padding: 12px;
    border-radius: 8px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    transition: all 0.2s ease;
}

.btn-edit-cover:hover {
    background: rgba(0, 0, 0, 0.7);
}

.profile-avatar {
    position: relative;
    width: 120px;
    height: 120px;
    margin: -60px auto 0;
    border: 4px solid white;
    border-radius: 50%;
    overflow: hidden;
    background: white;
}

.profile-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.btn-edit-avatar {
    position: absolute;
    bottom: 5px;
    right: 5px;
    width: 32px;
    height: 32px;
    background: #b10000;
    color: white;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    transition: all 0.2s ease;
}

.btn-edit-avatar:hover {
    background: #800101;
}

.profile-details {
    text-align: center;
    margin-top: 20px;
}

.profile-details h1 {
    font-size: 2.5rem;
    margin-bottom: 10px;
    color: #1f2937;
}

.profile-title {
    color: #b10000;
    font-weight: 500;
    margin-bottom: 10px;
    font-size: 1.1rem;
}

.profile-location,
.profile-joined {
    color: #6b7280;
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.profile-actions {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-top: 30px;
}

.btn-edit-profile,
.btn-share-profile {
    padding: 12px 24px;
    border-radius: 8px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
}

.btn-edit-profile {
    background: #b10000;
    color: white;
    border: 2px solid #b10000;
}

.btn-edit-profile:hover {
    background: #800101;
    border-color: #800101;
}

.btn-share-profile {
    background: white;
    color: #b10000;
    border: 2px solid #b10000;
}

.btn-share-profile:hover {
    background: #b10000;
    color: white;
}

.profile-stats {
    background: #f8fafc;
    padding: 60px 0;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 30px;
}

.stat-card {
    background: white;
    padding: 30px;
    border-radius: 12px;
    text-align: center;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.stat-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

.stat-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #b10000, #8a0000);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    font-size: 1.5rem;
}

.stat-card h3 {
    font-size: 2rem;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 5px;
}

.stat-card p {
    color: #6b7280;
    margin: 0;
}

/* Help Page Missing Styles */
.hero-content {
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
}

.help-search {
    position: relative;
    max-width: 600px;
    margin: 40px auto 0;
}

.search-input {
    position: relative;
    display: flex;
    align-items: center;
}

.search-input i {
    position: absolute;
    left: 20px;
    color: #9ca3af;
    z-index: 1;
}

.search-input input {
    width: 100%;
    padding: 16px 60px 16px 50px;
    border: none;
    border-radius: 12px;
    font-size: 1.1rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.btn-search {
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    background: #b10000;
    color: white;
    border: none;
    padding: 12px 20px;
    border-radius: 8px;
    cursor: pointer;
    font-weight: 500;
    transition: background-color 0.2s ease;
}

.btn-search:hover {
    background: #800101;
}

.help-search .quick-links {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 30px;
}

.help-search .quick-link {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.2);
    color: white;
    text-decoration: none;
    border-radius: 8px;
    transition: all 0.2s ease;
    border: 1px solid rgba(255, 255, 255, 0.3);
}

.help-search .quick-link:hover {
    background: rgba(255, 255, 255, 0.3);
    transform: translateY(-2px);
}

/* Mobile Responsive for Missing Styles */
@media (max-width: 768px) {
    .nav-menu {
        display: none;
    }
    
    .nav-actions {
        gap: 10px;
    }
    
    .profile-info {
        flex-direction: column;
        text-align: center;
        gap: 20px;
    }
    
    .profile-actions {
        flex-direction: column;
        align-items: center;
    }
    
    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    
    .help-search .quick-links {
        flex-direction: column;
        align-items: center;
    }
    
    .search-input input {
        padding: 14px 50px 14px 45px;
        font-size: 16px;
    }
}

/* Additional Help Page Categories Styles */
.help-categories {
    padding: 80px 0;
    background: #ffffff;
}

.help-categories h2 {
    text-align: center;
    font-size: 2.5rem;
    margin-bottom: 50px;
    color: #1f2937;
}

.help-categories .categories-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

.help-categories .category-card {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 30px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.help-categories .category-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    border-color: #b10000;
}

.help-categories .category-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #b10000, #8a0000);
    color: white;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    font-size: 1.5rem;
}

.help-categories .category-card h3 {
    font-size: 1.3rem;
    margin-bottom: 15px;
    color: #1f2937;
}

.help-categories .category-card p {
    color: #6b7280;
    line-height: 1.6;
    margin-bottom: 20px;
}

.category-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.category-links li {
    margin-bottom: 8px;
}

.category-links a {
    color: #b10000;
    text-decoration: none;
    font-size: 0.9rem;
    padding: 5px 0;
    display: block;
    transition: all 0.2s ease;
}

.category-links a:hover {
    color: #800101;
    padding-left: 10px;
}

.category-links a:before {
    content: "→";
    margin-right: 8px;
    transition: margin-right 0.2s ease;
}

.category-links a:hover:before {
    margin-right: 12px;
}

/* Profile Header Positioning Fix */
.profile-header {
    background: #f8fafc;
    padding: 40px 0 80px;
}

.profile-info {
    position: relative;
    text-align: center;
}

/* User Avatar in Navigation */
.user-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

/* Button Login (unified) */
.btn-login {
    background: white;
    color: #b10000;
    border: 2px solid #b10000;
    padding: 8px 20px;
    border-radius: 12px;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
}

.btn-login:hover {
    background: #b10000;
    color: white;
}

/* Mobile Menu Toggle for Navigation */
.mobile-menu-toggle {
    display: none;
    background: none;
    border: none;
    font-size: 1.5rem;
    color: #374151;
    cursor: pointer;
}

@media (max-width: 768px) {
    .nav-menu {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: white;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        flex-direction: column;
        padding: 20px;
        gap: 15px;
    }
    
    .nav-menu.active {
        display: flex;
    }
    
    .mobile-menu-toggle {
        display: block;
    }
    
    .nav-actions {
        gap: 15px;
    }
    
    .search-box {
        display: none;
    }
    
    .help-categories .categories-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .help-categories h2 {
        font-size: 2rem;
    }
    
    .help-categories .category-card {
        padding: 25px;
    }
}

/* Profile Layout and Sidebar Styles */
.profile-layout {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 40px;
    align-items: start;
}

.profile-sidebar {
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    position: sticky;
    top: 20px;
}

/* Profile summary side card */
.profile-sidebar .side-card { padding:22px; display:flex; flex-direction:column; align-items:center; gap:14px; }
.side-avatar { position:relative; }
.side-avatar img { width: 110px; height: 110px; border-radius:50%; object-fit:cover; background:#e5e7eb; }
.side-avatar .level-badge { position:absolute; bottom:0; right:-6px; background:#f97316; color:#fff; font-size:.75rem; font-weight:700; padding:4px 8px; border-radius:999px; box-shadow:0 6px 14px -6px rgba(0,0,0,.3); }
.side-ident { text-align:center; }
.side-ident .display-name { font-size:1.2rem; font-weight:700; margin:6px 0 2px; color:#1f2937; }
.side-ident .handle { color:#6b7280; font-size:.9rem; }
.side-mini-stats { display:flex; gap:16px; }
.mini-stat { display:flex; align-items:center; gap:6px; color:#6b7280; font-weight:600; }
.mini-stat i { color:#9ca3af; }
.side-follow-row { display:flex; gap:16px; color:#6b7280; font-size:.9rem; }
.side-actions { display:flex; width:100%; gap:10px; }
.side-actions .btn-follow { flex:1; display:flex; align-items:center; justify-content:center; gap:8px; border:2px solid #b10000; background:#fff; color:#b10000; padding:10px 12px; border-radius:10px; font-weight:700; }
.side-actions .btn-follow:hover { background:#b10000; color:#fff; }
.side-actions .side-message { flex:1; }
.side-badges { display:flex; gap:10px; margin-top:6px; }
.side-badges .badge-item img { width:40px; height:40px; border-radius:10px; border:1px solid #e5e7eb; }
.side-sep { width:100%; border:none; border-top:1px solid #e5e7eb; margin:12px 0; }
.side-section { width:100%; }
.side-section h3 { font-size:1rem; margin:4px 0 10px; color:#1f2937; }
.achievements-side .achievement { padding:8px 0; }

/* About tab layout */
.about-panel { background:#fff; border:1px solid #e5e7eb; border-radius:16px; padding:18px; margin-bottom:16px; }
.about-panel h2 { font-size:1.25rem; font-weight:700; margin:0 0 8px; }
.about-panel .tips { margin:10px 0 0 18px; color:#6b7280; }
.about-grid { display:grid; grid-template-columns: 1fr 1fr; gap:18px; }
.about-grid section { background:#fff; border:1px solid #e5e7eb; border-radius:16px; padding:18px; }
.about-grid h3 { margin-top:0; font-size:1.1rem; }
@media (max-width: 920px) { .about-grid { grid-template-columns: 1fr; } }

.sidebar-section {
    padding: 30px;
    border-bottom: 1px solid #e5e7eb;
}

.sidebar-section:last-child {
    border-bottom: none;
}

.sidebar-section h3 {
    font-size: 1.2rem;
    color: #1f2937;
    margin-bottom: 20px;
    font-weight: 600;
}

.sidebar-section h4 {
    font-size: 1rem;
    color: #374151;
    margin-bottom: 15px;
    font-weight: 600;
}

.profile-bio p {
    color: #6b7280;
    line-height: 1.6;
    margin: 0;
}

.skills-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.skill {
    background: #fee2e2; /* soft red */
    color: #8a0000; /* deep brand red */
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 0.875rem;
    font-weight: 600;
}

.achievements {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.achievement {
    display: flex;
    align-items: center;
    gap: 15px;
}

.achievement-icon {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #fbbf24, #f59e0b);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    flex-shrink: 0;
}

.achievement-info h4 {
    margin: 0 0 5px 0;
    color: #1f2937;
    font-size: 0.95rem;
}

.achievement-info p {
    margin: 0;
    color: #6b7280;
    font-size: 0.875rem;
}

.profile-sidebar .social-links {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.social-link {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 15px;
    background: #f8fafc;
    border-radius: 8px;
    color: #374151;
    text-decoration: none;
    transition: all 0.2s ease;
    font-size: 0.9rem;
}

.social-link:hover {
    background: #e5e7eb;
    color: #1f2937;
}

.social-link i {
    width: 20px;
    text-align: center;
}

.profile-main {
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    overflow: hidden;
}

.profile-tabs {
    display: flex;
    border-bottom: 1px solid #e5e7eb;
    background: #f8fafc;
}

.tab-btn {
    background: none;
    border: none;
    padding: 20px 30px;
    font-size: 1rem;
    font-weight: 500;
    color: #6b7280;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    border-bottom: 3px solid transparent;
    position: relative;
}

.tab-btn.active {
    color: #b10000;
    background: white;
    border-bottom-color: #b10000;
}

.tab-btn:hover {
    color: #b10000;
    background: white;
}

/* Tab counts */
.tab-btn .tab-count { display:inline-flex; align-items:center; justify-content:center; min-width:20px; height:20px; padding:0 6px; border-radius:999px; background:#fee2e2; color:#8a0000; font-size:.75rem; font-weight:700; line-height:1; }

/* Sticky tabs */
.profile-main .profile-tabs { position: sticky; top: 64px; z-index: 10; }
.profile-main { position: relative; }

.tab-content {
    padding: 40px;
}

.tab-content.hidden {
    display: none;
}

/* Profile Stats in Header */
.stat-content {
    text-align: center;
}

.stat-number {
    font-size: 2rem;
    font-weight: 700;
    color: #1f2937;
    display: block;
    margin-bottom: 5px;
}

.stat-label {
    color: #6b7280;
    font-size: 0.9rem;
}

/* Models Grid in Profile */
.models-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 30px;
}

.empty-state {
    text-align: center;
    padding: 60px 20px;
    color: #6b7280;
}

.empty-state i {
    font-size: 4rem;
    color: #e5e7eb;
    margin-bottom: 20px;
    display: block;
}

.empty-state h3 {
    margin-bottom: 10px;
    color: #374151;
}

.empty-state p {
    margin-bottom: 20px;
}

.btn-add-first {
    background: #b10000;
    color: white;
    border: none;
    padding: 12px 24px;
    border-radius: 8px;
    font-weight: 500;
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: background-color 0.2s ease;
}

.btn-add-first:hover {
    background: #800101;
}

/* Mobile Responsive for Profile */
@media (max-width: 768px) {
    .profile-layout {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .profile-sidebar {
        position: static;
        order: 2;
    }
    
    .profile-main {
        order: 1;
    }
    
    .sidebar-section {
        padding: 20px;
    }
    
    .profile-tabs {
        overflow-x: auto;
        white-space: nowrap;
    }
    
    .tab-btn {
        flex-shrink: 0;
        padding: 15px 20px;
        font-size: 0.9rem;
    }
    
    .tab-content {
        padding: 20px;
    }
    
    .models-grid {
        grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
        gap: 20px;
    }
    
    .achievements {
        gap: 15px;
    }
    
    .achievement {
        gap: 12px;
    }
    
    .achievement-icon {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }
}

    /* ================= Designers Page Styles ================= */
    /* Featured Designers Section */
    .page-header.page-header--designers { padding: 110px 0 70px; background: linear-gradient(135deg, #b10000 0%, #8a0000 100%); color:#fff; position:relative; overflow:hidden; }
    .page-header.page-header--designers .container h1 { font-size:2.4rem; font-weight:800; margin:0 0 8px; }
    .page-header.page-header--designers .container p { color:rgba(255,255,255,0.9); }

    .featured-designers {
        padding: 140px 20px 60px; /* header offset */
        background: #ffffff;
    }

    .featured-designers h2 {
        font-size: 2.2rem;
        font-weight: 700;
        margin-bottom: 40px;
        text-align: center;
    background: linear-gradient(135deg, #b10000 0%, #8a0000 100%);
        background-clip: text;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

    .featured-grid {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
        gap: 32px;
    }

    .featured-designer {
        background: white;
        border: 1px solid #e5e7eb;
        border-radius: 20px;
        overflow: hidden;
        box-shadow: 0 4px 12px rgba(0,0,0,0.04);
        transition: all .3s ease;
        position: relative;
    }

    .featured-designer:hover {
        transform: translateY(-6px);
        box-shadow: 0 12px 32px rgba(0,0,0,0.12);
        border-color: #b10000;
    }

    .designer-cover img {
        width: 100%;
        height: 140px;
        object-fit: cover;
        display: block;
    }

    .designer-profile {
        display: flex;
        gap: 20px;
        padding: 24px 24px 28px;
        position: relative;
    }

    .designer-avatar {
        position: relative;
        width: 90px;
        height: 90px;
        flex-shrink: 0;
    }

    .designer-avatar img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 20px;
        border: 4px solid #ffffff;
        box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    }

    .verified-badge,
    .premium-badge,
    .master-badge {
        position: absolute;
        bottom: -6px;
        right: -6px;
        width: 30px;
        height: 30px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        color: white;
        font-size: .9rem;
        box-shadow: 0 4px 10px rgba(0,0,0,0.25);
    }

    .verified-badge { background: #10b981; }
    .premium-badge { background: linear-gradient(135deg,#f59e0b,#d97706); }
    .master-badge { background: linear-gradient(135deg,#b10000,#8a0000); }

    .designer-info h3 {
        font-size: 1.25rem;
        font-weight: 600;
        margin: 0 0 6px;
        color: #1f2937;
    }

    .designer-title { color:#b10000; font-weight:500; font-size:.85rem; margin-bottom:4px; }
    .designer-specialty { color:#64748b; font-size:.8rem; margin-bottom:12px; }

    .designer-stats { display:flex; flex-wrap:wrap; gap:14px; font-size:.75rem; color:#6b7280; margin-bottom:14px; }
    .designer-stats span { display:flex; align-items:center; gap:4px; }
    .designer-stats i { color:#fbbf24; font-size:.7rem; }

    .featured-designer .btn-follow { background:#b10000; }
    .featured-designer .btn-follow:hover { background:#800101; }
    .btn-follow:hover { background:#800101; }

    /* Designers Listing Section */
    .designers-section { padding: 40px 20px 80px; background:#f8fafc; }
    .designers-filter { margin-bottom: 30px; }
    .designers-filter .filter-bar { background:#fff; border:1px solid #e5e7eb; border-radius:14px; padding:12px 14px; display:flex; align-items:center; justify-content:space-between; column-gap:16px; box-shadow:0 6px 16px rgba(0,0,0,.05); }
    .designers-filter .filter-groups { display:flex; gap:16px; align-items:center; flex-wrap: wrap; flex:1 1 auto; min-width:0; }
    .designers-filter .filter-group { display:flex; align-items:center; gap:8px; flex: 1 1 0; min-width: 0; }
    .designers-filter .filter-group label { font-weight:600; color:#374151; font-size:.9rem; width: 70px; text-align: right; white-space: nowrap; }
    .designers-filter select { padding:10px 12px; border-radius:10px; border:2px solid #e5e7eb; background:#fff; font:inherit; color:#374151; }
    .designers-filter select:focus { outline:none; border-color:#b10000; box-shadow:0 0 0 3px rgba(177,0,0,.12); }
    .designers-filter select { width: 100%; height: 40px; }
    .designers-filter .view-toggle { flex:0 0 auto; }
    .designers-filter .view-toggle .view-btn { width:40px; height:40px; border-radius:10px; background:#f8fafc; border:2px solid #e5e7eb; color:#374151; cursor:pointer; }
    .designers-filter .view-toggle .view-btn.active { border-color:#b10000; color:#b10000; background:#fff; }
    .designers-filter .view-toggle .view-btn:hover { border-color:#b10000; color:#b10000; }

    @media (max-width: 640px) {
        .designers-filter .filter-group { flex: 1 1 100%; min-width: 0; }
        .designers-filter .filter-group label { width:auto; text-align:left; margin-right: 2px; }
        .designers-filter .filter-bar { row-gap: 10px; }
    }

    .designers-grid {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
        gap: 28px;
        margin-bottom: 50px;
    }

    .designer-card {
        background: white;
        border: 1px solid #e5e7eb;
        border-radius: 20px;
        padding: 22px 22px 24px;
        display: flex;
        flex-direction: column;
        gap: 14px;
        position: relative;
        transition: all .25s ease;
    }

    .designer-card:hover {
        box-shadow: 0 12px 30px rgba(0,0,0,0.12);
        transform: translateY(-6px);
        border-color: #b10000;
    }

    .designer-header { display:flex; align-items:center; gap:16px; }
    .designer-basic-info h3 { margin:0 0 4px; font-size:1.05rem; font-weight:600; }
    .designer-level { font-size:.7rem; text-transform:uppercase; letter-spacing:.5px; color:#b10000; font-weight:600; margin:0 0 4px; }
    .designer-location { font-size:.7rem; color:#6b7280; display:flex; align-items:center; gap:4px; margin:0; }

    .btn-follow-small {
        margin-left:auto;
        background:#b10000;
        color:#fff;
        border:none;
        font-size:.7rem;
        font-weight:600;
        padding:8px 14px;
        border-radius:8px;
        cursor:pointer;
        transition:all .25s ease;
    }

    .btn-follow-small:hover { background:#800101; }
    .btn-follow-small.following { background:#10b981; }
    .btn-follow-small.following:hover { background:#0d9668; }

    .preview-models { display:flex; gap:8px; }
    .preview-models img { width:100px; height:80px; object-fit:cover; border-radius:10px; border:2px solid #f1f5f9; transition:all .25s ease; }
    .preview-models img:hover { transform:translateY(-4px); border-color:#b10000; }
    .more-models { width:100px; height:80px; display:flex; align-items:center; justify-content:center; background:#f1f5f9; color:#b10000; font-weight:600; border-radius:10px; font-size:.85rem; }

    .designer-stats-grid { display:grid; grid-template-columns: repeat(4, 1fr); gap:8px; }
    .designer-stats-grid .stat { background:#f8fafc; padding:10px 4px; border-radius:10px; text-align:center; }
    .designer-stats-grid .stat strong { display:block; font-size:.85rem; font-weight:600; color:#1f2937; margin-bottom:2px; }
    .designer-stats-grid .stat span { font-size:.6rem; text-transform:uppercase; letter-spacing:.5px; color:#6b7280; }

    .designer-tags { display:flex; flex-wrap:wrap; gap:6px; }
    .designer-tags .tag { background:#ffeef0; color:#b10000; padding:4px 10px; font-size:.65rem; border-radius:14px; font-weight:500; }

    /* Load More overrides if needed */
    .load-more-section { margin-top:10px; }

    /* Community Stats adaptation for designers page */
    .designer-stats-section { padding: 60px 20px 100px; background:white; }
    .designer-stats-section h2 { text-align:center; font-size:2rem; font-weight:700; margin-bottom:40px; }
    .designer-stats-section .stats-grid { display:grid; grid-template-columns: repeat(auto-fit,minmax(240px,1fr)); gap:28px; }
    .designer-stats-section .stat-card { background:linear-gradient(135deg,#b10000 0%, #8a0000 100%); color:white; border:none; position:relative; overflow:hidden; }
    .designer-stats-section .stat-card::after { content:''; position:absolute; inset:0; background:radial-gradient(circle at 80% 20%, rgba(255,255,255,0.25), transparent 60%); }
    .designer-stats-section .stat-card i { color:white; }
    .stat-growth { display:inline-block; margin-top:8px; font-size:.7rem; background:rgba(255,255,255,0.15); padding:4px 8px; border-radius:12px; }

    /* Pagination already styled globally */

    /* Responsive for Designers Page */
    @media (max-width: 1024px) {
        .designer-stats-grid { grid-template-columns: repeat(2,1fr); }
    }
    @media (max-width: 768px) {
        .featured-designers { padding:120px 20px 40px; }
        .featured-grid { grid-template-columns: 1fr; }
        .designer-profile { flex-direction:row; }
        .designers-grid { grid-template-columns: 1fr; }
        .preview-models { overflow-x:auto; }
        .preview-models img, .more-models { flex-shrink:0; }
        .designer-stats-grid { grid-template-columns: repeat(4,1fr); }
    }
    @media (max-width: 480px) {
        .designer-stats-grid { grid-template-columns: repeat(2,1fr); }
    }

    /* ================= End Designers Page Styles ================= */

    /* ================= About Page Styles ================= */
    .about-main { margin-top:70px; background:#ffffff; }

    /* Hero */
    .about-hero { padding:140px 0 80px; background:linear-gradient(135deg,#667eea 0%,#764ba2 100%); color:#fff; position:relative; overflow:hidden; }
    .about-hero::before { content:''; position:absolute; inset:0; background:radial-gradient(circle at 80% 20%,rgba(255,255,255,0.15),transparent 60%); }
    .about-hero .container { display:grid; grid-template-columns: 1.3fr 1fr; gap:60px; align-items:center; position:relative; z-index:2; }
    .about-hero .hero-content h1 { font-size:3rem; line-height:1.15; font-weight:700; margin-bottom:24px; }
    .about-hero .hero-content p { font-size:1.15rem; opacity:.95; line-height:1.6; }
    .hero-video { display:flex; justify-content:center; }
    .video-placeholder { width:100%; max-width:420px; aspect-ratio:16/10; background:rgba(255,255,255,0.1); border:2px dashed rgba(255,255,255,0.4); border-radius:24px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; color:#fff; font-weight:500; backdrop-filter:blur(6px); cursor:pointer; transition:all .3s; }
    .video-placeholder i { font-size:3.5rem; color:#fbbf24; }
    .video-placeholder:hover { background:rgba(255,255,255,0.18); transform:translateY(-4px); }

    /* Mission & Vision */
    .mission-vision { padding:80px 0; background:#ffffff; }
    .mission-vision-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:40px; }
    .mission-card, .vision-card { background:#f8fafc; padding:40px 32px; border-radius:24px; position:relative; overflow:hidden; border:1px solid #e5e7eb; transition:all .35s ease; }
    .mission-card::before, .vision-card::before { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(177,0,0,0.08),transparent); opacity:0; transition:opacity .35s; }
    .mission-card:hover::before, .vision-card:hover::before { opacity:1; }
    .mission-card:hover, .vision-card:hover { transform:translateY(-8px); box-shadow:0 20px 40px -10px rgba(0,0,0,0.12); border-color:#b10000; }
    .mission-card .card-icon, .vision-card .card-icon { width:70px; height:70px; background:linear-gradient(135deg,#b10000,#8a0000); display:flex; align-items:center; justify-content:center; border-radius:20px; color:#fff; font-size:1.5rem; margin-bottom:24px; box-shadow:0 10px 25px -5px rgba(177,0,0,0.35); }
    .mission-card h3, .vision-card h3 { font-size:1.5rem; margin:0 0 16px; font-weight:600; color:#1f2937; }
    .mission-card p, .vision-card p { color:#4b5563; line-height:1.6; font-size:.95rem; }

    /* Company Stats */
    .company-stats { background:#f8fafc; padding:90px 0 70px; }
    .company-stats h2 { text-align:center; font-size:2.4rem; font-weight:700; margin-bottom:60px; color:#1f2937; }
    .company-stats .stats-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:32px; }
    .company-stats .stat-item { background:#ffffff; padding:32px 24px; border-radius:20px; text-align:center; position:relative; overflow:hidden; border:1px solid #e5e7eb; transition:all .35s ease; }
    .company-stats .stat-item::after { content:''; position:absolute; inset:0; background:linear-gradient(135deg,#b10000,#8a0000); opacity:0; transition:opacity .4s; mix-blend-mode:overlay; }
    .company-stats .stat-item:hover { transform:translateY(-8px); box-shadow:0 18px 40px -12px rgba(0,0,0,0.15); }
    .company-stats .stat-item:hover::after { opacity:.25; }
    .company-stats .stat-number { font-size:2.1rem; font-weight:700; color:#b10000; margin-bottom:6px; }
    .company-stats .stat-label { font-size:.8rem; letter-spacing:.5px; text-transform:uppercase; color:#64748b; font-weight:600; }

    /* Story */
    .our-story { padding:90px 0; background:#ffffff; }
    .story-content { display:grid; grid-template-columns:1.1fr 1fr; gap:60px; align-items:start; }
    .story-text h2 { font-size:2.4rem; font-weight:700; margin:0 0 40px; }
    .story-timeline { position:relative; display:flex; flex-direction:column; gap:40px; }
    .story-timeline::before { content:''; position:absolute; left:16px; top:0; bottom:0; width:3px; background:linear-gradient(#b10000,#8a0000); border-radius:4px; }
    .timeline-item { display:flex; gap:24px; position:relative; }
    .timeline-year { flex-shrink:0; width:70px; text-align:right; padding-right:10px; font-weight:700; color:#b10000; font-size:1.1rem; }
    .timeline-content { background:#f8fafc; padding:20px 24px 22px; border-radius:16px; border:1px solid #e5e7eb; flex:1; position:relative; transition:all .35s ease; }
    .timeline-content::before { content:''; position:absolute; left:-8px; top:24px; width:14px; height:14px; background:linear-gradient(135deg,#b10000,#8a0000); border-radius:50%; box-shadow:0 0 0 4px #fff; }
    .timeline-content h4 { margin:0 0 8px; font-size:1.05rem; font-weight:600; color:#1f2937; }
    .timeline-content p { margin:0; color:#4b5563; line-height:1.5; font-size:.9rem; }
    .timeline-content:hover { box-shadow:0 12px 30px -8px rgba(0,0,0,0.15); transform:translateY(-4px); border-color:#b10000; }
    .story-image img { width:100%; border-radius:24px; box-shadow:0 20px 45px -15px rgba(0,0,0,0.25); }

    /* Team */
    .team-section { background:#f8fafc; padding:90px 0; }
    .team-section h2 { text-align:center; font-size:2.3rem; font-weight:700; margin:0 0 20px; }
    .team-intro { text-align:center; max-width:760px; margin:0 auto 60px; color:#4b5563; font-size:1rem; line-height:1.6; }
    .team-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:40px; }
    .team-member { background:#ffffff; border:1px solid #e5e7eb; border-radius:24px; overflow:hidden; position:relative; transition:all .35s ease; display:flex; flex-direction:column; }
    .team-member:hover { transform:translateY(-10px); box-shadow:0 22px 50px -15px rgba(0,0,0,0.18); border-color:#b10000; }
    .member-photo img { width:100%; aspect-ratio:1/1; object-fit:cover; display:block; }
    .member-info { padding:24px 26px 28px; }
    .member-info h4 { margin:0 0 6px; font-size:1.1rem; font-weight:600; color:#1f2937; }
    .member-title { color:#b10000; font-size:.75rem; letter-spacing:.5px; text-transform:uppercase; font-weight:600; margin:0 0 10px; }
    .member-bio { color:#64748b; font-size:.85rem; line-height:1.5; margin:0 0 16px; }
    .member-social { display:flex; gap:10px; }
    .member-social a { width:38px; height:38px; border-radius:12px; background:#f1f5f9; display:flex; align-items:center; justify-content:center; color:#475569; font-size:.95rem; text-decoration:none; transition:all .3s; }
    .member-social a:hover { background:#b10000; color:#fff; transform:translateY(-3px); }

    /* Values */
    .values-section { background:#ffffff; padding:90px 0; }
    .values-section h2 { text-align:center; font-size:2.3rem; font-weight:700; margin:0 0 60px; }
    .values-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:34px; }
    .value-item { background:#f8fafc; padding:34px 30px 38px; border-radius:24px; border:1px solid #e5e7eb; text-align:center; position:relative; overflow:hidden; transition:all .35s ease; }
    .value-item::after { content:''; position:absolute; inset:0; background:linear-gradient(135deg,#b10000,#8a0000); opacity:0; transition:opacity .4s; mix-blend-mode:overlay; }
    .value-item:hover { transform:translateY(-8px); box-shadow:0 20px 42px -15px rgba(0,0,0,0.15); border-color:#b10000; }
    .value-item:hover::after { opacity:.18; }
    .value-icon { width:70px; height:70px; background:linear-gradient(135deg,#b10000,#8a0000); display:flex; align-items:center; justify-content:center; border-radius:20px; color:#fff; font-size:1.5rem; margin:0 auto 20px; box-shadow:0 12px 30px -8px rgba(177,0,0,0.45); }
    .value-item h3 { font-size:1.2rem; font-weight:600; margin:0 0 12px; color:#1f2937; }
    .value-item p { color:#64748b; font-size:.85rem; line-height:1.55; margin:0; }

    /* Press */
    .press-section { background:#f8fafc; padding:90px 0; }
    .press-section h2 { text-align:center; font-size:2.3rem; font-weight:700; margin:0 0 60px; }
    .press-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:40px; }
    .press-item { background:#ffffff; border:1px solid #e5e7eb; border-radius:24px; padding:34px 30px 40px; position:relative; overflow:hidden; transition:all .35s ease; }
    .press-item:hover { transform:translateY(-8px); box-shadow:0 20px 42px -15px rgba(0,0,0,0.15); border-color:#b10000; }
    .press-logo img { max-width:140px; max-height:60px; object-fit:contain; filter:grayscale(0); transition:all .35s; }
    .press-item blockquote { margin:24px 0 16px; font-size:.95rem; line-height:1.55; color:#334155; font-style:italic; position:relative; }
    .press-item blockquote::before { content:'“'; position:absolute; left:-14px; top:-10px; font-size:3rem; color:#b10000; opacity:.25; }
    .press-item cite { display:block; font-size:.7rem; text-transform:uppercase; letter-spacing:.5px; font-weight:600; color:#64748b; }

    /* Contact CTA */
    .contact-cta { background:linear-gradient(120deg,#1e293b,#334155); color:#ffffff; padding:100px 0 110px; position:relative; overflow:hidden; }
    .contact-cta::before { content:''; position:absolute; inset:0; background:radial-gradient(circle at 20% 30%,rgba(255,255,255,0.08),transparent 70%); }
    .cta-content { position:relative; z-index:2; max-width:760px; margin:0 auto; text-align:center; }
    .cta-content h2 { font-size:2.4rem; font-weight:700; margin:0 0 24px; }
    .cta-content p { font-size:1.05rem; opacity:.9; line-height:1.6; margin:0 0 36px; }
    .cta-buttons { display:flex; gap:20px; justify-content:center; flex-wrap:wrap; }
    .cta-buttons .btn-primary, .cta-buttons .btn-secondary { min-width:180px; }
    .cta-buttons .btn-secondary { background:rgba(255,255,255,0.1); border:2px solid rgba(255,255,255,0.25); color:#fff; }
    .cta-buttons .btn-secondary:hover { background:rgba(255,255,255,0.2); border-color:#fff; }

    /* Responsive (About) */
    @media (max-width: 1100px) { .about-hero .container { grid-template-columns:1fr 1fr; } }
    @media (max-width: 900px) { .story-content { grid-template-columns:1fr; } .story-image { order:-1; } }
    @media (max-width: 860px) { .about-hero .container { grid-template-columns:1fr; text-align:center; } .hero-video { margin-top:20px; } .story-text h2 { text-align:center; } }
    @media (max-width: 640px) { 
        .about-hero { padding:120px 0 70px; }
        .about-hero .hero-content h1 { font-size:2.1rem; }
        .mission-card, .vision-card { padding:32px 26px; }
        .company-stats .stat-item { padding:26px 18px; }
        .story-content { gap:40px; }
        .team-grid { gap:28px; }
        .values-grid { gap:28px; }
        .press-grid { gap:32px; }
        .cta-content h2 { font-size:2rem; }
    }
    @media (max-width: 420px) { .timeline-year { width:56px; } .about-hero .hero-content h1 { font-size:1.85rem; } }

    /* ================= End About Page Styles ================= */

    /* ================= Profile Page Additional Styles (Missing Parts) ================= */
    /* Models Header & Controls */
    .models-header { padding: 20px 30px 10px; border-bottom: 1px solid #e5e7eb; background: #f8fafc; }
    .models-toolbar { display:flex; justify-content:space-between; gap:24px; flex-wrap:wrap; align-items:center; }
    .models-left { display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
    .models-right { display:flex; gap:14px; align-items:center; }
    .input-wrapper-models { position:relative; }
    .input-wrapper-models i { position:absolute; left:14px; top:50%; transform:translateY(-50%); font-size:.85rem; color:#94a3b8; }
    .models-search { padding:10px 14px 10px 38px; border:2px solid #e5e7eb; border-radius:10px; background:#fff; font-size:.85rem; width:200px; transition:all .25s; }
    .models-search:focus { outline:none; border-color:#b10000; box-shadow:0 0 0 3px rgba(177,0,0,.15); }
    .filter-select, .compact-toggle { padding:10px 14px; border:2px solid #e5e7eb; background:#fff; border-radius:10px; font-size:.75rem; font-weight:600; letter-spacing:.5px; cursor:pointer; transition:all .25s; text-transform:uppercase; }
    .filter-select:focus { outline:none; border-color:#b10000; box-shadow:0 0 0 3px rgba(177,0,0,.15); }
    .compact-toggle { display:flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:12px; color:#475569; }
    .compact-toggle:hover { border-color:#b10000; color:#b10000; }
    .compact-toggle.active { background:#b10000; color:#fff; border-color:#b10000; }
    .btn-new-model { display:flex; align-items:center; gap:8px; }
    .models-summary { font-size:.7rem; letter-spacing:.5px; font-weight:600; color:#64748b; padding:6px 4px 0; }
    .models-count { color:#b10000; }

    /* Compact mode */
    .models-grid.compact .model-item { flex-direction:row; height:120px; padding:0; }
    .models-grid.compact .model-image img { height:100%; }
    .models-grid.compact .model-image { width:200px; }
    .models-grid.compact .model-content { gap:8px; padding:14px 16px; }
    .models-grid.compact .model-content h3 { font-size:.9rem; }
    .models-grid.compact .model-stats { gap:10px; font-size:.6rem; }
    .models-grid.compact .model-meta { font-size:.55rem; }

    /* Skeleton loader (optional future) */
    .skeleton { position:relative; overflow:hidden; background:#f1f5f9; }
    .skeleton::after { content:''; position:absolute; inset:0; background:linear-gradient(110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.65) 45%, rgba(255,255,255,0) 70%); animation:shimmer 1.3s linear infinite; }
    @keyframes shimmer { from { transform:translateX(-100%);} to { transform:translateX(100%);} }

    @media (max-width: 640px) {
        .models-search { width:160px; }
        .btn-new-model { padding:12px 16px; }
    }
    .models-controls { display:flex; align-items:center; gap:16px; }
    .models-controls .sort-select { padding:10px 14px; border:2px solid #e5e7eb; border-radius:10px; background:white; font-size:.9rem; cursor:pointer; transition:all .25s ease; }
    .models-controls .sort-select:focus { outline:none; border-color:#b10000; box-shadow:0 0 0 3px rgba(177,0,0,.15); }

    /* Model Items (Grid inside profile models tab) */
    .model-item { background:white; border:1px solid #e5e7eb; border-radius:18px; overflow:hidden; position:relative; display:flex; flex-direction:column; transition:all .28s ease; }
    .model-item:hover { transform:translateY(-6px); box-shadow:0 14px 34px -10px rgba(0,0,0,.15); border-color:#b10000; }
    .model-item .model-image { position:relative; }
    .model-item .model-image img { width:100%; height:190px; object-fit:cover; display:block; }
    .model-item .model-overlay { position:absolute; top:10px; right:10px; display:flex; gap:8px; opacity:0; transition:opacity .25s ease; }
    .model-item:hover .model-overlay { opacity:1; }
    .btn-edit-model, .btn-stats { width:40px; height:40px; border:none; border-radius:12px; background:rgba(255,255,255,0.9); backdrop-filter:blur(6px); display:flex; align-items:center; justify-content:center; cursor:pointer; color:#475569; font-size:.9rem; transition:all .25s ease; box-shadow:0 4px 12px rgba(0,0,0,.08); }
    .btn-edit-model:hover, .btn-stats:hover { background:white; color:#b10000; transform:translateY(-2px); }
    .model-content { padding:18px 20px 20px; display:flex; flex-direction:column; gap:12px; }
    .model-content h3 { font-size:1.02rem; line-height:1.3; margin:0; font-weight:600; color:#1f2937; }
    .model-content .model-stats { display:flex; gap:14px; font-size:.7rem; text-transform:uppercase; letter-spacing:.5px; font-weight:600; color:#64748b; }
    .model-content .model-stats span { display:flex; align-items:center; gap:4px; }
    .model-content .model-stats i { color:#b10000; font-size:.65rem; }
    .model-meta { display:flex; justify-content:space-between; font-size:.65rem; text-transform:uppercase; letter-spacing:.5px; color:#94a3b8; font-weight:600; }
    .model-meta .model-category { background:#ffeef0; color:#b10000; padding:4px 8px; border-radius:8px; font-size:.6rem; letter-spacing:.5px; }

    /* Collections adjustments (if preview grid missing more-count style) */
    .preview-images { position:relative; display:grid; grid-template-columns:repeat(2,1fr); grid-template-rows:repeat(2,1fr); gap:6px; }
    .preview-images img { width:100%; height:100%; object-fit:cover; border-radius:10px; }
    .preview-images .more-count { position:absolute; bottom:8px; right:8px; background:rgba(0,0,0,0.65); color:#fff; font-size:.7rem; font-weight:600; padding:6px 10px; border-radius:10px; backdrop-filter:blur(4px); }

    /* Liked Models */
    .liked-models { display:flex; flex-direction:column; gap:18px; padding:30px; }
    .liked-item { background:white; border:1px solid #e5e7eb; border-radius:16px; padding:14px 18px; display:flex; align-items:center; gap:16px; position:relative; transition:all .25s ease; }
    .liked-item:hover { border-color:#b10000; box-shadow:0 8px 24px -8px rgba(0,0,0,.12); transform:translateY(-4px); }
    .liked-item img { width:70px; height:70px; object-fit:cover; border-radius:14px; }
    .liked-info h4 { margin:0 0 6px; font-size:.95rem; font-weight:600; color:#1f2937; }
    .liked-info p { margin:0 0 4px; font-size:.75rem; color:#b10000; font-weight:600; letter-spacing:.4px; text-transform:uppercase; }
    .liked-date { font-size:.65rem; color:#94a3b8; font-weight:600; letter-spacing:.5px; }
    .btn-unlike { margin-left:auto; background:rgba(239,68,68,0.12); border:none; color:#ef4444; width:42px; height:42px; display:flex; align-items:center; justify-content:center; border-radius:12px; cursor:pointer; transition:all .25s ease; }
    .btn-unlike:hover { background:#ef4444; color:#fff; transform:translateY(-3px); }

    /* Activity feed fine-tune (reusing existing but ensure spacing in profile tab) */
    .activity-feed { padding:30px; }

    /* Load more alignment inside profile models tab */
    .tab-content .load-more { text-align:center; margin:40px 0 10px; }
    .tab-content .btn-load-more { padding:12px 28px; font-size:.85rem; }

    /* Responsive (Profile extras) */
    @media (max-width: 900px) { .models-header { padding:16px 20px 8px; } }
    @media (max-width: 640px) { 
        .models-controls { flex-wrap:wrap; }
        .liked-models { padding:20px; }
        .activity-feed { padding:20px; }
        .model-item .model-image img { height:170px; }
    }
    @media (max-width: 480px) { 
        .model-content { padding:16px 16px 18px; }
        .liked-item { padding:12px 14px; }
        .models-header { padding:14px 16px 8px; }
    }
    /* ================= End Profile Page Additional Styles ================= */

    /* ================= Profile Page Enhancements ================= */
    /* Tab transition */
    .tab-content { opacity:0; transform:translateY(12px); transition:all .35s ease; }
    .tab-content.active { opacity:1; transform:translateY(0); }

    /* List view for models */
    .models-list { display:flex; flex-direction:column; gap:22px; }
    .models-list .model-item { flex-direction:row; height:170px; }
    .models-list .model-image { width:280px; flex-shrink:0; height:100%; }
    .models-list .model-image img { height:100%; }
    .models-list .model-content { flex:1; justify-content:center; }
    .models-list .model-content h3 { font-size:1.05rem; }
    .models-list .model-meta { margin-top:auto; }

    /* Modal base (edit profile & stats unify) */
    .edit-profile-modal, .stats-modal { position:fixed; inset:0; display:flex; align-items:center; justify-content:center; z-index:1200; opacity:0; pointer-events:none; transition:opacity .3s ease; }
    .edit-profile-modal.show, .stats-modal.show { opacity:1; pointer-events:all; }
    .edit-profile-modal .modal-overlay, .stats-modal .modal-overlay { position:absolute; inset:0; background:rgba(15,23,42,0.55); backdrop-filter:blur(4px); animation:fadeOverlay .4s ease; }
    @keyframes fadeOverlay { from { opacity:0; } to { opacity:1; } }
    .edit-profile-modal .modal-content, .stats-modal .modal-content { position:relative; width:100%; max-width:640px; background:#ffffff; border-radius:28px; padding:0 0 30px; display:flex; flex-direction:column; box-shadow:0 30px 80px -20px rgba(0,0,0,0.35); transform:translateY(30px); animation:modalIn .45s cubic-bezier(.16,.84,.44,1); }
    @keyframes modalIn { from { opacity:0; transform:translateY(50px) scale(.96); } to { opacity:1; transform:translateY(0) scale(1); } }
    .modal-header { padding:26px 34px 20px; border-bottom:1px solid #e5e7eb; display:flex; align-items:center; gap:16px; }
    .modal-header h2 { margin:0; font-size:1.4rem; font-weight:600; color:#1f2937; }
    .modal-header .modal-close { margin-left:auto; width:44px; height:44px; border:none; background:#f1f5f9; border-radius:14px; cursor:pointer; display:flex; align-items:center; justify-content:center; color:#64748b; font-size:1rem; transition:all .25s; }
    .modal-header .modal-close:hover { background:#b10000; color:#fff; }
    .modal-body { padding:30px 34px 10px; max-height:60vh; overflow-y:auto; }
    .modal-body::-webkit-scrollbar { width:8px; }
    .modal-body::-webkit-scrollbar-thumb { background:#cbd5e1; border-radius:4px; }
    .modal-footer { padding:20px 34px 0; display:flex; gap:14px; justify-content:flex-end; }
    .edit-profile-form .form-group { display:flex; flex-direction:column; gap:8px; margin-bottom:18px; }
    .edit-profile-form label { font-size:.8rem; font-weight:600; letter-spacing:.5px; text-transform:uppercase; color:#475569; }
    .edit-profile-form input, .edit-profile-form textarea { padding:14px 16px; border:2px solid #e5e7eb; border-radius:14px; font:inherit; resize:vertical; transition:all .25s ease; }
    .edit-profile-form input:focus, .edit-profile-form textarea:focus { outline:none; border-color:#b10000; box-shadow:0 0 0 3px rgba(177,0,0,.15); }
    .stats-modal .stats-grid { grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:20px; margin-bottom:30px; }
    .stats-modal .stat-card { background:#f8fafc; border:1px solid #e5e7eb; padding:24px 20px 26px; border-radius:20px; position:relative; overflow:hidden; transition:all .3s ease; text-align:center; }
    .stats-modal .stat-card:hover { transform:translateY(-6px); box-shadow:0 12px 32px -12px rgba(0,0,0,.18); border-color:#b10000; }
    .stats-modal .stat-card h3 { margin:0 0 6px; font-size:1.4rem; font-weight:700; color:#1f2937; }
    .stats-modal .stat-card p { margin:0; font-size:.75rem; font-weight:600; letter-spacing:.5px; text-transform:uppercase; color:#64748b; }
    .stat-trend { display:inline-block; margin-top:10px; font-size:.6rem; letter-spacing:.5px; font-weight:600; background:#dcfce7; color:#166534; padding:4px 8px; border-radius:10px; }
    .stats-chart { background:#ffffff; border:1px solid #e5e7eb; border-radius:24px; padding:26px 28px 34px; }
    .stats-chart h3 { margin:0 0 18px; font-size:1rem; font-weight:600; color:#1f2937; }
    .chart-placeholder { background:repeating-linear-gradient(45deg,#f1f5f9,#f1f5f9 10px,#eef2f7 10px,#eef2f7 20px); border:2px dashed #cbd5e1; border-radius:16px; padding:46px 20px; text-align:center; font-size:.85rem; font-weight:500; color:#64748b; }

    /* Toast improvement (stack safe) */
    .toast { transition:transform .35s ease, opacity .35s ease; }
    .toast.show { transform:translateX(0); }

    /* Micro interactions */
    .btn-edit-model i, .btn-stats i { transition: transform .3s; }
    .btn-edit-model:hover i { transform: rotate(-8deg); }
    .btn-stats:hover i { transform: scale(1.15); }

    /* Accessibility focus states */
    .model-item:focus-within, .model-item:focus { outline:3px solid #b10000; outline-offset:2px; }

    /* Reduced motion preference */
    @media (prefers-reduced-motion: reduce) {
        .tab-content, .model-item, .stats-modal .stat-card { transition:none !important; animation:none !important; }
    }

    /* Responsive modal adjustments */
    @media (max-width: 720px) { .edit-profile-modal .modal-content, .stats-modal .modal-content { max-width:92%; } }
    @media (max-width: 520px) { 
        .modal-header { padding:20px 22px 16px; }
        .modal-body { padding:24px 22px 8px; }
        .modal-footer { padding:16px 22px 0; }
        .models-list .model-image { width:200px; }
    }
    /* ================= End Profile Page Enhancements ================= */

    /* ==== Override: Profile Stats Single Row Layout ==== */
    .profile-stats .stats-grid {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 24px;
            align-items: stretch;
    }
    .profile-stats .stat-card { height: 100%; }

    /* Responsive fallback: küçülen ekranlarda kademeli kırılım */
    @media (max-width: 1100px) {
        .profile-stats .stats-grid { grid-template-columns: repeat(4, 1fr); }
    }
    @media (max-width: 900px) {
        .profile-stats .stats-grid { grid-template-columns: repeat(3, 1fr); }
    }
    @media (max-width: 680px) {
        .profile-stats .stats-grid { grid-template-columns: repeat(2, 1fr); }
    }
    @media (max-width: 440px) {
        .profile-stats .stats-grid { grid-template-columns: 1fr; }
    }

    /* İsteğe bağlı: Her zaman 5'i yan yana ve taşma ile görmek isterseniz aşağıyı aktif edin
         .profile-stats .stats-grid { display:flex; flex-wrap:nowrap; overflow-x:auto; }
         .profile-stats .stat-card { flex:0 0 240px; }
    */

    /* ===== Profile Cover & Avatar Enhancements ===== */
    .profile-cover { position:relative; margin-bottom:0; }
    .cover-image { position:relative; border-radius:24px; overflow:visible; height:300px; background:#1e293b; display:flex; align-items:center; justify-content:center; }
    .cover-image img.cover-img { width:100%; height:100%; object-fit:cover; object-position:50% 50%; transition:object-position .4s ease, filter .4s ease, transform .5s ease; }
    .cover-overlay { position:absolute; inset:0; background:linear-gradient(to bottom, rgba(0,0,0,0.15), rgba(0,0,0,0.55)); pointer-events:none; }
    .cover-actions { position:absolute; top:14px; right:14px; display:flex; gap:10px; align-items:center; z-index:5; }
    .cover-actions button { width:44px; height:44px; border:none; background:rgba(255,255,255,0.15); backdrop-filter:blur(6px); color:#ffffff; border-radius:14px; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:all .3s; box-shadow:0 4px 14px -4px rgba(0,0,0,.4); }
    .cover-actions button:hover { background:rgba(255,255,255,0.28); transform:translateY(-2px); }
    .btn-cover-reposition.active { background:#b10000; }
    .cover-reposition-panel { position:absolute; top:64px; right:0; background:#ffffff; border:1px solid #e5e7eb; box-shadow:0 12px 30px -8px rgba(0,0,0,0.18); border-radius:18px; padding:18px 20px; display:flex; gap:14px; align-items:center; animation:panelScale .35s cubic-bezier(.16,.84,.44,1); }
    @keyframes panelScale { from { opacity:0; transform:translateY(8px) scale(.95);} to { opacity:1; transform:translateY(0) scale(1);} }
    .cover-pos-range { accent-color:#b10000; width:180px; }
    .cover-drop-hint { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; font-weight:600; color:#fff; font-size:.95rem; background:rgba(0,0,0,0.45); backdrop-filter:blur(4px); opacity:0; transition:opacity .35s ease; pointer-events:none; text-align:center; }
    .cover-drop-hint i { font-size:2rem; color:#fbbf24; }
    .cover-image.drag-over .cover-drop-hint { opacity:1; }
    .cover-image.drag-over img.cover-img { filter:blur(2px) brightness(.6); }

    .profile-info.enhanced { margin-top:30px; position:relative; z-index:5; display:flex; flex-direction:column; align-items:center; }

    /* Avatar now anchored inside cover */
    .cover-image { position:relative; }
    .cover-image .profile-avatar-wrapper { 
        --avatar-size: 140px;
        position:absolute; 
        left:40px; 
        bottom:calc(-0.50 * var(--avatar-size)); /* Yüksekliğin %50'si kadar aşağı taşma */ 
        width:var(--avatar-size); 
        height:var(--avatar-size); 
        z-index:20; 
    }
    .cover-image .profile-avatar { 
        position:relative; 
        width:100%; 
        height:100%; 
        border-radius:50%; 
        overflow:hidden; 
        box-shadow:0 10px 35px -10px rgba(0,0,0,.5), 0 0 0 5px #ffffff; 
        background:#111; 
    }
    .cover-image .profile-avatar img.avatar-img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
    .cover-image .profile-avatar:hover img.avatar-img { transform:scale(1.08); }
    .cover-image .btn-edit-avatar { position:absolute; bottom:6px; right:6px; width:42px; height:42px; border:none; background:rgba(0,0,0,0.55); color:#fff; backdrop-filter:blur(4px); border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:all .3s; box-shadow:0 6px 16px -6px rgba(0,0,0,.5); }
    .cover-image .btn-edit-avatar:hover { background:#b10000; }
    .cover-image .profile-avatar-wrapper.drag-over .profile-avatar img { filter:brightness(.6) blur(2px); }
    .cover-image .profile-avatar-wrapper.drag-over::after { content:'Bırak'; position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background:rgba(0,0,0,.55); color:#fff; font-weight:600; font-size:.9rem; letter-spacing:.5px; }
    .cover-image .avatar-status { position:absolute; bottom:8px; left:8px; width:20px; height:20px; background:#10b981; border:4px solid #ffffff; border-radius:50%; box-shadow:0 4px 10px -2px rgba(0,0,0,.35); animation:pulseStatus 3s ease-in-out infinite; }
    .cover-image .avatar-status.offline { background:#94a3b8; animation:none; }

    /* Adjust layout below cover since avatar overlaps */
    .profile-header .container { padding-bottom:120px; }
    .profile-details { margin-top:calc(40px + 0.5 *  var(--avatar-size,140px)); }

    @media (max-width: 860px) {
        .cover-image .profile-avatar-wrapper { 
            --avatar-size:120px; 
            left:24px; 
            bottom:calc(-0.5 * var(--avatar-size));
        }
        .profile-details { margin-top: calc(40px + 0.5 * var(--avatar-size)); }
    }
    @media (max-width: 520px) {
        .cover-image .profile-avatar-wrapper { 
            --avatar-size:110px; 
            left:18px; 
            bottom:calc(-0.5 * var(--avatar-size));
        }
        .profile-details { margin-top: calc(35px + 0.5 * var(--avatar-size)); }
    }
    @keyframes pulseStatus { 0%,100% { transform:scale(1);} 50% { transform:scale(1.25);} }

    .profile-badges { margin-top:16px; display:flex; gap:10px; flex-wrap:wrap; justify-content:center; }
    .badge-verified { background:#fee2e2; color:#8a0000; padding:6px 12px; border-radius:14px; font-size:.7rem; font-weight:700; display:inline-flex; align-items:center; gap:6px; text-transform:uppercase; letter-spacing:.5px; }
    /* Compact variant only in profile header */
    .profile-header .badge-verified {
        background: #fff;
        color: #8a0000;
        border: 2px solid #fca5a5; /* light red outline */
        padding: 4px 8px;
        border-radius: 999px;
        font-size: .65rem;
        font-weight: 700;
        letter-spacing: .4px;
        box-shadow: 0 2px 6px rgba(177,0,0,0.08);
    }
    .profile-header .badge-verified i { font-size: .7rem; }

    /* Profile header glass card and contrast adjustments */
    .profile-header .profile-info.enhanced {
        background: rgba(0, 0, 0, 0.22);
        border: 1px solid rgba(255, 255, 255, 0.22);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        border-radius: 20px;
        padding: 18px 22px;
        box-shadow: 0 10px 30px rgba(0,0,0,0.25);
    }
    .profile-header .profile-details h1 { color: #ffffff; text-shadow: 0 1px 2px rgba(0,0,0,.45); }
    .profile-header .profile-title { color: #ffe4e6; text-shadow: 0 1px 2px rgba(0,0,0,.35); }
    .profile-header .profile-location,
    .profile-header .profile-joined { color: rgba(255,255,255,0.95); text-shadow: 0 1px 2px rgba(0,0,0,.35); }

    /* Profile tabs underline indicator and positioning */
    .profile-main .tab-btn { position: relative; }
    .profile-main .tab-btn.active::after { content: ''; position: absolute; left: 22px; right: 22px; bottom: -2px; height: 3px; background: linear-gradient(135deg, #b10000, #8a0000); border-radius: 2px; }

    /* Sidebar title accent underline */
    .sidebar-section h3 { position: relative; }
    .sidebar-section h3::after { content: ''; position: absolute; left: 0; bottom: -8px; width: 36px; height: 3px; background: linear-gradient(135deg, #b10000, #8a0000); border-radius: 2px; }

    /* Social link micro-interaction */
    .profile-sidebar .social-link { border: 1px solid transparent; }
    .profile-sidebar .social-link:hover { border-color: #fca5a5; transform: translateX(2px); }

    /* Focus-visible outlines for key controls (accessibility) */
    .btn-edit-profile:focus-visible,
    .btn-share-profile:focus-visible,
    .btn-add-first:focus-visible,
    .profile-main .tab-btn:focus-visible,
    .profile-sidebar .social-link:focus-visible { outline: none; box-shadow: 0 0 0 3px rgba(177,0,0,0.2); border-color: #fca5a5; }

    /* Utility */
    .visually-hidden { 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; }

    /* Responsive adjustments for enhanced profile header */
    @media (max-width: 860px) {
        .cover-image { height:260px; }
        .profile-info.enhanced { margin-top:-70px; }
        .profile-avatar, .profile-avatar-wrapper { width:150px; height:150px; }
    }
    @media (max-width: 640px) {
        .cover-actions button { width:40px; height:40px; }
        .cover-reposition-panel { top:56px; padding:14px 16px; }
        .profile-avatar, .profile-avatar-wrapper { width:140px; height:140px; }
    }
    @media (max-width: 480px) {
        .cover-image { height:220px; }
        .profile-avatar, .profile-avatar-wrapper { width:120px; height:120px; }
    }

/* ================= Topic Detail Page Styles ================= */
.topic-detail { padding: 110px 0 60px; background:#ffffff; }
.topic-article { background:#ffffff; border:1px solid #e5e7eb; border-radius:20px; padding:24px; margin-bottom:30px; }
.topic-header { margin-bottom:16px; }
.topic-header .topic-title { font-size:1.75rem; font-weight:700; color:#1f2937; margin:0 0 10px; }
.topic-meta-row { display:flex; flex-wrap:wrap; gap:14px; color:#6b7280; font-size:.95rem; }
.topic-meta-row i { color:#b10000; }
.topic-content { color:#374151; line-height:1.7; background:#f8fafc; border:1px solid #e5e7eb; border-radius:14px; padding:18px; }
.topic-actions { display:flex; gap:10px; margin-top:18px; }
.topic-actions .btn-primary i, .topic-actions .btn-secondary i { font-size:.95rem; }
.breadcrumb { margin-top:10px; }
.breadcrumb i { color:#94a3b8; }

@media (max-width: 640px) {
    .topic-article { padding:18px; }
    .topic-header .topic-title { font-size:1.4rem; }
}
/* ================= End Topic Detail Page Styles ================= */