.idx-page{padding-top:var(--space-xl);padding-bottom:var(--space-3xl)}.idx-header{margin-bottom:var(--space-lg)}.idx-prose{max-width:720px;margin-bottom:var(--space-xl);font-size:.9rem;line-height:1.7;color:var(--text-dim)}.idx-prose p{margin-bottom:var(--space-md)}.idx-prose p:last-child{margin-bottom:0}.idx-lineages{margin-bottom:var(--space-xl)}.lineage-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-sm)}.lineage-card{display:flex;flex-direction:column;gap:2px;padding:var(--space-md);background:var(--surface);border:1px solid var(--border);border-radius:8px;text-decoration:none;color:var(--text);transition:border-color .15s,background .15s}.lineage-card:hover{border-color:var(--primary);background:#115e5905}.lineage-dot{width:8px;height:8px;border-radius:50%;margin-bottom:2px}.lineage-card .serif{font-size:.95rem;font-weight:500}@media(max-width:600px){.lineage-grid{grid-template-columns:1fr}}.idx-header h1{color:var(--primary)}.idx-subtitle{color:var(--text-dim);font-size:.9rem;margin-top:var(--space-xs)}.view-tabs{display:flex;gap:2px;margin-bottom:var(--space-md);border-bottom:1px solid var(--border)}.view-tab{padding:8px 16px;font-size:.78rem;font-family:var(--sans);font-weight:500;color:var(--text-dim);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s}.view-tab:hover{color:var(--primary)}.view-tab.active{color:var(--primary);border-bottom-color:var(--primary)}#controls{margin-bottom:var(--space-md)}.ctrl-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ctrl-row+.ctrl-row{margin-top:6px}.search-input{flex:1;min-width:200px;max-width:400px;padding:8px 14px;border:1px solid var(--border2);border-radius:8px;font-size:.82rem;font-family:var(--sans);outline:none;background:var(--surface);color:var(--text)}.search-input:focus{border-color:var(--primary)}.sort-select{padding:8px 12px;border:1px solid var(--border2);border-radius:8px;font-size:.78rem;font-family:var(--sans);background:var(--surface);color:var(--text)}.pill{display:inline-flex;align-items:center;gap:3px;padding:4px 10px;border-radius:14px;font-size:.68rem;font-family:var(--sans);font-weight:500;border:1px solid var(--border2);color:var(--text-dim);cursor:pointer;transition:all .15s;white-space:nowrap;background:transparent}.pill:hover{border-color:var(--primary);color:var(--primary)}.pill.active{font-weight:600}.pills{display:flex;flex-wrap:wrap;gap:4px}.filter-label{font-size:.55rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--text-dim);min-width:70px;flex-shrink:0}.filter-row{display:flex;align-items:center;gap:8px;margin-top:6px;flex-wrap:wrap}.filter-panel{margin-top:6px;padding:8px 0;border-top:1px solid var(--border)}.filter-group-row{display:flex;gap:16px;flex-wrap:wrap;margin-top:6px}.filter-group-col{flex:1;min-width:250px}.filter-group-col-auto{flex:0 0 auto}.active-chip{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:12px;font-size:.6rem;cursor:default}.active-chip .chip-x{cursor:pointer;margin-left:2px;font-size:.65rem;opacity:.7}.active-chip .chip-x:hover{opacity:1}.cx-select{min-width:160px;font-size:.72rem;padding:5px 8px;border:1px solid var(--border2);border-radius:6px;background:var(--surface);color:var(--text)}.mod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-md)}.mod-card{display:block;text-decoration:none;color:inherit;padding:var(--space-md);border:1px solid var(--border);border-radius:8px;background:var(--surface);transition:border-color .15s,box-shadow .15s}.mod-card:hover{border-color:var(--primary);box-shadow:0 2px 8px #0000000f}.mod-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.mod-card-tradition{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;font-weight:600}.mod-card-year{font-size:.65rem;color:var(--text-dim);font-family:var(--mono)}.mod-card-name{font-size:1rem;font-weight:600;color:var(--text);margin-bottom:2px;line-height:1.3}.mod-card-founder{font-size:.75rem;color:var(--text-dim);margin-bottom:6px}.mod-card-mech{font-size:.72rem;color:var(--text-dim);line-height:1.5;font-family:var(--serif);margin-bottom:8px}.mod-card-bottom{display:flex;justify-content:space-between;align-items:center;font-size:.65rem}.mod-card-tier{font-weight:600;font-size:.62rem}.tier-guideline{color:#16a34a}.tier-rct{color:#2563eb}.tier-limited{color:var(--text-dim)}.mod-card-ep{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:6px}.ep-tag{font-size:.58rem;padding:1px 6px;border-radius:8px;font-weight:500}.count-bar{font-size:.72rem;color:var(--text-dim);margin-top:var(--space-sm)}.count-bar strong{color:var(--text)}.timeline-wrap{position:relative;padding-left:70px;max-width:900px;margin:0 auto}.timeline-intro{margin-bottom:28px;margin-left:-70px}.timeline-title{font-family:var(--serif);font-size:1.2rem;color:var(--primary);margin-bottom:6px}.timeline-desc{font-size:.75rem;color:var(--text);line-height:1.7;font-family:var(--serif);margin-bottom:8px}.timeline-note{font-size:.65rem;color:var(--text-dim);line-height:1.6}.timeline-line{position:absolute;left:52px;top:120px;bottom:0;width:2px;background:linear-gradient(to bottom,var(--secondary),var(--border))}.timeline-decade{position:relative;margin-bottom:28px}.decade-dot{position:absolute;left:-27px;top:2px;width:12px;height:12px;border-radius:50%;background:var(--primary);border:2px solid var(--bg)}.decade-label{position:absolute;left:-70px;top:-1px;font-family:var(--serif);font-size:1.2rem;color:var(--primary);font-weight:400;text-align:right;width:35px}.decade-bar{height:3px;background:var(--secondary);border-radius:2px;opacity:.3;margin-bottom:10px}.decade-items{display:flex;flex-wrap:wrap;gap:6px}.tl-item{border-radius:6px;padding:7px 11px;cursor:pointer;transition:all .2s;text-decoration:none;display:block}.tl-item:hover{transform:translateY(-1px);box-shadow:0 2px 6px #0000000f}.tl-item-name{font-family:var(--serif);font-size:.75rem;font-weight:600}.tl-item-meta{font-size:.6rem;color:var(--text-dim)}.no-results{text-align:center;padding:var(--space-xl) 0}@media(max-width:640px){.mod-grid{grid-template-columns:1fr}.timeline-wrap{padding-left:50px}.timeline-intro{margin-left:-50px}.decade-label{left:-50px;font-size:1rem}}
