/* ============================================
   MQL-Files.ru – основные стили
   ============================================ */

/* Подсветка синтаксиса (дополнение к highlight.js) */
.hljs {
    padding: 15px;
    border-radius: 5px;
    overflow: auto;
    font-size: 14px;
    line-height: 1.5;
}

pre code {
    display: block;
    overflow-x: auto;
}

.highlight {
    background-color: #ffeb3b;
    font-weight: bold;
}

.current-match {
    background-color: #ff851b;
    font-weight: bold;
}

/* Google Translate – скрываем лишнее */
.goog-te-banner-frame {
    display: none !important;
}

.goog-te-menu-value {
    display: none !important;
}

.goog-te-gadget {
    color: transparent !important;
}

.goog-te-gadget .goog-te-combo {
    margin: 4px 0;
    padding: 6px;
    border: 1px solid #ddd;
    border-radius: 4px;
}

/* CSS-переменные */
:root {
    --primary-color: #0366d6;
    --secondary-color: #28a745;
    --background-color: #f9f9f9;
    --text-color: #333;
    --light-gray: #666;
}

/* Базовые стили */
* {
    box-sizing: border-box;
}

body {
    font-family: Arial, sans-serif;
    margin: 15px;
    font-size: 16px;
    line-height: 1.5;
    color: var(--text-color);
}

ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

li {
    display: block;
    margin: 0 0 10px 0;
}

a {
    text-decoration: none;
    color: var(--primary-color);
    font-size: 16px;
}

a:hover {
    text-decoration: underline;
}

pre {
    background-color: #f6f8fa;
    padding: 15px;
    border-radius: 5px;
    overflow: auto;
    max-width: 100%;
    white-space: pre-wrap;
    font-size: 14px;
}

/* Ссылка назад */
.back-link {
    display: block;
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 16px;
}

/* Форма поиска */
.search-form {
    margin: 20px 0;
    padding: 15px;
    border: 1px solid #ddd;
    border-radius: 5px;
    background-color: var(--background-color);
}

.source-upload {
    margin: 20px 0;
    padding: 18px;
    border: 1px solid #d7e2ef;
    border-radius: 6px;
    background: #f7fbff;
}

