﻿<style>
   

    /* =========================================
       TOPIC ANGLES — sibling tool to Hook Generator.
       Same shell (hero -> thinking -> question), but the
       payoff is an interactive perspective network instead
       of hook cards: click any node to trace its threads.
       Root tokens are reused, never replaced.
       ========================================= */

    .hg-wrapper {
        --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
        --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
        display: flex;
        justify-content: center;
            padding: clamp(0px, 5vw, 0px) 20px;
        padding-top: 0;
    }

    .hg-panel {
        position: relative;
        width: 100%;
        max-width: 1800px;
        border-radius: 28px;
        padding: clamp(28px, 5vw, 56px);
        overflow: hidden;    padding-top: 0;
    }

    

    /* ---------- STATE 0 : HERO / PROMPT ---------- */

    .hg-hero { text-align: center; max-width: 560px; margin: 0 auto; padding: clamp(10px, 4vw, 30px) 0; }

    .hg-hero-badge {
        display: inline-flex; align-items: center; gap: 8px;
        font-size: 12.5px; font-weight: 800; letter-spacing: 0.3px;
        color: var(--primary-color); background: var(--primary-light);
        padding: 7px 16px; border-radius: 100px; margin-bottom: 22px;
    }

    .hg-hero-title {
        font-size: clamp(30px, 4.4vw, 44px);
        font-weight: 900;
        line-height: 1.15;
        letter-spacing: -0.025em;
        color: var(--text-main);
        margin-bottom: 16px;
    }
    .hg-hero-title em {
        font-style: normal;
        background: linear-gradient(120deg, var(--primary-color), var(--primary-gradient-end));
        -webkit-background-clip: text; background-clip: text; color: transparent;
    }

    .hg-hero-desc { font-size: 16.5px; color: var(--text-muted); line-height: 1.7; margin-bottom: 36px; }

    .hg-prompt {
        display: flex; align-items: center; gap: 10px;
        background: var(--bg-body);
        border: 2px solid var(--border-color);
        border-radius: 999px;
        padding: 8px 8px 8px 22px;
        transition: all 0.3s var(--ease-out);
    }
    [dir="rtl"] .hg-prompt { padding: 8px 22px 8px 8px; }
    .hg-prompt:focus-within {
        border-color: var(--primary-color);
        background: var(--card-bg);
        box-shadow: 0 0 0 6px var(--primary-light);
    }
    .hg-prompt-icon { color: var(--primary-color); flex-shrink: 0; width: 18px; height: 18px; }
    .hg-prompt-input { flex: 1; min-width: 0; background: transparent; border: none; outline: none; color: var(--text-main); font-size: 15.5px; padding: 10px 0; }
    .hg-prompt-input::placeholder { color: var(--text-muted); }

    .hg-prompt-submit {
        flex-shrink: 0;
        width: 46px; height: 46px;
        border-radius: 50%;
        border: none;
        color: #fff;
        background: linear-gradient(135deg, var(--primary-color), var(--primary-gradient-end));
        display: flex; align-items: center; justify-content: center;
        cursor: pointer;
        transition: transform 0.25s var(--ease-out), filter 0.2s, box-shadow 0.25s;
    }
    .hg-prompt-submit:hover:not(:disabled) { transform: translateY(-2px) scale(1.04); box-shadow: 0 10px 22px var(--primary-shadow); filter: brightness(1.05); }
    .hg-prompt-submit:active:not(:disabled) { transform: translateY(0) scale(0.98); }
    .hg-prompt-submit:disabled { opacity: 0.45; cursor: not-allowed; }
    [dir="rtl"] .hg-prompt-submit i, [dir="rtl"] .hg-prompt-submit svg { transform: scaleX(-1); }

    .hg-suggestions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 22px; }
    .hg-chip {
        border: 1px solid var(--border-color);
        background: var(--card-bg);
        color: var(--text-muted);
        font-size: 13px; font-weight: 700;
        padding: 9px 16px; border-radius: 100px;
        cursor: pointer; transition: all 0.2s var(--ease-out);
    }
    .hg-chip:hover { border-color: var(--primary-color); color: var(--primary-color); background: var(--primary-light); transform: translateY(-1px); }

    /* ---------- STATE 1 : WORKSPACE ---------- */

    .hg-topbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 30px; flex-wrap: wrap; }
    .hg-topbar-left { display: flex; align-items: center; gap: 10px; min-width: 0; font-weight: 800; color: var(--text-main); font-size: 15px; }
    .hg-topbar-left i, .hg-topbar-left svg { color: var(--primary-color); flex-shrink: 0; }
    .hg-topbar-topic { color: var(--text-muted); font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

    .hg-cost-pill {
        display: flex; align-items: center; gap: 7px;
        font-size: 12.5px; font-weight: 800; color: var(--text-main);
        background: var(--icon-yellow-bg);
        border: 1px solid var(--border-color);
        padding: 7px 14px; border-radius: 100px; flex-shrink: 0;
    }
    .hg-cost-pill i, .hg-cost-pill svg { color: var(--warning); width: 14px; height: 14px; }

    /* Thinking state — the agent's log is the whole stage while it runs */
    .hg-thinking { text-align: center; padding: 20px 0 8px; }

    .hg-orb {
        width: 80px; height: 80px; border-radius: 50%;
        background: var(--bg-body); border: 2px solid var(--primary-light);
        margin: 0 auto 24px auto; display: flex; align-items: center; justify-content: center;
        color: var(--primary-color); font-size: 32px;
        box-shadow: 0 0 0 16px var(--primary-light);
        transition: all 0.3s;
    }
    .hg-orb i, .hg-orb svg { width: 32px; height: 32px; }

    .hg-thinking-current { font-size: 18px; font-weight: 700; color: var(--text-main); margin-bottom: 16px; }
    .hg-thinking-log-wrap {
        position: relative; max-width: 400px; margin: 0 auto;
        padding: 10px 0; cursor: pointer; transition: all 0.3s;
    }
    .hg-thinking-log-wrap:hover { transform: scale(1.02); }
    .hg-thinking-log-wrap.is-expanded { cursor: default; transform: none; }

    .hg-thinking-log {
        list-style: none; margin: 0; padding: 0 10px;
        max-height: 120px; overflow-y: hidden;
        display: flex; flex-direction: column; gap: 12px;
        transition: max-height 0.5s var(--ease-spring);
        scroll-behavior: smooth;
        -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 30%, black 100%);
        mask-image: linear-gradient(to bottom, transparent 0%, black 30%, black 100%);
    }
    .hg-thinking-log.is-expanded {
        max-height: 400px; overflow-y: auto;
        -webkit-mask-image: none; mask-image: none;
    }

    .hg-thinking-log li {
        display: flex; align-items: flex-start; gap: 10px; font-size: 14.5px; color: var(--text-muted);
        animation: slideInUp 0.4s ease forwards; text-align: right;
    }
    .hg-thinking-log li.active { color: var(--text-main); font-weight: 700; }
    .hg-thinking-log li.done { color: var(--text-muted); opacity: 0.6; }

    .hg-log-collapse-btn {
        background: none; border: none; color: var(--text-muted); cursor: pointer;
        font-size: 12px; margin-top: 12px; text-decoration: underline;
        transition: color 0.2s;
    }
    .hg-log-collapse-btn:hover { color: var(--text-main); }

    .hg-log-dot { flex-shrink: 0; width: 22px; height: 22px; border-radius: 50%; border: 2px solid var(--border-color); display: flex; align-items: center; justify-content: center; color: var(--text-muted); }
    .hg-thinking-log li.active .hg-log-dot { border-color: var(--primary-color); color: var(--primary-color); }
    .hg-thinking-log li.done .hg-log-dot { background: var(--primary-color); border-color: var(--primary-color); color: #fff; }
    .hg-log-dot i, .hg-log-dot svg { width: 12px; height: 12px; }

    /* Collapsed recap once a question or results appear */
    .hg-steps-recap { margin-bottom: 22px; }
    .hg-steps-recap summary {
        display: inline-flex; align-items: center; gap: 8px;
        font-size: 13px; font-weight: 700; color: var(--text-muted);
        cursor: pointer; list-style: none; padding: 6px 2px;
    }
    .hg-steps-recap summary::-webkit-details-marker { display: none; }
    .hg-steps-recap summary i, .hg-steps-recap summary svg { width: 15px; height: 15px; color: var(--primary-color); }
    .hg-steps-recap[open] summary { margin-bottom: 10px; }
    .hg-steps-recap ul { list-style: none; margin: 0; padding: 12px 16px; background: var(--bg-body); border-radius: 12px; display: flex; flex-direction: column; gap: 6px; }
    .hg-steps-recap li { font-size: 13px; color: var(--text-muted); font-weight: 600; }
    .hg-steps-recap li::before { content: '✓ '; color: var(--primary-color); font-weight: 800; }

    /* Question */
    .hg-question { animation: fadeIn 0.4s var(--ease-out) forwards; }
    .hg-question-tag {
        display: inline-flex; align-items: center; gap: 8px;
        font-size: 13px; font-weight: 700; color: var(--primary-color);
        background: var(--primary-light); padding: 7px 14px; border-radius: 100px;
        margin-bottom: 20px;
    }
    .hg-question-title { font-size: clamp(21px, 2.8vw, 27px); font-weight: 900; letter-spacing: -0.01em; color: var(--text-main); margin-bottom: 26px; }

    .hg-options { display: flex; flex-direction: column; gap: 10px; margin-bottom: 28px; }
    .hg-option-wrap { position: relative; }
    .hg-option-input { display: none; }
    .hg-option {
        position: relative;
        display: block;
        padding-block: 16px;
        padding-inline-start: 50px;
        padding-inline-end: 22px;
        border: 2px solid var(--border-color);
        border-radius: 14px;
        cursor: pointer;
        font-weight: 700; font-size: 14.5px; color: var(--text-muted);
        background: var(--card-bg);
        transition: all 0.2s var(--ease-out);
    }
    .hg-option::before {
        content: ''; position: absolute; inset-inline-start: 18px; top: 50%; transform: translateY(-50%);
        width: 19px; height: 19px; border-radius: 50%; border: 2px solid var(--border-color); background: var(--card-bg);
        transition: all 0.25s var(--ease-spring);
    }
    .hg-option:hover { border-color: color-mix(in srgb, var(--primary-color) 40%, var(--border-color)); }
    .hg-option-input:checked + .hg-option { border-color: var(--primary-color); background: var(--primary-light); color: var(--primary-color); }
    .hg-option-input:checked + .hg-option::before { border-color: var(--primary-color); background: var(--primary-color); box-shadow: inset 0 0 0 3px var(--card-bg); }
    .hg-option-input:focus-visible + .hg-option { outline: 2px solid var(--primary-color); outline-offset: 2px; }

    .hg-option-custom {
        width: 100%; margin-top: 10px;
        background: var(--card-bg); border: 2px solid var(--primary-color); border-radius: 12px;
        padding: 14px 18px; color: var(--text-main); font-size: 14.5px; font-family: inherit; outline: none;
        box-shadow: 0 0 0 5px var(--primary-light);
    }

    .hg-question-actions { display: flex; justify-content: flex-end; }

    .hg-btn {
        border: none; border-radius: 13px; padding: 15px 28px; font-size: 14.5px; font-weight: 800;
        cursor: pointer; display: inline-flex; align-items: center; gap: 9px;
        transition: transform 0.25s var(--ease-out), box-shadow 0.25s var(--ease-out), filter 0.2s;
    }
    .hg-btn-primary { color: #fff; background: linear-gradient(135deg, var(--primary-color), var(--primary-gradient-end)); }
    .hg-btn-primary:hover:not(:disabled) { transform: translateY(-2px); filter: brightness(1.05); box-shadow: 0 10px 22px var(--primary-shadow); }
    .hg-btn-primary:disabled { opacity: 0.6; cursor: not-allowed; }
    .hg-btn-ghost { color: var(--text-main); background: var(--bg-body); border: 1px solid var(--border-color); }
    .hg-btn-ghost:hover { border-color: var(--primary-color); color: var(--primary-color); }
    .hg-btn:focus-visible { outline: 2px solid var(--primary-color); outline-offset: 2px; }

    /* Results header (shared row style for the graph results too) */
    .hg-results { animation: fadeIn 0.4s var(--ease-out) forwards; }
    .hg-results-header { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; margin-bottom: 6px; }
    .hg-results-header h2 { display: flex; align-items: center; gap: 9px; font-size: 21px; font-weight: 900; color: var(--text-main); margin: 0; }
    .hg-results-header h2 i, .hg-results-header h2 svg { color: var(--success); }
    .hg-results-hint { font-size: 13.5px; color: var(--text-muted); margin: 4px 0 22px; }

    .hg-card-tag {
        display: inline-block;
        font-size: 11.5px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.4px;
        color: var(--primary-color); background: var(--primary-light);
        padding: 5px 11px; border-radius: 7px;
    }

    .hg-back-row { display: flex; gap: 12px; padding: 10px 0; border-bottom: 1px dashed var(--border-color); }
    .hg-back-row:last-of-type { border-bottom: none; }
    .hg-back-row i, .hg-back-row svg { flex-shrink: 0; width: 17px; height: 17px; color: var(--primary-color); margin-top: 2px; }
    .hg-back-row span { display: block; font-size: 10.5px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.4px; color: var(--text-muted); opacity: 0.8; margin-bottom: 2px; }
    .hg-back-row p { margin: 0; font-size: 13.5px; line-height: 1.5; color: var(--text-main); font-weight: 600; }

    /* ---------- HISTORY SIDEBAR ---------- */
    .hg-history-overlay {
        position: fixed; inset: 0; background: rgba(0,0,0,0.5); z-index: 1000;
        opacity: 0; visibility: hidden; transition: all 0.3s var(--ease-out);
        backdrop-filter: blur(4px);
    }
    .hg-history-overlay.is-open { opacity: 1; visibility: visible; }

    .hg-history-drawer {
        position: fixed;
        top: 25px;
        bottom: 115px;
        right: -600px;
        width: 580px;
        max-width: 100vw;
        background: var(--card-bg);
        z-index: 1001;
        box-shadow: -10px 0 30px rgba(0,0,0,0.1);
        display: flex;
        flex-direction: column;
        transition: right 0.4s var(--ease-spring), left 0.4s var(--ease-spring);
        border-radius: 12px;
    }

    .hg-history-drawer.is-open { right: 0; }

    [dir="rtl"] .hg-history-drawer { right: -600px; left: auto; }
    [dir="rtl"] .hg-history-drawer.is-open { right: 0; left: auto; }

    .hg-history-header {
        display: flex; align-items: center; justify-content: space-between;
        padding: 24px; border-bottom: 1px solid var(--border-color);
    }
    .hg-history-header h3 { margin: 0; font-size: 18px; font-weight: 800; color: var(--text-main); display: flex; align-items: center; gap: 10px; }
    .hg-history-header h3 i, .hg-history-header h3 svg { color: var(--primary-color); }
    .hg-history-close {
        background: none; border: none; color: var(--text-muted); cursor: pointer;
        width: 34px; height: 34px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
        transition: all 0.2s;
    }
    .hg-history-close:hover { background: var(--bg-body); color: var(--text-main); }

    .hg-history-body { flex: 1; overflow-y: auto; padding: 24px; }

    .hg-history-item {
        background: var(--bg-body); border: 1px solid var(--border-color);
        border-radius: 14px; padding: 16px; margin-bottom: 14px;
        cursor: pointer; transition: all 0.2s var(--ease-out);
    }
    .hg-history-item:hover { border-color: var(--primary-color); box-shadow: 0 4px 12px var(--primary-shadow); transform: translateY(-2px); }

    .hg-history-item-topic { font-size: 14.5px; font-weight: 700; color: var(--text-main); margin-bottom: 8px; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
    .hg-history-item-meta { display: flex; align-items: center; justify-content: space-between; font-size: 12px; font-weight: 600; color: var(--text-muted); }
    .hg-history-item-meta span { display: flex; align-items: center; gap: 5px; }
    .hg-history-item-meta i, .hg-history-item-meta svg { width: 14px; height: 14px; }

    .hg-history-empty { text-align: center; color: var(--text-muted); padding: 40px 20px; font-size: 14px; font-weight: 600; }

    /* UTILITY CLASSES */
    .d-flex-center { display: flex; align-items: center; justify-content: center; }
    .d-flex-gap-small { display: flex; align-items: center; gap: 6px; }
    .d-flex-gap-medium { display: flex; align-items: center; gap: 10px; }
    .d-flex-gap-large { display: flex; align-items: center; gap: 14px; }
    .d-flex-between { display: flex; align-items: center; justify-content: space-between; }
    .d-flex-column-stretch { display: flex; flex-direction: column; align-items: stretch; gap: 14px; }
    .d-flex-wrap { display: flex; gap: 10px; flex-wrap: wrap; }
    .text-center { text-align: center; }
    .mt-40 { margin-top: 40px; }
    .mt-24 { margin-top: 24px; }
    .mt-10 { margin-top: 10px; }

    .icon-sm { width: 14px; height: 14px; }
    .icon-md { width: 15px; height: 15px; }
    .icon-lg { width: 18px; height: 18px; }
    .icon-xl { width: 32px; height: 32px; }

    .hg-hero-history-wrap { margin-top: 40px; text-align: center; }
    .hg-btn-hero-history {
        padding: 10px 24px; font-size: 14.5px; border-radius: 100px;
        display: inline-flex; align-items: center; justify-content: center; gap: 8px; margin: 0 auto;
        color: var(--text-main); background: var(--bg-body); border: 1px solid var(--border-color);
        box-shadow: 0 4px 12px rgba(0,0,0,0.03);
    }
    .hg-btn-hero-history:hover { border-color: var(--primary-color); color: var(--primary-color); }
    .hg-btn-small { padding: 7px 14px; font-size: 13px; display: inline-flex; align-items: center; gap: 6px; }
    .hg-btn-medium { padding: 10px 18px; font-size: 13.5px; }
    .hg-btn-load-more { padding: 8px 16px; font-size: 13px; }

    .hg-btn-error { background: #ef4444 !important; border-color: #ef4444 !important; color: white !important; }
    .hg-text-error { color: #ef4444 !important; }
    .hg-text-error-bold { color: #ef4444 !important; font-weight: 600 !important; }
    .hg-orb-error { box-shadow: 0 0 0 16px rgba(239, 68, 68, 0.1) !important; border-color: #ef4444 !important; color: #ef4444 !important; }

    .hg-icon-wrap { display: flex; }
    .hg-btn-content { display: flex; align-items: center; gap: 9px; }
    .hg-btn-content-sm { display: flex; align-items: center; gap: 6px; }

    .hg-prompt-sm { padding: 4px 14px; }
    .hg-history-loader { text-align: center; padding: 40px; color: var(--primary-color); }

    .spin-anim { animation: spin 1.5s linear infinite; }
    @keyframes spin { 100% { transform: rotate(360deg); } }
    @keyframes fadeIn { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
    @keyframes slideInUp { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }

    @media (prefers-reduced-motion: reduce) {
        .hg-wrapper *, .hg-wrapper *::before, .hg-wrapper *::after {
            animation-duration: 0.001ms !important;
            animation-iteration-count: 1 !important;
            transition-duration: 0.001ms !important;
        }
    }

    /* ============================================================
       TOPIC ANGLES SPECIFIC — perspective / emotion / need / value
       network map. Same design tokens as above, new components.
       ============================================================ */

    .ta-filter-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 16px; }
    .ta-filter-group { display: flex; gap: 8px; }
    .ta-filter-chip {
        border: 1px solid var(--border-color);
        background: var(--card-bg);
        color: var(--text-muted);
        font-size: 13px; font-weight: 700;
        padding: 8px 16px; border-radius: 100px;
        cursor: pointer; transition: all 0.2s var(--ease-out);
    }
    .ta-filter-chip:hover { border-color: var(--primary-color); color: var(--primary-color); }
    .ta-filter-chip.active { border-color: var(--primary-color); color: var(--primary-color); background: var(--primary-light); }

    .ta-legend { display: flex; flex-wrap: wrap; gap: 16px; margin-bottom: 16px; }
    .ta-legend-item { display: flex; align-items: center; gap: 7px; font-size: 12.5px; font-weight: 700; color: var(--text-muted); }
    .ta-legend-dot { width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; }
    .ta-legend-dot.topic { background: var(--primary-color); }
    .ta-legend-dot.perspective { background: var(--blue); }
    .ta-legend-dot.emotion { background: var(--pink); }
    .ta-legend-dot.need { background: var(--purple); }
    .ta-legend-dot.value { background: var(--warning); }

    .ta-graph-shell { display: flex; gap: 20px; align-items: stretch; }
    .ta-network-wrap { flex: 1; min-width: 0; display: flex; flex-direction: column; }

    .ta-network-container {
        height: 600px;
        min-height: 480px;
        border: 1px solid var(--border-color);
        border-radius: 20px;
        background-color: var(--bg-body);
        background-image: radial-gradient(var(--border-color) 1px, transparent 1px);
        background-size: 22px 22px;
        box-shadow: var(--shadow-sm);
        position: relative;
        overflow: hidden;
    }

    .ta-network-hint {
        text-align: center; font-size: 12px; font-weight: 600; color: var(--text-muted);
        margin-top: 10px; display: flex; justify-content: center; gap: 6px; flex-wrap: wrap;
    }

    .ta-panel {
        width: 300px; flex-shrink: 0;
        border: 1px solid var(--border-color);
        border-radius: 20px;
        background: var(--card-bg);
        box-shadow: var(--shadow-sm);
        padding: 22px;
        display: flex; flex-direction: column;
        overflow-y: auto;
        max-height: 560px;
    }

    .ta-panel-header {
        display: flex; align-items: center; gap: 8px;
        font-weight: 800; font-size: 15px; color: var(--text-main);
        padding-bottom: 14px; margin-bottom: 16px;
        border-bottom: 1px solid var(--border-color);
    }
    .ta-panel-header i, .ta-panel-header svg { color: var(--primary-color); width: 17px; height: 17px; }

    .ta-empty-state { font-size: 13.5px; color: var(--text-muted); line-height: 1.7; }

    .ta-detail-name { font-size: 19px; font-weight: 900; color: var(--text-main); margin-bottom: 10px; line-height: 1.3; }

    .ta-block-label { font-size: 11.5px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.4px; color: var(--text-muted); opacity: 0.8; margin: 20px 0 10px; }
    .ta-perspectives-block ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
    .ta-perspectives-block li { font-size: 13.5px; font-weight: 600; color: var(--text-main); padding: 8px 12px; background: var(--bg-body); border-radius: 10px; }

    .ta-insight-box {
        display: flex; gap: 10px; align-items: flex-start;
        background: var(--primary-light); border-radius: 14px;
        padding: 14px 16px; margin-top: 18px;
    }
    .ta-insight-box i, .ta-insight-box svg { color: var(--primary-color); width: 17px; height: 17px; flex-shrink: 0; margin-top: 2px; }
    .ta-insight-box p { margin: 0; font-size: 13.5px; line-height: 1.6; color: var(--text-main); font-weight: 600; }

    .ta-layer-group { margin-top: 16px; }
    .ta-layer-title { font-size: 11.5px; font-weight: 800; text-transform: uppercase; color: var(--text-muted); margin-bottom: 8px; display: flex; align-items: center; gap: 6px; }
    .ta-layer-title i, .ta-layer-title svg { width: 14px; height: 14px; }
    .ta-layer-chips { display: flex; flex-wrap: wrap; gap: 6px; }
    .ta-layer-chip { font-size: 12px; font-weight: 600; padding: 4px 10px; border-radius: 6px; background: var(--bg-body); border: 1px solid var(--border-color); color: var(--text-main); }
    
    .ta-conclusions-board { margin-top: 24px; padding: 24px; background: var(--card-bg); border-radius: 20px; border: 1px solid var(--border-color); box-shadow: var(--shadow-sm); }
    .ta-board-header { font-size: 18px; font-weight: 900; color: var(--text-main); margin-bottom: 20px; display: flex; align-items: center; gap: 10px; }
    .ta-board-header i, .ta-board-header svg { color: var(--primary-color); }
    .ta-board-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px; }
    .ta-board-card { background: var(--bg-body); border-radius: 12px; padding: 16px; border: 1px solid var(--border-color); }
    .ta-board-card-label { font-size: 12px; font-weight: 800; color: var(--text-muted); margin-bottom: 6px; }
    .ta-board-card-value { font-size: 14.5px; font-weight: 700; color: var(--text-main); line-height: 1.5; }

    @media (max-width: 900px) {
        .ta-graph-shell { flex-direction: column; }
        .ta-panel { width: 100%; max-height: 320px; }
        .ta-network-container { min-height: 380px; }
    }

    @media (max-width: 640px) {
        .hg-panel { border-radius: 22px; }
        .hg-topbar { align-items: flex-start; }
    }