:root{color-scheme:light;--bg: #f3f6fa;--surface: #ffffff;--surface-soft: #f8fafc;--text: #2c3848;--heading: #172033;--muted: #64748b;--border: #dbe3ef;--border-strong: #b9c7d8;--accent: #245fa8;--accent-soft: #edf5ff;--accent-strong: #173f73;--accent-hover: #1c4d8a;--success: #16835c;--success-soft: #e8f7ef;--warning: #b56916;--warning-soft: #fff3df;--danger: #b42318;--danger-soft: #fff0ee;--blue-soft: #eaf3ff;--amber-soft: #fff5dd;--green-soft: #eaf8ef;--shadow: 0 14px 32px rgba(15, 23, 42, .08);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.5}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,rgba(36,95,168,.08),transparent 32rem),linear-gradient(180deg,#f8fbff 0%,var(--bg) 100%);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.catalog-page{width:100%;max-width:none;margin:0;padding:0 22px 56px}.hero{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:24px;align-items:stretch;margin-bottom:20px}.hero,.toolbar,.component-card,.edu-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}.hero{padding:32px}.hero h1{margin:0 0 12px;max-width:780px;font-size:clamp(2rem,4vw,3.4rem);line-height:1.02;letter-spacing:0}.hero p{margin:0;max-width:760px;color:var(--muted);font-size:1.05rem}.hero-card{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:24px;border-radius:8px;background:linear-gradient(135deg,#e8f5f4,#fff7e8);border:1px solid var(--border)}.hero-card strong{font-size:4rem;line-height:1;letter-spacing:0}.hero-card span{color:var(--muted)}.eyebrow{margin:0 0 8px;color:var(--component-accent, var(--accent));font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.catalog-topbar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:minmax(270px,1fr) minmax(360px,1.45fr);gap:18px;align-items:center;margin:0 -22px;padding:14px 22px;border-bottom:1px solid var(--border);background:#ffffffe6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:8px;background:var(--accent-strong);color:#fff;font-weight:900;letter-spacing:0;box-shadow:var(--shadow)}.brand h1{margin:0;color:var(--heading);font-size:1.08rem;letter-spacing:0}.brand p{margin:2px 0 0;color:var(--muted);font-size:.82rem}.topbar-search{display:grid;gap:5px}.topbar-search label{color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}input,select,textarea{width:100%;border:1px solid var(--border);border-radius:14px;background:#fff;color:var(--text);padding:11px 12px;outline:none}.search-field{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;border:1px solid var(--border-strong);border-radius:8px;background:#fff;padding:0 12px}.search-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.topbar-search input{border-color:var(--border-strong);border:0;border-radius:8px;padding:12px 0;box-shadow:none}.topbar-search input:focus{box-shadow:none}.search-icon{width:18px;height:18px;fill:currentColor;color:var(--muted);pointer-events:none}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.catalog-subbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0 -22px;padding:12px 22px;border-bottom:1px solid var(--border);background:#ffffffbd}.catalog-subbar p{margin:0;color:#8a9ab0;font-size:1rem}.catalog-subbar strong{color:var(--heading);font-size:1.08rem}.subbar-actions{display:flex;align-items:center;gap:12px}.subbar-actions>button{border:0;background:transparent;color:var(--heading);font-weight:900}.subbar-actions>button span{color:#8ca0b5;padding-left:6px}.view-toggle{display:flex;gap:2px;padding:3px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft)}.view-toggle button{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:6px;background:transparent;color:#7d8da1;font-weight:900}.view-toggle button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.view-toggle button svg rect{fill:none;stroke:currentColor}.view-toggle button svg circle{fill:currentColor;stroke:none}.view-toggle button svg path{fill:none;stroke:currentColor;stroke-linecap:round}.view-toggle button svg.list-view-icon{stroke-width:2.1}.view-toggle button.active{background:#fff!important;color:var(--accent-strong);box-shadow:0 1px 4px #102d3714}.catalog-layout{display:grid;grid-template-columns:316px minmax(0,1fr);gap:20px;padding-top:20px}.catalog-content{min-width:0}.filters{position:sticky;top:92px;align-self:start;max-height:calc(100vh - 112px);overflow:auto;padding:16px;border:1px solid var(--border);border-radius:8px;background:#fffffff0;box-shadow:var(--shadow)}.sidebar-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:14px;padding:4px;border-bottom:1px solid var(--border);border:1px solid var(--border);border-radius:999px;background:#fff}.sidebar-mode{border:0;border-radius:999px;padding:8px 10px;background:transparent;color:var(--muted);font-size:.82rem;font-weight:900}.sidebar-mode.active{background:var(--accent-strong)!important;color:#fff!important}.filters-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.sidebar-tags .filters-head{align-items:flex-start}.filters h2{margin:0;color:var(--heading);font-size:.95rem}.sidebar-help{margin:4px 0 0;color:var(--muted);font-size:.76rem;line-height:1.35}.text-button{border:0;background:transparent;color:var(--accent-strong);font-weight:900}.sidebar-tags .filters-head .text-button{align-self:flex-start;padding:0;line-height:1.35}.active-filters,.active-tags{display:flex;flex-wrap:wrap;gap:7px;min-height:0;margin-bottom:12px}.active-chip{border:1px solid #b9d5f6;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);padding:5px 9px;font-size:.76rem;font-weight:500}.sidebar-tags .active-chip{border-color:var(--tag-border-active, var(--tag-border));background:var(--tag-bg-active, var(--tag-bg));color:var(--tag-ink-active, var(--tag-ink))}.filter-section{border-top:1px solid var(--border)}.filter-section summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;list-style:none;padding:13px 0 10px;color:var(--heading);font-size:.82rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.filter-section summary:before{content:"▸";display:inline-grid;place-items:center;color:var(--muted);transition:transform .16s ease}.filter-section details[open] summary:before{transform:rotate(90deg)}.filter-section summary::-webkit-details-marker{display:none}.filter-title{min-width:0;overflow:hidden;color:var(--heading);text-overflow:ellipsis}.filter-count{display:inline-grid;place-items:center;min-width:24px;height:22px;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.72rem}.filter-options{display:grid;gap:7px;padding-bottom:12px}.filter-option{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 9px;border-radius:8px;color:var(--muted)}.filter-option:hover{background:var(--surface-soft);color:var(--heading)}.filter-option input{width:auto;accent-color:var(--accent)}.filter-option span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.84rem}.filter-option small{color:#8ea0ad;font-size:.72rem}.tag-rail-options{display:grid;gap:0;padding-top:2px}.tag-group{display:grid;gap:0;padding:0}.tag-group-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}.tag-group-label{color:var(--text);font-size:.72rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.tag-dot{width:6px;height:6px;border-radius:999px;background:var(--tag-ink, var(--accent))}.tag-chevron{color:#9aaebe;font-size:.9rem;line-height:1}.tag-pill-row{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:12px}.tag-toggle{display:inline-flex;align-items:center;max-width:100%;border:1px solid var(--tag-border, #cfe6dd);border-radius:999px;background:var(--tag-bg, #fff);color:var(--tag-ink, #2f6d5b);padding:4px 8px;font-size:.78rem;font-weight:500;line-height:1.2}.tag-toggle:hover,.tag-toggle.active{border-color:var(--tag-border-active, #8fcdb8);background:var(--tag-bg-active, #effaf6);color:var(--tag-ink-active, #0d7f61)}.tag-toggle.empty{border-color:#dfe8ef;background:#f9fbfc;color:#b4c3cf}.tag-type-markets,.tag-type-data_sources{--tag-bg: #f8fbff;--tag-bg-active: #eaf0ff;--tag-border: #c5d4ff;--tag-border-active: #8ea8ff;--tag-ink: #3150a8;--tag-ink-active: #213f91}.tag-type-markets{--tag-bg: #f0fdfa;--tag-bg-active: #ccfbf1;--tag-border: #99f6e4;--tag-border-active: #2dd4bf;--tag-ink: #0f766e;--tag-ink-active: #115e59}.tag-type-fundamental{--tag-bg: #f5f3ff;--tag-bg-active: #ede9fe;--tag-border: #ddd6fe;--tag-border-active: #a78bfa;--tag-ink: #5b21b6;--tag-ink-active: #4c1d95}.tag-type-macro{--tag-bg: #eef6ff;--tag-bg-active: #dbeafe;--tag-border: #bfdbfe;--tag-border-active: #60a5fa;--tag-ink: #1d4ed8;--tag-ink-active: #1e40af}.tag-type-investing{--tag-bg: #eefaf6;--tag-bg-active: #dff4ed;--tag-border: #b7dfd2;--tag-border-active: #7ac1a8;--tag-ink: #16735e;--tag-ink-active: #0d604e}.tag-type-pedagogy{--tag-bg: #f8fafc;--tag-bg-active: #eef2ff;--tag-border: #d8dee9;--tag-border-active: #a5b4fc;--tag-ink: #475569;--tag-ink-active: #3730a3}.tag-type-category{--tag-bg: #edf5ff;--tag-bg-active: #dcecff;--tag-border: #bad3f4;--tag-border-active: #7aa7df;--tag-ink: #245fa8;--tag-ink-active: #173f73}.tag-type-content_role{--tag-bg: #eefaf7;--tag-bg-active: #dff5ef;--tag-border: #b8ded5;--tag-border-active: #75b9aa;--tag-ink: #177164;--tag-ink-active: #0f5f55}.tag-type-flow_stage{--tag-bg: #f4f3ff;--tag-bg-active: #ebe9ff;--tag-border: #d8d5ff;--tag-border-active: #a69df2;--tag-ink: #5544b8;--tag-ink-active: #413391}.tag-type-domain{--tag-bg: #f5f3ff;--tag-bg-active: #ede9fe;--tag-border: #ddd6fe;--tag-border-active: #a78bfa;--tag-ink: #5b21b6;--tag-ink-active: #4c1d95}.tag-type-interaction_type{--tag-bg: #ecfdf3;--tag-bg-active: #dcfce7;--tag-border: #bbf7d0;--tag-border-active: #4ade80;--tag-ink: #15803d;--tag-ink-active: #166534}.tag-type-media_type{--tag-bg: #eff6ff;--tag-bg-active: #dbeafe;--tag-border: #bfdbfe;--tag-border-active: #60a5fa;--tag-ink: #1d4ed8;--tag-ink-active: #1e40af}.tag-type-data_dependency{--tag-bg: #ecfeff;--tag-bg-active: #cffafe;--tag-border: #a5f3fc;--tag-border-active: #22d3ee;--tag-ink: #0e7490;--tag-ink-active: #155e75}.tag-type-assessment_mode{--tag-bg: #fffbeb;--tag-bg-active: #fef3c7;--tag-border: #fde68a;--tag-border-active: #f59e0b;--tag-ink: #a16207;--tag-ink-active: #92400e}.tag-type-interactivity_level{--tag-bg: #fff1f2;--tag-bg-active: #ffe4e6;--tag-border: #fecdd3;--tag-border-active: #fb7185;--tag-ink: #be123c;--tag-ink-active: #9f1239}.tag-type-learning_goal{--tag-bg: #f0fdfa;--tag-bg-active: #ccfbf1;--tag-border: #99f6e4;--tag-border-active: #2dd4bf;--tag-ink: #0f766e;--tag-ink-active: #115e59}.tag-type-delivery_mode{--tag-bg: #eef2ff;--tag-bg-active: #e0e7ff;--tag-border: #c7d2fe;--tag-border-active: #818cf8;--tag-ink: #4338ca;--tag-ink-active: #3730a3}.tag-type-difficulty,.tag-type-other{--tag-bg: #f8fafc;--tag-bg-active: #f1f5f9;--tag-border: #e2e8f0;--tag-border-active: #94a3b8;--tag-ink: #475569;--tag-ink-active: #334155}.catalog-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin:4px 0 18px}.data-summary{margin:0;color:var(--text);font-weight:900}.hint{margin:4px 0 0;color:var(--muted);font-size:.88rem}.component-list{display:grid;gap:24px}.component-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;align-items:stretch}.component-gallery-list{grid-template-columns:1fr}.component-thumb{--component-accent: var(--accent);--component-accent-soft: var(--accent-soft);--component-accent-text: var(--accent-strong);display:grid;grid-template-rows:auto auto 1fr auto;overflow:hidden;gap:12px;border:1px solid var(--border);border-top:4px solid var(--component-accent);border-radius:10px;background:#fff;padding:14px;box-shadow:0 6px 18px #102d370f;cursor:pointer;outline:none;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.component-accent-exercise,.component-accent-explanatory,.component-accent-feedback,.component-accent-flow{--component-accent: var(--accent);--component-accent-soft: var(--accent-soft);--component-accent-text: var(--accent-strong)}.component-thumb:focus,.component-thumb:hover{border-color:var(--component-accent);transform:translateY(-2px);box-shadow:0 16px 34px #102d371f}.component-thumb-meta{display:grid;gap:7px;padding:0;color:var(--component-accent);font-size:.72rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.component-thumb-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.component-thumb-meta code{justify-self:start;max-width:100%;overflow:hidden;border:1px solid var(--border);border-radius:7px;background:var(--surface-soft);color:var(--muted);padding:5px 7px;text-overflow:ellipsis;text-transform:none;letter-spacing:0;white-space:nowrap;font-size:.7rem}.component-thumb-preview{position:relative;aspect-ratio:16 / 10;height:auto;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:linear-gradient(180deg,#f7faff,#edf4f7);padding:0;pointer-events:none}.component-gallery-list .component-thumb{grid-template-columns:minmax(220px,280px) minmax(0,1fr);grid-template-rows:auto 1fr auto;align-items:start;gap:12px 18px}.component-gallery-list .component-thumb-meta{grid-column:2;grid-row:1}.component-gallery-list .component-thumb-preview{grid-column:1;grid-row:1 / 4;align-self:start;width:100%;height:160px;min-height:0;aspect-ratio:auto}.component-gallery-list .component-thumb-body{grid-column:2;grid-row:2}.component-gallery-list .component-thumb-footer{grid-column:2;grid-row:3}.thumbnail-stage{position:absolute;top:0;left:calc(50% - 175px);width:760px;height:456px;transform:scale(.46);transform-origin:top left}.component-gallery-list .thumbnail-stage{left:calc(50% - 137px);transform:scale(.36)}.thumbnail-stage>.edu-card{width:760px;min-height:456px;box-shadow:none;border-radius:8px}.component-thumb-body{display:grid;align-content:start;gap:10px;padding:0}.component-thumb-body h2{margin:0;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--heading);font-size:1.06rem;line-height:1.22}.component-thumb-body p{margin:0;display:-webkit-box;min-height:64px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;color:var(--muted);font-size:.86rem;line-height:1.42}.thumb-tags{display:flex;flex-wrap:wrap;gap:6px}.thumb-tags span{max-width:100%;overflow:hidden;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--muted);padding:4px 8px;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:800}.thumb-tags span.highlighted{border-color:var(--tag-border-active, var(--tag-border, var(--component-accent)));background:var(--tag-bg-active, var(--tag-bg, var(--accent-soft)));color:var(--tag-ink-active, var(--tag-ink, var(--component-accent)))}.component-thumb-footer{display:flex;justify-content:center;margin:0;padding:12px 0 0;border-top:1px solid var(--border)}.thumb-link{border:0;background:transparent;color:var(--accent-strong);padding:0;font-weight:900;text-decoration:none}.thumb-link:hover{text-decoration:underline;text-underline-offset:3px}.component-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;background:#0a141c9e;padding:28px}.component-modal-panel{position:relative;display:grid;width:min(1120px,calc(100vw - 40px));max-height:calc(100vh - 48px);overflow:hidden;border-top:4px solid var(--component-accent, var(--accent));border-radius:8px;background:#fff}.component-modal-scroll{min-height:0;overflow:auto}.modal-close{position:absolute;top:14px;right:14px;z-index:3;width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--heading);font-size:1.4rem;font-weight:900}.component-card{display:grid;overflow:hidden}.component-card-header{display:grid;grid-template-columns:1fr auto;gap:18px;padding:28px 28px 0;align-items:start}.component-card-header h2{margin:0 0 8px;color:var(--heading);font-size:clamp(1.35rem,2vw,2rem);letter-spacing:0}.component-card-header p{margin:0;color:var(--muted)}.component-card-header code{padding:8px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.82rem}.preview-shell{padding:24px 28px 8px}.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:8px 28px 20px}.card-grid section,.tag-section{border:1px solid var(--border);border-radius:18px;background:var(--surface-soft);padding:16px}.card-grid h3,.tag-section h3{margin:0 0 8px;font-size:.94rem}.card-grid p,.card-grid ul{margin:0;color:var(--muted)}.card-grid ul{padding-left:18px}.tag-section{margin:0 28px 20px}.chip-list{display:flex;gap:8px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-size:.78rem;font-weight:700}.chip-muted{color:#475467;background:#eef2f7}.chip-highlighted{border:1px solid var(--tag-border-active, var(--tag-border, var(--component-accent)));background:var(--tag-bg-active, var(--tag-bg, var(--accent-soft)));color:var(--tag-ink-active, var(--tag-ink, var(--component-accent)))}.component-modal-panel .component-card{border:0;border-radius:0;box-shadow:none}.component-modal-panel .component-card-header{padding-right:76px}.edu-card{padding:20px;box-shadow:none;min-height:250px}.edu-card h3{margin:0 0 12px;font-size:1.1rem;letter-spacing:0}.edu-card p{color:var(--muted)}.mini-note{margin:10px 0 0;color:var(--muted);font-size:.88rem}.component-card .edu-card{background:#fff}.metric-row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.metric-pill{display:inline-flex;flex-direction:column;gap:2px;min-width:88px;padding:10px 12px;background:var(--surface-soft);border:1px solid var(--border);border-radius:14px}.metric-pill span{color:var(--muted);font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.metric-pill strong{font-size:1rem}.mini-chart{width:100%;max-width:250px;height:90px;overflow:visible}.chart-line{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart-dot{fill:var(--surface);stroke:var(--accent);stroke-width:2}.chart-grid{stroke:#e6edf5;stroke-width:1}.chart-set,.chart-options{display:grid;gap:12px}.chart-set{grid-template-columns:repeat(3,1fr)}.chart-option{text-align:left;background:var(--surface-soft);border:1px solid var(--border);border-radius:16px;padding:12px}.chart-option.active,.tf-buttons button.active,.tf-choice-grid button.active,.flow-steps button.active,.match-item.active{border-color:var(--accent)!important;background:var(--accent-soft)!important}.chart-label{display:flex;justify-content:space-between;gap:12px;margin-top:8px;color:var(--muted);font-size:.86rem}.order-list,.option-list,.match-column,.classification-list,.group-pool{display:grid;gap:10px}.order-item,.option-row,.match-item,.classification-row,.group-token,.compare-card,.source-grid,.formula-panel{border:1px solid var(--border);background:var(--surface-soft);border-radius:14px}.order-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px}.rank{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:999px;color:var(--accent);background:var(--accent-soft);font-weight:800}.item-main{display:grid;gap:2px}.item-main small{color:var(--muted)}.item-actions{display:flex;gap:6px}.item-actions button,.edu-card>button,.video-card button,.podcast button,.audio-player button{border:1px solid var(--border);background:#fff;border-radius:10px;padding:7px 10px}.option-row{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;color:var(--text)}.option-row input{width:auto;margin-top:4px}.choice-list{display:grid;gap:10px}.choice-list label{display:flex;gap:10px;align-items:center;border:1px solid var(--border);border-radius:14px;padding:10px;background:var(--surface-soft)}.choice-list input{width:auto}.drawing-layout{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:16px;align-items:center}.drawing-chart,.zone-chart,.point-chart{width:100%;min-height:190px;border:1px solid var(--border);border-radius:18px;background:#fff}.drawn-line{stroke:var(--accent);stroke-width:2.5;stroke-dasharray:4 4}.zone-rect{fill:#1f6feb1f;stroke:var(--accent);stroke-width:2}.label-marker{fill:var(--accent)}.match-grid,.compare-grid,.group-board,.flow-steps{display:grid;gap:12px}.match-grid{grid-template-columns:1fr 1fr}.match-item{padding:10px;text-align:left;background:var(--surface-soft);border:1px solid var(--border);border-radius:14px}.match-output{margin-top:12px;display:grid;gap:6px;color:var(--muted);font-size:.9rem}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:16px}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}th{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;background:var(--surface-soft)}.interactive-table button{margin-top:12px}.classification-row{display:grid;grid-template-columns:1fr 170px;gap:10px;padding:10px;align-items:center}.param-grid{display:grid;gap:12px}.param-grid label{display:grid;gap:6px;color:var(--muted)}.param-grid input[type=range]{padding:0}.lab-result{margin-top:14px;padding:14px;border:1px solid var(--border);border-radius:16px;background:var(--accent-soft)}.lab-result strong{display:block;font-size:1.6rem}.group-board{grid-template-columns:1fr 1.3fr}.group-token{padding:9px 10px;text-align:left}.group-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.group-column{min-height:160px;border:1px dashed var(--border-strong);border-radius:16px;padding:10px;background:#fff}.group-column h4{margin:0 0 8px}.group-column ul{padding-left:18px;margin:0;color:var(--muted)}.macro-map{width:100%;height:180px}.map-bg{fill:#f3f7fb;stroke:var(--border)}.map-country{cursor:pointer;outline:none}.map-country text{font-size:9px;fill:var(--muted)}.map-dot{fill:#fff;stroke:var(--accent);stroke-width:2}.map-dot.selected{fill:var(--accent-soft);stroke-width:4}.map-panel{display:flex;justify-content:space-between;gap:12px;padding:12px;border-radius:14px;background:var(--surface-soft);border:1px solid var(--border)}.map-panel span{color:var(--muted)}.flashcard{width:100%;min-height:190px;display:grid;place-items:center;border:1px solid var(--border);border-radius:20px;background:var(--surface-soft);text-align:center;padding:24px}.flashcard strong{font-size:1.25rem}.flashcard.flipped{background:var(--accent-soft)}.compare-grid{grid-template-columns:repeat(2,1fr)}.compare-card{padding:14px}.compare-card h4{margin:0 0 10px}.compare-card dl{margin:0;display:grid;grid-template-columns:1fr auto;gap:8px}.compare-card dt{color:var(--muted)}.compare-card dd{margin:0;font-weight:800}.formula-panel{padding:14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.formula-panel code{font-size:1.2rem}.formula-panel input{width:130px}.tf-buttons{display:flex;gap:10px;margin-bottom:10px}.tf-buttons button{border:1px solid var(--border);border-radius:14px;background:#fff;padding:10px 14px}.calculation-card{display:grid;gap:12px}.result-box{border:1px solid var(--border);border-radius:16px;background:var(--accent-soft);padding:14px}.result-box strong{display:block;font-size:1.4rem}.text-marking,.gap-text{line-height:1.8}.text-marking button{display:inline;margin:3px;border:1px solid transparent;border-radius:10px;background:#fff;padding:4px 6px;color:var(--text)}.text-marking button.marked{border-color:var(--accent);background:var(--accent-soft)}.gap-text select{display:inline-block;width:auto;min-width:150px;margin:0 4px}.feedback-panel{border-left:4px solid var(--success)}.feedback-panel.review{border-left-color:var(--warning)}.definition-card blockquote{margin:10px 0 0;padding:12px 14px;border-left:4px solid var(--accent);background:var(--accent-soft);border-radius:12px}.video-frame,.audio-player{border:1px solid var(--border);border-radius:18px;background:var(--surface-soft);padding:16px}.video-placeholder{height:148px;display:grid;place-items:center;border-radius:14px;background:#edf2f7;color:var(--muted);font-weight:800}.audio-player{display:flex;gap:14px;align-items:center}.audio-wave{display:flex;align-items:center;gap:4px;flex:1;height:40px}.audio-wave span{display:block;width:6px;border-radius:999px;background:var(--accent)}.podcast-chat{display:grid;gap:8px;margin:12px 0}.bubble{max-width:85%;padding:10px 12px;border-radius:16px;background:var(--surface-soft);border:1px solid var(--border)}.bubble.right{justify-self:end;background:var(--accent-soft)}.flow-steps{grid-template-columns:repeat(4,1fr)}.flow-steps button{border:1px solid var(--border);border-radius:14px;padding:10px;background:var(--surface-soft);text-align:left}.flow-panel{margin-top:12px;padding:16px;border:1px solid var(--border);border-radius:16px;background:#fff}.source-grid{display:grid;grid-template-columns:auto 1fr;gap:10px 16px;padding:14px}.source-grid span{color:var(--muted)}.source-grid strong{text-align:right}.video-timeline{display:grid;gap:8px;margin:14px 0}.timeline-bar{height:10px;border-radius:999px;background:#e6edf5;position:relative;overflow:hidden}.timeline-bar:after{content:"";position:absolute;left:0;top:0;bottom:0;width:58%;background:var(--accent);border-radius:inherit}.candle-strip{display:flex;align-items:end;gap:4px;height:90px;border:1px solid var(--border);border-radius:14px;background:#fff;padding:8px}.candle{flex:1;min-width:6px;border-radius:999px;background:#98a2b3}.candle.up{background:#55a281}.candle.down{background:#d87a68}.muted{color:var(--muted)}.primary-action{border:1px solid var(--accent-strong);background:var(--accent);color:#fff;border-radius:8px;padding:9px 12px;font-weight:800}.primary-action:hover{background:var(--accent-hover)}.exercise-cta,.exercise-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:14px}.exercise-cta button{border:1px solid var(--border);border-radius:8px;background:#fff;padding:9px 12px;font-weight:700}.exercise-actions{border-top:1px solid var(--border);padding-top:12px}.exercise-actions .primary-action{min-width:150px;border-color:var(--accent-strong);background:var(--accent);color:#fff}.exercise-actions .primary-action:hover{background:var(--accent-hover)}.market-chart{width:100%;min-height:230px;display:block;overflow:visible}.market-chart-bg{fill:#fbfdff;stroke:var(--border)}.market-plot-area{fill:#fff;stroke:#dce8ee}.market-chart-grid{stroke:#e4edf2;stroke-width:1;shape-rendering:crispEdges}.market-chart-grid.vertical{stroke-dasharray:3 5;opacity:.8}.market-title{fill:var(--text);font-size:17px;font-weight:900;letter-spacing:.03em}.market-subtitle,.market-ohlc{fill:var(--muted);font-size:11px;font-weight:800}.market-price{font-size:16px;font-weight:900}.market-price.up{fill:#127a58}.market-price.down{fill:#b42318}.market-close-line{fill:none;stroke:#234b68;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;opacity:.28}.market-ma{fill:none;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.market-ma.fast{stroke:#d18400}.market-ma.slow{stroke:#4c6fff}.ma-label{font-size:10px;font-weight:900}.ma-label.fast{fill:#d18400}.ma-label.slow{fill:#4c6fff}.market-candle{cursor:pointer}.market-candle .wick{stroke-width:1.8}.wick.up,.candle-body.up{stroke:#0f7d5c;fill:#18a872}.wick.down,.candle-body.down{stroke:#b42318;fill:#e04f43}.market-candle.selected .candle-body{stroke:#111827;stroke-width:3}.volume-bar{opacity:.38}.volume-bar.up{fill:#2aa876}.volume-bar.down{fill:#df5b4f}.market-axis,.volume-divider{stroke:#b9c8d1;stroke-width:1;shape-rendering:crispEdges}.market-axis-label,.market-date-label{fill:var(--muted);font-size:10px;font-weight:800}.last-price-line{stroke-width:1.2;stroke-dasharray:5 4}.last-price-line.up{stroke:#0f7d5c}.last-price-line.down{stroke:#b42318}.last-price-label.up{fill:#0f7d5c}.last-price-label.down{fill:#b42318}.last-price-text{fill:#fff;font-size:10px;font-weight:900}.selected-crosshair{stroke:#11182766;stroke-width:1;stroke-dasharray:4 4}.market-chart-shell{width:100%;overflow:hidden;border:1px solid #1e2b3d;border-radius:8px;background:#0b1220;box-shadow:inset 0 1px #ffffff0f}.market-chart-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:11px 12px 4px;color:#d7e0ea}.market-chart-toolbar>div:first-child{display:grid;gap:2px;min-width:0}.market-chart-toolbar strong{font-size:.95rem;letter-spacing:.02em}.market-chart-toolbar span,.market-chart-meta{color:#8fa0b4;font-size:.76rem;font-weight:800}.market-live-price{display:grid;justify-items:end;gap:1px;flex:0 0 auto}.market-live-price strong{font-size:1rem}.market-live-price.up strong,.market-live-price.up span{color:#31d091}.market-live-price.down strong,.market-live-price.down span{color:#ff7b72}.market-chart-meta{display:flex;flex-wrap:wrap;gap:10px;padding:0 12px 8px}.market-chart-canvas{width:100%;min-width:0}.market-chart-canvas table,.market-chart-canvas canvas{border-radius:0 0 8px 8px}.chart-expanded-panel{margin-bottom:16px;border:1px solid var(--border);border-radius:8px;background:#0b1220;padding:10px}.chart-grid-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}.chart-option{display:grid;gap:10px;min-height:360px}.chart-option>span{font-weight:800}.chart-option .market-chart-shell{pointer-events:none}.drawing-surface,.zone-chart,.video-shell,.chart-video{position:relative;min-height:330px;border-radius:8px;overflow:hidden}.drawing-layer{position:absolute;top:70px;right:0;bottom:0;left:0;z-index:4;width:100%;height:auto;cursor:crosshair;pointer-events:auto}.user-line{stroke:#111827;stroke-width:4;stroke-linecap:round}.user-point{fill:#fff;stroke:#111827;stroke-width:3}.inline-actions,.slider-grid{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:12px}.inline-actions button{border:1px solid var(--border);background:#fff;border-radius:8px;padding:8px 12px}.zone-overlay{position:absolute;top:70px;bottom:0;z-index:2;background:#196b7529;border:2px solid var(--accent);border-radius:8px;pointer-events:none}.zone-drawing-layer{position:absolute;top:70px;right:0;bottom:0;left:0;z-index:3;cursor:crosshair}.zone-chart .market-chart-shell{position:relative;z-index:0}.slider-grid label,.range-label{display:grid;gap:6px;color:var(--muted);font-weight:700;flex:1;min-width:180px}.range-label input,.slider-grid input{padding:0}.framed-ranking{display:grid;gap:12px}.ranking-row{display:grid;grid-template-columns:34px minmax(0,1fr) 44px;gap:12px;align-items:center}.rank-outside{background:#fff;border:1px solid var(--border);color:var(--text)}.ranking-box{border:1px solid var(--border);border-radius:8px;padding:12px}.ranking-box.row-blue{background:var(--blue-soft)}.ranking-box.row-green{background:var(--green-soft)}.ranking-box.row-amber{background:var(--amber-soft)}.outside-actions{display:grid;gap:6px}.outside-actions button{width:38px;height:34px;border:1px solid var(--border);background:#fff;border-radius:8px;font-weight:900}.match-grid{grid-template-columns:1fr 1fr;gap:18px}.match-column{display:grid;gap:10px;align-content:start}.match-column>strong{color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.05em}.match-item{width:100%;display:flex;justify-content:space-between;gap:10px;min-height:48px;text-align:left}.match-item small{color:var(--muted)}.match-item.matched{border-color:var(--success);background:var(--success-soft);color:#0f5138}.paired-list{display:grid;gap:8px;margin-top:14px}.pair-row{display:grid;grid-template-columns:minmax(90px,1fr) 64px minmax(120px,1.4fr);gap:10px;align-items:center;color:var(--muted);font-size:.9rem}.pair-row.complete{color:var(--text);font-weight:700}.pair-line{height:2px;background:var(--border-strong);position:relative}.pair-line:after{content:"";position:absolute;right:-2px;top:-4px;width:9px;height:9px;border-top:2px solid var(--border-strong);border-right:2px solid var(--border-strong);transform:rotate(45deg)}.grouping-board{display:grid;grid-template-columns:.9fr 1.6fr;gap:16px}.grouping-source,.target-column{border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);padding:12px}.grouping-source{display:grid;gap:10px;align-content:start}.group-card{border:1px solid var(--border);border-radius:8px;background:#fff;padding:10px 12px;text-align:left;font-weight:800}.grouping-targets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.target-column{min-height:170px;display:flex;flex-direction:column;gap:8px}.target-column small{margin-top:auto;color:var(--muted)}.group-chip{border:0;justify-content:center;color:#144c3a;background:var(--success-soft)}.real-map{height:260px}.landmass{fill:#dbeee6;stroke:#9db8ab;stroke-width:1.5}.map-bg{fill:#eef7fb;stroke:var(--border)}.map-dot{fill:#fff;stroke:var(--accent);stroke-width:3}.map-dot.selected{fill:#ffe8a3;stroke:#b7791f;stroke-width:5}.map-country text{font-size:12px;font-weight:800;fill:var(--text);paint-order:stroke;stroke:#fff;stroke-width:3px}.comparison-grid{display:grid;gap:14px;margin-bottom:14px}.comparison-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-count-3{grid-template-columns:repeat(3,minmax(0,1fr))}.comparison-count-4{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-card{display:grid;gap:10px;border:1px solid var(--border);border-radius:8px;background:#fff;padding:14px}.comparison-card input{width:auto}.comparison-title{font-size:1rem;font-weight:900}.metric-row.compact .metric-pill{min-width:72px;padding:8px 9px}.formula-card{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--border);border-radius:8px;background:#fff;padding:16px;font-size:1.3rem;font-weight:900}.formula-token{padding:8px 12px;border-radius:8px;background:var(--surface-soft);border:1px solid var(--border)}.formula-token.result{color:var(--accent-strong);background:var(--accent-soft)}.formula-gap{width:150px;border:2px dashed var(--accent);text-align:center;font-weight:900}.statement-card{display:grid;gap:6px;padding:14px;border-radius:8px;border:1px solid var(--border);background:var(--surface-soft);margin-bottom:12px}.statement-card span{color:var(--muted);font-size:.8rem;font-weight:800;text-transform:uppercase}.tf-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}.tf-choice-grid button{display:grid;gap:4px;text-align:left;border:1px solid var(--border);background:#fff;border-radius:8px;padding:12px}.tf-choice-grid span{color:var(--muted);font-size:.88rem}.text-marking{border:1px solid var(--border);border-radius:8px;background:#fff;padding:16px;font-size:1rem}.text-marking button{display:inline;margin:0;border:0;border-radius:4px;background:transparent;padding:2px 3px;color:var(--text);text-decoration:underline;text-decoration-thickness:2px;text-decoration-color:#f7c948;text-underline-offset:4px}.text-marking button.marked{background:#fff3b0;box-shadow:inset 0 -8px #f7d154}.feedback-panel.error{border-color:#ffd3cc;background:linear-gradient(180deg,var(--danger-soft),#fff)}.feedback-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.feedback-badge{border-radius:999px;padding:5px 9px;color:#8a1c12;background:#ffd8d2;font-weight:900;font-size:.76rem;text-transform:uppercase}.feedback-formula{border-radius:8px;padding:12px;background:#fff;border:1px solid #ffc3bb;font-weight:900;text-align:center}.feedback-note{display:grid;gap:4px;margin-top:12px;padding:12px;border-radius:8px;background:var(--success-soft);border:1px solid #b7e6ce;color:#115f43}.chart-video{background:#0f172a;padding:0}.chart-video .market-chart{opacity:.78;filter:saturate(.85)}.video-play-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;align-content:center;color:#fff;background:linear-gradient(180deg,#0f172a1f,#0f172a73);text-align:center}.video-play-overlay span{display:grid;place-items:center;width:56px;height:56px;border-radius:999px;background:#ffffff38;border:1px solid rgba(255,255,255,.5)}.chapter-list{margin:12px 0 0;color:var(--muted)}.audio-player{background:#fff}.audio-wave-mini{display:flex;align-items:center;gap:3px;min-width:64px;height:34px}.audio-wave-mini span{width:5px;border-radius:999px;background:var(--accent);opacity:.85}.audio-progress{flex:1;height:8px;border-radius:999px;background:#e3ebef;overflow:hidden}.audio-progress span{display:block;height:100%;background:var(--accent);border-radius:inherit}.podcast-thread{display:grid;gap:10px;margin:12px 0}.podcast-bubble{display:flex;gap:10px;align-items:flex-start;max-width:86%;border:1px solid var(--border);border-radius:16px;padding:10px;background:#fff}.podcast-bubble.right{justify-self:end;background:var(--accent-soft)}.podcast-bubble button{flex:0 0 auto;border:1px solid var(--border);background:#fff;border-radius:999px;width:32px;height:32px}.podcast-bubble p{margin:0;display:grid;gap:2px;color:var(--text)}.course-flow-layout{display:grid;grid-template-columns:170px minmax(0,1fr);gap:16px;align-items:stretch}.flow-steps.vertical{grid-template-columns:1fr}.flow-steps.vertical button{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:center;min-height:52px}.flow-steps.vertical span{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:#fff;color:var(--accent);font-weight:900}.flow-panel{display:grid;align-content:start;gap:10px;min-height:220px}.preview-shell .edu-card{background:linear-gradient(180deg,#fff,#fbfdff);border-color:#ccd9e8}.primary-action{border-color:var(--accent-strong);background:var(--accent);color:#fff}.secondary-action{border:1px solid var(--accent-strong);border-radius:8px;background:var(--accent);color:#fff;padding:9px 12px;font-weight:800}.exercise-cta{padding-top:12px;border-top:1px solid var(--border)}.exercise-cta .primary-action,.exercise-cta .secondary-action{min-width:138px}.enhanced-table table{border-collapse:separate;border-spacing:0}.enhanced-table tbody tr:nth-child(2n){background:#fbfcfd}.sort-header{all:unset;display:inline-flex;align-items:center;gap:6px;cursor:pointer;color:var(--muted);font-weight:900}.sort-header span{display:inline;color:var(--accent);font-size:.96rem;line-height:1}.sort-header.active,.sort-header.active span{color:var(--accent-strong)}.interactive-table .sort-header{margin-top:0}.risk-select{min-width:120px;padding:8px 10px;border-radius:8px}.parameter-lab-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(240px,.85fr);gap:16px;align-items:stretch}.parameter-controls{display:grid;gap:12px}.parameter-row{display:grid;grid-template-columns:minmax(150px,1fr) 54px;gap:8px 12px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:8px;background:#fff}.parameter-row span{display:grid;gap:2px}.parameter-row small{color:var(--muted)}.parameter-row output{justify-self:end;color:var(--accent-strong);font-weight:900}.parameter-row input{grid-column:1 / -1;padding:0}.lab-result-card{display:grid;align-content:start;gap:10px;padding:16px;border:1px solid #b8d9d7;border-radius:8px;background:linear-gradient(180deg,var(--accent-soft),#fff)}.lab-result-card>span{color:var(--muted);font-weight:900;text-transform:uppercase;font-size:.78rem}.lab-result-card>strong{font-size:2rem;color:var(--accent-strong)}.grouping-board.stacked{grid-template-columns:1fr}.grouping-board.stacked .grouping-source{min-height:auto;background:#fff}.grouping-source p{margin:2px 0 0}.group-pool-row{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:10px}.grouping-board.stacked .group-card{min-height:46px;text-align:center;background:var(--surface-soft)}.grouping-targets{align-items:stretch}.target-column{background:#fff;border-style:dashed}.target-column strong{color:var(--accent-strong)}.real-map-frame{position:relative;height:290px;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:#d9e8ef}.osm-tile-grid{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);transform:scale(1.04);transform-origin:center}.osm-tile-grid img{width:100%;height:100%;object-fit:cover;pointer-events:none}.map-pin{position:absolute;z-index:2;transform:translate(-50%,-50%);width:38px;height:38px;display:grid;place-items:center;border:2px solid #fff;border-radius:999px;background:#1f6f75;color:#fff;box-shadow:0 8px 20px #0f172a40;font-size:.78rem;font-weight:900}.map-pin.selected{background:#d18400;color:#111827;outline:3px solid rgba(209,132,0,.24)}.map-panel{margin-top:10px}.flashcard{min-height:270px;place-items:stretch;text-align:left;border-radius:8px;border-color:#b9d1da;background:linear-gradient(135deg,#196b751a,#fff0 42%),#fff;color:var(--text)}.flashcard.flipped{background:linear-gradient(135deg,#16835c1f,#fff0 48%),#fff}.flashcard-topline,.flashcard-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;width:100%}.flashcard-topline{color:var(--muted);font-size:.82rem;font-weight:900}.flashcard-status{border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);padding:5px 9px}.flashcard-body{display:grid;align-content:center;gap:12px;min-height:150px;width:100%;padding:12px 0}.flashcard-body strong{max-width:620px;font-size:1.45rem;line-height:1.2}.flashcard-body p{max-width:680px;margin:0}.flashcard-footer{border-top:1px solid var(--border);padding-top:12px;color:var(--accent-strong);font-weight:900}.confidence-dots{display:flex;gap:5px}.confidence-dots i{width:8px;height:8px;border-radius:999px;background:var(--accent)}.comparison-card{gap:12px;border-color:#cbdce4;background:linear-gradient(180deg,#fff,#f9fcfb)}.comparison-card.active{border-color:var(--success)!important;background:var(--success-soft)!important}.comparison-card-head{display:flex;gap:10px;align-items:flex-start}.comparison-card-head span{display:grid;gap:2px}.comparison-card-head small,.comparison-note,.reason-box>span{color:var(--muted)}.comparison-card-head strong{font-size:1.05rem}.comparison-note{margin:0;font-size:.92rem}.reason-box{display:grid;gap:6px;font-weight:800}.short-answer-shell{display:grid;gap:10px;border:1px solid var(--border);border-radius:8px;background:#fff;padding:14px}.answer-brief,.answer-footer{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.88rem}.answer-brief strong{color:var(--text)}.answer-footer{border-top:1px solid var(--border);padding-top:10px}.formula-workbench{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:14px}.formula-card{min-height:112px;background:linear-gradient(180deg,#fff,#f8fbfb)}.formula-context{display:grid;gap:8px;align-content:center;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);padding:14px}.formula-context span{color:var(--muted);font-size:.8rem;font-weight:900;text-transform:uppercase}.statement-card p{margin:0;color:var(--muted)}.calculation-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:16px;align-items:stretch}.calculation-metrics{align-content:start;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.calculation-answer{display:grid;gap:10px;align-content:start;padding:14px;border:1px solid #bdd8df;border-radius:8px;background:var(--accent-soft)}.answer-field{display:grid;gap:6px;font-weight:900}.marking-layout{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:14px}.text-marking{font-size:1.03rem}.text-marking p{margin:8px 0 0;color:var(--text)}.report-label{color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.marking-summary{display:grid;gap:8px;align-content:start;border:1px solid #ead28c;border-radius:8px;background:#fff8df;padding:14px}.marking-summary span{color:#6e5200}.definition-hero{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border:1px solid #cbdce4;border-radius:8px;background:#fff;padding:16px}.definition-hero h3{margin:0 0 6px;font-size:1.4rem}.definition-hero p{margin:0}.definition-hero code{flex:0 0 auto;border-radius:8px;background:var(--accent-soft);color:var(--accent-strong);padding:10px 12px;font-weight:900}.definition-metrics{margin-top:14px}.gap-fill-card{border:1px solid var(--border);border-radius:8px;background:#fff;padding:16px}.gap-text{margin:0;color:var(--text)!important}.gap-text select{border-radius:8px;background:var(--surface-soft);font-weight:800}.term-bank{display:grid;gap:8px;margin-top:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft)}.source-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.source-head h3{margin:0}.source-head span{border-radius:999px;background:var(--warning-soft);color:#7c4705;padding:5px 10px;font-size:.78rem;font-weight:900}.source-grid{margin-top:12px;background:#fff;border-radius:8px}.source-warning{margin:10px 0 0;border-left:4px solid var(--warning);background:var(--warning-soft);border-radius:8px;padding:10px 12px;color:#7c4705!important}.decision-case-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:16px}.decision-metrics{padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.decision-panel{display:grid;gap:12px;align-content:start;border:1px solid #cbdce4;border-radius:8px;background:var(--surface-soft);padding:14px}.decision-panel label{display:grid;gap:6px;color:var(--muted);font-weight:900}.feedback-panel.error{border-color:#ffc3bb;background:linear-gradient(180deg,var(--danger-soft),#fff)}.feedback-next-step{display:grid;gap:4px;margin-top:12px;padding:12px;border-radius:8px;background:#ffe5e1;border:1px solid #ffc3bb;color:#8a1c12}.feedback-note{background:#ffe5e1;border-color:#ffc3bb;color:#8a1c12}.video-shell{border:1px solid #253044;background:#0f172a}.video-shell .market-chart,.chart-video .market-chart{opacity:1;filter:none}.chart-video{min-height:290px}.video-play-overlay span{font-size:1.4rem}.flow-preview{display:grid;gap:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);padding:14px}.flow-preview span{color:var(--accent-strong);font-size:.82rem;font-weight:900;text-transform:uppercase}.flow-preview p{margin:0}@media (max-width: 1040px){.catalog-page{padding:0 14px 40px}.catalog-topbar{grid-template-columns:1fr auto;margin:0 -14px;padding:12px 14px}.catalog-subbar{margin:0 -14px;padding:11px 14px}.topbar-search{grid-column:1 / -1}.catalog-layout{grid-template-columns:1fr}.filters{position:static;max-height:none}}@media (max-width: 860px){.catalog-page{padding-bottom:40px}.hero,.component-card-header,.card-grid,.drawing-layout,.group-board,.compare-grid,.chart-set,.flow-steps,.chart-grid-cards,.match-grid,.grouping-board,.grouping-targets,.comparison-grid,.tf-choice-grid,.course-flow-layout,.parameter-lab-layout,.formula-workbench,.calculation-layout,.marking-layout,.decision-case-layout{grid-template-columns:1fr}.component-gallery-list .component-thumb{grid-template-columns:1fr;grid-template-rows:auto auto 1fr auto}.component-gallery-list .component-thumb-meta,.component-gallery-list .component-thumb-preview,.component-gallery-list .component-thumb-body,.component-gallery-list .component-thumb-footer{grid-column:1;grid-row:auto}.component-gallery-list .component-thumb-preview{height:auto;min-height:0;aspect-ratio:16 / 10}.component-gallery-list .thumbnail-stage{left:calc(50% - 175px);transform:scale(.46)}.hero{padding:22px}.component-card-header,.preview-shell,.card-grid{padding-left:18px;padding-right:18px}.tag-section{margin-left:18px;margin-right:18px}.classification-row,.source-grid{grid-template-columns:1fr}.source-grid strong{text-align:left}.group-pool-row{grid-template-columns:1fr}.definition-hero,.answer-brief,.answer-footer,.source-head{flex-direction:column;align-items:flex-start}.ranking-row{grid-template-columns:30px minmax(0,1fr)}.outside-actions{grid-column:2;grid-template-columns:repeat(2,40px)}.pair-row{grid-template-columns:1fr}.pair-line{display:none}}@media (max-width: 520px){.brand p,.subbar-actions{display:none}.component-gallery{grid-template-columns:1fr}.thumbnail-stage,.component-gallery-list .thumbnail-stage{left:calc(50% - 161px);transform:scale(.424)}}
