:root{--acc2:#d9542c}
.dm{padding-bottom:60px}
header .wrap.wide,main.wrap.dm{max-width:1680px}
.dm .hero h1{font-size:30px;margin:18px 0 8px}
.dm .thesis{font-size:15.5px;line-height:1.8;max-width:880px}
.dm .meta{font-size:13px;color:var(--mute)}
.dm .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.dm .stat{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 14px}
.dm .stat b{display:block;font:700 30px/1.1 "Barlow Condensed",sans-serif}.dm .stat span{font-size:13px;color:var(--mute)}
.dm .ctrl{position:static}
.dm .cst{font-size:12px;color:var(--faint);margin:10px 0 4px}
.dm .cgrid{display:flex;flex-wrap:wrap;gap:8px 18px;padding-bottom:8px}
.dm .fg{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dm .fg>span{font-size:12.5px;color:var(--mute)}
.dm .seg button.on{background:var(--acc2);color:#fff}
.dm .vsel{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:99px;padding:6px 12px;font:13px "Noto Sans SC";max-width:380px}
.dm .chips{display:flex;flex-wrap:wrap;gap:6px}
.dm .chip{border:1px solid var(--line);background:var(--card2);color:var(--ink);border-radius:99px;padding:3px 11px;font-size:12.5px;cursor:pointer}
.dm .chip.on{background:var(--acc2);color:#fff;border-color:var(--acc2)}
.dm .cfoot{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;padding:6px 0 10px;border-top:1px solid var(--line);font-size:12.5px;color:var(--mute)}
.dm .fclear{border:1px solid var(--line);background:var(--card);border-radius:99px;padding:3px 12px;cursor:pointer;color:var(--ink)}.dm .fclear:disabled{opacity:.4;cursor:default}
.dm .legend{margin-left:auto;display:flex;gap:12px;flex-wrap:wrap}
.dm i.gA,.dm i.gB,.dm i.gC,.dm i.gD{font-style:normal;font-weight:700;font-size:11px;padding:0 6px;border-radius:99px;color:#fff}
.dm i.gA{background:var(--ok)}.dm i.gB{background:#3b82a0}.dm i.gC{background:var(--warn)}.dm i.gD{background:var(--faint)}
.dnote{font-size:13.5px;color:var(--mute);margin:0 0 12px;line-height:1.7}.dnote b{color:var(--ink)}
.cgridc{align-items:start;display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px}
.dcard{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;min-width:0}
.dh{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.dn{font-weight:900;font-size:15.5px}.dt{font-size:12px;color:var(--faint);white-space:nowrap}
.dv{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.dv b{font:700 26px/1.1 "Barlow Condensed",sans-serif;color:var(--acc2)}.dper{font-size:12.5px;color:var(--mute)}
.dg{font-size:12.5px;color:var(--mute);min-height:1em}
.dcard svg{display:block}
.ax{font-size:10px;fill:var(--faint)}
.few{font-size:12px;color:var(--warn)}
.dx{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12.5px;color:var(--ink)}
.dsrc{font-size:12px;color:var(--faint);margin-top:auto;padding-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dmiss{font-size:13px;color:var(--mute);margin:14px 0 0;line-height:1.7}
.dempty,.dwarn{background:var(--card2);border:1px dashed var(--line);border-radius:10px;padding:14px 16px;font-size:14px;color:var(--mute)}.dwarn{border-style:solid;color:var(--warn);margin:0 0 10px}
.dbig{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 18px}.dbig h3{margin:0 0 4px;font-size:17px}.dsub{font-size:12.5px;color:var(--mute);margin:0 0 8px;line-height:1.6}
.dleg{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12.5px;margin-top:8px}.dleg i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px}
.twrap{overflow-x:auto;background:var(--card);border:1px solid var(--line);border-radius:12px}
.dt2{border-collapse:collapse;width:100%;font-size:13.5px}.dt2 th{background:var(--ink);color:var(--bg);text-align:left;padding:8px 10px;font-weight:500;white-space:nowrap}
.dt2 td{padding:8px 10px;border-top:1px solid var(--line);vertical-align:top}.dt2 td.r{font-weight:700;white-space:nowrap}
.dnotes{margin-top:30px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:6px 20px 14px;font-size:14px;line-height:1.8}.dnotes h2{font-size:18px}
.tip{position:fixed;z-index:50;max-width:340px;background:var(--ink);color:var(--bg);padding:8px 11px;border-radius:8px;font-size:12.5px;line-height:1.55;pointer-events:none;box-shadow:0 4px 18px rgba(0,0,0,.25)}
@media (max-width:700px){.dm .stats{grid-template-columns:repeat(2,1fr)}.dm .ctrl{position:static}.dm .legend{margin-left:0}.dm .hero h1{font-size:24px}}
.dcard{cursor:pointer;transition:border-color .15s,box-shadow .15s}.dcard:hover,.dcard:focus-visible{border-color:var(--acc2);box-shadow:0 2px 14px rgba(217,84,44,.15);outline:0}
.modal{position:fixed;inset:0;z-index:40;background:var(--shade);display:flex;align-items:flex-start;justify-content:center;overflow:auto;padding:4vh 16px}
.modal[hidden]{display:none}
.mbox{position:relative;background:var(--card);border:1px solid var(--line);border-radius:16px;width:min(1000px,100%);padding:20px 26px 22px;box-shadow:0 12px 50px rgba(0,0,0,.35)}
.mbox h2{margin:0 0 6px;font-size:22px;font-weight:900}.mbox h2 small{font-size:13px;color:var(--mute);font-weight:400;margin-left:6px}
.mx{position:absolute;right:14px;top:10px;border:0;background:none;font-size:28px;line-height:1;cursor:pointer;color:var(--mute)}
.mgrow{font-size:15px;margin:6px 0 4px}.mgrow b{color:var(--acc2);font:700 28px "Barlow Condensed",sans-serif}
.mbox .dt2{margin:12px 0}.mbox .dt2 td:last-child{color:var(--mute);font-size:12.5px}
