/* aihaber — Layout & Component Fixes v4 (Magazine override) */

/* ═══ BASE ELEMENT MAGAZINE RESET ═══ */
/* main.css redefines .badge and .btn AFTER the component CSS — re-enforce here */
.badge {
    border-radius: 0 !important;
    box-shadow: none !important;
}
.btn, button.btn {
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* ═══ GLOBAL MAGAZINE OVERRIDE ═══ */
/* Mevcut hardcoded radius/shadow degerlerini sıfırla */
.card,
.card *,
.card-news,
.card-news *,
.card-tool,
.card-tool *,
.card-model,
.card-model *,
.card-paper,
.card-paper *,
.card-glossary,
.card-glossary * {
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Tool/Model card alt-class'lar magazine override */
.card-tool .tool-logo,
.card-tool .tool-logo-placeholder,
.card-model .model-logo,
.card-model .model-logo-placeholder {
    border-radius: 0 !important;
    border: 1px solid var(--paper-line);
}
.card-tool .tool-logo-placeholder,
.card-model .model-logo-placeholder {
    background: var(--c-pri);
    color: #fff;
}
.card-tool .tool-card-title a,
.card-model .card-title,
.card-paper .card-title a,
.card-glossary .card-title a {
    color: var(--text-ink);
    text-decoration: none;
    font-family: var(--font-display);
    font-weight: 800;
    letter-spacing: -0.4px;
}
.card-tool .tool-btn,
.card-model .btn,
.card-paper .btn {
    border-radius: 0 !important;
    font-family: var(--font-body);
    font-weight: 800;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    font-size: 11px;
}
.card-tool .tool-btn-primary {
    background: var(--ink);
    color: #fff;
}
.card-tool .tool-btn-primary:hover {
    background: var(--c-acc-lime);
    color: var(--ink);
}
.card-tool .tool-btn-outline {
    background: transparent;
    color: var(--text-ink);
    border: 1px solid var(--paper-line);
}
.card-tool .tool-btn-outline:hover {
    background: var(--ink);
    color: #fff;
    border-color: var(--ink);
}
.card-tool .tool-tag,
.card-glossary .badge-acronym {
    border-radius: 0 !important;
    border: 1px solid var(--paper-line);
    background: transparent;
    color: var(--text-ink);
    font-weight: 700;
    text-decoration: none;
}
.card-tool .tool-tag:hover {
    background: var(--c-acc-lime);
    color: var(--ink);
    border-color: var(--c-acc-lime);
}
.card-model .model-rating-bar {
    background: var(--paper-soft);
    border: 1px solid var(--paper-line);
    height: 6px;
}
.card-model .rating-fill {
    background: var(--c-acc-lime);
}
.card-model .model-price {
    background: var(--c-acc-orange);
    color: #fff;
    font-family: var(--font-mono);
    font-weight: 800;
    padding: 3px 8px;
    font-size: 11px;
    letter-spacing: 0.5px;
}
.card-paper .badge-venue {
    background: var(--c-acc-purple);
    color: #fff;
    border: none;
    font-weight: 800;
    letter-spacing: 1.5px;
}

/* All buttons globally → magazine */
.btn,
button.btn,
a.btn {
    border-radius: 0 !important;
}

/* Comments magazine override */
.comments-area,
.comment-list,
.comment-item,
.comment-body,
.comment-form,
.comment-form input,
.comment-form textarea,
.comment-form button,
.comment-avatar,
.comment-badge,
.reaction-bar,
.reaction-btn {
    border-radius: 0 !important;
    box-shadow: none !important;
}
.comments-title,
.comment-reply-title {
    font-family: var(--font-display) !important;
    font-weight: 900 !important;
    letter-spacing: -1px !important;
    text-transform: uppercase !important;
}
.comment-body {
    border: 1px solid var(--paper-line) !important;
    background: var(--paper) !important;
    padding: 20px !important;
    margin-bottom: 16px !important;
}
.comment-avatar {
    background: var(--c-acc-lime) !important;
    color: var(--ink) !important;
    border: 1px solid var(--ink) !important;
}
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea {
    border: 1px solid var(--paper-line) !important;
    background: var(--paper) !important;
    padding: 12px !important;
    font-family: var(--font-body) !important;
}
.comment-form input[type="text"]:focus,
.comment-form input[type="email"]:focus,
.comment-form input[type="url"]:focus,
.comment-form textarea:focus {
    border-color: var(--ink) !important;
    outline: 2px solid var(--c-acc-lime) !important;
    outline-offset: -1px;
}
.comment-form .submit,
#submit {
    background: var(--ink) !important;
    color: #fff !important;
    border: none !important;
    padding: 12px 24px !important;
    font: 800 12px/1 var(--font-body) !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
}
.comment-form .submit:hover,
#submit:hover {
    background: var(--c-acc-lime) !important;
    color: var(--ink) !important;
}
.comment-badge-author,
.comment-badge-pinned {
    background: var(--c-pri) !important;
    color: #fff !important;
    border: none !important;
}
.reaction-btn {
    background: var(--paper) !important;
    border: 1px solid var(--paper-line) !important;
    color: var(--text-ink) !important;
    transition: background var(--dur-fast) var(--ease) !important;
}
.reaction-btn:hover,
.reaction-btn.is-active {
    background: var(--c-acc-lime) !important;
    border-color: var(--c-acc-lime) !important;
}

/* Sidebar widgets magazine override */
.sidebar-inner .widget,
.widget {
    margin-bottom: 32px;
    border: 1px solid var(--paper-line);
    background: var(--paper);
    padding: 20px;
}
.sidebar-inner .widget-title,
.widget-title {
    font: 900 14px/1 var(--font-display) !important;
    letter-spacing: -0.3px !important;
    text-transform: uppercase !important;
    margin: 0 0 16px !important;
    padding-bottom: 12px !important;
    border-bottom: 3px solid var(--ink) !important;
    display: inline-flex !important;
    align-items: baseline !important;
}
.widget ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.widget ul li {
    border-bottom: 1px solid var(--paper-line);
}
.widget ul li:last-child { border-bottom: none; }
.widget ul li a {
    display: block;
    padding: 10px 0;
    color: var(--text-ink);
    text-decoration: none;
    font: 600 13px/1.4 var(--font-body);
    transition: color var(--dur-fast) var(--ease);
}
.widget ul li a:hover { color: var(--c-pri); }

/* Single CPT old headers (model, tool, mcp, paper) → magazine */
.tool-header,
.model-header,
.abm-header-card,
.paper-detail-header,
.tool-hero {
    background: var(--paper-warm) !important;
    border: 1px solid var(--paper-line) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 24px !important;
    margin-bottom: 32px !important;
}
.tool-header *,
.model-header *,
.abm-header-card *,
.paper-detail-header * {
    border-radius: 0 !important;
}
.tool-logo-large,
.model-logo-large,
.tool-hero-logo,
.abm-header-logo .abm-logo-img,
.abm-header-logo {
    border-radius: 0 !important;
    border: 2px solid var(--c-acc-lime) !important;
}
.article-title,
.tool-hero-title,
.abm-title,
.model-header-info h1,
.tool-header-info h1 {
    font-family: var(--font-display) !important;
    font-weight: 900 !important;
    letter-spacing: -1px !important;
    text-transform: none !important;
}

