@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,600;9..144,700&family=Inter:wght@400;500;600;700&family=Noto+Serif+SC:wght@400;500;700&family=Space+Mono:wght@400;700&display=swap";:root{--font-display: "Fraunces","Noto Serif SC",Georgia,serif;--font-ui: "Inter","PingFang SC","Microsoft YaHei",system-ui,sans-serif;--font-zh: "Noto Serif SC","Songti SC",serif;--font-mono: "Space Mono",ui-monospace,monospace;--r-sm: 6px;--r-md: 8px;--r-lg: 10px;--r-xl: 8px;--radius: var(--r-md);--trans: .18s cubic-bezier(.4,0,.2,1);--nav-h: 60px;--shadow-sm: none;--shadow-md: none;--shadow-lg: none}[data-theme=light]{--green-a: #2f6d4f;--green-b: #1f5138;--green-c: #4d9a72;--accent: #2f6d4f;--accent-b: #1f5138;--grad: #2f6d4f;--grad-soft: rgba(47,109,79,.06);--bg: #fbfaf8;--bg2: #f4f2ee;--bg3: #eae7e1;--bg4: #ddd8d0;--border: rgba(26,26,25,.12);--border-h: rgba(26,26,25,.32);--text: #1a1a19;--text2: #4f4d49;--text3: #6e6b66;--card-bg: #ffffff;--card-border: rgba(26,26,25,.1);--nav-bg: rgba(251,250,248,.9);--glow: rgba(47,109,79,.22);--input-bg: #ffffff;--shadow-color: transparent}[data-theme=dark]{--green-a: #6fc99a;--green-b: #4fa877;--green-c: #8fd9b0;--accent: #6fc99a;--accent-b: #4fa877;--grad: #6fc99a;--grad-soft: rgba(111,201,154,.08);--bg: #101110;--bg2: #171817;--bg3: #1e1f1e;--bg4: #282927;--border: rgba(255,255,255,.1);--border-h: rgba(255,255,255,.26);--text: #eceae6;--text2: #a9a5a0;--text3: #7b7874;--card-bg: #171817;--card-border: rgba(255,255,255,.09);--nav-bg: rgba(16,17,16,.9);--glow: rgba(111,201,154,.25);--input-bg: #1e1f1e;--shadow-color: transparent}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-ui);background:var(--bg);color:var(--text);line-height:1.65;overflow-x:hidden;transition:background var(--trans),color var(--trans)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{cursor:pointer;font-family:inherit}ul{list-style:none}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--accent);border-radius:8px;opacity:.5}.grad-text{color:var(--accent)}.font-mono{font-family:Space Mono,monospace}.section-pad{padding:5rem 2rem}.section-inner{max-width:1160px;margin:0 auto}.page-wrap{min-height:100vh;padding-top:calc(var(--nav-h) + 2rem)}.page-header{padding:2rem 2rem 1.5rem;max-width:1160px;margin:0 auto}.divider{height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);margin:0 2rem}.section-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:700;color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.6rem;font-family:Space Mono,monospace}.section-title{font-size:clamp(1.7rem,3.4vw,2.5rem);font-weight:600;letter-spacing:-.015em;line-height:1.08;font-family:var(--font-display)}.section-sub{margin-top:.6rem;font-size:.93rem;color:var(--text2);max-width:480px;line-height:1.7}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r-md);padding:1.35rem;position:relative;overflow:hidden;transition:border-color var(--trans)}.card:hover{border-color:var(--border-h)}.btn-primary{display:inline-flex;align-items:center;gap:.45rem;padding:.6rem 1.4rem;background:var(--accent);color:#fff;border:none;border-radius:var(--r-md);font-size:.86rem;font-weight:800;letter-spacing:.02em;transition:filter var(--trans);font-family:var(--font-ui)}.btn-primary:hover{filter:brightness(1.08)}.btn-ghost{display:inline-flex;align-items:center;gap:.45rem;padding:.6rem 1.4rem;background:transparent;color:var(--text2);border:1px solid var(--border);border-radius:var(--r-xl);font-size:.86rem;font-weight:700;transition:all var(--trans);font-family:var(--font-ui)}.btn-ghost:hover{border-color:var(--border-h);color:var(--accent);background:var(--grad-soft)}.btn-icon{width:34px;height:34px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg3);color:var(--text2);display:flex;align-items:center;justify-content:center;font-size:.82rem;transition:all var(--trans)}.btn-icon:hover{border-color:var(--border-h);color:var(--accent)}.sub-nav{display:flex;gap:.45rem;flex-wrap:wrap;padding:.7rem 2rem;background:var(--bg2);border-bottom:1px solid var(--border);position:sticky;top:var(--nav-h);z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.sub-nav-btn{padding:.36rem .9rem;border-radius:var(--r-xl);border:1px solid transparent;background:transparent;color:var(--text2);font-size:.8rem;font-weight:700;transition:all var(--trans);font-family:var(--font-ui)}.sub-nav-btn.active,.sub-nav-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--grad-soft)}.view-toggle{display:flex;gap:.2rem;padding:2px;background:var(--bg3);border-radius:var(--r-sm);border:1px solid var(--border)}.view-toggle-btn{padding:.26rem .55rem;border-radius:7px;border:none;background:transparent;color:var(--text3);transition:all var(--trans);cursor:pointer}.view-toggle-btn.active{background:var(--card-bg);color:var(--accent);box-shadow:var(--shadow-sm)}.tag{background:var(--bg3);border-radius:20px;padding:.18rem .6rem;font-size:.7rem;color:var(--accent);font-weight:700;font-family:var(--font-ui)}.tag-gray{color:var(--text3)}.badge{display:inline-flex;align-items:center;gap:.28rem;padding:.2rem .65rem;border-radius:20px;font-size:.7rem;font-weight:800;font-family:var(--font-ui)}.badge-open,.badge-closed{background:var(--grad-soft);color:var(--accent);border:1px solid var(--border-h)}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(252px,1fr));gap:1.1rem}.cards-grid-2{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.1rem}.honors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:1.1rem}.list-view{display:flex;flex-direction:column;gap:.45rem}.list-item{display:flex;align-items:center;gap:.9rem;padding:.8rem 1.15rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--r-md);transition:border-color var(--trans)}.list-item:hover{border-color:var(--border-h)}.field{display:flex;flex-direction:column;gap:.38rem}.field label{font-size:.77rem;font-weight:800;color:var(--text2);font-family:var(--font-ui);letter-spacing:.03em}.field input,.field textarea,.field select{background:var(--input-bg);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text);font-family:var(--font-ui);font-size:.88rem;padding:.58rem .85rem;transition:border-color var(--trans),box-shadow var(--trans);outline:none;width:100%}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--glow)}.field textarea{resize:vertical;min-height:76px}.field select option{background:var(--bg3)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:200;display:flex;align-items:center;justify-content:center;padding:1.5rem}.modal{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r-xl);width:100%;max-width:540px;max-height:90vh;overflow-y:auto;padding:1.8rem;box-shadow:0 20px 60px #0003}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.4rem}.modal-header h2{font-size:1.1rem;font-weight:900;font-family:var(--font-ui)}.modal-footer{display:flex;gap:.65rem;justify-content:flex-end;margin-top:1.4rem}.md-body{font-size:.97rem;line-height:1.85;color:var(--text2)}.md-body h1,.md-body h2,.md-body h3{color:var(--text);font-family:var(--font-display);font-weight:600;margin:1.5rem 0 .5rem}.md-body h1{font-size:1.75rem}.md-body h2{font-size:1.35rem}.md-body h3{font-size:1.1rem}.md-body p{margin-bottom:.9rem}.md-body code{font-family:Space Mono,monospace;font-size:.84em;background:var(--bg3);border-radius:5px;padding:.14em .42em;color:var(--accent)}.md-body pre{background:var(--bg3);border-radius:var(--r-md);padding:1.2rem;overflow-x:auto;margin-bottom:.9rem;border:1px solid var(--border)}.md-body pre code{background:none;padding:0;color:var(--text)}.md-body blockquote{border-left:2px solid var(--accent);padding-left:1rem;color:var(--text3);margin:1rem 0}.md-body ul,.md-body ol{padding-left:1.4rem;margin-bottom:.9rem}.md-body li{margin-bottom:.3rem}.md-body table{width:100%;border-collapse:collapse;margin-bottom:.9rem;font-size:.88rem}.md-body th,.md-body td{padding:.55rem .8rem;border:1px solid var(--border);text-align:left}.md-body th{background:var(--bg3);font-weight:800}.md-body a{color:var(--accent);text-decoration:underline}.player-bar{position:fixed;bottom:0;left:0;right:0;z-index:150;background:var(--bg2);border-top:1px solid var(--border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:.7rem 2rem;display:flex;align-items:center;gap:.9rem;transform:translateY(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);box-shadow:0 -4px 20px #00000014}.player-bar.active{transform:translateY(0)}.mobile-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:100;background:var(--nav-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid var(--border);padding:.45rem 0 calc(.45rem + env(safe-area-inset-bottom));flex-direction:row;justify-content:space-around;box-shadow:0 -2px 12px #0000000f}.tree-item{border-bottom:1px solid var(--border)}.tree-header{display:flex;align-items:center;gap:.7rem;padding:.82rem 1rem;cursor:pointer;transition:background var(--trans);border-radius:var(--r-sm)}.tree-header:hover{background:var(--bg3)}.tree-body{padding:0 1rem .7rem 2.4rem;display:flex;flex-direction:column;gap:.38rem}.add-btn{display:flex;align-items:center;justify-content:center;gap:.45rem;padding:1.4rem;border:1.5px dashed var(--border);border-radius:var(--r-lg);color:var(--text3);font-size:.8rem;font-family:Space Mono,monospace;background:none;transition:all var(--trans);cursor:pointer;width:100%}.add-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--grad-soft)}.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite}@keyframes fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.25}}@keyframes underline-in{to{transform:scaleX(1)}}.song-review{font-size:.78rem;color:var(--text3);font-style:italic;line-height:1.5;padding:.38rem .7rem;border-left:2px solid var(--border-h);background:var(--grad-soft);border-radius:0 var(--r-sm) var(--r-sm) 0}.song-review:before{content:'"';color:var(--accent);font-size:1em;margin-right:.08em}.song-review:after{content:'"';color:var(--accent);font-size:1em;margin-left:.08em}.guest-chip{display:inline-flex;align-items:center;gap:.32rem;padding:.22rem .7rem;border-radius:20px;font-size:.72rem;font-weight:700;background:var(--grad-soft);color:var(--accent);border:1px solid var(--border-h);font-family:var(--font-ui);cursor:pointer;transition:all var(--trans)}.guest-chip:hover{background:var(--bg3)}@media (max-width:768px){.section-pad{padding:3.5rem 1.25rem}.divider{margin:0 1.25rem}.cards-grid,.cards-grid-2,.honors-grid{grid-template-columns:1fr}.mobile-nav{display:flex}body{padding-bottom:68px}.player-bar{padding:.6rem 1.2rem}}.tooltip-wrap{position:relative;display:inline-block;width:100%}.tooltip-content{display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);min-width:200px;max-width:280px;background:var(--bg2);border:1px solid var(--border-h);border-radius:var(--r-md);padding:.7rem .9rem;font-size:.78rem;color:var(--text2);line-height:1.6;box-shadow:0 8px 28px #00000026;z-index:80;pointer-events:none;font-family:var(--font-zh);white-space:normal;text-align:center;animation:tooltip-in .15s ease}.tooltip-content:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--border-h)}.tooltip-wrap:hover .tooltip-content{display:block}@keyframes tooltip-in{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.zh-kaiti{font-family:var(--font-zh)}p,.card,.list-item,.section-sub,.md-body{font-family:var(--font-ui)}
