/* Layout Global Styles */

:root{--brand-primary:#2563eb;--brand-secondary:#1e40af;--brand-dark:#0f172a;--card-radius:8px;--shadow-soft:0 2px 8px rgba(15,23,42,0.1)}
*{box-sizing:border-box}
body{background:#fff;font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;color:var(--brand-dark);min-height:100vh;display:flex;flex-direction:column;line-height:1.6}
a{color:inherit;text-decoration:underline;text-decoration-color:transparent;transition:text-decoration-color 0.2s ease}
a:hover{color:var(--brand-primary);text-decoration-color:currentColor}
.topbar a,.btn,.badge-trending,.stretched-link{text-decoration:none}

/* Topbar */
.topbar{background:#fff;color:var(--brand-dark);border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px rgba(0,0,0,0.05)}
.topbar .brand{font-weight:600;font-size:1.25rem;letter-spacing:-0.02rem;color:var(--brand-primary)}
.topbar-nav a{color:#64748b;font-weight:500;font-size:0.9rem;transition:color 0.2s}
.topbar-nav a:hover,.topbar-nav a.active{color:var(--brand-primary)}
.nav-dropdown{position:relative}
.nav-dropdown-menu{position:absolute;top:100%;right:0;min-width:220px;margin-top:0.75rem;background:#fff;color:var(--brand-dark);border-radius:14px;box-shadow:var(--shadow-soft);padding:0.75rem;display:none;z-index:20}
.nav-dropdown:hover .nav-dropdown-menu{display:block}
.nav-dropdown-menu a{display:block;padding:0.35rem 0.5rem;border-radius:10px;font-weight:600;color:var(--brand-dark)}
.nav-dropdown-menu a:hover{background:rgba(254,95,143,0.12);color:var(--brand-primary)}
.search-field{min-width:240px;border-radius:6px;border:1px solid #e2e8f0;padding:0.5rem 1rem;background:#f8fafc;color:var(--brand-dark);font-size:0.9rem}
.search-field::placeholder{color:#94a3b8}
.search-field:focus{outline:none;border-color:var(--brand-primary);background:#fff}

/* Main */
main{flex:1}
.section-title{font-size:1.5rem;font-weight:600;margin-bottom:0.5rem;letter-spacing:-0.02rem;color:var(--brand-dark)}
.section-subtitle{font-size:0.95rem;color:#64748b;margin-bottom:1.5rem;line-height:1.6}

/* Person Card */
.person-card{background:linear-gradient(135deg,#fff 0%,#f8fafc 100%);border-radius:12px;padding:1rem;position:relative;height:100%;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);border:1px solid #e2e8f0;overflow:hidden}
.person-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(37,99,235,0.05),rgba(139,92,246,0.05));opacity:0;transition:opacity 0.3s;pointer-events:none}
.person-card:hover{border-color:var(--brand-primary);box-shadow:0 8px 24px rgba(37,99,235,0.2);transform:translateY(-4px)}
.person-card:hover::before{opacity:1}
.person-card img{width:100%;height:350px;aspect-ratio:1/1;object-fit:cover;border-radius:8px;margin-bottom:0.75rem;position:relative;z-index:1;transition:transform 0.3s}
.person-card:hover img{transform:scale(1.03)}
.person-card .name{font-weight:700;font-size:1rem;display:block;margin-bottom:0.25rem;color:var(--brand-dark);position:relative;z-index:1}
.person-card .meta{color:#64748b;font-size:0.875rem;position:relative;z-index:1}
.person-card .meta strong{color:var(--brand-dark);font-weight:600}

/* Hero Card */
.hero-card{background:linear-gradient(135deg,#fff 0%,#f8fafc 100%);border-radius:12px;overflow:hidden;border:1px solid #e2e8f0;height:100%;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);position:relative}
.hero-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(37,99,235,0.05),rgba(139,92,246,0.05));opacity:0;transition:opacity 0.3s;z-index:0;pointer-events:none}
.hero-card:hover{border-color:var(--brand-primary);box-shadow:0 12px 32px rgba(37,99,235,0.25);transform:translateY(-6px)}
.hero-card:hover::before{opacity:1}
.hero-card img{width:100%;height:240px;aspect-ratio:1/1;object-fit:cover;position:relative;z-index:1;transition:transform 0.3s}
.hero-card:hover img{transform:scale(1.05)}
.hero-card .info{padding:1rem 1.25rem 1.3rem;position:relative;z-index:1}
.hero-card .info .name{font-size:1.2rem;font-weight:700;margin-bottom:0.35rem}
.hero-card .info .meta{color:#555;font-size:0.9rem}

/* Components */
.category-chip{display:inline-flex;align-items:center;gap:0.35rem;padding:0.35rem 0.75rem;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#475569;border-radius:8px;font-size:0.75rem;font-weight:600;border:1px solid #e2e8f0;transition:all 0.2s}
.category-chip:hover{background:linear-gradient(135deg,#2563eb,#1e40af);color:#fff;border-color:#2563eb;transform:translateY(-2px);box-shadow:0 4px 12px rgba(37,99,235,0.3)}
.stat-chip{display:inline-flex;align-items:center;padding:0.35rem 0.75rem;background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;border-radius:8px;font-size:0.75rem;font-weight:600;border:1px solid #93c5fd}
.stat-chip:nth-of-type(2){background:linear-gradient(135deg,#fce7f3,#fbcfe8);color:#9f1239;border-color:#f9a8d4}
.stat-chip:nth-of-type(3){background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;border-color:#6ee7b7}
.stat-chip:nth-of-type(4){background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border-color:#fcd34d}
.stat-chip:nth-of-type(5){background:linear-gradient(135deg,#e9d5ff,#d8b4fe);color:#6b21a8;border-color:#c084fc}
.country-pill{display:inline-flex;align-items:center;padding:0.35rem 0.75rem;background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;border-radius:8px;font-size:0.75rem;font-weight:600;border:1px solid #93c5fd;transition:all 0.2s}
.country-pill:hover{background:linear-gradient(135deg,#2563eb,#1e40af);color:#fff;border-color:#2563eb;transform:translateY(-2px);box-shadow:0 4px 12px rgba(37,99,235,0.3)}
.mini-list{background:#fff;border-radius:var(--card-radius);padding:1rem;border:1px solid #e2e8f0}
.mini-list li{display:flex;align-items:center;justify-content:space-between;padding:0.5rem 0;border-bottom:1px solid #f1f5f9}
.mini-list li:last-child{border-bottom:none}
.mini-person{display:flex;align-items:center;gap:0.85rem}
.mini-thumb{width:44px;height:44px;aspect-ratio:1/1;border-radius:50%;object-fit:cover;box-shadow:0 4px 12px rgba(31,31,31,0.18)}
.badge-trending{display:inline-flex;align-items:center;justify-content:center;background:#dbeafe;color:var(--brand-primary);border-radius:6px;font-size:0.8rem;font-weight:600;padding:0.4rem 0.8rem}

/* Favorite Button */
.favorite-btn{position:absolute;top:10px;right:10px;z-index:10;border-radius:6px;width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;font-size:1rem;background:rgba(255,255,255,0.95);color:#64748b;border:1px solid #e2e8f0;transition:all 0.2s ease}
.favorite-btn:hover{transform:scale(1.05)}
.favorite-btn.active{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}
.favorite-btn.favorite-inline{
    position: static;
    width: auto;
    height: auto;
    padding: 0.15rem 0.6rem;
    border-radius: 999px;
    font-size: 0.95rem;
    box-shadow: none;
    background: #dbeafe;
    border: 1px solid rgb(128 138 185);
    color: var(--brand-primary);}
.favorite-btn.favorite-inline.active{background:var(--brand-primary);color:#fff}
.likes-label{font-size:0.8rem;color:#9b9b9b}

/* Buttons */
.btn-primary{background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary))!important;border:none!important;color:#fff!important;font-weight:600!important;border-radius:8px!important;padding:0.5rem 1.25rem!important;transition:all 0.3s!important;box-shadow:0 2px 8px rgba(37,99,235,0.2)!important}
.btn-primary:hover{transform:translateY(-2px)!important;box-shadow:0 4px 16px rgba(37,99,235,0.3)!important}
.btn-outline-secondary{color:var(--brand-primary)!important;border:2px solid #e2e8f0!important;font-weight:600!important;border-radius:8px!important;transition:all 0.3s!important;background:#fff!important}
.btn-outline-secondary:hover{background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary))!important;border-color:var(--brand-primary)!important;color:#fff!important;transform:translateY(-2px)!important;box-shadow:0 4px 12px rgba(37,99,235,0.3)!important}

/* Footer */
footer{background:linear-gradient(135deg,#f8fafc 0%,#e0e7ff 100%);border-top:1px solid #e2e8f0;font-size:0.875rem;color:#64748b;position:relative;overflow:hidden}
footer::before{content:'';position:absolute;top:-50%;right:-20%;width:100%;height:200%;background:radial-gradient(circle,rgba(37,99,235,0.05) 0%,transparent 70%);animation:floatFooter 20s ease-in-out infinite;pointer-events:none}
@keyframes floatFooter{0%,100%{transform:translate(0,0) rotate(0deg)}50%{transform:translate(-20px,20px) rotate(180deg)}}
footer .container{position:relative;z-index:1}
footer a{color:#64748b;font-weight:500;transition:all 0.2s;padding:0.25rem 0.5rem;border-radius:6px}
footer a:hover{color:var(--brand-primary);background:rgba(37,99,235,0.08);transform:translateX(2px)}
footer .h6{color:var(--brand-dark);font-weight:700}

/* Breadcrumbs */
.breadcrumb-trail{font-size:0.9rem}
.breadcrumb-trail .breadcrumb{margin-bottom:1.2rem}

/* Sliders */
.hero-slider,.see-also-slider{position:relative;overflow:hidden}
.hero-track,.see-also-track{display:flex;gap:1rem;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none}
.hero-track::-webkit-scrollbar,.see-also-track::-webkit-scrollbar{display:none}
.hero-slide{flex:0 0 280px;min-width:280px}
.see-also-item{flex:0 0 280px;min-width:280px}
.hero-nav,.see-also-nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;font-size:1.5rem;color:var(--brand-primary);cursor:pointer;z-index:10;transition:all 0.2s}
.hero-nav:hover,.see-also-nav:hover{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}
.hero-prev,.see-also-prev{left:10px}
.hero-next,.see-also-next{right:10px}
.see-also-nav{border-radius:50%;background:rgba(255,255,255,0.95);box-shadow:0 4px 12px rgba(0,0,0,0.15);font-weight:bold}
.see-also-nav:hover{transform:translateY(-50%) scale(1.1)}
.see-also-prev{left:-10px}
.see-also-next{right:-10px}
.see-also-track{padding-bottom:0.5rem}

/* Category Tabs */
.category-tabs{display:flex;gap:0.5rem;flex-wrap:wrap;border-bottom:1px solid #e2e8f0;padding-bottom:0.5rem}
.category-tab{padding:0.5rem 1rem;border:1px solid #e2e8f0;background:#fff;border-radius:6px;font-size:0.9rem;font-weight:500;color:#64748b;cursor:pointer;transition:all 0.2s}
.category-tab:hover{border-color:var(--brand-primary);color:var(--brand-primary)}
.category-tab.active{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}
.category-content{display:none;padding-top:1.5rem}
.category-content.active{display:block}

/* Responsive */
@media(max-width:991px){
.search-field{display:none}
.hero-card img{height:200px}
}
@media(max-width:768px){
.hero-slide,.see-also-item{flex:0 0 220px;min-width:220px}
.hero-nav,.see-also-nav{display:none}
}
@media(max-width:575px){
.person-card img{height:180px}
}