/* Tool/Model badges magazine */
.badge-api { background: var(--c-pri) !important; color: #fff !important; border-radius: 0 !important; font-weight: 800 !important; letter-spacing: 1.5px !important; text-transform: uppercase !important; }
.badge-status-active { background: var(--c-acc-lime) !important; color: var(--ink) !important; }
.badge-status-beta   { background: var(--c-acc-orange) !important; color: #fff !important; }
.badge-opensource    { background: var(--c-cat-code) !important; color: #fff !important; }
.tool-price-badge,
.tool-price-tag {
    background: var(--c-acc-orange) !important;
    color: #fff !important;
    font-family: var(--font-mono) !important;
    font-weight: 800 !important;
    padding: 4px 10px !important;
    border-radius: 0 !important;
    letter-spacing: 0.5px !important;
}

/* Tabs (abm-tab) */
.abm-tabs {
    border-bottom: 1px solid var(--paper-line) !important;
    background: transparent !important;
    border-radius: 0 !important;
}
.abm-tab {
    border-radius: 0 !important;
    background: transparent !important;
    border-bottom: 3px solid transparent !important;
    font: 800 12px/1 var(--font-body) !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    padding: 14px 18px !important;
}
.abm-tab.active {
    border-bottom-color: var(--c-acc-lime) !important;
    color: var(--text-ink) !important;
    background: transparent !important;
}

/* Benchmark bars magazine */
.abm-bench-bar {
    background: var(--paper-soft) !important;
    border: 1px solid var(--paper-line) !important;
    border-radius: 0 !important;
    height: 10px !important;
}
.abm-bench-fill {
    background: var(--c-acc-lime) !important;
    border-radius: 0 !important;
}

/* tool-tag-* family */
.abm-tag,
.tool-tag,
.ab-tag {
    border-radius: 0 !important;
    border: 1px solid var(--paper-line);
    background: var(--paper);
    color: var(--text-ink);
    font-weight: 700;
    text-decoration: none;
    padding: 4px 10px;
    font: 700 11px/1 var(--font-body);
    letter-spacing: 1px;
}
.abm-tag-blue, .ab-tag-blue       { background: var(--c-pri); color: #fff; border-color: var(--c-pri); }
.abm-tag-green, .ab-tag-green     { background: var(--c-cat-code); color: #fff; border-color: var(--c-cat-code); }
.abm-tag-purple                   { background: var(--c-acc-purple); color: #fff; border-color: var(--c-acc-purple); }
.abm-tag-orange                   { background: var(--c-acc-orange); color: #fff; border-color: var(--c-acc-orange); }

/* Pagination — kill old radius (do not restyle layout here) */
.pagination-wrapper,
.nav-links,
.page-numbers {
    border-radius: 0 !important;
}
.pagination-wrapper a,
.pagination-wrapper span,
.nav-links a,
.nav-links span,
.page-numbers {
    border-radius: 0 !important;
    font-family: var(--font-body);
    font-weight: 800;
    letter-spacing: 1px;
}

/* Reference: centered gradient hero search like navigation portals */

/* ═══ HEADER STYLES → see header.css ═══ */
/* All site-header, topbar, nav, logo styles moved to header.css */


/* ===================== HERO SEARCH SECTION (Gradient) ===================== */
.hero-search-section{position:relative;padding:48px 0 40px;overflow:hidden}
.hero-search-bg{position:absolute;inset:0;background:linear-gradient(135deg,#6366f1 0%,#8b5cf6 25%,#a855f7 50%,#c084fc 75%,#e879f9 100%);z-index:0}
.hero-search-bg::after{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}
.hero-search-inner{position:relative;z-index:1;text-align:center;max-width:680px;margin:0 auto}

/* Search Tabs */
.hero-search-tabs{display:flex;justify-content:center;gap:4px;margin-bottom:20px;flex-wrap:wrap}
.hero-tab{background:rgba(255,255,255,.12);border:none;padding:8px 20px;font-size:.85rem;font-weight:600;color:rgba(255,255,255,.75);cursor:pointer;border-radius:20px;transition:all .25s;backdrop-filter:blur(4px)}
.hero-tab:hover{background:rgba(255,255,255,.22);color:#fff}
.hero-tab.active{background:#fff;color:#6366f1;box-shadow:0 2px 12px rgba(0,0,0,.15)}

/* Search Form */
.hero-search-form{display:flex;align-items:center;background:#fff;border-radius:14px;padding:4px 4px 4px 20px;box-shadow:0 8px 32px rgba(0,0,0,.18);transition:box-shadow .3s}
.hero-search-form:focus-within{box-shadow:0 8px 40px rgba(0,0,0,.25)}
.hero-search-input{flex:1;border:none;background:none;padding:14px 12px;font-size:1rem;color:#1e293b;outline:none;font-family:inherit;min-width:0}
.hero-search-input::placeholder{color:#94a3b8}
.hero-search-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;padding:12px 16px;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .25s;flex-shrink:0}
.hero-search-btn:hover{background:linear-gradient(135deg,#4f46e5,#7c3aed);transform:scale(1.05)}
.hero-search-btn svg{width:20px;height:20px}

/* Search Results Dropdown */
.hero-search-results{position:absolute;left:50%;transform:translateX(-50%);top:calc(100% - 20px);width:100%;max-width:680px;background:#fff;border-radius:12px;box-shadow:0 12px 48px rgba(0,0,0,.2);max-height:380px;overflow-y:auto;z-index:200;display:none;text-align:left}
.hero-search-results.active{display:block}
.hero-search-results a{display:flex;align-items:center;gap:10px;padding:12px 18px;color:#1e293b;font-size:.9rem;border-bottom:1px solid #f1f5f9;text-decoration:none;transition:background .2s}
.hero-search-results a:hover{background:#f8fafc;color:#6366f1}
.hero-search-results .result-type{font-size:.65rem;padding:2px 8px;border-radius:10px;background:rgba(99,102,241,.1);color:#6366f1;font-weight:700;text-transform:uppercase;flex-shrink:0}

/* Quick Links */
.hero-quick-links{margin-top:16px;display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}
.quick-label{color:rgba(255,255,255,.65);font-size:.78rem;font-weight:500}
.hero-quick-links a{color:rgba(255,255,255,.85);font-size:.78rem;font-weight:500;text-decoration:none;padding:3px 12px;border-radius:14px;background:rgba(255,255,255,.12);transition:all .2s;backdrop-filter:blur(4px)}
.hero-quick-links a:hover{background:rgba(255,255,255,.25);color:#fff}

/* ── Floating side buttons (Magazine) ── */
.floating-side{position:fixed;right:16px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:0;z-index:90;border:1px solid var(--paper-line);background:var(--paper)}
.float-btn{display:grid;place-items:center;width:42px;height:42px;background:var(--paper);border:none;border-bottom:1px solid var(--paper-line);font-size:1rem;text-decoration:none;color:var(--text-ink);transition:background .12s,color .12s;border-radius:0!important;box-shadow:none}
.float-btn:last-child{border-bottom:none}
.float-btn:hover{background:var(--c-acc-lime);color:var(--ink);transform:none;box-shadow:none}

/* ── Hero/news layout (legacy hero-grid) ── */
.section-hero{padding:24px 0}
.hero-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:0;align-items:start;border:1px solid var(--paper-line)}
.hero-main{position:relative;border-right:1px solid var(--paper-line)}
.hero-side{display:flex;flex-direction:column}

/* CARD LARGE — Magazine hero card */
.card-large{overflow:hidden;position:relative}
.card-large .card-thumb-overlay{display:block;position:relative;width:100%;height:400px;overflow:hidden;background:var(--ink);text-decoration:none;color:#fff}
.card-large .card-image-full{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.card-large .card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.25) 55%,transparent);display:flex;align-items:flex-end;padding:32px;z-index:2}
.card-large .card-overlay-content{color:#fff;display:flex;flex-direction:column;gap:6px}
.card-large .card-title-large{font:900 28px/1.15 var(--font-display);letter-spacing:-.7px;margin:8px 0 6px;color:#fff}
.card-large .card-subtitle{font:400 14px/1.5 var(--font-body);color:rgba(255,255,255,.85);margin:0 0 8px}
.card-large .post-meta{color:rgba(255,255,255,.75);font:600 11px/1 var(--font-mono)}
.card-large .post-meta a{color:#fff}

/* CARD SMALL — Magazine sidebar */
.card-small{background:var(--paper);border-bottom:1px solid var(--paper-line);overflow:hidden;transition:background .12s}
.card-small:last-child{border-bottom:none}
.card-small:hover{background:var(--c-acc-lime)}
.card-small:hover .card-title-sm a,.card-small:hover .card-date{color:var(--ink)}
.card-small .card-row{display:flex;gap:12px;padding:14px}
.card-small .card-thumb-sq{width:84px;height:84px;flex-shrink:0;overflow:hidden;background:var(--paper-soft);border:1px solid var(--paper-line)}
.card-small .card-thumb-sq img{width:100%;height:100%;object-fit:cover}
.card-small .card-body-sm{flex:1;display:flex;flex-direction:column;justify-content:center;min-width:0;gap:4px}
.card-small .card-title-sm{font:800 14px/1.25 var(--font-display);letter-spacing:-.2px;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card-small .card-title-sm a{color:var(--text-ink);text-decoration:none}
.card-small .card-date{font:600 11px/1 var(--font-mono);color:var(--text-mute)}

/* CARD MEDIUM — Magazine grid card */
.card-medium{background:var(--paper);border:1px solid var(--paper-line);overflow:hidden;transition:background .12s,color .12s;display:flex;flex-direction:column;margin:-1px 0 0 -1px;position:relative}
.card-medium:hover{background:var(--c-acc-lime);transform:none;box-shadow:none;z-index:1}
.card-medium:hover .card-title a,.card-medium:hover .card-excerpt,.card-medium:hover .card-date,.card-medium:hover .post-meta,.card-medium:hover .post-meta a{color:var(--ink)}
.card-medium .card-thumb{display:block;position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;background:var(--paper-soft);border-bottom:1px solid var(--paper-line)}
.card-medium .card-thumb img,.card-medium .card-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.card-medium:hover .card-thumb img{transform:scale(1.04)}
.card-medium .card-body{padding:18px;flex:1;display:flex;flex-direction:column;gap:8px}
.card-medium .card-title{font:800 17px/1.3 var(--font-display);letter-spacing:-.3px;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card-medium .card-title a{color:var(--text-ink);text-decoration:none}
.card-medium .card-excerpt{font:400 13px/1.55 var(--font-body);color:var(--text-mute);margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ── Posts grid ─────────────── */
.posts-grid{display:grid;gap:0}
.grid-cols-2{grid-template-columns:repeat(2,1fr)}
.grid-cols-3{grid-template-columns:repeat(3,1fr)}
.grid-cols-4{grid-template-columns:repeat(4,1fr)}

/* ── Sections (legacy) ────── */
.section-latest,.section-models,.section-tools,.section-papers{padding:48px 0;border-bottom:1px solid var(--paper-line)}
.section-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:28px;gap:16px;padding-bottom:14px;border-bottom:2px solid var(--ink)}
.section-title{font:900 clamp(22px,2.5vw,32px)/1.1 var(--font-display);letter-spacing:-1px;text-transform:uppercase;margin:0;display:flex;align-items:baseline;gap:8px}
.section-title::before{display:none}

/* ── Badges (legacy) ──────── */
.category-badge,.news-type-badge{display:inline-block;padding:4px 10px;border-radius:0!important;font:800 10px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;margin-right:4px}
.news-type-badge{position:absolute;top:0;left:0;z-index:3;background:var(--c-acc-lime);color:var(--ink)}
.category-badge{background:transparent;color:var(--ink);border:1px solid var(--ink)}

/* ── Post meta (legacy) ───── */
.post-meta{display:flex;align-items:center;gap:12px;font:600 11px/1.4 var(--font-mono);color:var(--text-mute);flex-wrap:wrap}
.post-meta a{color:var(--text-ink);text-decoration:none;font-weight:700}
.post-meta a:hover{color:var(--c-pri)}
.post-meta img{width:22px;height:22px;border-radius:0!important;object-fit:cover;border:1px solid var(--paper-line)}

/* ── Buttons (legacy .btn) ── */
.btn{display:inline-flex;align-items:center;gap:6px;padding:11px 20px;border-radius:0!important;font:800 11.5px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;text-decoration:none;transition:background .12s,color .12s,border-color .12s;cursor:pointer;border:1px solid transparent}
.btn-primary{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn-primary:hover{background:var(--c-acc-lime);color:var(--ink);border-color:var(--c-acc-lime);transform:none;box-shadow:none}
.btn-outline{background:transparent;border-color:var(--paper-line);color:var(--text-ink)}
.btn-outline:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn-sm{padding:8px 14px;font-size:10.5px;letter-spacing:1.2px}

/* ── Newsletter (legacy) ──── */
.section-newsletter{padding:56px 0}
.newsletter-cta{display:flex;align-items:center;gap:32px;padding:48px;background:var(--ink);border:none;border-radius:0!important;color:#fff;position:relative;overflow:hidden}
.newsletter-cta::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--c-acc-lime)}
.newsletter-content h2{font:900 clamp(24px,2.6vw,32px)/1.1 var(--font-display);letter-spacing:-.7px;text-transform:uppercase;margin:0 0 10px;color:#fff}
.newsletter-content p{color:#bbb;font:400 14px/1.55 var(--font-body);margin:0}
.newsletter-form{display:flex;gap:0;flex-shrink:0;min-width:340px;border:1px solid #fff}
.newsletter-form input[type="email"]{flex:1;padding:13px 16px;border:none;background:transparent;color:#fff;font:500 14px/1 var(--font-body);outline:none;border-radius:0!important}
.newsletter-form input[type="email"]::placeholder{color:#888}
.newsletter-form .btn{white-space:nowrap;background:var(--c-acc-lime);color:var(--ink);border-color:var(--c-acc-lime)}
.newsletter-form .btn:hover{background:#fff;color:var(--ink);border-color:#fff}

/* ===================== COMMENTS (Clean Card Style) ===================== */
.comments-area{margin-top:32px}
/* ===================== PREMIUM COMMENTS ===================== */
.comments-area{margin-top:32px}

/* ── Comment Form (Magazine) ──────────── */
.comment-form-card{background:var(--paper);border:1px solid var(--paper-line);padding:28px;margin-bottom:24px;position:relative;border-radius:0!important}
.comment-form-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--c-acc-lime)}
.comment-form-title{font:900 16px/1.2 var(--font-display);letter-spacing:-.3px;color:var(--text-ink);text-transform:uppercase}
.comment-form-card .comment-reply-title{font:900 18px/1.2 var(--font-display);letter-spacing:-.3px;text-transform:uppercase;margin:0 0 16px;color:var(--text-ink);padding-bottom:10px;border-bottom:2px solid var(--ink);display:flex;align-items:center;gap:8px}
.comment-form-card .comment-reply-title small{font:600 11px/1 var(--font-mono);color:var(--text-mute);font-weight:600;letter-spacing:0;text-transform:none}
.comment-form-card .comment-reply-title small a{color:var(--c-pri);text-decoration:none;font-weight:700}
.comment-form-card .logged-in-as{font:600 12px/1.5 var(--font-body);color:var(--text-mute);margin-bottom:14px;padding:10px 14px;background:var(--paper-soft);border:1px solid var(--paper-line);border-radius:0!important}
.comment-form-card .logged-in-as a{color:var(--ink);font-weight:800;text-decoration:none;border-bottom:1px solid var(--ink)}

.comment-form-comment textarea{width:100%;padding:14px 16px;border:1px solid var(--paper-line);background:var(--paper);color:var(--text-ink);font:500 14px/1.5 var(--font-body);resize:vertical;min-height:120px;outline:none;transition:border-color .12s;box-sizing:border-box;border-radius:0!important}
.comment-form-comment textarea:focus{border-color:var(--ink)}
.comment-form-comment textarea::placeholder{color:var(--text-mute)}

.comment-form-row{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:14px;border:1px solid var(--paper-line)}
.comment-form-field{margin-bottom:0}
.comment-form-field input{width:100%;padding:12px 14px;border:none;border-right:1px solid var(--paper-line);background:var(--paper);color:var(--text-ink);font:500 13px/1 var(--font-body);outline:none;transition:background .12s;box-sizing:border-box;border-radius:0!important}
.comment-form-field:last-child input{border-right:none}
.comment-form-field input:focus{background:var(--paper-soft)}
.comment-form-field input::placeholder{color:var(--text-mute);font-weight:600;letter-spacing:.5px;text-transform:uppercase;font-size:11px}
.comment-form-field label{display:none}

.comment-submit-btn,.comment-form-card .form-submit input[type="submit"]{background:var(--ink)!important;color:#fff!important;border:1px solid var(--ink)!important;padding:13px 28px!important;font:800 11.5px/1 var(--font-body)!important;letter-spacing:1.5px!important;text-transform:uppercase!important;cursor:pointer;transition:background .12s,color .12s,border-color .12s!important;border-radius:0!important;box-shadow:none!important}
.comment-submit-btn:hover,.comment-form-card .form-submit input[type="submit"]:hover{transform:none!important;background:var(--c-acc-lime)!important;color:var(--ink)!important;border-color:var(--c-acc-lime)!important;box-shadow:none!important}
.comment-form-card .form-submit{text-align:right;margin-top:16px}

.comments-empty{text-align:center;padding:48px 20px;color:var(--text-mute);background:var(--paper);border:1px dashed var(--paper-line);border-radius:0!important}
.comments-empty .empty-icon{font-size:2.4rem;margin-bottom:10px;opacity:.5;color:var(--text-mute)}
.comments-empty p{margin:0;font:600 13px/1.5 var(--font-body)}

/* ── Comments List (Magazine) ────────── */
.comments-list-card{background:var(--paper);border:1px solid var(--paper-line);padding:0;margin-bottom:24px;border-radius:0!important}
.comments-title{font:900 18px/1.2 var(--font-display);letter-spacing:-.3px;text-transform:uppercase;margin:0;padding:18px 22px;border-bottom:2px solid var(--ink);display:flex;align-items:center;gap:8px;color:var(--text-ink)}
.comment-list{list-style:none;margin:0;padding:0 22px}
.comment-list .comment{padding:20px 0;border-bottom:1px solid var(--paper-line);transition:background .12s}
.comment-list .comment:last-child{border-bottom:none}
.comment-list .comment:hover{background:transparent}

.comment-list .comment-author{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.comment-list .comment-author img{border:1px solid var(--paper-line);padding:0;box-shadow:none;border-radius:0!important;width:36px;height:36px}
.comment-list .comment-author .fn{font:800 14px/1.2 var(--font-display);letter-spacing:-.2px;color:var(--text-ink)}
.comment-list .comment-author .fn a{color:var(--text-ink);text-decoration:none}
.comment-list .comment-author .says{display:none}

.comment-list .comment-metadata{font:600 11px/1 var(--font-mono);color:var(--text-mute);margin-bottom:10px;padding-left:46px}
.comment-list .comment-metadata a{color:var(--text-mute);text-decoration:none}
.comment-list .comment-metadata a:hover{color:var(--ink)}

.comment-list .comment-content{font:400 14px/1.65 var(--font-body);color:var(--text-ink);padding-left:46px}
.comment-list .comment-content p{margin:0 0 6px}

.comment-list .reply{padding-left:46px;margin-top:8px}
.comment-list .reply a{display:inline-flex;align-items:center;gap:4px;font:800 10px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;color:var(--ink);text-decoration:none;padding:5px 12px;border:1px solid var(--ink);transition:background .12s,color .12s;border-radius:0!important}
.comment-list .reply a:hover{background:var(--c-acc-lime);color:var(--ink);border-color:var(--c-acc-lime)}
.comment-list .reply a::before{content:"↩"}

.comment-list .children{list-style:none;margin:0;padding:0 0 0 28px;border-left:2px solid var(--paper-line)}
.comment-list .children .comment{padding:14px 0}

.comment-navigation{display:flex;justify-content:space-between;padding:14px 22px;border-top:1px solid var(--paper-line);margin-top:0;font:800 11px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase}
.comment-navigation a{color:var(--ink);text-decoration:none}
.comment-navigation a:hover{color:var(--c-pri)}

/* ── Sidebar Widgets (Magazine) ──────── */
.sidebar .widget{margin-bottom:20px;background:var(--paper);border:1px solid var(--paper-line);padding:0;border-radius:0!important}
.sidebar .widget-title,.sidebar h2{font:900 13px/1 var(--font-display)!important;letter-spacing:1.5px!important;text-transform:uppercase;margin:0!important;padding:14px 18px!important;background:var(--ink);color:#fff!important;display:flex;align-items:center;gap:6px;border-bottom:none}
.sidebar .widget > ul,.sidebar .widget > div{padding:14px 18px}
.sidebar ul{list-style:none;margin:0;padding:0}
.sidebar li{padding:8px 0;border-bottom:1px solid var(--paper-line);font:600 13px/1.4 var(--font-body)}
.sidebar li:last-child{border-bottom:none}
.sidebar a{color:var(--text-ink);text-decoration:none;transition:color .12s}
.sidebar a:hover{color:var(--c-pri)}
.widget_tag_cloud .tagcloud,.tag-cloud{display:flex;flex-wrap:wrap;gap:6px}
.widget_tag_cloud .tagcloud a,.tag-cloud a{display:inline-block;padding:5px 10px;font:700 11px/1 var(--font-mono)!important;letter-spacing:.5px;border:1px solid var(--paper-line);background:var(--paper);color:var(--text-ink)!important;text-decoration:none;transition:background .12s,color .12s,border-color .12s;border-radius:0!important}
.widget_tag_cloud .tagcloud a:hover,.tag-cloud a:hover{background:var(--c-acc-lime)!important;color:var(--ink)!important;border-color:var(--c-acc-lime)!important;transform:none;box-shadow:none}

/* ===================== SINGLE ARTICLE ===================== */
.article-title{font-size:clamp(1.4rem,3vw,2rem)!important;line-height:1.3}
.entry-content{font-size:1rem;line-height:1.8}
.entry-content h2{font-size:1.3rem!important;margin-top:32px}
.entry-content h3{font-size:1.15rem!important;margin-top:24px}
.entry-content p{margin-bottom:16px}
.entry-content img{max-width:100%;height:auto;border-radius:var(--r-m)}

/* ===================== BREADCRUMB FIX ===================== */
.breadcrumbs{padding:12px 0;margin-bottom:8px}
.breadcrumb-list{display:flex!important;align-items:center!important;gap:8px!important;list-style:none!important;margin:0!important;padding:0!important;flex-wrap:wrap}
.breadcrumb-item{display:inline-flex!important;align-items:center;font-size:.82rem}
.breadcrumb-item a{color:var(--c-tx2)!important;text-decoration:none;font-weight:500;transition:color .2s}
.breadcrumb-item a:hover{color:var(--c-pri)!important}
.breadcrumb-item.active span{color:var(--c-tx3);font-weight:400}
.breadcrumb-sep{color:var(--c-tx3);opacity:.6;flex-shrink:0}
/* Force breadcrumb visibility on dark */
[data-theme="dark"] .breadcrumb-item a{color:rgba(255,255,255,.7)!important}
[data-theme="dark"] .breadcrumb-item.active span{color:rgba(255,255,255,.45)}
[data-theme="dark"] .breadcrumb-sep{color:rgba(255,255,255,.3)}

/* ===================== LOGO TEXT → see header.css ===================== */

/* ===================== TOOL CARDS ===================== */
.card-tool{background:var(--c-bgc);border:1px solid var(--c-brd);border-radius:14px;padding:20px;transition:all .3s;display:flex;flex-direction:column;gap:12px}
.card-tool:hover{border-color:var(--c-pri);box-shadow:0 8px 24px rgba(99,102,241,.1);transform:translateY(-3px)}
.tool-card-top{display:flex;align-items:center;gap:14px}
.tool-logo-wrap{flex-shrink:0}
.tool-logo{width:48px;height:48px;border-radius:0!important;object-fit:cover;border:1px solid var(--paper-line)}
.tool-logo-placeholder{width:48px;height:48px;border-radius:0!important;background:var(--ink);color:var(--c-acc-lime);display:grid;place-items:center;font:900 18px/1 var(--font-display);border:1px solid var(--ink)}
.tool-card-info{flex:1;min-width:0}
.tool-card-title{font-size:.95rem;font-weight:700;margin:0 0 4px;line-height:1.3}
.tool-card-title a{color:var(--c-tx);text-decoration:none}
.tool-card-title a:hover{color:var(--c-pri)}
.tool-card-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tool-badge{font-size:.65rem;font-weight:700;padding:2px 10px;border-radius:12px;text-transform:uppercase;letter-spacing:.3px}
.tool-badge-free{background:rgba(16,185,129,.1);color:#10b981;border:1px solid rgba(16,185,129,.3)}
.tool-badge-freemium{background:rgba(99,102,241,.1);color:#6366f1;border:1px solid rgba(99,102,241,.3)}
.tool-badge-paid{background:rgba(245,158,11,.1);color:#f59e0b;border:1px solid rgba(245,158,11,.3)}
.tool-badge-enterprise{background:rgba(139,92,246,.1);color:#8b5cf6;border:1px solid rgba(139,92,246,.3)}
.tool-rating{font-size:.78rem;color:var(--c-tx3);font-weight:500}
.tool-card-desc{font-size:.85rem;color:var(--c-tx2);line-height:1.5;margin:0;flex:1}
.tool-tags{display:flex;flex-wrap:wrap;gap:6px}
.tool-tag{font-size:.72rem;font-weight:600;color:var(--c-pri);text-decoration:none;padding:2px 10px;border-radius:10px;background:rgba(99,102,241,.08);transition:all .2s}
.tool-tag:hover{background:rgba(99,102,241,.15)}
.tool-card-actions{display:flex;gap:8px}
.tool-btn{display:inline-flex;align-items:center;gap:4px;padding:8px 18px;border-radius:20px;font-size:.82rem;font-weight:600;text-decoration:none;transition:all .25s;cursor:pointer;border:none}
.tool-btn-primary{background:var(--ink);color:#fff;border:1px solid var(--ink);box-shadow:none}
.tool-btn-primary:hover{transform:none;box-shadow:none;background:var(--c-acc-lime);color:var(--ink);border-color:var(--c-acc-lime)}
.tool-btn-outline{background:transparent;border:1.5px solid var(--c-brd);color:var(--c-tx2);padding:6.5px 18px}
.tool-btn-outline:hover{border-color:var(--c-pri);color:var(--c-pri)}
.tool-card-stats{display:flex;gap:16px;font-size:.72rem;color:var(--c-tx3);padding-top:8px;border-top:1px solid var(--c-brd2)}

/* Tool Single Extra Sections */
.tool-info-bar{display:flex;align-items:center;gap:14px;padding:16px 0;border-top:1px solid var(--c-brd);border-bottom:1px solid var(--c-brd);margin:24px 0;font-size:.82rem;color:var(--c-tx2);flex-wrap:wrap}
.tool-related-section{margin:24px 0}
.tool-related-section h3{font-size:1rem;font-weight:700;margin:0 0 12px}
.tool-related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.tool-related-card{display:flex;align-items:center;gap:10px;padding:12px;background:var(--c-bgc);border:1px solid var(--c-brd);border-radius:10px;text-decoration:none;transition:all .25s}
.tool-related-card:hover{border-color:var(--c-pri);transform:translateY(-2px);box-shadow:0 4px 12px rgba(99,102,241,.1)}
.tool-related-logo{width:32px;height:32px;border-radius:8px;object-fit:cover}
.tool-related-logo-placeholder{font-size:1.3rem}
.tool-related-name{font-size:.8rem;font-weight:600;color:var(--c-tx)}
.tool-comments-section{margin-top:32px}

/* ===================== MODEL SINGLE PAGE ===================== */
.single-model{padding:24px 0 48px}
.model-header{margin-bottom:28px;padding-bottom:20px;border-bottom:2px solid var(--c-brd)}
.model-header-top{display:flex;gap:18px;align-items:start}
.model-logo-wrap{flex-shrink:0}
.model-logo-large{width:72px;height:72px;border-radius:0!important;object-fit:contain;border:1px solid var(--paper-line);background:var(--paper-soft)}
.model-logo-placeholder-lg{width:72px;height:72px;border-radius:0!important;background:var(--ink);color:var(--c-acc-lime);display:grid;place-items:center;border:1px solid var(--ink)}
.model-header-info{flex:1;min-width:0}
.model-badges{display:flex;gap:6px;margin-bottom:8px;flex-wrap:wrap}
.badge-opensource{background:rgba(16,185,129,.1);color:#10b981;border:1px solid rgba(16,185,129,.3)}
.badge-api{background:rgba(99,102,241,.1);color:#6366f1;border:1px solid rgba(99,102,241,.3)}
.model-developer-info{font-size:.88rem;color:var(--c-tx2);margin-top:6px;display:flex;gap:12px;align-items:center}
.model-by{font-weight:600}
.model-version{padding:2px 8px;border-radius:6px;font-size:.72rem;font-weight:600;background:var(--c-bg2);border:1px solid var(--c-brd)}

/* Specs Grid */
.model-specs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:24px}
.spec-card{background:var(--c-bgc);border:1px solid var(--c-brd);border-radius:12px;padding:14px;text-align:center;transition:all .25s}
.spec-card:hover{border-color:var(--c-pri);transform:translateY(-2px)}
.spec-icon{display:block;margin:0 auto 8px;color:var(--c-pri)}
.spec-label{display:block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--c-tx3);margin-bottom:4px}
.spec-value{display:block;font-size:1rem;font-weight:700;color:var(--c-tx)}

/* Rating Gauge */
.model-rating-section{margin-bottom:24px}
.model-rating-section h3{font-size:1rem;font-weight:700;margin:0 0 10px}
.rating-gauge{position:relative;height:14px;background:var(--paper-soft);border-radius:0!important;overflow:hidden;border:1px solid var(--paper-line)}
.gauge-fill{height:100%;background:var(--c-acc-lime);border-radius:0!important;transition:width .6s ease}
.gauge-value{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:.72rem;font-weight:700;color:var(--c-tx)}

/* Pros & Cons */
.pros-cons-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}
.pros-section,.cons-section{padding:16px;border-radius:12px;border:1px solid var(--c-brd)}
.pros-section{background:rgba(16,185,129,.04);border-color:rgba(16,185,129,.2)}
.cons-section{background:rgba(239,68,68,.04);border-color:rgba(239,68,68,.2)}
.pros-section h3,.cons-section h3{font-size:.95rem;font-weight:700;margin:0 0 10px}
.pros-section ul,.cons-section ul{list-style:none;padding:0;margin:0}
.pros-section li,.cons-section li{padding:6px 0;font-size:.85rem;color:var(--c-tx2);border-bottom:1px solid var(--c-brd2)}
.pros-section li:last-child,.cons-section li:last-child{border-bottom:none}
.pros-section li::before{content:"✓ ";color:#10b981;font-weight:700}
.cons-section li::before{content:"✗ ";color:#ef4444;font-weight:700}

/* Model Links */
.model-links{display:flex;gap:10px;margin:24px 0;flex-wrap:wrap}

/* ===================== TOOL FEATURES ===================== */
.tool-features-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}
.features-section,.integrations-section{padding:16px;background:var(--c-bgc);border:1px solid var(--c-brd);border-radius:12px}
.features-section h3,.integrations-section h3{font-size:.95rem;font-weight:700;margin:0 0 12px}
.feature-list{list-style:none;padding:0;margin:0}
.feature-list li{padding:6px 0;font-size:.85rem;color:var(--c-tx2);border-bottom:1px solid var(--c-brd2)}
.feature-list li:last-child{border-bottom:none}
.feature-list li::before{content:"★ ";color:var(--c-pri)}
.integration-badges{display:flex;flex-wrap:wrap;gap:6px}

/* Pricing Cards */
.pricing-table-section{margin:24px 0}
.pricing-table-section h3{font-size:1rem;font-weight:700;margin:0 0 14px}
.pricing-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.pricing-card{background:var(--paper);border:1px solid var(--paper-line);border-radius:0!important;padding:24px 20px;text-align:center;transition:background .12s,color .12s;margin:-1px 0 0 -1px}
.pricing-card:hover{background:var(--c-acc-lime);transform:none;border-color:var(--ink)}
.pricing-card:hover h4,.pricing-card:hover .pricing-price,.pricing-card:hover .pricing-features,.pricing-card:hover .pricing-features li{color:var(--ink)}
.pricing-card h4{font:900 14px/1 var(--font-display);letter-spacing:1px;text-transform:uppercase;margin:0 0 10px;color:var(--text-ink)}
.pricing-price{font:900 28px/1 var(--font-display);letter-spacing:-.7px;color:var(--text-ink);margin-bottom:14px}
.pricing-features{list-style:none;padding:0;margin:0;font-size:.82rem;color:var(--c-tx2)}
.pricing-features li{padding:4px 0;border-bottom:1px solid var(--c-brd2)}
.pricing-features li:last-child{border-bottom:none}
.card-model,.card-paper,.card-glossary{background:var(--c-bgc);border:1px solid var(--c-brd);border-radius:14px;overflow:hidden;transition:all .3s;padding:20px;display:flex;flex-direction:column}
.card-model:hover,.card-paper:hover{border-color:var(--c-pri);box-shadow:0 8px 24px rgba(99,102,241,.1);transform:translateY(-3px)}
.card-model .card-title,.card-paper .card-title,.card-glossary .card-title{font-size:.95rem;font-weight:700;margin:0 0 8px}
.card-model .card-title a,.card-paper .card-title a{color:var(--c-tx);text-decoration:none}
.card-model .card-title a:hover,.card-paper .card-title a:hover{color:var(--c-pri)}

/* ===================== FLIPBOOK PDF READER ===================== */
.paper-pdf-reader{margin:32px 0;background:var(--c-bgc);border:1px solid var(--c-brd);border-radius:16px;overflow:hidden}
.pdf-reader-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;background:var(--c-bg2);border-bottom:1px solid var(--c-brd);flex-wrap:wrap}
.pdf-reader-header h3{margin:0;font-size:1rem;font-weight:700}
.pdf-reader-actions{display:flex;gap:8px;flex-wrap:wrap}

/* FlipBook Container */
.flipbook-container{background:#2d2d2d;position:relative;border-radius:0 0 16px 16px}
.flipbook-container:fullscreen{border-radius:0;background:#1a1a1a}
.flipbook-controls{display:flex;align-items:center;gap:6px;padding:12px 20px;background:rgba(0,0,0,.4);border-bottom:1px solid rgba(255,255,255,.1)}
.fb-ctrl{background:rgba(255,255,255,.12);border:none;color:#fff;width:36px;height:36px;border-radius:8px;font-size:.9rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}
.fb-ctrl:hover{background:rgba(255,255,255,.25)}
.fb-page-info{color:rgba(255,255,255,.75);font-size:.82rem;font-weight:600;padding:0 8px}
.fb-spacer{flex:1}

/* FlipBook Viewport */
.flipbook-viewport{display:flex;align-items:center;justify-content:center;padding:32px 20px;min-height:500px;overflow:auto}
.flipbook-book{display:flex;perspective:1200px;transform-style:preserve-3d;transition:transform .4s ease}
.fb-canvas{max-width:48vw;max-height:70vh;border-radius:2px;box-shadow:0 4px 24px rgba(0,0,0,.4)}
.fb-spine{width:4px;background:linear-gradient(180deg,rgba(255,255,255,.15),rgba(0,0,0,.3),rgba(255,255,255,.15));align-self:stretch;box-shadow:inset 0 0 4px rgba(0,0,0,.5)}

/* Flip Animations */
.flipbook-book.flip-left{animation:flipLeft .4s ease}
.flipbook-book.flip-right{animation:flipRight .4s ease}
@keyframes flipLeft{0%{transform:rotateY(0)}50%{transform:rotateY(-8deg) scale(.98)}100%{transform:rotateY(0)}}
@keyframes flipRight{0%{transform:rotateY(0)}50%{transform:rotateY(8deg) scale(.98)}100%{transform:rotateY(0)}}

/* Loading Spinner */
.flipbook-loading{display:none;position:absolute;inset:0;align-items:center;justify-content:center;gap:12px;background:rgba(0,0,0,.7);color:#fff;font-size:.9rem;z-index:10}
.fb-spinner{width:28px;height:28px;border:3px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:fbSpin .8s linear infinite}
@keyframes fbSpin{to{transform:rotate(360deg)}}

/* Page Gallery */
.pdf-gallery{padding:20px;border-top:1px solid var(--c-brd)}
.pdf-gallery h4{margin:0 0 14px;font-size:1rem;font-weight:700}
.pdf-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
.gallery-page-item{background:var(--c-bg2);border:1px solid var(--c-brd);border-radius:10px;overflow:hidden;transition:all .3s;cursor:pointer}
.gallery-page-item:hover{border-color:var(--c-pri);transform:translateY(-3px);box-shadow:0 6px 20px rgba(99,102,241,.15)}
.gallery-page-item img{width:100%;height:auto;display:block}
.gallery-page-item a{text-decoration:none}
.gallery-page-num{display:block;text-align:center;padding:8px 6px;font-size:.72rem;font-weight:600;color:var(--c-tx2)}


/* Paper Single Styles */
.paper-quick-links{display:flex;gap:8px;margin:20px 0;flex-wrap:wrap}
.paper-authors{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.paper-author{font:600 12px/1.4 var(--font-mono);color:var(--text-ink);padding:5px 12px;background:var(--paper-soft);border:1px solid var(--paper-line);border-radius:0!important}
.paper-author small{color:var(--text-mute);font-size:11px;font-weight:500}
.paper-meta-bar{display:flex;gap:18px;margin:14px 0;font:600 12px/1.2 var(--font-mono);color:var(--text-mute)}
.paper-meta-top{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap}
.paper-tldr{background:var(--paper-soft);border:1px solid var(--ink);border-left:4px solid var(--c-acc-lime);border-radius:0!important;padding:22px;margin:24px 0}
.paper-tldr h3{margin:0 0 10px;font:900 14px/1 var(--font-display);letter-spacing:1px;text-transform:uppercase;color:var(--text-ink)}
.paper-tldr p{margin:0;color:var(--c-tx2);font-size:.92rem;line-height:1.6}
.paper-abstract{margin:24px 0}
.paper-abstract h3{font-size:1.05rem;margin:0 0 10px}
.paper-abstract p{color:var(--c-tx2);line-height:1.7;font-size:.92rem}
.paper-findings{margin:24px 0}
.paper-findings ul{padding-left:20px}
.paper-findings li{margin-bottom:8px;font-size:.92rem;color:var(--c-tx2);line-height:1.5}
.paper-bibtex{margin:24px 0}
.bibtex-block{background:var(--c-bg2);padding:16px;border-radius:10px;font-size:.78rem;max-height:200px;overflow-y:auto}



/* ===================== FOOTER → see header.css ===================== */


/* ===================== RESPONSIVE ===================== */
@media(max-width:1024px){
  .hero-grid{grid-template-columns:1fr}
  .grid-cols-4{grid-template-columns:repeat(2,1fr)}
  .newsletter-cta{flex-direction:column;text-align:center}
  .newsletter-form{min-width:0;width:100%}
  .floating-side{display:none}
  .hero-search-section{padding:36px 0 32px}
}
@media(max-width:768px){
  /* top-nav and mobile-menu-toggle → header.css */
  .grid-cols-3,.grid-cols-2{grid-template-columns:1fr}
  .card-large .card-thumb-overlay{height:260px}
  .newsletter-form{flex-direction:column}
  /* footer-widgets-grid -> header.css */
  .hero-search-tabs{gap:2px}
  .hero-tab{padding:6px 12px;font-size:.78rem}
  .hero-search-section{padding:28px 0 24px}
  .comment-form-row{grid-template-columns:1fr}
}
@media(max-width:480px){
  .card-large .card-thumb-overlay{height:200px}
  .card-large .card-title-large{font-size:1.1rem}
  .grid-cols-4{grid-template-columns:1fr}
  .hero-search-tabs{flex-wrap:wrap;justify-content:center}
  .tool-card-actions{flex-direction:column}
}

/* ===================== COMMENTS SECTION ===================== */
.comments-section{background:var(--c-bgc);border:1px solid var(--c-brd);border-radius:16px;margin-top:32px;overflow:hidden}
.comments-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--c-brd)}
.comments-title{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:700;margin:0}
.comments-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:12px;background:var(--c-pri);color:#fff;font-size:.72rem;font-weight:700;padding:0 6px}
.comment-sort{display:flex;gap:4px}
.comment-sort-btn{padding:5px 12px;border:1px solid var(--c-brd);border-radius:8px;background:none;color:var(--c-tx3);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}
.comment-sort-btn.is-active{background:var(--c-pri);color:#fff;border-color:var(--c-pri)}

/* Reactions Bar */
.reactions-bar{display:flex;align-items:center;gap:8px;padding:14px 22px;border-bottom:1px solid var(--c-brd);flex-wrap:wrap}
.reactions-label{font-size:.78rem;font-weight:600;color:var(--c-tx3);white-space:nowrap}
.reaction-pill{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border:1px solid var(--c-brd);border-radius:20px;background:none;font-size:.78rem;cursor:pointer;transition:all .2s;color:var(--c-tx2)}
.reaction-pill:hover{border-color:var(--c-pri);background:rgba(99,102,241,.06)}
.reaction-pill.is-selected{border-color:var(--c-pri);background:rgba(99,102,241,.1);color:var(--c-pri);font-weight:600}
.reaction-emoji{font-size:1rem}
.reaction-count{font-weight:700;color:var(--c-tx)}
.reaction-pct{font-size:.68rem;color:var(--c-tx3);font-weight:500}
.reactions-total{margin-left:auto;font-size:.72rem;color:var(--c-tx3);font-weight:500}

/* Comment Form */
.comment-form-wrap{padding:16px 22px;border-bottom:1px solid var(--c-brd)}
.comment-form-editorial{display:flex;flex-direction:column;gap:10px}
.comment-form-field input{width:100%;padding:10px 14px;border:1px solid var(--c-brd);border-radius:10px;background:var(--c-bg2);color:var(--c-tx);font-size:.85rem;outline:none;transition:border .2s}
.comment-form-field input:focus{border-color:var(--c-pri)}
.comment-input-box{border:1px solid var(--c-brd);border-radius:12px;overflow:hidden;background:var(--c-bg2);transition:border .2s}
.comment-input-box:focus-within{border-color:var(--c-pri)}
.comment-textarea{width:100%;padding:12px 14px;border:none;background:transparent;color:var(--c-tx);font-size:.88rem;line-height:1.6;resize:vertical;min-height:72px;outline:none;font-family:inherit}
.comment-toolbar{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-top:1px solid var(--c-brd)}
.btn-comment-submit{display:inline-flex;align-items:center;gap:6px;padding:7px 18px;background:var(--c-pri);color:#fff;border:none;border-radius:8px;font-size:.82rem;font-weight:700;cursor:pointer;transition:all .2s}
.btn-comment-submit:hover{opacity:.9;transform:translateY(-1px)}
.comment-form-row{display:none}

.suggested-replies{display:flex;align-items:center;gap:6px;margin-top:10px;flex-wrap:wrap}
.suggested-label{font-size:.72rem;font-weight:600;color:var(--c-tx3);display:flex;align-items:center;gap:4px}
.suggested-btn{padding:6px 12px;border:1px solid var(--paper-line);border-radius:0!important;background:var(--paper);font:700 11px/1 var(--font-body);letter-spacing:.5px;color:var(--text-ink);cursor:pointer;transition:background .12s,color .12s,border-color .12s}
.suggested-btn:hover{border-color:var(--ink);background:var(--c-acc-lime);color:var(--ink)}

/* Comment list */
.comment-list{list-style:none!important;margin:0!important;padding:0!important}
.comment-list .children{list-style:none!important;margin:0 0 0 36px!important;padding:0!important;border-left:2px solid var(--c-brd)}
.comment-item{padding:0!important;margin:0!important}
.comment-body{padding:16px 22px;border-bottom:1px solid var(--c-brd);transition:background .2s}
.comment-body:hover{background:rgba(99,102,241,.02)}
.comment-badges{display:flex;gap:6px;margin-bottom:6px}
.comment-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:6px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.comment-badge-pinned{background:rgba(245,158,11,.12);color:#f59e0b}
.comment-badge-author{background:rgba(99,102,241,.12);color:var(--c-pri)}
.comment-author-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.comment-author-info{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.comment-author-name{font-weight:700;font-size:.88rem;color:var(--c-tx)}
.comment-verified{flex-shrink:0}
.comment-time{font-size:.72rem;color:var(--c-tx3)}
.comment-awaiting-notice{padding:8px 14px;background:rgba(245,158,11,.08);border-radius:8px;font-size:.78rem;color:#f59e0b;margin-bottom:8px}
.comment-text{font-size:.88rem;line-height:1.7;color:var(--c-tx2);margin-bottom:10px}
.comment-text p{margin:0 0 8px}
.comment-actions{display:flex;align-items:center;gap:8px}
.comment-action-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid transparent;border-radius:8px;background:none;font-size:.75rem;font-weight:500;color:var(--c-tx3);cursor:pointer;transition:all .2s}
.comment-action-btn:hover{color:var(--c-pri);background:rgba(99,102,241,.06);border-color:var(--c-brd)}
.comment-action-btn.is-liked{color:var(--c-pri);font-weight:700}
.comment-action-btn a{color:inherit;text-decoration:none}
.reply-action a{display:inline-flex;align-items:center;gap:4px;color:inherit;text-decoration:none}

.comment-list-empty{padding:48px 22px;text-align:center;color:var(--text-mute);border:1px dashed var(--paper-line);margin:0 22px 22px}
.comment-list-empty svg{opacity:.4;margin:0 auto 12px;display:block;stroke:var(--text-mute)}
.comment-list-empty p{font:600 13px/1.4 var(--font-body);margin:0}
.comment-nav-wrap{padding:12px 22px;text-align:center}
.load-more-comments{display:block;width:100%;padding:14px;border:1px solid var(--ink);border-radius:0!important;background:var(--paper);color:var(--ink);font:800 11.5px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:background .12s,color .12s;text-align:center;margin:0 22px;width:calc(100% - 44px)}
.load-more-comments:hover{background:var(--ink);color:#fff}
.no-comments{padding:18px 22px;font:600 12px/1.4 var(--font-body);color:var(--text-mute);text-align:center;border:1px dashed var(--paper-line);margin:0 22px 22px}
.community-rules{display:flex;align-items:center;gap:10px;padding:16px 22px;border-top:1px solid var(--paper-line);background:var(--paper-soft);font:600 12px/1.5 var(--font-body);color:var(--text-mute);border-radius:0!important}
.community-rules a{color:var(--ink);font-weight:800;text-decoration:none;border-bottom:1px solid var(--ink);margin-left:4px}
.community-rules a:hover{background:var(--c-acc-lime);color:var(--ink)}
.community-rules svg{stroke:var(--text-mute);flex-shrink:0}

/* ── TOC Widget (Magazine override) ── */
.widget-toc{padding:0!important}
.widget-toc .widget-title{margin:0!important;background:var(--ink);color:#fff!important;padding:14px 18px!important;font:900 13px/1 var(--font-display)!important;letter-spacing:1.5px!important;text-transform:uppercase}
.toc-nav{padding:8px 0;border-radius:0!important;display:flex;flex-direction:column}
.toc-item{display:flex;align-items:center;gap:8px;padding:9px 18px;border-radius:0!important;font:600 12px/1.4 var(--font-body);color:var(--text-ink);text-decoration:none;transition:background .12s,color .12s;border-left:3px solid transparent;border-bottom:1px solid var(--paper-line)}
.toc-item:last-child{border-bottom:none}
.toc-item:hover{background:var(--paper-soft);color:var(--ink)}
.toc-item.is-active{font-weight:800;color:var(--ink);background:var(--paper-soft);border-left-color:var(--c-acc-lime)}
.toc-num{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:0!important;font:800 10px/1 var(--font-mono);background:var(--paper-soft);color:var(--text-mute);flex-shrink:0;border:1px solid var(--paper-line)}
.toc-item.is-active .toc-num{background:var(--ink);color:var(--c-acc-lime);border-color:var(--ink)}

/* ── Reading Progress Bar (Magazine) ── */
.reading-progress-bar{position:fixed;top:0;left:0;height:3px;background:var(--c-acc-lime);width:0;z-index:1000;transition:width .1s;border-radius:0!important}

/* ── Paper Upvote (legacy fallback) ─── */
.paper-upvote{display:inline-flex;align-items:center;gap:6px;padding:11px 18px;border:1px solid var(--ink);border-radius:0!important;background:var(--ink);color:#fff;cursor:pointer;transition:background .12s,color .12s;font:800 11px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;box-shadow:none}
.paper-upvote:hover{background:var(--c-acc-lime);color:var(--ink);border-color:var(--c-acc-lime)}
.paper-upvote.is-voted{background:var(--c-acc-lime);color:var(--ink);border-color:var(--c-acc-lime);font-weight:900}
.paper-upvote svg{transition:transform .15s}
.paper-upvote:hover svg{transform:translateY(-2px)}

/* ===================== TOOL STAR RATING ===================== */
.user-star-rating{display:flex;align-items:center;gap:2px}
.user-star-rating .star{cursor:pointer;color:var(--c-brd);transition:all .15s;font-size:1.2rem}
.user-star-rating .star:hover,.user-star-rating .star.active{color:#f59e0b}
.user-star-rating .star.hover-preview{color:#fbbf24}
.user-rating-info{font-size:.72rem;color:var(--c-tx3);margin-left:8px}

/* ===================== FOOTER FIX → see header.css ===================== */


@media(max-width:768px){
  /* footer responsive → header.css */
  .reactions-bar{flex-wrap:wrap}
  .comment-list .children{margin-left:16px!important}
}

/* ===================== TOOL SINGLE PAGE ===================== */

/* Hero */
.tool-hero{background:var(--c-bgc);border:1px solid var(--c-brd);border-radius:16px;padding:28px;margin-bottom:24px}
.tool-hero-inner{display:flex;gap:20px;align-items:flex-start}
.tool-hero-logo{width:80px;height:80px;border-radius:16px;flex-shrink:0;object-fit:cover;border:1px solid var(--c-brd)}
.tool-hero-logo-placeholder{display:flex;align-items:center;justify-content:center;background:var(--c-bg2);color:var(--c-tx3)}
.tool-hero-info{flex:1;min-width:0}
.tool-hero-title{font-size:1.5rem;font-weight:800;margin:0 0 6px;color:var(--c-tx);line-height:1.3}
.tool-hero-desc{font-size:.88rem;color:var(--c-tx2);line-height:1.7;margin:0 0 12px}
.tool-hero-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.tool-meta-dev{display:inline-flex;align-items:center;gap:4px;font-size:.82rem;color:var(--c-tx3);font-weight:500}
.tool-price-badge{font-size:.78rem;font-weight:700;color:var(--c-pri);background:rgba(99,102,241,.08);padding:2px 10px;border-radius:6px}
.tool-hero-tags{display:flex;flex-wrap:wrap;gap:6px}
.tool-tag{display:inline-flex;align-items:center;padding:4px 10px;border:1px solid var(--c-brd);border-radius:14px;font-size:.72rem;font-weight:600;color:var(--c-tx2);text-decoration:none;transition:all .2s}
.tool-tag:hover{border-color:var(--c-pri);color:var(--c-pri);background:rgba(99,102,241,.04)}
.tool-tag-hash{color:var(--c-pri);border-color:rgba(99,102,241,.2)}

/* Hero Actions */
.tool-hero-actions{display:flex;align-items:center;gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid var(--c-brd)}
.btn-tool-visit{display:inline-flex;align-items:center;gap:8px;padding:10px 24px;background:var(--c-pri);color:#fff;border:none;border-radius:10px;font-size:.88rem;font-weight:700;text-decoration:none;transition:all .2s;cursor:pointer}
.btn-tool-visit:hover{opacity:.9;transform:translateY(-1px)}
.btn-tool-like{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border:1px solid var(--c-brd);border-radius:10px;background:none;font-size:.85rem;font-weight:600;color:var(--c-tx2);cursor:pointer;transition:all .2s}
.btn-tool-like:hover{border-color:#EF4444;color:#EF4444}
.btn-tool-like.is-liked{border-color:#EF4444;background:rgba(239,68,68,.08);color:#EF4444}
.btn-tool-action{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border:1px solid var(--c-brd);border-radius:10px;background:none;font-size:.82rem;font-weight:600;color:var(--c-tx2);cursor:pointer;transition:all .2s}
.btn-tool-action:hover{border-color:var(--c-pri);color:var(--c-pri)}

/* Hero URL */
.tool-hero-url{display:flex;align-items:center;gap:6px;margin-top:12px;padding:10px 14px;background:var(--c-bg2);border-radius:8px;font-size:.82rem;color:var(--c-tx3)}
.tool-hero-url a{color:var(--c-pri);text-decoration:none;font-weight:500;word-break:break-all}
.tool-hero-url a:hover{text-decoration:underline}

/* Stats Card */
.tool-stats-card,.tool-rating-card{background:var(--c-bgc);border:1px solid var(--c-brd);border-radius:14px;padding:20px;margin-bottom:20px}
.tool-section-heading{display:flex;align-items:center;gap:8px;font-size:.92rem;font-weight:700;margin:0 0 14px;color:var(--c-tx)}
.tool-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.tool-stat{text-align:center;padding:14px 8px;background:var(--c-bg2);border-radius:10px;border:1px solid var(--c-brd)}
.tool-stat-value{display:block;font-size:1.2rem;font-weight:800;color:var(--c-tx)}
.tool-stat-label{display:block;font-size:.7rem;color:var(--c-tx3);font-weight:500;margin-top:2px}
.tool-eval-text{font-size:.82rem;color:var(--c-tx3);line-height:1.6;padding:12px 14px;background:var(--c-bg2);border-radius:8px;border-left:3px solid var(--c-pri)}
.tool-eval-text strong{color:var(--c-tx)}

/* Rating Card */
.tool-rating-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}

/* Sidebar Tool-specific */
.sidebar-visit{padding:0!important}
.sidebar-visit-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;background:var(--c-pri);color:#fff;border:none;border-radius:12px;font-size:.88rem;font-weight:700;text-decoration:none;transition:all .2s;cursor:pointer}
.sidebar-visit-btn:hover{opacity:.9;transform:translateY(-1px)}
.sidebar-tool .sidebar-block{border:1px solid var(--c-brd);border-radius:12px;padding:16px;margin-bottom:16px;background:var(--c-bgc)}

/* Ranking List */
.tool-rank-item{display:flex;align-items:center;gap:8px;padding:8px 10px!important}
.tool-rank-num{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:6px;font-size:.72rem;font-weight:800;flex-shrink:0;background:var(--c-bg2);color:var(--c-tx3);border:1px solid var(--c-brd)}
.rank-1{background:linear-gradient(135deg,#f59e0b,#d97706)!important;color:#fff!important;border-color:transparent!important}
.rank-2{background:linear-gradient(135deg,#94a3b8,#64748b)!important;color:#fff!important;border-color:transparent!important}
.rank-3{background:linear-gradient(135deg,#b45309,#92400e)!important;color:#fff!important;border-color:transparent!important}

/* Related Tools Sidebar */
.tool-related-sidebar{display:flex;flex-direction:column;gap:8px}
.tool-related-sidebar-item{display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;text-decoration:none;transition:background .2s}
.tool-related-sidebar-item:hover{background:var(--c-bg2)}
.tool-rel-logo{width:36px;height:36px;border-radius:8px;object-fit:cover;flex-shrink:0;border:1px solid var(--c-brd)}
.tool-rel-logo-ph{display:flex;align-items:center;justify-content:center;background:var(--c-bg2);color:var(--c-tx3)}
.tool-rel-info{display:flex;flex-direction:column;gap:2px;min-width:0}
.tool-rel-name{font-size:.82rem;font-weight:600;color:var(--c-tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tool-rel-desc{font-size:.7rem;color:var(--c-tx3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Tag Cloud Sidebar */
.tag-cloud-sidebar{display:flex;flex-wrap:wrap;gap:6px}
.tag-cloud-item{display:inline-flex;padding:4px 10px;border:1px solid var(--c-brd);border-radius:12px;font-size:.72rem;font-weight:600;color:var(--c-pri);text-decoration:none;transition:all .2s}
.tag-cloud-item:hover{background:rgba(99,102,241,.06);border-color:var(--c-pri)}

/* Tool Page Responsive */
@media(max-width:768px){
  .tool-hero-inner{flex-direction:column;align-items:center;text-align:center}
  .tool-hero-meta{justify-content:center}
  .tool-hero-tags{justify-content:center}
  .tool-hero-actions{flex-wrap:wrap;justify-content:center}
  .tool-stats-grid{grid-template-columns:repeat(2,1fr)}
  .tool-rating-row{justify-content:center}
}

/* ===================== FEATURED TABS (ARCHIVE) ===================== */
.featured-tabs{display:flex;gap:6px;flex-wrap:wrap}
.featured-tab{padding:8px 18px;border:1px solid var(--c-brd);border-radius:20px;background:none;color:var(--c-tx2);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}
.featured-tab:hover{border-color:var(--c-pri);color:var(--c-pri)}
.featured-tab.active{background:var(--c-pri);color:#fff;border-color:var(--c-pri)}
.tab-panel{display:none!important}
.tab-panel.active{display:flex!important}
.featured-stats-row{display:flex;gap:10px;margin-top:auto;margin-bottom:8px}
.featured-stat{font-size:.75rem;font-weight:600;color:var(--c-tx3)}

/* ===================== TOOLSTORE (APP STORE LAYOUT) ===================== */

/* Search */
.toolstore-search-section{padding:16px 0;border-bottom:1px solid var(--c-brd)}
.toolstore-search{max-width:600px;margin:0 auto}
.toolstore-search-tabs{display:flex;gap:16px;margin-bottom:8px;justify-content:center}
.search-tab{font-size:.82rem;font-weight:600;color:var(--c-tx2);padding-bottom:4px;cursor:pointer}
.search-tab.active{color:var(--c-pri);border-bottom:2px solid var(--c-pri)}
.toolstore-search-box{display:flex;align-items:center;gap:8px;background:var(--c-bg2);border:1px solid var(--c-brd);border-radius:10px;padding:6px 8px 6px 14px}
.toolstore-search-box input[type="search"]{flex:1;border:none;background:none;font-size:.88rem;color:var(--c-tx);outline:none;padding:6px 0}
.toolstore-search-box button{padding:6px 18px;background:var(--c-pri);color:#fff;border:none;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer}
.toolstore-search-box svg{color:var(--c-tx3);flex-shrink:0}

/* Layout */
.toolstore-layout{display:flex;gap:0;margin-top:20px;min-height:70vh}

/* Sidebar */
.toolstore-sidebar{width:180px;flex-shrink:0;display:flex;flex-direction:column;gap:2px;padding-right:16px;border-right:1px solid var(--c-brd);position:sticky;top:70px;align-self:flex-start;max-height:calc(100vh - 90px);overflow-y:auto}
.toolstore-cat-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;text-decoration:none;font-size:.82rem;font-weight:500;color:var(--c-tx2);transition:all .15s;white-space:nowrap}
.toolstore-cat-item:hover{background:var(--c-bg2);color:var(--c-tx)}
.toolstore-cat-item.active{background:rgba(99,102,241,.08);color:var(--c-pri);font-weight:700}
.toolstore-cat-icon{font-size:1rem;width:20px;text-align:center;flex-shrink:0}
.toolstore-cat-name{overflow:hidden;text-overflow:ellipsis}

/* Main content */
.toolstore-main{flex:1;padding-left:24px;min-width:0}

/* Section Header */
.toolstore-section-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap;border-bottom:2px solid var(--c-tx);padding-bottom:12px}
.toolstore-section-title{font:900 20px/1 var(--font-display);letter-spacing:-.5px;text-transform:uppercase;color:var(--c-tx);margin:0;white-space:nowrap}
.toolstore-view-tabs{display:flex;gap:0;margin-left:auto}
.view-tab{padding:6px 14px;border:1px solid var(--c-brd);margin-left:-1px;background:none;color:var(--c-tx3);font:700 .68rem/1 var(--font-body);letter-spacing:.5px;text-transform:uppercase;cursor:pointer;transition:all .15s;white-space:nowrap}
.view-tab:hover{background:var(--c-bg2);color:var(--c-tx);border-color:var(--c-tx)}
.view-tab.active{background:var(--c-tx);color:var(--c-bgc);border-color:var(--c-tx)}
.toolstore-view-all{font:700 .7rem/1 var(--font-body);letter-spacing:1px;text-transform:uppercase;color:var(--c-tx);text-decoration:none;white-space:nowrap;padding:6px 12px;border:1px solid var(--c-brd)}
.toolstore-view-all:hover{background:var(--c-tx);color:var(--c-bgc)}

/* Panels */
.toolstore-panel{display:none}
.toolstore-panel.active{display:block}

/* Card Grid — 5 columns, magazine borderless gap */
.toolstore-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0}
.toolstore-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:16px 10px;border:1px solid var(--c-brd);margin:-1px 0 0 -1px;background:var(--c-bgc);text-decoration:none;transition:background .12s;position:relative}
.toolstore-card:hover{background:var(--c-acc-lime);border-color:var(--c-tx)}
.toolstore-card:hover .toolstore-card-name,.toolstore-card:hover .toolstore-card-desc,.toolstore-card:hover .toolstore-card-stats{color:var(--c-tx)!important}

/* Card Logo */
.toolstore-card-logo{width:48px;height:48px;margin-bottom:8px;flex-shrink:0}
.toolstore-card-logo img{width:48px;height:48px;object-fit:cover;border:1px solid var(--c-brd)}
.toolstore-logo-ph{width:48px;height:48px;background:var(--c-bg2);border:1px solid var(--c-brd);display:flex;align-items:center;justify-content:center;color:var(--c-tx3);font-size:1.2rem}

/* Card Info */
.toolstore-card-info{min-width:0;width:100%}
.toolstore-card-name{font:700 .82rem/1.2 var(--font-body);color:var(--c-tx);margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.toolstore-card-desc{font:400 .7rem/1.4 var(--font-body);color:var(--c-tx3);margin:0 0 6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.toolstore-card-stats{display:flex;justify-content:center;gap:8px;font:500 .68rem/1 var(--font-body);color:var(--c-tx3)}

/* Card Badge — magazine flat */
.toolstore-card-badge{position:absolute;top:0;right:0;font:700 .58rem/1 var(--font-body);padding:3px 7px;letter-spacing:.5px;text-transform:uppercase;border-left:1px solid var(--c-brd);border-bottom:1px solid var(--c-brd)}
.badge-free{background:var(--c-cat-code);color:#fff}
.badge-freemium{background:var(--c-pri);color:#fff}
.badge-paid{background:var(--c-acc-orange);color:#fff}

/* Empty */
.toolstore-empty{text-align:center;padding:48px 20px;color:var(--c-tx3)}
.toolstore-empty svg{margin-bottom:12px;opacity:.4}
.toolstore-empty h3{font-size:1rem;margin:0 0 4px;color:var(--c-tx2)}
.toolstore-empty p{font-size:.82rem;margin:0}

/* Responsive */
@media(max-width:1200px){
  .toolstore-grid{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:992px){
  .toolstore-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:768px){
  .toolstore-layout{flex-direction:column}
  .toolstore-sidebar{width:100%;flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid var(--c-brd);padding:0 0 10px;margin-bottom:16px;position:static;max-height:none;gap:4px}
  .toolstore-main{padding-left:0}
  .toolstore-grid{grid-template-columns:repeat(2,1fr)}
  .toolstore-section-header{flex-direction:column;align-items:flex-start}
  .toolstore-view-tabs{margin-left:0}
}

/* ===================== SEARCH PAGE ===================== */
.search-header{text-align:center;padding:32px 0 24px}
.search-header .page-title{font-size:1.5rem;font-weight:800;color:var(--c-tx);margin:0 0 6px}
.search-count{font-size:.85rem;color:var(--c-tx3);margin:0}
.search-results-list{display:flex;flex-direction:column;gap:12px;margin-bottom:32px}
.search-result-item{display:flex;gap:16px;padding:16px;border:1px solid var(--c-brd);border-radius:12px;background:var(--c-bgc);transition:all .2s}
.search-result-item:hover{border-color:var(--c-pri);box-shadow:0 2px 12px rgba(0,0,0,.05)}
.result-thumb{flex-shrink:0;width:100px;height:72px;border-radius:8px;overflow:hidden}
.result-thumb img{width:100%;height:100%;object-fit:cover}
.result-content{flex:1;min-width:0}
.result-type{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.65rem;font-weight:700;text-transform:uppercase;background:rgba(99,102,241,.1);color:var(--c-pri);margin-bottom:6px}
.result-title{font-size:.95rem;font-weight:700;margin:0 0 6px;line-height:1.3}
.result-title a{color:var(--c-tx);text-decoration:none}
.result-title a:hover{color:var(--c-pri)}
.result-excerpt{font-size:.8rem;color:var(--c-tx3);margin:0 0 6px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.result-meta{font-size:.72rem;color:var(--c-tx3)}
.no-results{text-align:center;padding:48px 20px}
.no-results h2{font-size:1.2rem;font-weight:700;margin:0 0 8px;color:var(--c-tx)}
.no-results p{font-size:.85rem;color:var(--c-tx3);margin:0 0 20px}
@media(max-width:600px){
  .search-result-item{flex-direction:column}
  .result-thumb{width:100%;height:160px}
}

/* ===================== 404 PAGE ===================== */
.error-404-page{display:flex;align-items:center;justify-content:center;min-height:50vh;padding:48px 20px;text-align:center}
.error-content{max-width:420px}
.error-visual{position:relative;margin-bottom:24px;display:inline-block}
.error-svg{opacity:.15;color:var(--c-pri)}
.error-code{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:3.5rem;font-weight:900;letter-spacing:-2px;background:linear-gradient(135deg,var(--c-pri),#F97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.error-title{font-size:1.5rem;font-weight:800;color:var(--c-tx);margin:0 0 8px}
.error-description{font-size:.88rem;color:var(--c-tx3);margin:0 0 24px;line-height:1.6}
.error-actions .btn{display:inline-flex;align-items:center;gap:6px;padding:10px 24px;border-radius:10px;font-size:.85rem;font-weight:600;text-decoration:none}
.error-actions .btn-primary{background:var(--c-pri);color:#fff}
.error-actions .btn-primary:hover{opacity:.9}
.error-search{margin-top:24px}
.error-search p{font-size:.78rem;color:var(--c-tx3);margin:0 0 10px}
.error-search .search-form{display:flex;gap:8px;justify-content:center}
.error-search .search-form input[type="search"],.error-search .search-form .search-field{border:1px solid var(--c-brd);border-radius:8px;padding:8px 14px;font-size:.82rem;background:var(--c-bg2);color:var(--c-tx);outline:none;flex:1;max-width:240px}
.error-search .search-form button,.error-search .search-form .search-submit{padding:8px 16px;background:var(--c-pri);color:#fff;border:none;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer}

/* ===================== PAPER UPVOTE BUTTON ===================== */
.paper-upvote{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border:1px solid var(--c-brd);border-radius:8px;background:var(--c-bgc);color:var(--c-tx2);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s}
.paper-upvote:hover{border-color:var(--c-pri);color:var(--c-pri);background:rgba(99,102,241,.06)}
.paper-upvote.is-voted{border-color:#059669;color:#059669;background:rgba(5,150,105,.06)}
.paper-upvote.is-voted svg{stroke:#059669}
.upvote-count{font-weight:800}
.pd-action-bar{display:flex;align-items:center;gap:8px;padding:16px 0;border-top:1px solid var(--c-brd);border-bottom:1px solid var(--c-brd);margin:24px 0;flex-wrap:wrap}
.pd-action-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border:1px solid var(--c-brd);border-radius:6px;background:var(--c-bgc);color:var(--c-tx2);font-size:.78rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all .15s}
.pd-action-btn:hover{border-color:var(--c-pri);color:var(--c-pri)}
.pd-action-pdf{border-color:#DC2626;color:#DC2626}
.pd-action-pdf:hover{background:rgba(220,38,38,.06)}
.pd-action-spacer{flex:1}

/* ===================== AI MODEL PAGE ===================== */

/* Hero */
.model-hero{display:flex;gap:24px;align-items:flex-start;margin-bottom:28px;padding:28px;border:1px solid var(--c-brd);border-radius:16px;background:var(--c-bgc)}
.model-hero-left{flex-shrink:0}
.model-hero-logo,.model-hero-logo img{width:80px;height:80px;border-radius:16px;object-fit:cover;border:1px solid var(--c-brd)}
.model-hero-logo-ph{width:80px;height:80px;border-radius:16px;background:var(--c-bg2);display:flex;align-items:center;justify-content:center;color:var(--c-tx3)}
.model-hero-right{flex:1;min-width:0}
.model-hero-badges{display:flex;gap:6px;margin-bottom:8px;flex-wrap:wrap}
.model-status-badge,.model-badge-os,.model-badge-api{display:inline-flex;padding:3px 10px;border-radius:6px;font-size:.68rem;font-weight:700}
.model-badge-os{background:#ECFDF5;color:#059669}
.model-badge-api{background:#EFF6FF;color:#2563EB}
.model-hero-title{font-size:1.5rem;font-weight:900;color:var(--c-tx);margin:0 0 6px;line-height:1.2}
.model-hero-meta{display:flex;gap:14px;flex-wrap:wrap;font-size:.78rem;color:var(--c-tx3);margin-bottom:10px}
.model-hero-desc{font-size:.85rem;color:var(--c-tx2);line-height:1.6;margin:0 0 14px}
.model-hero-actions{display:flex;gap:8px;flex-wrap:wrap}
.model-btn-primary{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;background:var(--c-pri);color:#fff;border-radius:8px;font-size:.82rem;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:opacity .2s}
.model-btn-primary:hover{opacity:.9}
.model-btn-outline{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--c-brd);border-radius:8px;background:var(--c-bgc);color:var(--c-tx2);font-size:.82rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all .2s}
.model-btn-outline:hover{border-color:var(--c-pri);color:var(--c-pri)}

/* Specs Grid */
.model-specs{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:28px}
.model-spec-card{padding:14px;border:1px solid var(--c-brd);border-radius:10px;background:var(--c-bgc);text-align:center}
.model-spec-icon{display:block;font-size:1.2rem;margin-bottom:4px}
.model-spec-label{display:block;font-size:.68rem;color:var(--c-tx3);margin-bottom:2px}
.model-spec-value{display:block;font-size:.88rem;font-weight:800;color:var(--c-tx)}

/* Layout */
.model-layout{display:flex;gap:28px;align-items:flex-start}
.model-main{flex:1;min-width:0}
.model-sidebar{width:280px;flex-shrink:0;display:flex;flex-direction:column;gap:16px;position:sticky;top:70px}

/* Sections */
.model-section{margin-bottom:24px;padding:20px;border:1px solid var(--c-brd);border-radius:12px;background:var(--c-bgc)}
.model-section-title{font-size:1rem;font-weight:800;color:var(--c-tx);margin:0 0 14px}

/* Rating Gauge */
.model-gauge-wrap{display:flex;align-items:center;gap:12px}
.model-gauge{flex:1;height:12px;background:var(--c-bg2);border-radius:6px;overflow:hidden}
.model-gauge-fill{height:100%;background:linear-gradient(90deg,#6366F1,#10B981);border-radius:6px;transition:width .5s}
.model-gauge-text{font-size:.88rem;font-weight:800;color:var(--c-tx)}

/* Tags */
.model-tags{display:flex;gap:6px;flex-wrap:wrap}
.model-tag{padding:4px 12px;border:1px solid var(--c-brd);border-radius:6px;font-size:.72rem;font-weight:600;color:var(--c-tx2);text-decoration:none;transition:all .15s}
.model-tag:hover{border-color:var(--c-pri);color:var(--c-pri)}

/* Pros/Cons */
.model-proscons{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.model-pros h3,.model-cons h3{font-size:.85rem;font-weight:700;margin:0 0 8px}
.model-pros ul,.model-cons ul{list-style:none;padding:0;margin:0}
.model-pros li,.model-cons li{padding:4px 0;font-size:.8rem;color:var(--c-tx2);line-height:1.5}
.model-pros{padding:12px;background:#ECFDF5;border-radius:8px}
.model-cons{padding:12px;background:#FEF2F2;border-radius:8px}

/* Sidebar */
.model-sidebar-card{padding:16px;border:1px solid var(--c-brd);border-radius:12px;background:var(--c-bgc)}
.model-sidebar-title{font-size:.85rem;font-weight:800;color:var(--c-tx);margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--c-brd)}
.model-info-row{display:flex;justify-content:space-between;padding:6px 0;font-size:.78rem;border-bottom:1px solid rgba(0,0,0,.04)}
.info-label{color:var(--c-tx3);font-weight:500}
.info-value{color:var(--c-tx);font-weight:700}
.model-pricing-table{display:flex;flex-direction:column;gap:8px}
.model-price-row{display:flex;justify-content:space-between;padding:8px 12px;background:var(--c-bg2);border-radius:6px;font-size:.78rem}
.price-label{font-weight:600;color:var(--c-tx2)}
.price-value{font-weight:800;color:var(--c-tx)}
.model-family-list{display:flex;flex-direction:column;gap:4px}
.model-family-item{display:block;padding:6px 10px;border-radius:6px;font-size:.78rem;font-weight:600;color:var(--c-tx2);text-decoration:none;transition:background .15s}
.model-family-item:hover{background:var(--c-bg2);color:var(--c-pri)}
.model-related-list{display:flex;flex-direction:column;gap:8px}
.model-related-item{display:flex;gap:10px;align-items:center;text-decoration:none;padding:6px;border-radius:8px;transition:background .15s}
.model-related-item:hover{background:var(--c-bg2)}
.model-related-logo,.model-related-logo img{width:36px;height:36px;border-radius:8px;object-fit:cover;flex-shrink:0}
.model-related-logo-ph{width:36px;height:36px;border-radius:8px;background:var(--c-bg2);display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
.model-related-info{min-width:0}
.model-related-name{display:block;font-size:.78rem;font-weight:700;color:var(--c-tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.model-related-dev{display:block;font-size:.68rem;color:var(--c-tx3)}

/* Model Content */
.model-content{font-size:.88rem;line-height:1.8;color:var(--c-tx2)}
.model-usecases,.model-limitations{font-size:.85rem;line-height:1.7;color:var(--c-tx2)}

/* Responsive */
@media(max-width:992px){
  .model-hero{flex-direction:column;align-items:center;text-align:center}
  .model-hero-meta,.model-hero-actions{justify-content:center}
  .model-specs{grid-template-columns:repeat(3,1fr)}
  .model-layout{flex-direction:column}
  .model-sidebar{width:100%;position:static;flex-direction:row;flex-wrap:wrap}
  .model-sidebar-card{flex:1;min-width:250px}
}
@media(max-width:600px){
  .model-specs{grid-template-columns:repeat(2,1fr)}
  .model-proscons{grid-template-columns:1fr}
}

/* ===================== MODEL ARCHIVE CARDS ===================== */
.model-archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.model-arc-card{display:flex;flex-direction:column;padding:16px;border:1px solid var(--c-brd);border-radius:12px;background:var(--c-bgc);text-decoration:none;transition:all .2s;position:relative}
.model-arc-card:hover{border-color:var(--c-pri);transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.06)}
.model-arc-top{display:flex;gap:10px;align-items:center;margin-bottom:8px}
.model-arc-logo{flex-shrink:0}
.model-arc-logo-img,.model-arc-logo img{width:42px;height:42px;border-radius:10px;object-fit:cover}
.model-arc-logo-ph{width:42px;height:42px;border-radius:10px;background:var(--c-bg2);display:flex;align-items:center;justify-content:center;font-size:1.1rem}
.model-arc-info{flex:1;min-width:0}
.model-arc-name{font-size:.85rem;font-weight:800;color:var(--c-tx);margin:0;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.model-arc-dev{font-size:.7rem;color:var(--c-tx3)}
.model-arc-badge{position:absolute;top:10px;right:10px;padding:2px 6px;border-radius:4px;font-size:.6rem;font-weight:700;text-transform:uppercase}
.model-arc-badge.badge-opensource{background:#ECFDF5;color:#059669}
.model-arc-desc{font-size:.72rem;color:var(--c-tx3);line-height:1.4;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.model-arc-specs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.arc-spec{font-size:.65rem;font-weight:600;color:var(--c-tx2);padding:2px 6px;background:var(--c-bg2);border-radius:4px;white-space:nowrap}
.model-arc-gauge{height:6px;background:var(--c-bg2);border-radius:3px;overflow:hidden;position:relative;margin-top:auto}
.arc-gauge-fill{height:100%;background:linear-gradient(90deg,#6366F1,#10B981);border-radius:3px}
.arc-gauge-label{position:absolute;right:0;top:-14px;font-size:.6rem;font-weight:700;color:var(--c-tx3)}

@media(max-width:992px){.model-archive-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.model-archive-grid{grid-template-columns:1fr}}

/* Benchmark Bars */
.model-bench-list{display:flex;flex-direction:column;gap:10px}
.model-bench-row{display:flex;align-items:center;gap:10px}
.bench-name{width:140px;font-size:.78rem;font-weight:600;color:var(--c-tx2);flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bench-bar{flex:1;height:8px;background:var(--c-bg2);border-radius:4px;overflow:hidden}
.bench-bar-fill{height:100%;background:linear-gradient(90deg,#6366F1,#10B981);border-radius:4px;transition:width .4s}
.bench-score{width:60px;font-size:.72rem;font-weight:800;color:var(--c-tx);text-align:right;flex-shrink:0}

/* ===================== AI MODEL ARCHIVE — AIBASE CLONE ===================== */

/* Hero */
.ab-hero{text-align:center;padding:48px 20px 36px}
.ab-hero-title{font-size:1.8rem;font-weight:900;color:var(--c-tx);margin:0 0 8px;line-height:1.2}
.ab-hero-highlight{background:linear-gradient(135deg,#3B82F6,#6366F1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.ab-hero-sub{font-size:.88rem;color:var(--c-tx3);margin:0 0 24px}
.ab-search-box{display:flex;max-width:560px;margin:0 auto 20px;border:1px solid var(--c-brd);border-radius:10px;overflow:hidden;background:var(--c-bgc)}
.ab-search-box input[type="search"]{flex:1;padding:12px 16px;border:none;background:none;font-size:.88rem;color:var(--c-tx);outline:none}
.ab-search-box button{padding:10px 18px;background:none;border:none;cursor:pointer;color:var(--c-tx3)}
.ab-search-box:focus-within{border-color:var(--c-pri);box-shadow:0 0 0 3px rgba(99,102,241,.1)}
.ab-hero-links{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.ab-hero-link{padding:6px 16px;border:1px solid var(--c-brd);border-radius:20px;font-size:.78rem;font-weight:600;color:var(--c-tx2);text-decoration:none;transition:all .15s}
.ab-hero-link:hover{border-color:var(--c-pri);color:var(--c-pri)}
.ab-hero-link-blue{border-color:#3B82F6;color:#3B82F6;background:rgba(59,130,246,.06)}

/* Sections — Magazine editorial */
.ab-section{margin-bottom:56px;border-top:2px solid var(--c-tx);padding-top:24px}
.ab-section-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--c-brd)}
.ab-section-title{font-size:clamp(22px,3vw,32px);font-weight:900;letter-spacing:-1px;font-family:var(--font-display);color:var(--c-tx);margin:0 0 6px;text-transform:uppercase;line-height:1}
.ab-section-sub{font-size:.78rem;color:var(--c-tx3);margin:0}
.ab-view-more{font:700 11px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;color:var(--c-tx);text-decoration:none;white-space:nowrap;padding:8px 14px;border:1px solid var(--c-brd);flex-shrink:0;transition:all .15s}
.ab-view-more:hover{background:var(--c-tx);color:var(--c-bgc)}

/* Category Tabs — Magazine pill-less */
.ab-cat-tabs{display:flex;gap:0;margin-bottom:20px;flex-wrap:wrap;border-bottom:1px solid var(--c-brd)}
.ab-cat-tab{padding:8px 16px;border:1px solid var(--c-brd);margin:0 -1px -1px 0;font:700 11px/1 var(--font-body);letter-spacing:1px;text-transform:uppercase;color:var(--c-tx2);cursor:pointer;transition:all .15s;background:var(--c-bgc)}
.ab-cat-tab:hover,.ab-cat-tab.active{background:var(--c-tx);color:var(--c-bgc);border-color:var(--c-tx)}

/* Grid — 3 columns, borderless gap */
.ab-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}

/* Card — Magazine sharp */
.ab-model-card{display:flex;flex-direction:column;padding:18px;border:1px solid var(--c-brd);margin:-1px 0 0 -1px;background:var(--c-bgc);text-decoration:none;transition:background .12s}
.ab-model-card:hover{background:var(--c-acc-lime);border-color:var(--c-tx)}
.ab-model-card:hover .ab-card-name,.ab-model-card:hover .ab-card-desc,
.ab-model-card:hover .ab-dev-name,.ab-model-card:hover .ab-stat,
.ab-model-card:hover .ab-card-date{color:var(--c-tx)!important}
.ab-card-top{display:flex;gap:12px;align-items:flex-start;margin-bottom:10px}
.ab-card-logo{flex-shrink:0}
.ab-logo-img,.ab-card-logo img{width:44px;height:44px;object-fit:cover;border:1px solid var(--c-brd)}
.ab-logo-ph{width:44px;height:44px;background:var(--c-bg2);border:1px solid var(--c-brd);display:flex;align-items:center;justify-content:center;font-size:1.2rem}
.ab-card-info{flex:1;min-width:0}
.ab-card-name{font:800 15px/1.2 var(--font-display);letter-spacing:-.3px;color:var(--c-tx);margin:0 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ab-card-tags{display:flex;gap:4px;flex-wrap:wrap}
.ab-tag{padding:2px 8px;font:600 .6rem/1 var(--font-body);letter-spacing:.5px;text-transform:uppercase;background:var(--c-bg2);color:var(--c-tx2);border:1px solid var(--c-brd)}
.ab-tag-blue{background:var(--c-pri);color:#fff;border-color:var(--c-pri)}
.ab-tag-green{background:var(--c-cat-code);color:#fff;border-color:var(--c-cat-code)}
.ab-card-desc{font:400 .76rem/1.5 var(--font-body);color:var(--c-tx3);margin:0 0 12px;flex:1;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ab-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}
.ab-card-dev{display:flex;align-items:center;gap:6px}
.ab-dev-avatar,.ab-card-dev img{width:18px;height:18px;object-fit:cover;border:1px solid var(--c-brd)}
.ab-dev-avatar-ph{width:18px;height:18px;background:var(--c-pri);color:#fff;display:flex;align-items:center;justify-content:center;font:700 .6rem/1 var(--font-body)}
.ab-dev-name{font-size:.7rem;color:var(--c-tx3)}
.ab-card-stats{display:flex;gap:10px}
.ab-stat{font-size:.68rem;color:var(--c-tx3)}
.ab-card-date{display:block;margin-top:8px;padding-top:8px;border-top:1px solid var(--c-brd);font-size:.65rem;color:var(--c-tx3);text-align:right}

/* Stats Bar — Magazine editorial grid */
.ab-stats-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:0;border:1px solid var(--c-brd);margin-top:40px}
.ab-stat-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 16px;border-right:1px solid var(--c-brd);background:var(--c-bgc)}
.ab-stat-item:last-child{border-right:none}
.ab-stat-icon{margin-bottom:8px;color:var(--c-tx3)}
.ab-stat-num{font:900 clamp(22px,2.5vw,32px)/1 var(--font-display);letter-spacing:-1px;color:var(--c-tx);margin-bottom:4px}
.ab-stat-label{font:700 10px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;color:var(--c-tx3)}

/* Responsive */
@media(max-width:992px){
  .ab-grid{grid-template-columns:repeat(2,1fr)}
  .ab-stats-bar{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
  .ab-grid{grid-template-columns:1fr}
  .ab-stats-bar{grid-template-columns:repeat(2,1fr)}
  .ab-section-header{flex-direction:column}
}

/* ===================== AI MODEL DETAIL — AIBASE CLONE ===================== */

/* Wrapper */
.abm-wrapper{max-width:100%}

/* Header Card */
.abm-header-card{padding:24px 28px;border:1px solid var(--c-brd);border-radius:12px;background:var(--c-bgc);margin-bottom:0}
.abm-header-top{display:flex;align-items:center;gap:14px;margin-bottom:8px}
.abm-header-logo{flex-shrink:0}
.abm-logo-img,.abm-header-logo img{width:44px;height:44px;border-radius:10px;object-fit:cover}
.abm-logo-ph{width:44px;height:44px;border-radius:10px;background:var(--c-bg2);display:flex;align-items:center;justify-content:center;font-size:1.2rem}
.abm-title{flex:1;font-size:1.15rem;font-weight:800;color:var(--c-tx);margin:0;line-height:1.3}
.abm-header-actions{flex-shrink:0}
.abm-btn-like{background:none;border:1px solid var(--c-brd);border-radius:8px;padding:6px 10px;cursor:pointer;font-size:1rem;transition:all .15s}
.abm-btn-like:hover,.abm-btn-like.is-liked{border-color:#EF4444}
.abm-developer{font-size:.78rem;color:var(--c-tx3);margin:0 0 10px}
.abm-desc{font-size:.82rem;color:var(--c-tx2);line-height:1.65;margin:0 0 14px}

/* Tags Row */
.abm-tags-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.abm-tag{padding:3px 10px;border-radius:4px;font-size:.65rem;font-weight:600;text-decoration:none;transition:opacity .15s}
.abm-tag-blue{background:rgba(59,130,246,.1);color:#3B82F6}
.abm-tag-purple{background:rgba(139,92,246,.1);color:#8B5CF6}
.abm-tag-green{background:rgba(5,150,105,.1);color:#059669}
.abm-tag-orange{background:rgba(217,119,6,.1);color:#D97706}
.abm-tag:not([class*="tag-"]){background:rgba(0,0,0,.05);color:var(--c-tx2)}
.abm-tag:hover{opacity:.8}

/* Stats Row */
.abm-stats-row{display:flex;gap:18px;flex-wrap:wrap;font-size:.76rem;color:var(--c-tx3)}

/* Tabs */
.abm-tabs{display:flex;gap:0;border-bottom:1px solid var(--c-brd);margin-bottom:0}
.abm-tab{padding:12px 20px;font-size:.82rem;font-weight:600;color:var(--c-tx3);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s}
.abm-tab:hover{color:var(--c-tx)}
.abm-tab.active{color:var(--c-tx);border-bottom-color:var(--c-tx)}

/* Panels */
.abm-panel{display:none}
.abm-panel.active{display:block}

/* Layout */
.abm-layout{display:flex;gap:24px;align-items:flex-start;padding-top:20px}
.abm-main{flex:1;min-width:0}
.abm-sidebar{width:300px;flex-shrink:0;display:flex;flex-direction:column;gap:12px}

/* Content Sections */
.abm-content-section{padding:24px;border:1px solid var(--c-brd);border-radius:10px;background:var(--c-bgc);margin-bottom:16px}
.abm-section-title{font-size:.95rem;font-weight:800;color:var(--c-tx);margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid var(--c-brd)}
.abm-content-body{font-size:.84rem;line-height:1.75;color:var(--c-tx2)}
.abm-content-body h3,.abm-content-body h4{font-size:.88rem;font-weight:700;color:var(--c-tx);margin:16px 0 6px}
.abm-content-body p{margin:0 0 12px}
.abm-content-body ul,.abm-content-body ol{margin:0 0 12px;padding-left:20px}
.abm-content-body li{margin-bottom:4px}

/* Benchmark Bars (reuse) */
.abm-bench-list{display:flex;flex-direction:column;gap:10px}
.abm-bench-row{display:flex;align-items:center;gap:10px}
.abm-bench-name{width:160px;font-size:.78rem;font-weight:600;color:var(--c-tx2);flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.abm-bench-bar{flex:1;height:8px;background:var(--c-bg2);border-radius:4px;overflow:hidden}
.abm-bench-fill{height:100%;background:linear-gradient(90deg,#3B82F6,#10B981);border-radius:4px;transition:width .4s}
.abm-bench-score{width:60px;font-size:.72rem;font-weight:800;color:var(--c-tx);text-align:right;flex-shrink:0}

/* Detail Table */
.abm-detail-table{width:100%;border-collapse:collapse}
.abm-detail-table td{padding:10px 0;font-size:.8rem;border-bottom:1px solid rgba(0,0,0,.04)}
.abm-detail-table .dt-label{color:var(--c-tx3);font-weight:500;width:160px}

/* Links Grid */
.abm-links-grid{display:flex;gap:8px;flex-wrap:wrap}
.abm-link-item{padding:8px 16px;border:1px solid var(--c-brd);border-radius:8px;font-size:.78rem;font-weight:600;color:var(--c-tx2);text-decoration:none;transition:all .15s}
.abm-link-item:hover{border-color:var(--c-pri);color:var(--c-pri)}

/* Note Box */
.abm-note-box{background:rgba(245,158,11,.04);border-color:rgba(245,158,11,.2)}
.abm-note-title{font-size:.85rem;font-weight:700;color:#D97706;margin:0 0 8px}

/* Pros/Cons */
.abm-proscons{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.abm-pros{padding:14px;background:#ECFDF5;border-radius:8px}
.abm-cons{padding:14px;background:#FEF2F2;border-radius:8px}
.abm-pros h3,.abm-cons h3{font-size:.82rem;font-weight:700;margin:0 0 8px}
.abm-pros ul,.abm-cons ul{list-style:none;padding:0;margin:0}
.abm-pros li,.abm-cons li{padding:3px 0;font-size:.78rem;color:var(--c-tx2)}

/* Sidebar Cards */
.abm-sidebar-card{display:block;padding:16px;border:1px solid var(--c-brd);border-radius:10px;background:var(--c-bgc);text-decoration:none;transition:all .2s;position:relative}
.abm-sidebar-card:hover{border-color:var(--c-pri);box-shadow:0 2px 12px rgba(0,0,0,.05)}
.abm-license-badge{position:absolute;top:10px;right:10px;padding:2px 6px;border-radius:3px;font-size:.58rem;font-weight:700;background:rgba(59,130,246,.08);color:#3B82F6}
.abm-sc-name{font-size:.82rem;font-weight:800;color:var(--c-tx);margin:0 0 4px;line-height:1.2;padding-right:50px}
.abm-sc-desc{font-size:.7rem;color:var(--c-tx3);line-height:1.4;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.abm-sc-tags{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:10px}
.abm-sc-footer{display:flex;align-items:center;justify-content:space-between}
.abm-sc-dev{display:flex;align-items:center;gap:6px}
.abm-sc-dev-avatar{width:18px;height:18px;border-radius:50%;background:var(--c-pri);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.58rem;font-weight:700}
.abm-sc-dev-name{font-size:.68rem;color:var(--c-tx3)}
.abm-sc-stats{display:flex;gap:8px;font-size:.66rem;color:var(--c-tx3)}
.abm-empty{font-size:.82rem;color:var(--c-tx3);text-align:center;padding:20px}

/* Responsive */
@media(max-width:992px){
  .abm-layout{flex-direction:column}
  .abm-sidebar{width:100%}
  .abm-proscons{grid-template-columns:1fr}
}
@media(max-width:600px){
  .abm-header-card{padding:16px}
  .abm-title{font-size:1rem}
  .abm-tabs{overflow-x:auto}
}

/* ═══════════════════════════════════════════════════
   UTILITY PAGES — Magazine (compare/calc/rank/pc/srv)
   ═══════════════════════════════════════════════════ */

/* Shared util-hero (legacy) */
.util-hero{text-align:center;padding:32px 20px 28px;border-bottom:1px solid var(--paper-line)}
.util-hero-title{font:900 28px/1.1 var(--font-display);letter-spacing:-1px;color:var(--text-ink);margin:0 0 6px;text-transform:uppercase}
.util-hero-sub{font:400 14px/1.5 var(--font-body);color:var(--text-mute);margin:0}

/* ── MODEL COMPARE ─────────────────────── */
.compare-selectors{display:flex;gap:16px;align-items:end;justify-content:center;margin-bottom:32px;flex-wrap:wrap}
.compare-select-wrap{flex:1;max-width:340px;display:flex;flex-direction:column;gap:6px}
.compare-select-wrap label{font:800 11px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;color:var(--text-mute)}
.compare-select{width:100%;padding:12px 14px;border:1px solid var(--paper-line);background:var(--paper);font:600 13px/1 var(--font-body);color:var(--text-ink);cursor:pointer;outline:none;transition:border-color .12s;border-radius:0!important}
.compare-select:focus{border-color:var(--ink)}
.compare-vs{width:44px;height:44px;background:var(--ink);color:var(--c-acc-lime);display:grid;place-items:center;font:900 14px/1 var(--font-display);letter-spacing:.5px;flex-shrink:0;border-radius:0!important}
.compare-result{margin-bottom:32px}
.compare-table{width:100%;border-collapse:collapse;border:1px solid var(--ink);background:var(--paper);border-radius:0!important}
.compare-table thead{background:var(--ink)}
.compare-table th{padding:14px 16px;color:#fff;font:800 11px/1.2 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;text-align:left;border-right:1px solid #1a1a1a}
.compare-table th:last-child{border-right:none}
.compare-table td{padding:12px 16px;font:600 13px/1.4 var(--font-mono);border-bottom:1px solid var(--paper-line);border-right:1px solid var(--paper-line);color:var(--text-ink)}
.compare-table td:last-child{border-right:none}
.compare-table tr:nth-child(odd) td{background:var(--paper-soft)}
.compare-table tr:last-child td{border-bottom:none}
.compare-label-col{width:180px}
.compare-label{font-weight:800;color:var(--text-ink);text-transform:uppercase;font-size:11px;letter-spacing:1px;font-family:var(--font-body)}
.compare-val{color:var(--text-ink)}
.compare-winner{color:var(--ink)!important;font-weight:900;background:var(--c-acc-lime)!important}
.ct-logo{width:24px;height:24px;vertical-align:middle;margin-right:6px;border:1px solid var(--paper-line)}
.compare-model-col a{color:var(--text-ink);text-decoration:none;font:800 14px/1.2 var(--font-display);letter-spacing:-.3px}
.compare-model-col a:hover{background:var(--c-acc-lime);box-shadow:3px 0 0 var(--c-acc-lime),-3px 0 0 var(--c-acc-lime)}
.compare-empty{text-align:center;padding:60px 20px;color:var(--text-mute);border:1px solid var(--paper-line)}
.compare-empty-icon{font-size:3rem;margin-bottom:12px;color:var(--text-mute)}

/* ── MODEL CALCULATOR ─────────────────────── */
.calc-card{padding:28px;border:1px solid var(--paper-line);background:var(--paper);margin-bottom:24px;border-radius:0!important}
.calc-inputs{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.calc-input-group{display:flex;flex-direction:column;gap:6px}
.calc-input-group label{font:800 11px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;color:var(--text-mute)}
.calc-field{width:100%;padding:13px 14px;border:1px solid var(--paper-line);font:700 18px/1 var(--font-mono);color:var(--text-ink);background:var(--paper);outline:none;transition:border-color .12s;border-radius:0!important}
.calc-field:focus{border-color:var(--ink)}
.calc-presets{display:flex;gap:0;margin-top:8px;flex-wrap:wrap;border:1px solid var(--paper-line);max-width:fit-content}
.calc-preset{padding:6px 12px;background:var(--paper);font:700 10px/1 var(--font-mono);color:var(--text-ink);cursor:pointer;border:none;border-right:1px solid var(--paper-line);transition:background .12s,color .12s;border-radius:0!important}
.calc-preset:last-child{border-right:none}
.calc-preset:hover,.calc-preset.active{background:var(--ink);color:var(--c-acc-lime)}
.calc-results{margin-bottom:32px}
.calc-results-title{font:900 18px/1.2 var(--font-display);letter-spacing:-.3px;text-transform:uppercase;color:var(--text-ink);margin:0 0 14px;padding-bottom:10px;border-bottom:2px solid var(--ink)}
.calc-table-wrap{overflow-x:auto;border:1px solid var(--ink)}
.calc-table{width:100%;border-collapse:collapse;background:var(--paper);border-radius:0!important}
.calc-table thead{background:var(--ink)}
.calc-table th{padding:12px 14px;font:800 10px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;color:#a0a0a0;text-align:left;border-right:1px solid #1a1a1a}
.calc-table th:last-child{border-right:none}
.calc-table td{padding:11px 14px;font:600 13px/1.4 var(--font-mono);border-bottom:1px solid var(--paper-line);border-right:1px solid var(--paper-line);color:var(--text-ink)}
.calc-table td:last-child{border-right:none}
.calc-table tr:nth-child(odd) td{background:var(--paper-soft)}
.calc-table tr:last-child td{border-bottom:none}
.calc-model-cell{display:flex;align-items:center;gap:10px}
.calc-model-logo{width:28px;height:28px;object-fit:cover;border:1px solid var(--paper-line);border-radius:0!important}
.calc-model-ph{width:28px;height:28px;background:var(--paper-soft);display:grid;place-items:center;font-size:14px;border:1px solid var(--paper-line);border-radius:0!important}
.calc-model-name{font:800 13px/1.2 var(--font-display);color:var(--text-ink);text-decoration:none;letter-spacing:-.2px}
.calc-model-name:hover{color:var(--c-pri)}
.calc-badge-cheap{padding:3px 7px;font:800 9px/1 var(--font-body);letter-spacing:1px;text-transform:uppercase;background:var(--c-acc-lime);color:var(--ink);margin-left:6px;border-radius:0!important}
.calc-total{font-weight:900;font-family:var(--font-mono)}
.calc-cheapest td{background:rgba(212,255,0,.18)!important}
.calc-cheapest .calc-total{color:var(--ink);font-weight:900}
.calc-dev{font:600 11px/1 var(--font-mono);color:var(--text-mute)}

/* ── AI RANKING ─────────────────────── */
.rank-tabs{display:flex;gap:0;border-bottom:2px solid var(--ink);margin-bottom:24px}
.rank-tab{padding:14px 22px;font:800 11.5px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;color:var(--text-mute);background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;transition:color .12s,border-color .12s;margin-bottom:-2px;display:inline-flex;align-items:center;gap:6px;border-radius:0!important}
.rank-tab .icon{stroke:currentColor}
.rank-tab:hover{color:var(--text-ink)}
.rank-tab.active{color:var(--ink);border-bottom-color:var(--c-acc-lime)}
.rank-panel{display:none}
.rank-panel.active{display:block}
.rank-filters{display:flex;gap:0;margin-bottom:20px;flex-wrap:wrap;border:1px solid var(--paper-line);max-width:fit-content}
.rank-filter{padding:9px 16px;background:var(--paper);font:700 11px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;color:var(--text-ink);cursor:pointer;border:none;border-right:1px solid var(--paper-line);transition:background .12s,color .12s;border-radius:0!important}
.rank-filter:last-child{border-right:none}
.rank-filter:hover{background:var(--paper-soft)}
.rank-filter.active{background:var(--ink);color:#fff}
.rank-sort{display:none}
.rank-sort.active{display:block}
.rank-list{display:flex;flex-direction:column;border:1px solid var(--paper-line)}
.rank-item{display:flex;align-items:center;gap:14px;padding:14px 18px;background:var(--paper);text-decoration:none;border-bottom:1px solid var(--paper-line);transition:background .12s,color .12s;border-radius:0!important}
.rank-item:last-child{border-bottom:none}
.rank-item:hover{background:var(--c-acc-lime)}
.rank-item:hover .rank-name,.rank-item:hover .rank-dev,.rank-item:hover .rank-metric,.rank-item:hover .rank-metric-main{color:var(--ink)}
.rank-top{background:var(--paper-soft)}
.rank-pos{width:36px;height:36px;display:grid;place-items:center;font:900 14px/1 var(--font-display);color:var(--text-mute);background:transparent;border:1px solid var(--paper-line);flex-shrink:0;font-style:italic;border-radius:0!important}
.rank-pos-1{background:var(--c-acc-lime);color:var(--ink);border-color:var(--c-acc-lime);font-weight:900}
.rank-pos-2{background:var(--ink);color:#fff;border-color:var(--ink)}
.rank-pos-3{background:var(--c-acc-orange);color:#fff;border-color:var(--c-acc-orange)}
.rank-item:hover .rank-pos{background:var(--ink);color:var(--c-acc-lime);border-color:var(--ink)}
.rank-item:hover .rank-pos-1{background:var(--ink);color:var(--c-acc-lime)}
.rank-logo{flex-shrink:0}
.rank-logo-img,.rank-logo img{width:40px;height:40px;object-fit:cover;border:1px solid var(--paper-line);border-radius:0!important}
.rank-logo-ph{width:40px;height:40px;background:var(--paper-soft);border:1px solid var(--paper-line);display:grid;place-items:center;font-size:14px;border-radius:0!important}
.rank-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.rank-name{font:800 14px/1.2 var(--font-display);color:var(--text-ink);letter-spacing:-.3px}
.rank-dev{font:600 11px/1.2 var(--font-mono);color:var(--text-mute)}
.rank-metrics{display:flex;gap:18px;flex-shrink:0;align-items:center}
.rank-metric{font:600 11px/1 var(--font-mono);color:var(--text-mute);white-space:nowrap;display:inline-flex;align-items:center;gap:4px}
.rank-metric-main{font:900 14px/1 var(--font-mono);color:var(--text-ink)}

/* Responsive (utility) */
@media(max-width:768px){
  .compare-selectors{flex-direction:column;align-items:stretch}
  .compare-select-wrap{max-width:100%}
  .calc-inputs{grid-template-columns:1fr}
  .rank-metrics{flex-direction:column;gap:4px;align-items:flex-end}
  .rank-tab{padding:11px 14px;font-size:10.5px}
}

/* ── PC CHECK ─────────────────────── */
.pc-card,.srv-card{padding:24px;border:1px solid var(--paper-line);background:var(--paper);margin-bottom:24px;border-radius:0!important}
.pc-row,.srv-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:16px}
.pc-group,.srv-group{display:flex;flex-direction:column;gap:6px}
.pc-group label,.srv-group label{font:800 11px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;color:var(--text-mute)}
.pc-select{width:100%;padding:11px 12px;border:1px solid var(--paper-line);font:600 13px/1 var(--font-body);color:var(--text-ink);background:var(--paper);outline:none;transition:border-color .12s;border-radius:0!important}
.pc-select:focus{border-color:var(--ink)}
.pc-check-btn{display:block;width:100%;padding:14px;border:none;background:var(--ink);color:#fff;font:800 12px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:background .12s,color .12s;border-radius:0!important}
.pc-check-btn:hover{background:var(--c-acc-lime);color:var(--ink)}
.pc-specs-bar{display:flex;gap:0;flex-wrap:wrap;margin-bottom:24px;border:1px solid var(--paper-line);max-width:fit-content}
.pc-spec-chip{padding:6px 12px;font:700 11px/1 var(--font-mono);color:var(--text-ink);background:var(--paper-soft);border-right:1px solid var(--paper-line);border-radius:0!important}
.pc-spec-chip:last-child{border-right:none}
.pc-section{margin-bottom:24px}
.pc-section-title{font:900 18px/1.2 var(--font-display);letter-spacing:-.3px;text-transform:uppercase;color:var(--text-ink);margin:0 0 6px;padding-bottom:8px;border-bottom:2px solid var(--ink)}
.pc-section-sub{font:400 12px/1.5 var(--font-body);color:var(--text-mute);margin:0 0 14px}
.pc-model-list{display:flex;flex-direction:column;border:1px solid var(--paper-line)}
.pc-model-item{display:flex;align-items:center;gap:14px;padding:13px 18px;background:var(--paper);text-decoration:none;border-bottom:1px solid var(--paper-line);transition:background .12s,color .12s;border-radius:0!important}
.pc-model-item:last-child{border-bottom:none}
.pc-model-item:hover{background:var(--c-acc-lime)}
.pc-model-item:hover .pc-mi-name,.pc-model-item:hover .pc-mi-dev,.pc-model-item:hover .pc-mi-vram,.pc-model-item:hover .pc-mi-score{color:var(--ink)}
.pc-status-ok{border-left:4px solid #16a34a}
.pc-status-warn{border-left:4px solid var(--c-acc-orange)}
.pc-status-no{border-left:4px solid #dc2626;opacity:.65}
.pc-mi-logo{flex-shrink:0}
.pc-mi-logo-img,.pc-mi-logo img{width:36px;height:36px;object-fit:cover;border:1px solid var(--paper-line);border-radius:0!important}
.pc-mi-logo-ph{width:36px;height:36px;background:var(--paper-soft);border:1px solid var(--paper-line);display:grid;place-items:center;font-size:14px;border-radius:0!important}
.pc-mi-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.pc-mi-name{font:800 13px/1.2 var(--font-display);letter-spacing:-.2px;color:var(--text-ink)}
.pc-mi-dev{font:600 11px/1 var(--font-mono);color:var(--text-mute)}
.pc-mi-req{text-align:right;flex-shrink:0;display:flex;flex-direction:column;gap:2px}
.pc-mi-vram{font:800 12px/1 var(--font-mono);color:var(--text-ink)}
.pc-mi-score{font:600 10px/1 var(--font-mono);color:var(--text-mute)}
.pc-none{font:600 12px/1 var(--font-body);color:var(--text-mute);text-align:center;padding:18px;border:1px dashed var(--paper-line)}

/* ── SERVER CONFIG ─────────────────────── */
.srv-req-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-bottom:24px;border:1px solid var(--paper-line)}
.srv-req-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px 16px;background:var(--paper);border-right:1px solid var(--paper-line);border-radius:0!important}
.srv-req-card:last-child{border-right:none}
.srv-req-icon{font-size:1.6rem;margin-bottom:6px}
.srv-req-label{font:800 10px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;color:var(--text-mute);margin-bottom:6px}
.srv-req-val{font:900 22px/1 var(--font-display);letter-spacing:-.5px;color:var(--text-ink)}
.srv-gpu-list{display:flex;flex-direction:column;border:1px solid var(--paper-line);margin-bottom:18px}
.srv-gpu-item{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--paper);gap:14px;flex-wrap:wrap;border-bottom:1px solid var(--paper-line);transition:background .12s;border-radius:0!important}
.srv-gpu-item:last-child{border-bottom:none}
.srv-gpu-item:hover{background:var(--paper-soft)}
.gpu-ok{border-left:4px solid #16a34a}
.gpu-multi{border-left:4px solid var(--c-acc-orange)}
.gpu-no{border-left:4px solid #dc2626;opacity:.6}
.srv-gpu-name{font:800 14px/1.2 var(--font-display);letter-spacing:-.3px;color:var(--text-ink);min-width:200px}
.srv-gpu-specs{display:flex;gap:14px;font:600 11px/1 var(--font-mono);color:var(--text-mute)}
.srv-gpu-status{font:800 11px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase}
@media(max-width:768px){
  .srv-req-grid{grid-template-columns:repeat(2,1fr)}
  .srv-req-card:nth-child(2n){border-right:none}
  .srv-req-card:nth-child(-n+2){border-bottom:1px solid var(--paper-line)}
}

/* ── MCP DIRECTORY ─────────────────────── */
.mcp-stats{display:flex;gap:0;justify-content:center;margin-bottom:24px;flex-wrap:wrap;border:1px solid var(--paper-line);max-width:fit-content;margin-left:auto;margin-right:auto}
.mcp-stat-pill{padding:8px 16px;font:700 12px/1 var(--font-mono);color:var(--text-ink);background:var(--paper);border-right:1px solid var(--paper-line);border-radius:0!important}
.mcp-stat-pill:last-child{border-right:none}
.mcp-stat-pill strong{color:var(--ink);font-weight:900}
.mcp-search-wrap{max-width:560px;margin:0 auto 24px}
.mcp-search{width:100%;padding:13px 16px;border:1px solid var(--paper-line);font:600 14px/1 var(--font-body);color:var(--text-ink);background:var(--paper);outline:none;transition:border-color .12s;border-radius:0!important}
.mcp-search:focus{border-color:var(--ink)}
.mcp-cat-tabs{display:flex;gap:0;flex-wrap:wrap;margin-bottom:24px;justify-content:center;border:1px solid var(--paper-line);max-width:fit-content;margin-left:auto;margin-right:auto}
.mcp-cat-tab{padding:9px 16px;background:var(--paper);font:700 11px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;color:var(--text-ink);cursor:pointer;border:none;border-right:1px solid var(--paper-line);transition:background .12s,color .12s;border-radius:0!important}
.mcp-cat-tab:last-child{border-right:none}
.mcp-cat-tab:hover{background:var(--paper-soft)}
.mcp-cat-tab.active{background:var(--ink);color:#fff}
.mcp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-bottom:32px;border:1px solid var(--paper-line)}
.mcp-card{display:flex;flex-direction:column;padding:20px;background:var(--paper);text-decoration:none;border-right:1px solid var(--paper-line);border-bottom:1px solid var(--paper-line);transition:background .12s,color .12s;position:relative;border-radius:0!important}
.mcp-card:nth-child(3n){border-right:none}
.mcp-card:hover{background:var(--c-acc-lime)}
.mcp-card:hover .mcp-card-name,.mcp-card:hover .mcp-card-author,.mcp-card:hover .mcp-card-desc,.mcp-card:hover .mcp-card-cat,.mcp-card:hover .mcp-card-link,.mcp-card:hover .mcp-card-stars{color:var(--ink)}
.mcp-badge-official{position:absolute;top:0;right:0;padding:4px 8px;font:800 9px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;background:var(--c-acc-lime);color:var(--ink);border-radius:0!important}
.mcp-card-top{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.mcp-card-icon{width:40px;height:40px;background:var(--paper-soft);border:1px solid var(--paper-line);display:grid;place-items:center;font-size:18px;flex-shrink:0;border-radius:0!important}
.mcp-card-info{flex:1;min-width:0}
.mcp-card-name{font:800 14px/1.2 var(--font-display);letter-spacing:-.3px;color:var(--text-ink);margin:0}
.mcp-card-author{font:600 11px/1.2 var(--font-mono);color:var(--text-mute)}
.mcp-card-stars{font:700 11px/1 var(--font-mono);color:var(--text-mute);flex-shrink:0}
.mcp-card-desc{font:400 13px/1.5 var(--font-body);color:var(--text-mute);margin:0 0 10px;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.mcp-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:10px;border-top:1px solid var(--paper-line)}
.mcp-card-cat{font:700 10px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;color:var(--text-mute)}
.mcp-card-link{font:800 11px/1 var(--font-body);letter-spacing:1px;text-transform:uppercase;color:var(--c-pri)}
.mcp-info-section{margin-bottom:32px}
.mcp-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--paper-line)}
.mcp-info-card{padding:24px;background:var(--paper);text-align:center;border-right:1px solid var(--paper-line);border-radius:0!important}
.mcp-info-card:last-child{border-right:none}
.mcp-info-icon{font-size:1.8rem;display:block;margin-bottom:10px}
.mcp-info-card h3{font:900 14px/1.2 var(--font-display);letter-spacing:-.3px;text-transform:uppercase;color:var(--text-ink);margin:0 0 8px}
.mcp-info-card p{font:400 13px/1.55 var(--font-body);color:var(--text-mute);margin:0}

@media(max-width:768px){
  .mcp-grid,.mcp-info-grid{grid-template-columns:1fr}
  .mcp-card{border-right:none!important;border-bottom:1px solid var(--paper-line)!important}
  .mcp-info-card{border-right:none!important;border-bottom:1px solid var(--paper-line)}
  .mcp-info-card:last-child{border-bottom:none}
  .srv-gpu-item{flex-direction:column;align-items:flex-start}
}
