/* Minimal app foundations; the theme supplies component colors and decoration. */
:root{font-size:16px}*{box-sizing:border-box}html,body{margin:0;height:100%}body{font-family:"LXGW WenKai","Segoe UI","Microsoft YaHei",sans-serif;color:var(--text-normal);background:var(--background-primary);font-size:16px;--font-text:"LXGW WenKai","Segoe UI","Microsoft YaHei",sans-serif;--font-interface:"Segoe UI","Microsoft YaHei",sans-serif;--font-monospace:"Cascadia Code",Consolas,monospace;--font-text-size:16px;--font-smaller:14px;--font-smallest:12px;--font-ui-small:14px;--font-ui-smaller:13px;--font-ui-medium:16px;--font-ui-large:18px;--line-height-normal:1.6;--line-height-tight:1.3;--p-spacing:1rem;--size-4-1:4px;--size-4-2:8px;--size-4-3:12px;--size-4-4:16px;--size-4-6:24px;--size-4-8:32px;--size-2-1:2px;--size-2-2:4px;--radius-s:4px;--radius-m:8px;--radius-l:12px;--input-height:34px;--input-radius:6px;--input-border-width:1px;--nav-item-size:14px;--nav-item-color:var(--text-muted);--nav-item-color-hover:var(--text-normal);--nav-item-color-active:var(--text-normal);--nav-item-background-hover:var(--background-modifier-hover);--nav-item-background-active:var(--background-modifier-active-hover);--nav-item-padding:5px 8px;--nav-item-weight:400;--nav-item-weight-hover:400;--nav-item-weight-active:600;--nav-item-white-space:nowrap;--text-on-accent:#fff;--bold-weight:700;--code-border-width:0px;--code-border-color:transparent;--scrollbar-bg:transparent;--background-modifier-cover:rgba(0,0,0,.4);--background-modifier-box-shadow:rgba(0,0,0,.12);--icon-size:18px;--icon-color:var(--text-muted);--icon-color-hover:var(--text-normal);--icon-stroke:1.8;--tag-size:.875rem;--tag-padding-x:.65em;--tag-padding-y:.15em;--tag-radius:2em;--tag-border-width:1px}
body.theme-light{--mono-rgb-100:0,0,0;--mono-rgb-0:255,255,255;--color-base-00:#fff;--color-base-10:#fafafa;--color-base-20:#f0f0f0;--color-base-30:#e0e0e0;--color-base-40:#bdbdbd;--color-base-70:#5c5c5c;--color-base-100:#222;--color-accent:hsl(var(--accent-h),var(--accent-s),var(--accent-l));--color-accent-1:hsl(calc(var(--accent-h) - 1),calc(var(--accent-s) * 1.01),calc(var(--accent-l) * 1.075));--color-accent-2:hsl(calc(var(--accent-h) - 3),calc(var(--accent-s) * 1.02),calc(var(--accent-l) * 1.15))}
body.theme-dark{--mono-rgb-100:255,255,255;--mono-rgb-0:0,0,0;--color-base-00:#1e1e1e;--color-base-10:#242424;--color-base-20:#262626;--color-base-30:#363636;--color-base-40:#555;--color-base-70:#aaa;--color-base-100:#eee;--color-accent:hsl(var(--accent-h),var(--accent-s),var(--accent-l));--color-accent-1:hsl(calc(var(--accent-h) - 1),calc(var(--accent-s) * 1.01),calc(var(--accent-l) * 1.075));--color-accent-2:hsl(calc(var(--accent-h) - 3),calc(var(--accent-s) * 1.02),calc(var(--accent-l) * 1.15))}
button,input,select,textarea{font-family:var(--font-interface);font-size:14px;color:var(--text-normal)}button{border:1px solid var(--background-modifier-border);border-radius:var(--input-radius);padding:7px 12px;background:var(--background-secondary);cursor:pointer;line-height:1.3}button:hover{background:var(--background-modifier-hover)}button.mod-cta{background:var(--interactive-accent);color:var(--text-on-accent);border-color:transparent}button.mod-cta:hover{background:var(--interactive-accent-hover)}input[type=text],select{max-width:100%;height:var(--input-height);border:1px solid var(--background-modifier-border);border-radius:var(--input-radius);background:var(--background-primary);padding:6px 8px}input[type=range]{accent-color:var(--interactive-accent)}:focus-visible{outline:2px solid var(--interactive-accent);outline-offset:3px}a{color:var(--text-accent);text-decoration:none}a:hover{color:var(--text-accent-hover)}a.tag{font-size:var(--tag-size);padding:var(--tag-padding-y) var(--tag-padding-x);border-radius:var(--tag-radius);border:var(--tag-border-width) solid var(--tag-border-color);background:var(--tag-background);display:inline-block;line-height:1.5}a.tag:hover{background:var(--tag-background-hover);border-color:var(--tag-border-color-hover)}::selection{background:var(--text-selection)}strong{font-weight:var(--bold-weight);color:var(--text-bold)}mark{background:color-mix(in srgb,var(--phycat-primary-color),transparent 75%);color:var(--text-normal)}p{margin-block:var(--p-spacing)}h1{font-size:var(--h1-size)}h2{font-size:var(--h2-size)}h3{font-size:var(--h3-size)}h4{font-size:var(--h4-size)}h5{font-size:var(--h5-size)}h6{font-size:var(--h6-size)}h1,h2,h3,h4,h5,h6{line-height:1.5}blockquote{padding:0 0 0 18px;margin-inline:0;border-left:3px solid var(--interactive-accent)}blockquote p{margin-block:.5em}hr{border:0;border-top:1px solid var(--background-modifier-border);margin:32px 0}ul,ol{padding-inline-start:2em}li{margin:.3em 0}li::marker{color:var(--list-marker-color)}ul.contains-task-list{list-style:none}li.task-list-item{position:relative}.task-list-item.is-checked{text-decoration:line-through;color:var(--text-muted)}.markdown-rendered pre{position:relative;min-height:38px;white-space:var(--code-white-space);border-radius:var(--code-radius);overflow-x:auto}.markdown-rendered pre code{border:none;padding:0;background:transparent}.markdown-rendered pre:not(:hover)>button.copy-code-button{display:none}.copy-code-button{position:absolute}.markdown-rendered code{font-family:var(--font-monospace);font-size:var(--code-size)}table{width:100%;border-collapse:collapse;font-size:16px}th,td{padding:10px 14px;text-align:left}thead{background:var(--table-th-bg)}.callout-title-inner{font-weight:600}.callout-content p:first-child{margin-top:0}.callout-content p:last-child{margin-bottom:0}.nav-folder-title,.nav-file-title{display:flex;align-items:center;gap:8px;cursor:pointer;padding:var(--nav-item-padding);font:var(--nav-item-size)/1.4 var(--font-interface);color:var(--nav-item-color)}.nav-folder-title:hover,.nav-file-title:hover{color:var(--nav-item-color-hover);background:var(--nav-item-background-hover)}.nav-file-title.is-active{color:var(--nav-item-color-active);background:var(--nav-item-background-active)}.collapse-icon{display:flex;align-items:center;width:14px;height:14px;transition:transform .15s}.nav-folder.is-collapsed>.nav-folder-title .collapse-icon{transform:rotate(-90deg)}.nav-folder.is-collapsed>.nav-folder-children{display:none}.svg-icon{width:16px;height:16px;stroke:currentColor;stroke-width:1.8;fill:none}
.modal-container{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center}.modal-bg{position:absolute;inset:0;background:var(--background-modifier-cover)}.modal{position:relative;width:min(620px,92%);max-height:90%;overflow:auto;padding:24px;background:var(--background-primary);border-radius:12px;border:1px solid var(--background-modifier-border);font-family:var(--font-interface)}.modal-title{font-size:20px;font-weight:600;margin-bottom:20px}.modal-close-button{position:absolute;right:14px;top:10px;font-size:25px;cursor:pointer}.vertical-tabs-container{display:flex;gap:20px}.vertical-tab-header{width:115px;flex:none}.vertical-tab-nav-item{padding:10px 12px;margin-bottom:4px;border-radius:6px;font-size:14px;color:var(--text-muted)}.vertical-tab-nav-item.is-active{background:var(--interactive-accent);color:var(--text-on-accent)}.vertical-tab-content-container{min-width:0;flex:1}.vertical-tab-content h2{font-size:18px}.setting-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;border-bottom:1px solid var(--background-modifier-border)}.setting-item-name{font-size:14px}.setting-item-description{font-size:12px;color:var(--text-muted);margin-top:5px}.setting-item-control{max-width:52%;display:flex;justify-content:flex-end}.setting-item-control input{max-width:100%;min-width:0}.checkbox-container{width:40px;height:24px;border-radius:20px;padding:0;border:0;position:relative;background:var(--background-modifier-border)}.checkbox-container::after{content:'';position:absolute;width:18px;height:18px;border-radius:100%;top:3px;left:3px;background:var(--text-muted);transition:transform .15s}.checkbox-container.is-enabled{background:var(--interactive-accent)}.checkbox-container.is-enabled::after{transform:translateX(16px);background:var(--checkmark-color)}