.source-upload h2 { margin-top: 0; }
.source-upload-form { display: grid; gap: 10px; max-width: 560px; }
.source-upload-form input[type="file"] { max-width: 100%; padding: 9px; border: 1px solid #ccd6e0; border-radius: 4px; background: #fff; }
.source-upload-form button { padding: 11px 16px; border: 0; border-radius: 4px; background: var(--primary-color); color: #fff; font-size: 16px; cursor: pointer; }
.upload-status { padding: 10px 12px; border-left: 3px solid var(--secondary-color); background: #edf8ef; }
.upload-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; }

.search-results {
    margin-top: 20px;
}

.file-result {
    margin-bottom: 30px;
}

.code-extract {
    background-color: #f6f8fa;
    padding: 10px;
    border-left: 3px solid var(--primary-color);
    margin: 5px 0;
    overflow-x: auto;
    font-size: 14px;
}

.match-count {
    color: var(--light-gray);
    font-style: italic;
    margin-left: 10px;
    font-size: 14px;
}

/* Кнопка покупки */
.buy-button {
    display: inline-block;
    margin-top: 20px;
    padding: 15px 25px;
    background-color: var(--secondary-color);
    color: white;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    transition: background-color 0.3s;
    font-size: 16px;
    text-align: center;
    width: 100%;
    max-width: 300px;
}

.buy-button:hover {
    background-color: #218838;
    text-decoration: none;
    color: white;
}

.price-info {
    margin-top: 10px;
    font-size: 16px;
    color: var(--light-gray);
}

/* Блок оплаты */
.crypto-payment {
    margin-top: 30px;
    padding: 20px;
    border: 1px solid #ddd;
    border-radius: 5px;
    background-color: var(--background-color);
}

.payment-instructions {
    margin-top: 15px;
    font-size: 16px;
    color: var(--light-gray);
}

.file-type {
    color: var(--light-gray);
    font-style: italic;
    margin-left: 10px;
    font-size: 14px;
}

/* Вкладки поиска */
.search-tabs {
    margin-bottom: 15px;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.search-tab {
    display: inline-block;
    padding: 10px 15px;
    background-color: #e9e9e9;
    cursor: pointer;
    border-radius: 4px;
    margin-right: 5px;
    font-size: 16px;
    flex: 1;
    text-align: center;
    min-width: 120px;
}

.search-tab.active {
    background-color: var(--primary-color);
    color: white;
}

.search-container {
    display: none;
}

.search-container.active {
    display: block;
}

.hidden-code {
    background-color: #fff4f4;
    color: #d63384;
    font-style: italic;
}

/* Информационные блоки */
.info-block {
    background-color: #e7f3ff;
    border-left: 4px solid var(--primary-color);
    padding: 20px;
    margin-bottom: 30px;
    border-radius: 4px;
}

.info-block h2 {
    margin-top: 0;
    color: var(--primary-color);
    font-size: 20px;
}

.info-features {
    margin: 15px 0;
}

.info-feature {
    margin-bottom: 10px;
    display: flex;
    align-items: flex-start;
    font-size: 16px;
}

.info-feature-icon {
    margin-right: 10px;
    color: var(--secondary-color);
    font-weight: bold;
}

/* Плавающая кнопка "Наверх" */
.back-to-top {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 99;
    border: none;
    outline: none;
    background-color: var(--primary-color);
    color: white;
    cursor: pointer;
    padding: 12px;
    border-radius: 50%;
    font-size: 18px;
    width: 50px;
    height: 50px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
    transition: background-color 0.3s, opacity 0.3s;
}

.back-to-top:hover {
    background-color: #0556b3;
}

/* Поиск по коду файла */
.file-search-form {
    margin: 20px 0;
    padding: 15px;
    border: 1px solid #ddd;
    border-radius: 5px;
    background-color: var(--background-color);
}

.file-search-results {
    margin-top: 20px;
}

.search-navigation {
    margin: 15px 0;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.search-navigation button {
    padding: 10px 15px;
    background-color: var(--primary-color);
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
    flex: 1;
    min-width: 120px;
}

.search-navigation button:disabled {
    background-color: #ccc;
    cursor: not-allowed;
}

/* Поля ввода и кнопки */
input[type="text"] {
    width: 100%;
    padding: 12px;
    margin: 8px 0;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 16px;
}

input[type="submit"] {
    width: 100%;
    padding: 12px;
    background-color: var(--primary-color);
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
    margin-top: 10px;
}

input[type="submit"]:hover {
    background-color: #0556b3;
}

/* Адаптивность */
@media screen and (min-width: 768px) {
    body {
        margin: 20px;
        font-size: 16px;
    }

    li {
        display: inline;
        margin-right: 15px;
    }

    input[type="text"] {
        width: auto;
        min-width: 300px;
    }

    input[type="submit"] {
        width: auto;
        margin-left: 10px;
    }

    .search-tab {
        flex: none;
    }

    .buy-button {
        width: auto;
    }

    .search-navigation button {
        flex: none;
    }
}

@media screen and (max-width: 480px) {
    body {
        margin: 10px;
        font-size: 14px;
    }

    h2 {
        font-size: 20px;
    }

    pre {
        padding: 10px;
        font-size: 12px;
    }

    .search-tab {
        padding: 8px 12px;
        font-size: 14px;
        min-width: 100px;
    }

    .buy-button {
        padding: 12px 20px;
        font-size: 14px;
    }

    .crypto-payment {
        padding: 15px;
    }

    .back-to-top {
        bottom: 15px;
        right: 15px;
        width: 45px;
        height: 45px;
        padding: 10px;
        font-size: 16px;
    }
}

@media screen and (max-width: 360px) {
    body {
        margin: 5px;
        font-size: 13px;
    }

    .search-tab {
        min-width: 90px;
        font-size: 13px;
        padding: 6px 10px;
    }

    input[type="text"] {
        font-size: 14px;
        padding: 10px;
    }

    input[type="submit"] {
        font-size: 14px;
        padding: 10px;
    }
}

/* Пробная версия */
.trial-version {
    margin-top: 20px;
    padding: 15px;
    border: 1px solid #ddd;
    border-radius: 5px;
    background-color: #f9f9f9;
}

.trial-button {
    display: inline-block;
    padding: 12px 20px;
    background-color: #17a2b8;
    color: white;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    margin-top: 10px;
    transition: background-color 0.3s;
}

.trial-button:hover {
    background-color: #138496;
    text-decoration: none;
    color: white;
}

/* Блок последних файлов */
.recent-files-block {
    margin: 30px 0;
    padding: 20px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background-color: #f8f9fa;
}

.recent-files-block > h2 {
    margin-top: 0;
    margin-bottom: 20px;
    color: #2c3e50;
    font-size: 24px;
    border-bottom: 2px solid #3498db;
    padding-bottom: 10px;
}

.recent-files-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 15px;
    margin-bottom: 20px;
}

.recent-file-item {
    padding: 15px;
    background: white;
    border-radius: 6px;
    border: 1px solid #e0e0e0;
    transition: all 0.3s ease;
    position: relative;
}

.recent-file-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    border-color: #3498db;
}

.file-type-badge {
    display: inline-block;
    padding: 4px 8px;
    font-size: 12px;
    border-radius: 4px;
    margin-bottom: 8px;
    background-color: #ecf0f1;
    color: #2c3e50;
    font-weight: bold;
}

.file-type-badge.expert {
    background-color: #e8f4fc;
    color: #2980b9;
}

.file-type-badge.indicator {
    background-color: #f0f8ff;
    color: #27ae60;
}

.file-type-badge.script {
    background-color: #fff8e1;
    color: #f39c12;
}

.file-type-badge.include,
.file-type-badge.library {
    background-color: #f3e5f5;
    color: #8e44ad;
}

.file-type-badge.tradingview {
    background-color: #e8f5e8;
    color: #16a085;
}

.file-link {
    display: block;
    color: #2c3e50;
    text-decoration: none;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.4;
}

.file-link:hover {
    color: #3498db;
    text-decoration: underline;
}

.recent-files-footer {
    text-align: center;
    padding-top: 15px;
    border-top: 1px solid #e0e0e0;
    margin-top: 10px;
}

.view-more-link {
    display: inline-block;
    padding: 10px 20px;
    background-color: #3498db;
    color: white;
    text-decoration: none;
    border-radius: 4px;
    font-weight: bold;
    transition: background-color 0.3s;
}

.view-more-link:hover {
    background-color: #2980b9;
    text-decoration: none;
    color: white;
}

/* Вкладки категорий */
.category-tabs {
    margin: 30px 0;
}

.category-tabs-header {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: 20px;
    border-bottom: 2px solid #e0e0e0;
    padding-bottom: 10px;
}

.category-tab {
    padding: 12px 20px;
    background-color: #f5f5f5;
    border: 1px solid #ddd;
    border-bottom: none;
    border-radius: 5px 5px 0 0;
    cursor: pointer;
    font-size: 16px;
    font-weight: bold;
    color: #666;
    transition: all 0.3s ease;
    margin-right: 5px;
    position: relative;
    display: flex;
    align-items: center;
    gap: 8px;
}

.category-tab:hover {
    background-color: #e9e9e9;
    color: #333;
}

.category-tab.active {
    background-color: white;
    border-color: #3498db;
    color: #3498db;
    border-bottom: 2px solid white;
    margin-bottom: -2px;
}

.category-count {
    background-color: #3498db;
    color: white;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: normal;
}

.category-tab.active .category-count {
    background-color: #2980b9;
}

.category-content {
    display: none;
    padding: 20px;
    background-color: white;
    border: 1px solid #ddd;
    border-radius: 0 5px 5px 5px;
    min-height: 300px;
}

.category-content.active {
    display: block;
}

.category-files {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 15px;
}

.category-file-item {
    padding: 12px;
    border: 1px solid #e0e0e0;
    border-radius: 5px;
    background-color: #f9f9f9;
    transition: all 0.3s ease;
}

.category-file-item:hover {
    border-color: #3498db;
    background-color: #f0f8ff;
    transform: translateY(-2px);
}

.category-file-link {
    display: block;
    color: #2c3e50;
    font-size: 15px;
    line-height: 1.4;
    text-decoration: none;
}

.category-file-link:hover {
    color: #3498db;
    text-decoration: underline;
}

.category-loading {
    text-align: center;
    padding: 40px;
    color: #666;
    font-style: italic;
}

/* Статистика */
.stats-summary {
    margin: 20px 0;
    padding: 15px;
    background-color: #f8f9fa;
    border: 1px solid #e0e0e0;
    border-radius: 5px;
    font-size: 16px;
}

.stats-item {
    margin: 5px 0;
    display: flex;
    justify-content: space-between;
    padding: 5px 0;
    border-bottom: 1px dashed #ddd;
}

.stats-item:last-child {
    border-bottom: none;
}

.stats-label {
    color: #666;
}

.stats-value {
    font-weight: bold;
    color: #3498db;
}

/* Форма email (оставлена для совместимости, но поле email скрыто) */
.email-form input[type="email"] {
    width: 100%;
    padding: 12px;
    margin: 8px 0;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 16px;
    box-sizing: border-box;
}

.email-error {
    color: #dc3545;
    margin-top: 5px;
    font-size: 14px;
}

.email-success {
    background-color: #d4edda;
    border-color: #c3e6cb;
    color: #155724;
    padding: 15px;
    border-radius: 5px;
    margin: 15px 0;
}
.product-description {
    width: 100%;
    max-width: none;
    box-sizing: border-box;
    margin: 18px 0 24px;
    padding: 22px 26px;
    border: 1px solid #dce7f3;
    border-left: 4px solid #2878c7;
    border-radius: 10px;
    background: linear-gradient(135deg, #f7fbff, #fff);
    color: #24364b;
    line-height: 1.75;
}
.product-description-heading { margin-bottom: 14px; }
.product-description-kicker { display: inline-block; margin-bottom: 4px; color: #2878c7; font-size: .76rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.product-description h3 { margin: 0; color: #193b5d; font-size: 1.3rem; line-height: 1.3; }
.product-description-copy p { margin: 0 0 12px; }
.product-description-copy p:last-child { margin-bottom: 0; }
.product-settings { margin-top: 22px; }
.product-settings h4 { margin: 0 0 10px; color: #193b5d; font-size: 1.05rem; }
.product-api-summary { margin: -2px 0 10px; color: #5d7083; font-size: .92rem; }
.product-api-groups { display: grid; gap: 18px; }
.product-api-group h5 { margin: 0 0 9px; color: #294b6d; font-size: .98rem; }
.product-api-list { display: grid; gap: 9px; }
.product-api-item { min-width: 0; padding: 13px 15px; border: 1px solid #dce7f3; border-radius: 9px; background: #fff; }
.product-api-kind { display: block; margin-bottom: 5px; color: #6b7f93; font-size: .78rem; font-weight: 700; }
.product-api-signature { display: block; max-width: 100%; color: #234b72; font-size: .94rem; font-weight: 700; line-height: 1.55; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-word; }
.product-api-item p { margin: 7px 0 0; color: #344a60; line-height: 1.55; }
.product-settings-table-wrap { overflow-x: auto; border: 1px solid #dce7f3; border-radius: 8px; background: #fff; }
.product-settings-table { width: 100%; border-collapse: collapse; line-height: 1.5; }
.product-settings-table th, .product-settings-table td { padding: 10px 13px; border-bottom: 1px solid #e8eef5; text-align: left; vertical-align: top; }
.product-settings-table thead th { background: #edf5fc; color: #193b5d; font-size: .9rem; }
.product-settings-table tbody th { width: 29%; color: #274665; font-weight: 600; }
.product-setting-russian-name { color: #193b5d; font-weight: 700; }
.product-settings-table tbody tr:last-child th, .product-settings-table tbody tr:last-child td { border-bottom: 0; }
.product-description-pending { border-left-color: #8294a7; background: #f7f9fb; }
.description-progress { display: flex; align-items: center; gap: 10px; margin: 16px 0 12px; color: #274665; font-weight: 600; }
.description-progress-spinner { width: 19px; height: 19px; flex: 0 0 19px; border: 2px solid #c9dced; border-top-color: #2878c7; border-radius: 50%; animation: description-spin .8s linear infinite; }
.description-progress-track { height: 6px; overflow: hidden; border-radius: 99px; background: #e5edf5; }
.description-progress-track span { display: block; width: 40%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #2878c7, #66afe7); animation: description-progress-slide 1.8s ease-in-out infinite; }
.description-progress-note { margin: 10px 0 0; color: #68798b; font-size: .9rem; }
.product-description-failed { border-left-color: #c58a36; background: #fffaf1; }
@keyframes description-spin { to { transform: rotate(360deg); } }
@keyframes description-progress-slide { 0% { transform: translateX(-120%); } 100% { transform: translateX(350%); } }
@media (prefers-reduced-motion: reduce) {
    .description-progress-spinner { animation: none; }
    .description-progress-track span { width: 100%; animation: none; opacity: .65; }
}
@media (max-width: 600px) {
    .product-description { padding: 17px 16px; }
    .product-settings-table th, .product-settings-table td { padding: 9px 8px; overflow-wrap: anywhere; }
    .product-settings-table tbody th { width: 35%; }
}

/* MQL-Files unified public design */
:root{--ink:#142d3c;--muted:#617583;--line:#dce7e8;--paper:#f5f8f7;--card:#fff;--primary-color:#087e79;--secondary-color:#e78b46;--background-color:#eef5f3;--text-color:#193442;--light-gray:#617583;--radius:18px;--shadow:0 18px 45px rgba(22,55,66,.08)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
a{color:#087e79}button,input,textarea{font:inherit}button,.catalog-search button,.hero-search button{border:0;border-radius:10px;background:#087e79;color:#fff;padding:12px 18px;font-weight:700;cursor:pointer}button:hover,.catalog-search button:hover,.hero-search button:hover{background:#066762}
.site-header{height:76px;padding:0 max(24px,calc((100% - 1160px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}.site-header nav{display:flex;gap:26px}.site-header nav a{font-size:.94rem;color:#36515e;font-weight:650}.brand{font-size:1.25rem;letter-spacing:.06em;color:#173645;font-weight:850}.brand span{color:#07877f}
.page-shell{width:min(1160px,calc(100% - 40px));margin:0 auto}.landing-hero{margin:34px 0 24px;padding:clamp(32px,6vw,72px);border-radius:26px;background:radial-gradient(circle at 85% 5%,#82cfc044,transparent 35%),linear-gradient(125deg,#123c48,#176f70);color:#fff;box-shadow:var(--shadow)}.landing-hero h1{max-width:760px;margin:10px 0 15px;font-size:clamp(2.25rem,5vw,4.2rem);line-height:1.06;letter-spacing:-.045em}.landing-hero>p{max-width:660px;color:#d2e8e6;font-size:1.12rem}.eyebrow{text-transform:uppercase;font-size:.76rem;font-weight:800;letter-spacing:.14em;color:#42b5a7}.hero-search,.catalog-search{display:flex;max-width:760px;gap:10px;margin:28px 0 15px}.hero-search input,.catalog-search input{min-width:0;flex:1;padding:14px 16px;border:1px solid #d6e4e5;border-radius:10px;background:#fff}.hero-secondary{color:#d4f4ee;font-weight:700}.info-block,.recent-files-block,.search-form,.category-tabs,.source-upload{margin:24px 0;padding:26px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 7px 24px #17364508}.info-block h2,.recent-files-block>h2,.search-form h2,.category-tabs>h2{color:var(--ink)}.stats-summary{display:flex;flex-wrap:wrap;gap:12px}.stats-item{padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:#f8fbfa}.stats-value{margin-left:9px;font-weight:800;color:#087e79}.info-features{display:flex;gap:22px;flex-wrap:wrap;color:#36515e}.recent-files-grid,.category-files{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.recent-file-item,.category-file-item{margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:#fbfdfc}.file-link,.category-file-link{font-weight:650}.search-tabs{display:flex;gap:8px}.search-tab{border-radius:9px;background:#edf3f2;color:#38535c}.search-tab.active{background:#087e79;color:#fff}.search-container form{display:flex;gap:10px}.search-container input[type=text]{min-width:0;flex:1;padding:12px;border:1px solid var(--line);border-radius:9px}.catalog-intro{padding:48px 0 24px}.catalog-intro h1{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.035em;margin:.3em 0}.catalog-intro p{color:var(--muted)}.catalog-count{color:var(--muted);font-size:.9rem}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.catalog-card{min-width:0;padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 7px 22px #17364508}.catalog-card-top,.catalog-card-bottom,.product-meta{display:flex;justify-content:space-between;gap:10px;align-items:center}.catalog-card-top,.product-meta{font-size:.76rem;color:var(--muted)}.catalog-card-top span:first-child,.product-meta span{padding:5px 9px;border-radius:99px;background:#edf6f4;color:#08746e;font-weight:750}.catalog-card h2{font-size:1.08rem;line-height:1.35}.catalog-card h2 a{color:var(--ink)}.catalog-card p{min-height:52px;color:var(--muted);font-size:.92rem}.catalog-card-bottom{padding-top:13px;border-top:1px solid var(--line);font-size:.82rem}.pagination{display:flex;justify-content:center;gap:20px;align-items:center;padding:30px}.empty-state{padding:30px;text-align:center;color:var(--muted)}.site-footer{padding:30px;text-align:center;color:var(--muted)}.product-hero{margin:24px 0;padding:28px;border-radius:18px;background:#e9f4f1}.product-hero h1{font-size:clamp(1.8rem,4vw,3rem);line-height:1.15}.product-meta{justify-content:flex-start}.back-link{color:#087e79}.search-match-kind{color:#087e79;font-weight:700}.admin-settings{margin:22px 0;padding:24px;border:1px solid var(--line);border-radius:14px;background:#f7faf9}.admin-settings label{display:block;margin:14px 0}.admin-settings input,.admin-settings textarea{box-sizing:border-box;width:100%;max-width:680px;padding:11px;border:1px solid #cbdad9;border-radius:8px}
@media(max-width:850px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header{padding:0 20px}}
@media(max-width:600px){.page-shell{width:calc(100% - 28px)}.site-header{height:auto;min-height:68px;align-items:flex-start;padding:16px 14px;gap:14px;flex-direction:column}.site-header nav{gap:16px;flex-wrap:wrap}.landing-hero{margin:18px 0;padding:28px 20px}.hero-search,.catalog-search,.search-container form{flex-direction:column}.hero-search button,.catalog-search button{width:100%}.product-grid{grid-template-columns:1fr}.catalog-card p{min-height:0}.stats-summary{display:grid;grid-template-columns:1fr 1fr}.info-block,.recent-files-block,.search-form,.category-tabs,.source-upload{padding:18px}.category-tabs-header{overflow:visible}}

/* Catalog filters, long titles, recent query history and incremental loading */
.catalog-card h2{min-width:0;overflow-wrap:anywhere;word-break:break-word}.catalog-card h2 a{overflow-wrap:anywhere;word-break:break-word;hyphens:auto}
.catalog-card-filename,.product-source-filename{margin-top:-8px;color:var(--muted);font-size:.82rem;overflow-wrap:anywhere;word-break:break-word}.product-source-filename{margin:0 0 18px;font-size:1rem}
.catalog-categories{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0 15px}.catalog-category{display:inline-flex;align-items:center;gap:9px;padding:9px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#35525e;font-size:.88rem;font-weight:650}.catalog-category span{color:#71848b;font-size:.77rem}.catalog-category.active{border-color:#087e79;background:#087e79;color:#fff}.catalog-category.active span{color:#d4f4ee}
.catalog-scroll-status{min-height:1.4em;text-align:center;color:var(--muted)}.pagination a{display:inline-flex;padding:10px 15px;border-radius:9px;background:#e8f3f0;font-weight:700}.pagination span{color:var(--muted)}
.search-page-intro{padding:48px 0 22px}.search-page-intro h1{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.035em;margin:.3em 0}.search-page-intro>p{color:var(--muted)}.search-page-intro .catalog-search{max-width:100%;margin-bottom:14px}.search-page-intro select{padding:12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink)}.recent-searches{margin:22px 0}.recent-searches h2{font-size:1rem;color:#415b64}.recent-search-list{display:flex;flex-wrap:wrap;gap:9px}.recent-search-item{display:inline-flex;align-items:center;gap:10px;max-width:100%;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#284651;overflow-wrap:anywhere}.recent-search-item .recent-search-scope{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;background:#eaf4f1;color:#087e79}.recent-search-scope svg{display:block}
.search-results-page{margin:20px 0 45px}.search-results-page>h2{font-size:1.4rem}.search-result-list{display:grid;gap:14px}.search-result-card{padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 6px 22px #17364508}.search-result-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.search-result-heading h3{margin:0;font-size:1.1rem;overflow-wrap:anywhere}.search-result-heading h3 a{color:var(--ink)}.search-result-id{flex-shrink:0;color:var(--muted);font-size:.82rem}.search-match-tags{display:flex;flex-wrap:wrap;gap:7px;margin:11px 0}.search-match-tags span{padding:4px 9px;border-radius:99px;background:#eaf4f1;color:#08746e;font-size:.78rem;font-weight:700}.search-snippet{margin:12px 0;padding:12px 14px;border-left:3px solid #65b6a9;border-radius:0 9px 9px 0;background:#f6faf8}.search-snippet>strong{font-size:.8rem;color:#557078}.search-snippet p{margin:.45em 0 0;overflow-wrap:anywhere}.search-snippet pre{max-height:210px;margin:8px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.search-snippet mark{background:#ffdf79;color:#2e2a16;border-radius:2px}.search-result-open{font-weight:750}
.email-explainer{margin:14px 0;padding:13px 15px;border-radius:10px;background:#eff6f4;color:#36515e}
@media(max-width:600px){.catalog-categories{flex-wrap:nowrap;overflow-x:auto;padding:0 0 8px;scrollbar-width:thin}.catalog-category{flex:0 0 auto}.search-result-heading{flex-direction:column;gap:5px}.search-page-intro{padding-top:28px}.search-page-intro .catalog-search select{width:100%}.search-result-card{padding:16px}}

/* Landing message hierarchy and product complaint dialog */
.audience-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}.audience-card{padding:24px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 7px 24px #17364508}.audience-card h2{margin:10px 0;color:var(--ink);font-size:1.35rem}.audience-card p,.landing-authors p,.source-transparency p{color:var(--muted);line-height:1.65}.audience-card a,.landing-cta{font-weight:750}.audience-icon{display:inline-grid;min-width:42px;height:42px;place-items:center;border-radius:12px;background:#eaf5f2;color:#087e79;font-weight:800}.landing-how ol{padding-left:22px;color:var(--muted);line-height:1.9}.landing-faq details{padding:14px 0;border-top:1px solid var(--line)}.landing-faq summary{color:var(--ink);font-weight:700;cursor:pointer}.landing-faq details p{color:var(--muted)}.product-report{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin:16px 0 24px;padding:18px 20px;border:1px solid #dce9e6;border-radius:14px;background:#f7fbfa}.product-report strong{color:var(--ink)}.product-report p{margin:5px 0 0;color:var(--muted)}.report-open{padding:10px 14px}.complaint-notice{flex-basis:100%;padding:12px 14px;border-radius:9px}.complaint-notice-success{background:#e8f7ef;color:#17653c}.complaint-notice-error{background:#fff1ef;color:#a12b20}.complaint-modal[hidden]{display:none}.complaint-modal{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:20px}.complaint-backdrop{position:absolute;inset:0;background:#0d2029a8}.complaint-dialog{position:relative;z-index:1;width:min(620px,100%);max-height:min(90vh,850px);overflow:auto;padding:28px;border-radius:18px;background:#fff;box-shadow:0 25px 90px #001a2490}.complaint-dialog h2{margin:0 36px 8px 0;color:var(--ink)}.complaint-dialog>p{color:var(--muted);line-height:1.55}.complaint-close{position:absolute;top:12px;right:12px;width:38px;height:38px;padding:0;background:#edf3f2;color:var(--ink);font-size:1.6rem}.complaint-form{display:grid;gap:14px}.complaint-form label{display:grid;gap:7px;color:var(--ink);font-weight:650}.complaint-form label span,.complaint-privacy{color:var(--muted);font-size:.88rem;font-weight:400}.complaint-form input:not([type=file]),.complaint-form textarea{box-sizing:border-box;width:100%;padding:11px 12px;border:1px solid #cbdad9;border-radius:9px}.complaint-form textarea{resize:vertical}.complaint-form input[type=file]{max-width:100%;font-size:.92rem}.complaint-form button{width:100%}.complaint-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}.complaint-modal-open{overflow:hidden}
@media(max-width:600px){.audience-grid{grid-template-columns:1fr}.product-report{align-items:stretch}.report-open{width:100%}.complaint-modal{padding:10px}.complaint-dialog{padding:22px 18px}}

/* Language controls, mobile category wrapping, and purchase price cue */
.site-header-controls{display:flex;align-items:center;gap:5px;margin-left:18px;flex:0 0 auto}.site-language-button{min-width:42px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#35525e;font-size:.82rem;font-weight:800}.site-language-button[aria-pressed="true"]{border-color:#087e79;background:#e8f5f1;color:#08746e}.site-header nav{margin-left:auto}.site-header #google_translate_element{display:none!important}.goog-te-banner-frame.skiptranslate,iframe.skiptranslate{display:none!important}body{top:0!important}.product-description-cta{display:flex;justify-content:flex-end;margin:-10px 0 28px}.product-description-cta a{display:inline-flex;align-items:center;gap:10px;padding:11px 16px;border-radius:10px;background:#087e79;color:#fff;font-weight:750;text-decoration:none}.product-description-cta a:hover{background:#066762}.purchase-price-line{margin:10px 0 16px;color:var(--ink)}.purchase-price-line strong{margin-right:5px}.purchase-price-usdt{font-size:.88em;font-weight:650;white-space:nowrap}.purchase-price-usdt[hidden]{display:none!important}
@media(max-width:600px){.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;gap:10px 8px;padding:12px 14px}.site-header .brand{grid-column:1;grid-row:1}.site-header nav{grid-column:1/-1;grid-row:2;margin:0;gap:13px}.site-header-controls{grid-column:2;grid-row:1;margin:0}.site-header nav a{font-size:.88rem}.catalog-categories{flex-wrap:wrap;overflow:visible;max-width:100%;gap:8px;padding:0;margin:20px 0 14px;scrollbar-width:none}.catalog-categories::-webkit-scrollbar{display:none}.catalog-category{flex:0 1 auto;max-width:100%;white-space:normal}.product-description-cta{justify-content:stretch;margin:8px 0 24px}.product-description-cta a{width:100%;justify-content:center}.purchase-price-usdt{white-space:normal}}

/* AIDA landing page: attention, interest, desire, action */
.landing-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);grid-template-areas:"copy art";align-items:center;gap:10px 24px;min-height:475px;overflow:hidden;isolation:isolate}.hero-copy{grid-area:copy;position:relative;z-index:2}.hero-art{grid-area:art;display:grid;place-items:center;min-width:0}.hero-illustration{display:block;width:min(100%,440px);height:auto;overflow:visible}.landing-hero h1{max-width:680px;font-size:clamp(2.15rem,4.6vw,3.75rem)}.landing-hero>div .eyebrow{color:#8be1d0}.landing-hero>div .hero-search{max-width:720px}.hero-links{display:flex;flex-wrap:wrap;gap:22px;margin-top:14px}.hero-secondary{display:inline-flex;align-items:center;gap:7px;text-decoration:none}.hero-secondary span{transition:transform .2s ease}.hero-secondary:hover span{transform:translateX(4px)}.hero-proof{display:flex;align-items:center;gap:12px;margin-top:30px;max-width:440px;padding:14px 16px;border:1px solid #c6f1e51f;border-radius:14px;background:#ffffff0b;backdrop-filter:blur(8px)}.hero-proof-mark{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:12px;background:#c9f1e31c;color:#8be1d0;font-weight:800}.hero-proof div{display:grid;gap:3px}.hero-proof strong{font-size:.94rem}.hero-proof span:last-child{color:#c8e5df;font-size:.84rem;line-height:1.45}.audience-grid{margin:30px 0 48px}.audience-card{position:relative;overflow:hidden;padding:28px;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.audience-card::after{position:absolute;right:-32px;bottom:-62px;width:145px;height:145px;border-radius:50%;background:radial-gradient(circle,#60bda51b,transparent 69%);content:"";pointer-events:none}.audience-card:hover{transform:translateY(-3px);border-color:#a8d7ca;box-shadow:0 15px 32px #17364512}.audience-card h2{max-width:430px;margin:8px 0 10px}.audience-kicker,.section-kicker{display:block;color:#087e79;font-size:.74rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.landing-how,.landing-catalog-proof,.source-transparency,.landing-faq,.landing-authors{margin-top:34px;margin-bottom:34px}.landing-how>h2,.landing-catalog-proof>h2,.source-transparency>h2,.landing-faq>h2{margin:7px 0 14px;font-size:clamp(1.45rem,3vw,2rem);letter-spacing:-.025em}.landing-how ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;list-style:none;counter-reset:landing-step}.landing-how li{position:relative;min-height:86px;padding:18px 16px 16px 52px;border:1px solid var(--line);border-radius:12px;background:#f8fbfa;line-height:1.5;counter-increment:landing-step}.landing-how li::before{position:absolute;left:15px;top:17px;display:grid;width:25px;height:25px;place-items:center;border-radius:50%;background:#dff1eb;color:#087e79;font-size:.8rem;font-weight:800;content:counter(landing-step)}.landing-how li strong{color:var(--ink)}.landing-how .info-features{margin-top:19px;padding-top:15px;border-top:1px solid var(--line)}.landing-catalog-proof{background:linear-gradient(135deg,#fff 30%,#f0f8f5)}.landing-catalog-proof .stats-summary{margin-top:20px}.landing-catalog-proof .stats-item{display:grid;gap:5px;min-width:135px}.landing-catalog-proof .stats-value{margin:0;font-size:1.35rem}.recent-files-block{margin-top:24px}.landing-final-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:38px 0 24px;padding:clamp(24px,4vw,42px);border-radius:20px;background:linear-gradient(115deg,#123c48,#176f70);color:#fff;box-shadow:var(--shadow)}.landing-final-cta .section-kicker{color:#8be1d0}.landing-final-cta h2{margin:7px 0;font-size:clamp(1.5rem,3vw,2.1rem)}.landing-final-cta p{margin:0;color:#d2e8e6}.landing-final-actions{display:flex;flex-wrap:wrap;gap:10px}.landing-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 17px;border-radius:10px;text-decoration:none}.landing-cta-primary{background:#fff;color:#0b6665}.landing-cta-primary:hover{background:#e9fbf5}.landing-cta-secondary{border:1px solid #c6f1e577;color:#fff}.landing-cta-secondary:hover{background:#ffffff12}.source-transparency{border-color:#dce9e6;background:#f7fbfa}.landing-authors{box-shadow:none;background:transparent}.hero-file-a{animation:heroFloatA 7s ease-in-out infinite}.hero-file-b{animation:heroFloatB 8s ease-in-out infinite}.hero-search-icon{transform-origin:234px 253px;animation:heroSearchPulse 5s ease-in-out infinite}.hero-orbit{transform-origin:center;animation:heroOrbit 36s linear infinite}.hero-spark-a{animation:heroSpark 3s ease-in-out infinite}.hero-spark-b{animation:heroSpark 3.8s ease-in-out infinite reverse}@keyframes heroFloatA{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes heroFloatB{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}@keyframes heroSearchPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}@keyframes heroOrbit{to{transform:rotate(360deg)}}@keyframes heroSpark{0%,100%{opacity:.45;transform:scale(.8)}50%{opacity:1;transform:scale(1.25)}}
@media(max-width:900px){.landing-hero{grid-template-columns:minmax(0,1fr) minmax(220px,.7fr);min-height:410px;padding:36px}.hero-illustration{width:100%}.landing-how ol{grid-template-columns:1fr}.landing-how li{min-height:0}}
@media(max-width:650px){.landing-hero{grid-template-columns:1fr;grid-template-areas:"copy" "art";gap:8px;margin-top:18px;padding:27px 21px}.hero-art{max-height:225px;overflow:hidden}.hero-illustration{width:min(100%,300px);margin-top:-8px;margin-bottom:-56px}.landing-hero h1{font-size:clamp(2rem,9vw,2.85rem)}.hero-proof{margin-top:22px}.hero-links{gap:15px}.landing-final-cta{align-items:stretch;flex-direction:column}.landing-final-actions{display:grid;grid-template-columns:1fr 1fr}.landing-final-actions a{padding-inline:10px}}
@media(prefers-reduced-motion:reduce){.hero-file-a,.hero-file-b,.hero-search-icon,.hero-orbit,.hero-spark-a,.hero-spark-b{animation:none!important}.audience-card,.hero-secondary span{transition:none!important}.audience-card:hover{transform:none}}
@media(max-width:900px){.landing-hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "art";gap:0}.hero-art{width:min(100%,300px);max-height:190px;justify-self:end;margin-top:-22px;margin-bottom:-58px}}
@media(min-width:651px) and (max-width:900px){.hero-art{width:270px;max-height:none;overflow:visible;margin:0 -8px -20px 0}.hero-illustration{width:255px;margin:0}}
.tag-cloud{margin:8px 0 24px;padding:17px 19px;border:1px solid var(--line);border-radius:15px;background:#f7fbfa}.tag-cloud h2{margin:0 0 12px;font-size:1rem;color:var(--ink)}.tag-cloud>div,.product-tags{display:flex;flex-wrap:wrap;gap:8px}.tag-cloud a,.product-tags a{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:7px 11px;border:1px solid #d6e8e3;border-radius:999px;background:#fff;color:#08746e;font-size:.82rem;font-weight:700;text-decoration:none;overflow-wrap:anywhere}.tag-cloud a:hover,.tag-cloud a.active,.product-tags a:hover{border-color:#087e79;background:#e5f5f0}.tag-cloud a span{color:#70858a;font-size:.73rem}.product-tags{margin-top:14px}.similar-files{margin:20px 0 28px}.similar-files h2{font-size:1.25rem}.similar-files>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:10px}.similar-files>div>a{display:grid;gap:6px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);text-decoration:none;overflow-wrap:anywhere}.similar-files>div>a:hover{border-color:#8dcabc}.similar-files span{color:var(--muted);font-size:.82rem}
.catalog-card .product-tags{margin:15px 0 12px;row-gap:9px}

/* Search page footer and product navigation alignment */
.search-page-body{min-height:100vh;display:flex;flex-direction:column}
.search-page-body>main.page-shell{flex:1}
.search-page-body>.site-footer{width:100%;margin-top:auto}
.back-link{width:min(1160px,calc(100% - 40px));margin:14px auto 0}

/* Administration pages */
.admin-page,.admin-login-page{min-height:100vh;background:var(--paper);color:var(--ink)}
.ai-admin{width:calc(100% - 32px);max-width:1320px;margin:24px auto 40px;padding:0;box-sizing:border-box}
.admin-header{margin:0 0 24px}
.admin-header h1{max-width:850px;margin:4px 0 0;font-size:clamp(1.8rem,4vw,2.55rem);line-height:1.15;letter-spacing:-.035em}
.admin-eyebrow{margin:0;color:#087e79;font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.admin-section,.admin-settings{margin:20px 0;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:0 7px 24px #17364508}
.admin-settings{background:#f8fbfa}
.admin-section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:17px}
.admin-section-heading h2,.admin-settings h2{margin:4px 0 0;color:var(--ink);font-size:1.35rem;letter-spacing:-.02em}
.admin-help{max-width:780px;margin:8px 0 18px;color:var(--muted);font-size:.92rem;line-height:1.6}
.admin-form{display:grid;gap:16px;max-width:760px}
.admin-form>button{justify-self:start;width:auto}
.admin-field{display:grid;gap:7px;color:#36515e;font-size:.9rem;font-weight:700}
.admin-field input:not([type=checkbox]),.admin-field textarea{width:100%;max-width:none;min-width:0;padding:12px 13px;border:1px solid #cbdad9;border-radius:9px;background:#fff;color:var(--ink);font-weight:400}
.admin-field input:focus,.admin-field textarea:focus,.login-card input:focus{outline:3px solid #087e792b;border-color:#087e79}
.admin-field textarea{resize:vertical;min-height:96px}
.admin-check{display:flex!important;align-items:center;gap:10px;margin:3px 0!important;color:#36515e;font-weight:600;line-height:1.45}
.admin-check input[type=checkbox]{width:18px!important;height:18px;max-width:18px;flex:0 0 18px;margin:0;accent-color:#087e79}
.admin-check span{min-width:0}
.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:20px 0 30px}
.admin-inline-form{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.admin-inline-form .admin-check{margin:0!important}
.admin-logout-form{margin:0}
.button-secondary{border:1px solid #d2e3df;background:#edf6f3;color:#176b66}
.button-secondary:hover{border-color:#a9d2c8;background:#e2f1ec;color:#145f5a}
.admin-section{margin:24px 0}
.admin-stats{display:grid;gap:12px}
.admin-stats-queue{grid-template-columns:repeat(5,minmax(0,1fr))}
.admin-stats-costs{grid-template-columns:repeat(4,minmax(0,1fr))}
.admin-stat{display:grid;gap:4px;min-width:0;padding:16px 18px;border:1px solid #e1ece9;border-radius:12px;background:#f7fbfa;color:var(--muted)}
.admin-stat strong{color:var(--ink);font-size:1.2rem;font-variant-numeric:tabular-nums}
.admin-record-count{color:var(--muted);font-size:.85rem}
.admin-table-hint{display:none;margin:-5px 0 10px;color:var(--muted);font-size:.82rem}
.admin-table-wrap{max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff;overscroll-behavior-x:contain}
.admin-table-wrap:focus-visible{outline:3px solid #087e792b;outline-offset:2px}
.admin-tabs{display:flex;gap:10px;margin:20px 0;padding:5px;border:1px solid var(--line);border-radius:14px;background:#eef6f4;width:max-content;max-width:100%}.admin-tabs a{display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border-radius:10px;color:var(--ink);font-weight:700;text-decoration:none}.admin-tabs a[aria-current=page]{background:#087e79;color:#fff}.admin-indexnow-response{max-width:280px;white-space:pre-wrap;overflow-wrap:anywhere}.admin-indexnow-agent{display:block;max-width:240px;margin-top:5px;color:var(--muted);font-size:.76rem;overflow-wrap:anywhere}
.admin-jobs{width:100%;min-width:1080px;border-collapse:separate;border-spacing:0}
.admin-jobs th,.admin-jobs td{padding:12px 13px;border-bottom:1px solid #e8efed;text-align:left;vertical-align:middle}
.admin-jobs th{position:sticky;top:0;background:#edf6f3;color:#35525e;font-size:.8rem;white-space:nowrap}
.admin-jobs td{font-size:.88rem}
.admin-jobs tbody tr:last-child td{border-bottom:0}
.admin-jobs tbody tr:hover{background:#f8fbfa}
.admin-job-name{width:220px;min-width:220px;overflow-wrap:anywhere}
.admin-job-name a{font-weight:650}
.admin-date{white-space:nowrap;font-variant-numeric:tabular-nums}
.admin-job-error{min-width:140px;max-width:240px;color:#a04437;overflow-wrap:anywhere}
.admin-job-log{margin-top:8px;color:#35525e;font-size:.82rem}
.admin-job-log summary{cursor:pointer;color:#176b5b;font-weight:700}
.admin-job-log ol{padding-left:20px;min-width:320px;max-width:620px}
.admin-job-log li{padding:7px 0;color:#45575d;white-space:normal;overflow-wrap:anywhere}
.admin-status{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;background:#edf2f3;color:#50646c;font-size:.78rem;font-weight:750;white-space:nowrap}
.admin-status-done{background:#e6f5ec;color:#267247}
.admin-status-pending{background:#fff5dd;color:#8a6718}
.admin-status-processing{background:#e9f2ff;color:#315f99}
.admin-status-failed{background:#fff0ed;color:#a04437}
.admin-retry-form{margin:0;white-space:nowrap}
.admin-description-jobs{table-layout:fixed;min-width:1000px}
.admin-description-jobs th,.admin-description-jobs td{box-sizing:border-box;padding:12px 8px}
.admin-description-jobs th{white-space:normal;overflow-wrap:anywhere;font-size:.75rem}
.admin-description-jobs th:nth-child(1),.admin-description-jobs th:nth-child(2){width:6%}
.admin-description-jobs th:nth-child(3){width:17%}
.admin-description-jobs th:nth-child(4){width:7%}
.admin-description-jobs th:nth-child(5){width:6%}
.admin-description-jobs th:nth-child(6){width:8%}
.admin-description-jobs th:nth-child(7),.admin-description-jobs th:nth-child(8),.admin-description-jobs th:nth-child(9){width:9%}
.admin-description-jobs th:nth-child(10){width:10%}
.admin-description-jobs th:nth-child(11){width:13%}
.admin-description-jobs .admin-job-name,.admin-description-jobs .admin-job-error{min-width:0;width:auto;max-width:none}
.admin-description-jobs .admin-date{white-space:normal}
.admin-description-jobs .admin-job-log ol{min-width:0;max-width:100%;padding-left:16px}
.admin-description-jobs .admin-retry-form button{max-width:100%;padding:10px 8px;font-size:.78rem}

.login-card{width:min(440px,calc(100% - 32px));margin:clamp(36px,12vh,120px) auto;padding:30px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}
.login-card h1{margin:6px 0;font-size:1.8rem;letter-spacing:-.03em}
.login-hint{margin:0 0 22px;color:var(--muted);font-size:.92rem}
.login-card label{display:block;margin:16px 0 7px;color:#36515e;font-weight:650}
.login-card input[type=text],.login-card input[type=password]{box-sizing:border-box;width:100%;padding:12px 13px;border:1px solid #cbdad9;border-radius:9px;background:#fff}
.login-card button{width:100%;margin-top:22px}
.login-error{padding:11px 13px;border:1px solid #f1d2cc;border-radius:9px;background:#fff1ee;color:#922f24}
.crypto-payment .purchase-button{width:100%;padding:14px 18px;background:#087e79;color:#fff;font-weight:750}
.crypto-payment .purchase-button:hover{background:#066762}
.purchase-field{margin-bottom:15px}
.purchase-field label{display:block;margin-bottom:6px;color:#36515e;font-weight:650}
.purchase-field input{box-sizing:border-box;width:100%;padding:11px 12px;border:1px solid #cbdad9;border-radius:9px;background:#fff}
.purchase-success{border-color:#c9e7d4!important;background:#eef8f1!important}
.purchase-success h3{color:#267247}
.code-copy-row{display:flex;justify-content:flex-end;margin-bottom:10px}
.code-copy-button{margin-bottom:10px;background:#edf6f3;color:#176b66}
.code-copy-button:hover{background:#dcefe9;color:#145f5a}
.recent-files-block{border-color:var(--line);border-radius:18px;background:#fff;box-shadow:0 7px 24px #17364508}
.recent-files-block>h2{color:var(--ink);border-bottom-color:var(--line)}
.recent-file-item{min-width:0;border-color:var(--line);border-radius:11px;background:#fbfdfc}
.recent-file-item .file-link{display:block;overflow-wrap:anywhere;color:var(--ink)}
.view-more-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 17px;border-radius:10px;background:#087e79;color:#fff;font-weight:750;text-decoration:none}
.view-more-link:hover{background:#066762;color:#fff;text-decoration:none}
.product-description{border-color:var(--line);border-left-color:#087e79;background:linear-gradient(135deg,#f3faf7,#fff);color:var(--ink)}
.product-description-kicker{color:#087e79}
.product-description h3,.product-settings h4,.product-settings-table thead th,.product-setting-russian-name{color:var(--ink)}
.product-api-group h5{color:#36515e}
.product-api-item,.product-settings-table-wrap{border-color:var(--line)}
.product-settings-table thead th{background:#eaf4f1}
.product-description-pending{border-left-color:#8aaca5;background:#f7faf9}
.description-progress{color:#36515e}
.description-progress-spinner{border-color:#cde3dc;border-top-color:#087e79}
.description-progress-track{background:#e5f0ed}
.description-progress-track span{background:linear-gradient(90deg,#087e79,#67c3ad)}
.product-confirmation{border-left-color:#2f8a5c!important;background:#edf8f1!important}
.info-block.product-confirmation{box-sizing:border-box;width:min(1160px,calc(100% - 40px));margin:24px auto}
.product-confirmation h2{color:#267247!important}
.trial-version{border-color:var(--line);border-radius:12px;background:#fff}
.trial-button{background:#087e79;border-radius:9px}
.trial-button:hover{background:#066762}
@media(max-width:760px){.ai-admin{width:calc(100% - 28px);margin:22px auto 40px}.admin-settings,.admin-section{padding:18px}.admin-stats-queue,.admin-stats-costs{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-toolbar{align-items:flex-start;flex-direction:column}.admin-inline-form{width:100%;justify-content:space-between}.admin-logout-form{width:auto;align-self:flex-end}.admin-table-hint{display:block}.admin-tabs{width:100%}.admin-tabs a{flex:1;justify-content:center;padding:0 10px}}
@media(max-width:600px){.admin-form>button{width:100%}}
@media(max-width:600px){
    .product-settings-table-wrap{overflow:visible;border:0;background:transparent}
    .product-settings-table,.product-settings-table tbody{display:block;width:100%}
    .product-settings-table thead{display:none}
    .product-settings-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;margin:0 0 9px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff}
    .product-settings-table tbody th,.product-settings-table tbody td{display:block;width:auto!important;padding:0;border:0;overflow-wrap:break-word;word-break:normal}
    .product-settings-table tbody th{color:var(--ink);font-weight:750}
    .product-settings-table tbody td{padding-top:7px;border-top:1px solid #edf2f0;color:#405760}
    .product-settings-table tbody tr:last-child{margin-bottom:0}
}
@media(max-width:420px){.admin-stats-queue,.admin-stats-costs{grid-template-columns:1fr 1fr}.admin-stat{padding:13px}.admin-section-heading{align-items:flex-start;flex-direction:column}.admin-settings,.admin-section{border-radius:13px}.login-card{padding:24px 20px}}

.landing-cta-telegram{border-color:#84dbca;background:#ffffff10;color:#fff}
.landing-cta-telegram:hover{background:#ffffff1e}
.hero-telegram-cta{color:#c5f7ea;font-weight:750}
@media(max-width:650px){.landing-final-actions .landing-cta-telegram{grid-column:1/-1}}
.source-includes{margin:16px 0;padding:14px 18px;border:1px solid var(--line);border-left:3px solid #0b827c;border-radius:10px;background:#f4faf8;color:var(--ink)}.source-includes ul{display:flex;flex-wrap:wrap;gap:8px 18px;margin:8px 0 0;padding-left:20px}.source-includes a{color:#087e79;font-weight:700;overflow-wrap:anywhere}

.purchase-price-line{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:22px 0;padding:18px 22px;border:1px solid #cce6df;border-radius:14px;background:linear-gradient(110deg,#f0faf6 0%,#fff 100%);box-shadow:0 8px 24px rgba(23,91,78,.07)}
.purchase-price-label{color:#35564f;font-size:1rem;font-weight:700;line-height:1.4}
.purchase-price-value{display:inline-flex;align-items:baseline;gap:7px;color:#08776d;font-size:clamp(2rem,5vw,2.65rem);font-weight:850;letter-spacing:-.045em;line-height:1;white-space:nowrap}
.purchase-price-currency{font-size:.68em;font-weight:750;letter-spacing:0}
.purchase-price-amounts{display:grid;justify-items:end;gap:6px}
.purchase-price-usd{color:#647a75;font-size:.95rem;font-weight:650;white-space:nowrap}
.purchase-price-usd[hidden]{display:none!important}
@media(max-width:480px){.purchase-price-line{align-items:flex-start;flex-direction:column;gap:9px;padding:16px 18px}.purchase-price-value{font-size:2.35rem}}
.admin-job-filters{padding:18px;background:#f4f8f7;border:1px solid var(--line);border-radius:12px;margin-bottom:16px}.admin-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:12px 0}.admin-job-filters .admin-field{min-width:0}.admin-job-filters input,.admin-job-filters select{width:100%;min-width:0;box-sizing:border-box;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit;color:var(--ink)}.admin-filter-details summary{cursor:pointer;font-weight:650;padding:8px 0}.admin-filter-actions{display:flex;align-items:end;flex-wrap:wrap;gap:10px}.admin-filter-actions a{text-decoration:none;padding:10px 14px;border-radius:8px}.admin-job-pagination{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:20px 0}.admin-job-pagination>a,.admin-job-pagination>span{display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;border:1px solid var(--line);border-radius:8px;text-decoration:none}.admin-job-pagination>[aria-current]{background:#087e79;color:#fff;font-weight:700}.admin-job-pagination form{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto}.admin-job-pagination input{width:80px;padding:8px;border:1px solid var(--line);border-radius:8px}.admin-job-pagination button{padding:9px 13px}@media(max-width:900px){.admin-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.admin-filter-grid{grid-template-columns:1fr}.admin-job-pagination form{margin-left:0;width:100%}.admin-filter-actions{align-items:center}}

.catalog-card-date{margin:14px 0;color:var(--muted);font-size:.78rem}

/* Approved product card: timestamp under title, RUB and approximate USD together. */
.catalog-card{display:flex;flex-direction:column}.catalog-card h2{margin:16px 0 7px;overflow-wrap:anywhere}.catalog-card .catalog-card-date{margin:0 0 10px;color:var(--muted);font-size:.78rem}.catalog-card .catalog-card-filename{margin:0 0 14px}.catalog-card .catalog-card-description{margin:0 0 14px;min-height:0;line-height:1.6}.catalog-card-price{margin-top:auto;padding:22px 0 20px}.catalog-card-price-label{display:block;margin-bottom:4px;color:var(--muted);font-size:.87rem}.catalog-card-price-values{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 14px}.catalog-card-price-values strong{color:var(--ink);font-size:1.85rem;font-weight:800;letter-spacing:-.035em;line-height:1.25;white-space:nowrap}.catalog-card-price-usd{color:var(--muted);font-size:1.08rem;white-space:nowrap}.catalog-card .catalog-card-tariff{display:inline-block;align-self:flex-start;margin-top:12px;color:#087e79;font-size:.9rem;text-decoration:underline;text-underline-offset:3px}.catalog-card .product-tags{margin:0 0 4px}.catalog-card-bottom{margin-top:0}.catalog-card-bottom>a{white-space:nowrap}
@media(max-width:600px){.catalog-card-price{padding-top:18px}.catalog-card-price-values strong{font-size:1.8rem}.catalog-card-price-usd{font-size:1rem}}

/* Product subscription alternative, visible before the source preview. */
.product-tariff-offer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:20px 0 28px;padding:24px 28px;background:#edf6f3;border:1px solid #cfe2dc;border-radius:16px}.product-tariff-offer strong{color:var(--ink);font-size:1.2rem}.product-tariff-offer p{margin:8px 0 0;color:var(--muted);line-height:1.6;max-width:760px}.product-tariff-offer>.member-button{flex-shrink:0}@media(max-width:600px){.product-tariff-offer{align-items:stretch;flex-direction:column;padding:20px;gap:18px}.product-tariff-offer>.member-button{width:100%;box-sizing:border-box}}
.product-hero h1{overflow-wrap:anywhere}

/* Project Telegram links */
.telegram-icon{display:inline-block;flex-shrink:0;vertical-align:middle}
.site-telegram{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 12px;border-radius:10px;background:#1689c7;color:#fff;font-weight:750;text-decoration:none;white-space:nowrap}
.site-telegram:hover{background:#1074ad;color:#fff}
.site-telegram:focus-visible{outline:3px solid #1689c7;outline-offset:3px}
.hero-links .hero-telegram-cta{display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border-radius:10px;background:#1689c7;color:#fff}
.landing-cta-telegram{display:inline-flex;align-items:center;gap:8px}
.site-footer .telegram-icon{color:#1689c7;margin-right:4px}
@media(min-width:601px) and (max-width:1100px){.site-telegram{padding:0 10px}.site-telegram span{display:none}}
@media(max-width:600px){.site-telegram{min-height:36px;padding:0 9px}.site-telegram span{display:none}}
