:root{--bg: #0b1220;--bg-elev: #131a2b;--bg-card: #1a2238;--border: #2a3553;--text: #e6edf7;--text-muted: #94a3b8;--accent: #22c55e;--accent-2: #38bdf8;--danger: #ef4444;--warning: #f59e0b;--radius: 12px;font-family:ui-sans-serif,system-ui,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-height:100vh;font-size:14px}a{color:var(--accent-2)}.app{max-width:1280px;margin:0 auto;padding:24px 20px 64px}.header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}.header h1{margin:0;font-size:22px;letter-spacing:.3px}.header h1 span{color:var(--accent)}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;background:var(--bg-elev);border:1px solid var(--border);color:var(--text-muted)}.badge.ok{color:var(--accent);border-color:#22c55e66}.badge.warn{color:var(--warning);border-color:#f59e0b66}.search-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:18px;margin-bottom:20px}.search-row{display:grid;grid-template-columns:1fr auto auto auto;gap:10px;align-items:center}@media (max-width: 720px){.search-row{grid-template-columns:1fr}}.action-plan{background:linear-gradient(135deg,#22c55e14,#38bdf80d);border:1px solid rgba(34,197,94,.3);border-radius:var(--radius);padding:16px;margin:16px 0}.action-plan .ap-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.action-plan .ap-head h3{margin:0;font-size:16px;color:var(--accent)}.action-plan .ap-headline{font-size:14px;margin-bottom:10px;font-style:italic;color:var(--text)}.ap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.ap-block{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:10px 12px}.ap-block.stop{border-color:#ef444459}.ap-block.target{border-color:#22c55e59}.ap-block .ap-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px}.ap-block .ap-value{font-size:18px;font-weight:700;margin:4px 0}.ap-block.stop .ap-value{color:var(--danger)}.ap-block.target .ap-value{color:var(--accent)}.ap-block .ap-hint{font-size:11px;color:var(--text-muted);line-height:1.4}.ap-now{margin-top:10px;padding:10px;background:var(--bg-card);border-left:3px solid var(--accent-2);border-radius:4px;font-size:13px}.ap-notes{margin:10px 0 0;padding-left:18px;font-size:12px;color:var(--text-muted)}.ap-notes li{margin:3px 0}.live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent);margin-right:6px;animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.market-state{font-size:11px;color:var(--text-muted);margin-top:4px}.pf-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:16px}.pf-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}.pf-card-head h3{margin:0;font-size:16px}.pf-h4{margin:0 0 10px;font-size:13px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px}.pf-table{width:100%;border-collapse:collapse;font-size:13px}.pf-table th,.pf-table td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--border)}.pf-table th{color:var(--text-muted);font-weight:500;font-size:11px;text-transform:uppercase}.pf-table input[type=text],.pf-table input[type=number]{background:var(--bg-card);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:6px 8px}.pf-table .pos{color:var(--accent)}.pf-table .neg{color:var(--danger)}.pf-total{margin:10px 0;font-size:13px}.pf-total .ok{color:var(--accent)}.pf-total .warn{color:var(--warning)}.pf-controls{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:6px}.pf-controls select,.pf-controls input{background:var(--bg-card);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:8px 10px;font-size:13px}.pf-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:16px}.pf-kpi{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:10px 12px}.pf-kpi .k{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.pf-kpi .v{font-size:18px;font-weight:700;margin-top:4px}.pf-kpi .v.pos{color:var(--accent)}.pf-kpi .v.neg{color:var(--danger)}.pf-compare{width:100%;border-collapse:collapse;font-size:13px}.pf-compare th,.pf-compare td{padding:8px;border-bottom:1px solid var(--border);text-align:right}.pf-compare th:first-child,.pf-compare td:first-child{text-align:left}.pf-compare th{color:var(--text-muted);font-weight:500;font-size:11px;text-transform:uppercase}.pf-compare tr.highlight{background:#22c55e0f;font-weight:600}.pf-compare .pos{color:var(--accent)}.pf-compare .neg{color:var(--danger)}.weight-bar{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;height:18px;overflow:hidden}.weight-bar>div{height:100%;background:linear-gradient(90deg,var(--accent-2),var(--accent));opacity:.55}.weight-bar>span{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--text)}.corr table{border-collapse:collapse;font-size:12px}.corr th,.corr td{padding:6px 10px;border:1px solid var(--border);text-align:center;min-width:50px}.corr th{color:var(--text-muted);background:var(--bg-card)}.corr-legend{font-size:11px;color:var(--text-muted);margin-top:8px}.main-tabs{display:inline-flex;background:var(--bg-card);border-radius:10px;padding:4px;border:1px solid var(--border);margin-bottom:16px}.main-tabs button{background:transparent;color:var(--text-muted);border:none;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500}.main-tabs button.active{background:var(--accent);color:#0b1220;font-weight:700}.session-bar{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-bottom:14px;color:var(--text-muted);font-size:12px}.session-bar button{background:transparent;color:var(--text);border:1px solid var(--border);border-radius:8px;padding:6px 10px;cursor:pointer}.session-bar button:hover{border-color:var(--accent-2)}.login-page{min-height:100vh;display:grid;place-items:center;padding:32px 18px;background:linear-gradient(135deg,rgba(34,197,94,.12),transparent 34%),linear-gradient(315deg,rgba(56,189,248,.13),transparent 38%),#070d18}.login-shell{width:min(1080px,100%);min-height:640px;display:grid;grid-template-columns:minmax(0,1.2fr) 430px;border:1px solid rgba(148,163,184,.18);border-radius:8px;overflow:hidden;background:#0b1220e0;box-shadow:0 24px 80px #00000057}.login-brand-panel{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:34px;background:linear-gradient(180deg,#0b12201a,#0b1220d6),repeating-linear-gradient(90deg,rgba(148,163,184,.08) 0,rgba(148,163,184,.08) 1px,transparent 1px,transparent 72px),repeating-linear-gradient(0deg,rgba(148,163,184,.06) 0,rgba(148,163,184,.06) 1px,transparent 1px,transparent 72px),#0a1324}.login-brand-panel:after{content:"";position:absolute;inset:auto 34px 122px 34px;height:170px;background:linear-gradient(145deg,transparent 0 9%,rgba(56,189,248,.32) 9% 10%,transparent 10% 24%,rgba(34,197,94,.38) 24% 25%,transparent 25% 41%,rgba(245,158,11,.32) 41% 42%,transparent 42%),linear-gradient(180deg,transparent,rgba(34,197,94,.04));border-bottom:1px solid rgba(148,163,184,.2);pointer-events:none}.login-brand{display:inline-flex;align-items:center;gap:12px;color:var(--text);font-weight:700;font-size:15px}.brand-mark{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#07111f;font-weight:900;letter-spacing:0}.login-copy{position:relative;z-index:1;max-width:560px;margin-top:auto;margin-bottom:170px}.premium-kicker,.login-eyebrow{display:inline-flex;width:fit-content;color:#facc15;border:1px solid rgba(250,204,21,.32);background:#facc1514;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.login-copy h1{margin:18px 0 12px;max-width:680px;font-size:clamp(34px,5vw,60px);line-height:1.02;letter-spacing:0}.login-copy p{margin:0;max-width:560px;color:var(--text-muted);font-size:16px;line-height:1.65}.login-market-strip{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.login-market-strip div{border:1px solid rgba(148,163,184,.18);background:#131a2bb8;border-radius:8px;padding:12px}.login-market-strip span{display:block;color:var(--text-muted);font-size:11px;margin-bottom:5px}.login-market-strip strong{color:var(--accent);font-size:18px}.login-market-strip strong.muted{color:#facc15}.login-card{display:flex;flex-direction:column;justify-content:center;gap:18px;padding:42px;background:#131a2bf5;border-left:1px solid rgba(148,163,184,.18)}.login-card-head h2{margin:14px 0 0;font-size:30px;letter-spacing:0}.login-field{display:flex;flex-direction:column;gap:8px;color:var(--text-muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.login-field input{width:100%;height:48px;color:var(--text);background:#0b1220;border:1px solid var(--border);border-radius:8px;padding:0 14px;font-size:15px;outline:none}.login-field input:focus{border-color:var(--accent-2);box-shadow:0 0 0 3px #38bdf81f}.login-options{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--text-muted);font-size:13px}.login-options label{display:inline-flex;align-items:center;gap:8px}.login-options input{accent-color:var(--accent)}.login-options button{background:transparent;border:none;color:var(--accent-2);cursor:pointer;padding:0;font:inherit}.login-submit{width:100%;height:50px;border:none;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#06101d;font-size:15px;font-weight:800;cursor:pointer}.login-submit:hover{filter:brightness(1.06)}.login-error{color:#fecaca;background:#ef44441a;border:1px solid rgba(239,68,68,.4);border-radius:8px;padding:10px 12px;font-size:13px}.login-trust-row{display:flex;flex-wrap:wrap;gap:8px;color:var(--text-muted);font-size:11px}.login-trust-row span{border:1px solid var(--border);border-radius:999px;padding:5px 8px;background:#0b122080}@media (max-width: 860px){.login-page{display:block;padding:18px}.login-shell{min-height:0;grid-template-columns:1fr}.login-brand-panel{min-height:420px;padding:24px}.login-brand-panel:after{inset:auto 24px 92px 24px;height:120px}.login-copy{margin-bottom:122px}.login-card{border-left:none;border-top:1px solid rgba(148,163,184,.18);padding:26px 20px}}@media (max-width: 560px){.login-market-strip{grid-template-columns:1fr}.login-brand-panel:after{display:none}.login-copy{margin:44px 0 24px}.login-copy h1{font-size:34px}.login-options{align-items:flex-start;flex-direction:column}}.pf-h3{margin:0 0 14px;font-size:16px}.kv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;margin-bottom:10px}.kv{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:8px 10px}.kv-label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px}.kv-value{font-size:14px;font-weight:600;margin-top:4px}.kv-value.pos{color:var(--accent)}.kv-value.neg{color:var(--danger)}.grp{margin:14px 0 8px;font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);padding-bottom:4px}.research{background:linear-gradient(135deg,#38bdf80f,#22c55e0a);border-color:#38bdf84d}.research .report-section{margin-bottom:14px}.research h4{margin:0 0 6px;font-size:13px;color:var(--accent-2);text-transform:uppercase;letter-spacing:.3px}.research p{margin:0;line-height:1.55;font-size:14px}.research .report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-bottom:14px}.research .report-block{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:10px 12px}.research .report-block h5{margin:0 0 6px;font-size:12px;color:var(--text-muted);text-transform:uppercase}.research .report-block ul{margin:0;padding-left:18px;font-size:13px}.research .report-block ul li{margin:3px 0}.targets{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.targets>div{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:10px;text-align:center}.targets .t-label{display:block;font-size:11px;color:var(--text-muted);text-transform:uppercase;margin-bottom:4px}.targets .t-val{font-size:20px;font-weight:700}.targets .t-val.pos{color:var(--accent)}.targets .t-val.neg{color:var(--danger)}.rating-buy{color:var(--accent)!important;border-color:#22c55e80!important}.rating-sell{color:var(--danger)!important;border-color:#ef444480!important}.rating-hold{color:var(--warning)!important;border-color:#f59e0b80!important}.trade-plan{background:var(--bg-card);border-left:3px solid var(--accent);padding:10px 14px;border-radius:4px;font-size:13px}.trade-plan>div{margin:4px 0;line-height:1.5}.mtf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-bottom:10px}.tf-card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:12px}.tf-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.tf-trend{font-size:11px;padding:3px 8px;border-radius:999px;background:var(--bg-elev);color:var(--text-muted)}.tf-trend.pos{color:var(--accent);background:#22c55e1f}.tf-trend.neg{color:var(--danger);background:#ef44441f}.tf-score{display:flex;align-items:center;gap:8px;margin-bottom:6px}.tf-score-bar{flex:1;height:8px;background:var(--bg-elev);border-radius:4px;position:relative;overflow:hidden}.tf-score-bar:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:var(--border)}.tf-score-bar>div{position:absolute;height:100%}.tf-meta{font-size:11px;color:var(--text-muted);margin-bottom:6px}.tf-reasons{margin:6px 0 0;padding-left:16px;font-size:11px;color:var(--text-muted)}.tf-reasons li{margin:2px 0}.mtf-summary{font-size:13px;margin-bottom:10px;padding:8px 10px;background:var(--bg-card);border-radius:6px}.mtf-summary .pos{color:var(--accent)}.range-bar{height:18px;background:var(--bg-card);border-radius:9px;border:1px solid var(--border);position:relative;overflow:hidden}.range-fill{height:100%;background:linear-gradient(90deg,var(--accent-2),var(--accent))}.range-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--text-muted);margin-top:4px}.sr-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sr-row{display:flex;justify-content:space-between;padding:4px 0;font-size:13px;border-bottom:1px dotted var(--border)}.pivots-grid{grid-template-columns:repeat(7,1fr)!important}.patterns-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.pattern{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:10px 12px;position:relative}.pattern.alcista{border-left:3px solid var(--accent)}.pattern.bajista{border-left:3px solid var(--danger)}.pattern.indecisión{border-left:3px solid var(--warning)}.pattern-date{font-size:11px;color:var(--text-muted)}.pattern-name{font-weight:600;font-size:14px;margin:2px 0 6px}.pattern-desc{font-size:12px;color:var(--text-muted);line-height:1.4}.pattern-kind{position:absolute;top:8px;right:8px;font-size:10px;padding:2px 6px;border-radius:4px;text-transform:uppercase}.pattern-kind.alcista{background:#22c55e2e;color:var(--accent)}.pattern-kind.bajista{background:#ef44442e;color:var(--danger)}.pattern-kind.indecisión{background:#f59e0b2e;color:var(--warning)}.lab-table{width:100%;border-collapse:collapse;font-size:12px}.lab-table th,.lab-table td{padding:7px 6px;border-bottom:1px solid var(--border);text-align:right}.lab-table th:first-child,.lab-table td:first-child,.lab-table th:nth-child(2),.lab-table td:nth-child(2),.lab-table th:nth-child(3),.lab-table td:nth-child(3),.lab-table th:nth-child(4),.lab-table td:nth-child(4){text-align:left}.lab-table th{color:var(--text-muted);font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:.3px}.lab-table tr.highlight{background:#22c55e0f;font-weight:600}.lab-table .pos{color:var(--accent)}.lab-table .neg{color:var(--danger)}.verdict{display:inline-block;font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--border);font-weight:600}.lab-detail-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.rank-pill{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;border-radius:50%;font-weight:700;color:#0b1220;font-size:13px}.lab-compare{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:10px}.lab-compare th,.lab-compare td{padding:8px 6px;border-bottom:1px solid var(--border);text-align:right}.lab-compare th:first-child,.lab-compare td:first-child{text-align:left}.lab-compare th{color:var(--text-muted);font-weight:500;font-size:11px;text-transform:uppercase}.lab-compare .pos{color:var(--accent)}.lab-compare .neg{color:var(--danger)}.exec-steps{padding-left:22px;margin:0 0 10px}.exec-steps li{margin:6px 0;line-height:1.5;font-size:13px}.exec-example{margin:6px 0 12px;padding:10px 12px;border-left:3px solid var(--accent);background:#22c55e14;border-radius:0 8px 8px 0;font-size:13px;line-height:1.55;color:var(--text)}.search-row input,.search-row select{background:var(--bg-card);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-size:14px;outline:none}.search-row input:focus,.search-row select:focus{border-color:var(--accent-2)}.btn{background:var(--accent);color:#0b1220;border:none;padding:10px 18px;border-radius:8px;font-weight:600;cursor:pointer;transition:filter .15s}.btn:hover{filter:brightness(1.1)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--border)}.tabs{display:inline-flex;background:var(--bg-card);border-radius:8px;padding:4px;border:1px solid var(--border)}.tabs button{background:transparent;color:var(--text-muted);border:none;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:13px}.tabs button.active{background:var(--accent);color:#0b1220;font-weight:600}.ai-block{background:linear-gradient(135deg,#38bdf814,#22c55e14);border:1px solid rgba(56,189,248,.3);border-radius:var(--radius);padding:16px;margin-bottom:16px}.ai-block h3{margin:0 0 8px;font-size:14px;color:var(--accent-2)}.section-title{font-size:15px;font-weight:600;margin:18px 0 10px;color:var(--text-muted);letter-spacing:.4px;text-transform:uppercase}.ticker-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:18px;margin-bottom:20px}.ticker-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.ticker-head h2{margin:0;font-size:22px}.ticker-head .price{font-size:22px;font-weight:600}.ticker-head .change.up{color:var(--accent)}.ticker-head .change.down{color:var(--danger)}.ticker-head .meta{color:var(--text-muted);font-size:12px}.strategies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.strategy-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px;display:flex;flex-direction:column;gap:8px;position:relative}.strategy-card.best{border-color:#22c55e99;box-shadow:0 0 0 1px #22c55e40}.strategy-card .ribbon{position:absolute;top:-10px;right:12px;background:var(--accent);color:#0b1220;font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px;letter-spacing:.3px}.strategy-card h4{margin:0;font-size:15px}.strategy-card .desc{color:var(--text-muted);font-size:12px}.signal{padding:3px 8px;border-radius:6px;font-weight:600;font-size:12px;display:inline-block}.signal.COMPRA{background:#22c55e2e;color:var(--accent)}.signal.VENTA{background:#ef44442e;color:var(--danger)}.signal.NEUTRAL{background:#94a3b82e;color:var(--text-muted)}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:12px;margin-top:4px}.metrics div{display:flex;justify-content:space-between}.metrics .k{color:var(--text-muted)}.metrics .v{font-weight:600}.metrics .v.pos{color:var(--accent)}.metrics .v.neg{color:var(--danger)}.score-bar{height:6px;background:var(--border);border-radius:3px;overflow:hidden}.score-bar>div{height:100%;background:linear-gradient(90deg,var(--accent-2),var(--accent))}.disclaimer{margin-top:28px;padding:14px;background:var(--bg-elev);border:1px dashed var(--border);border-radius:var(--radius);color:var(--text-muted);font-size:12px;line-height:1.5}.error{padding:12px;background:#ef44441a;border:1px solid rgba(239,68,68,.4);color:#fecaca;border-radius:8px;font-size:13px;margin-bottom:12px}.loading{padding:24px;text-align:center;color:var(--text-muted)}.spinner{display:inline-block;width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin-right:8px;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}.chart-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px;margin-bottom:12px}.alt-card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:10px 12px;margin-top:8px;font-size:13px}.alt-card .profile{display:inline-block;font-size:11px;font-weight:600;padding:2px 6px;border-radius:4px;margin-right:6px;background:#38bdf826;color:var(--accent-2)}.alt-card.conservadora .profile{background:#22c55e26;color:var(--accent)}.alt-card.agresiva .profile{background:#f59e0b26;color:var(--warning)}.suggestions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.suggestion-chip{padding:4px 10px;background:var(--bg-card);border:1px solid var(--border);color:var(--text-muted);border-radius:999px;font-size:12px;cursor:pointer}.suggestion-chip:hover{color:var(--text);border-color:var(--accent-2)}.glossary{display:flex;flex-direction:column;gap:16px}.glossary-header h2{font-size:22px}.glossary-controls{display:flex;flex-direction:column;gap:12px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:14px}.glossary-search{width:100%;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:14px;outline:none;transition:border-color .15s ease}.glossary-search:focus{border-color:var(--accent-2)}.glossary-cats{display:flex;flex-wrap:wrap;gap:8px}.gl-cat{display:inline-flex;align-items:center;gap:6px;background:var(--bg);border:1px solid var(--border);color:var(--text);padding:6px 12px;border-radius:999px;font-size:12px;cursor:pointer;transition:all .15s ease}.gl-cat:hover{border-color:var(--accent-2)}.gl-cat.active{background:var(--accent-2);border-color:var(--accent-2);color:#0b1220;font-weight:600}.gl-count{background:#ffffff1a;color:inherit;border-radius:999px;padding:1px 7px;font-size:10px;font-weight:700}.gl-cat.active .gl-count{background:#0b122040}.glossary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.gl-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;display:flex;flex-direction:column;gap:8px;transition:transform .15s ease,border-color .15s ease}.gl-card:hover{transform:translateY(-2px);border-color:var(--accent-2)}.gl-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:2px}.gl-card-head h3{margin:0;font-size:15px;line-height:1.25}.gl-tag{display:inline-block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;padding:3px 8px;border:1px solid;border-radius:999px;white-space:nowrap}.gl-short{font-size:13.5px;margin:0;color:var(--text);font-weight:600}.gl-detail{margin:0;font-size:12.5px;color:var(--text-muted);line-height:1.5}.gl-formula,.gl-example{font-size:12px;background:var(--bg-elev);border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:3px}.gl-formula code{font-family:ui-monospace,JetBrains Mono,Menlo,monospace;color:var(--accent-2);font-size:12px}.gl-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:700}.gl-example span:nth-child(2){color:var(--text)}.gl-aliases{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}
