:root{--navy:#18243d;--ink:#222e42;--muted:#7b8493;--border:#e8eaf0;--lavender:#7762b5;--paper:#f7f8fb;--serif:"Noto Serif TC","Songti TC","PMingLiU",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang TC","Microsoft JhengHei",sans-serif;color:var(--ink);background:var(--paper);font-size:14px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}button{border:0;background:none;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ac92ed;outline-offset:3px}svg{flex-shrink:0}button{transition:background .15s,color .15s,transform .15s}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:var(--navy);color:#b0b9cc;padding:33px 22px 0;display:flex;flex-direction:column;z-index:30;overflow:auto}.brand{display:flex;gap:12px;align-items:center;color:white;font-size:20px;font-weight:600;letter-spacing:2px}.brand-icon{background:#ffffff10;border:1px solid #ffffff20;border-radius:13px;width:44px;height:46px;display:grid;place-items:center;color:#d8c3fa}.brand small{display:block;font-size:8px;letter-spacing:1.5px;color:#8390aa;margin-top:6px}.workspace-label{margin:37px 10px 20px;font-size:11px;color:#8492ae;display:flex;justify-content:space-between}.workspace-label span{border:1px solid #63708a;border-radius:4px;font-size:9px;padding:0 4px}.nav-item{display:flex;align-items:center;gap:13px;width:100%;padding:13px 15px;margin:4px 0;border-radius:8px;text-align:left;font-size:13px}.nav-item small{margin-left:auto;font-size:11px;opacity:.65}.nav-item.active{color:#eee6ff;background:#ffffff10}.nav-item.active svg{color:#c6aff3}.nav-item:hover{background:#ffffff09}.sidebar-divider{height:1px;background:#ffffff10;margin:25px 10px}.sidebar-title{padding:0 12px;font-size:10px;letter-spacing:1px;color:#8290aa;margin-bottom:14px}.subject-nav button{display:flex;align-items:center;width:100%;font-size:12px;gap:11px;padding:10px 13px;border-radius:7px}.subject-nav button svg{margin-left:auto;color:#5a6882}.subject-nav button:hover,.subject-nav button.selected{background:#ffffff0c;color:white}.subject-dot{width:5px;height:5px;border-radius:50%;background:#9986c5}.dot-1{background:#6da298}.dot-2{background:#bc9c77}.dot-3{background:#829bb6}.sidebar-bottom{padding:25px 10px 0;margin-top:auto}.connection{display:flex;align-items:center;gap:8px;color:#c8d0df;font-size:11px}.connected-dot{width:6px;height:6px;background:#8abca8;border-radius:50%}.sidebar-bottom p{font-size:11px;line-height:1.8;color:#7e8ba5;margin:11px 0}.sidebar-bottom>a{display:flex;align-items:center;font-size:11px;gap:14px;color:#a9b5cc}.account{display:flex;align-items:center;gap:10px;border-top:1px solid #ffffff12;padding:21px 0;margin-top:26px;font-size:12px;color:#d1d8e5}.avatar{width:33px;height:33px;background:#3c4661;color:#d9c6f3;display:grid;place-items:center;border-radius:50%;font-family:var(--serif)}.account small{font-size:9px;display:block;color:#8490a6;margin-top:5px}.main{margin-left:248px}.topbar{height:74px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 42px;background:#fff}.breadcrumb{display:flex;align-items:center;gap:15px;font-size:12px;color:#8d95a3}.breadcrumb strong{font-weight:500;color:#414d61}.topbar-right{display:flex;gap:20px;align-items:center}.private-badge{font-size:10px;padding:5px 10px;border:1px solid #e4e6ee;border-radius:20px;color:#7e8696}.icon-button{padding:6px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px}.icon-button:hover{background:#ececf6}.menu-button{display:none}.page-inner{max-width:1410px;margin:auto;padding:34px 42px 0}.hero{background:#efedf5;border:1px solid #e7e3ef;border-radius:14px;display:flex;position:relative;overflow:hidden;min-height:284px;padding:34px 38px}.hero-copy{position:relative;z-index:2}.eyebrow{font-size:9px;color:#8b829c;letter-spacing:1.5px;font-weight:600}.hero h1{font-family:var(--serif);font-size:34px;line-height:1.6;font-weight:600;letter-spacing:2px;margin:11px 0 11px}.hero h1 span{color:#746093}.hero p{font-size:12px;line-height:1.9;color:#838091;margin:0}.hero-actions{display:flex;align-items:center;gap:22px;margin-top:21px}.hero-actions button{display:flex;align-items:center;gap:25px;background:var(--navy);color:white;border-radius:7px;font-size:11px;padding:11px 15px}.hero-actions button:hover{background:#2c3856}.hero-actions a{display:flex;gap:6px;align-items:center;font-size:11px;color:#827491}.mobile-break{display:none}.hero-art{position:absolute;right:30px;top:0;width:360px;height:100%;pointer-events:none}.orb{position:absolute;border-radius:50%;border:1px solid #bcaed330}.orb-one{width:320px;height:320px;top:-70px;left:58px}.orb-two{width:225px;height:225px;top:110px;left:105px}.art-moon{position:absolute;left:22px;top:47px;color:#b9a9d2;transform:rotate(-16deg)}.art-card{position:absolute;width:150px;height:182px;border-radius:5px;top:84px;left:154px;box-shadow:0 18px 30px #3c2c5420}.art-card-back{background:#c3b5d8;transform:rotate(15deg);left:163px;top:72px}.art-card-front{background:#fbfafc;transform:rotate(-8deg);padding:24px 19px;color:#887399;display:flex;align-items:flex-start;flex-direction:column;gap:13px;border:1px solid #e5ddeb}.art-card-front span{font-family:var(--serif);font-size:15px;letter-spacing:1px}.art-line{width:94px;height:1px;background:#dcd3e5}.art-line.short{width:65px;margin-top:-6px}.art-card-front small{font-size:6px;letter-spacing:1px;margin-top:3px}.art-star{position:absolute;color:#bcaed1}.star-one{left:95px;top:210px;font-size:30px}.star-two{right:4px;top:51px;font-size:24px}.stats{display:grid;grid-template-columns:1fr 1fr 1fr 1.4fr;border:1px solid var(--border);border-radius:11px;background:white;margin:24px 0 34px}.stats>div{display:flex;align-items:center;gap:15px;padding:21px 22px;position:relative}.stats>div+div:before{content:"";position:absolute;left:0;top:24px;bottom:24px;width:1px;background:var(--border)}.stat-icon{background:#f0f3f9;color:#667892;width:41px;height:41px;border-radius:10px;display:grid;place-items:center}.stat-icon.lavender{background:#f3eff9;color:#9583b8}.stat-icon.green{background:#eff5f2;color:#80a792}.stats strong{font-size:24px;font-weight:500;display:block;line-height:1}.stats strong small{font-size:10px;color:#8f96a2;margin-left:7px}.stats div div>span{display:block;font-size:10px;color:#8a92a0;margin-top:9px}.stats strong.sync-time{font-size:14px;letter-spacing:.4px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px;gap:14px}.section-heading h2{font-size:20px;font-weight:600;letter-spacing:.6px;margin:5px 0 0}.section-heading>span{font-size:10px;color:#9197a2}.latest-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:20px}.featured-card{background:white;border:1px solid var(--border);padding:24px;border-radius:10px;text-align:left;display:flex;flex-direction:column;min-width:0}.featured-top{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#a0a6b1}.pill{background:#efebf7;color:#8d77ab;border-radius:5px;padding:5px 9px;font-size:10px}.featured-card h3{font-family:var(--serif);font-size:21px;line-height:1.7;font-weight:600;margin:18px 0 10px;color:#26344c}.featured-card p{font-size:11px;color:#8d95a0;line-height:1.8;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 19px}.featured-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto}.featured-footer>span:first-child{display:flex;align-items:center;gap:6px;font-size:9px;color:#949aa5}.round-arrow{height:33px;width:33px;display:grid;place-items:center;border:1px solid #e1e2e9;border-radius:50%;color:#596780}.featured-card:hover{border-color:#b8a9d5}.latest-stack{display:flex;flex-direction:column;gap:11px}.compact-card{border:1px solid var(--border);border-radius:9px;background:white;padding:17px;display:flex;align-items:center;gap:13px;flex:1;text-align:left;min-width:0}.compact-icon{width:37px;height:41px;border-radius:7px;background:#f3f2f7;color:#9a8aa8;display:grid;place-items:center}.compact-card>div{flex:1;min-width:0}.compact-card small{font-size:9px;color:#959ca7}.compact-card small span{color:#a1a6b0}.compact-card h3{font-size:12px;font-weight:500;line-height:1.7;margin:6px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.compact-card>svg{color:#9aa2b0}.compact-card:hover{background:#f9f8fc}.library-section{margin-top:35px;scroll-margin-top:22px}.refresh-button{display:flex;gap:8px;align-items:center;font-size:10px;color:#808999;border:1px solid #dfe3eb;padding:8px 12px;border-radius:6px;background:white}.filter-panel{display:flex;gap:15px;margin:0 0 18px}.search-box{border:1px solid #e1e5ed;border-radius:8px;background:white;display:flex;align-items:center;gap:10px;padding:0 15px;min-height:46px;flex:1;color:#a0a8b5}.search-box input{border:0;outline:0;background:transparent;width:100%;font-size:12px;color:#3e4b62;min-width:0}.search-box input::placeholder{color:#9ea5b0}.selects{display:flex;gap:10px}.selects select{font-size:11px;color:#718096;border:1px solid #e1e5ed;border-radius:8px;background:white;padding:0 14px;min-height:46px}.tag-row{display:flex;flex-wrap:wrap;gap:7px}.tag-row button{border:1px solid #e5e7ed;border-radius:6px;color:#838b99;padding:7px 10px;font-size:10px;background:white}.tag-row button.chosen{background:#25334d;color:#e5eaf5;border-color:#25334d}.tag-row button:hover{border-color:#ac9fc3}.result-info{display:flex;align-items:center;justify-content:space-between;padding:20px 1px 13px;font-size:10px;color:#9198a4}.result-info strong{font-weight:600;color:#4f5f74}.result-info button{margin-left:12px;color:#8c71b1;font-size:10px}.result-info label{display:flex;align-items:center;gap:6px}.result-info input{accent-color:#7f699e}.document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.document-card{border:1px solid var(--border);border-radius:9px;background:white;padding:17px 19px 0;display:flex;flex-direction:column;min-height:240px;transition:border-color .2s,box-shadow .2s}.document-card:hover{border-color:#c9bed9;box-shadow:0 3px 15px #22335306}.card-top{display:flex;align-items:center;justify-content:space-between}.document-date{display:flex;align-items:center;gap:7px;font-size:9px;color:#9aa1ad}.bookmark{color:#a8adba}.bookmark.bookmarked{color:#9381b4}.card-content{text-align:left;flex:1;padding:0}.card-content h3{font-size:13px;line-height:1.8;font-weight:600;color:#33415a;margin:12px 0 9px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-content p{font-size:10px;line-height:1.8;color:#9299a6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 14px}.card-tags{display:flex;gap:5px;flex-wrap:wrap;min-height:30px;align-items:flex-start}.card-tags button{font-size:8px;color:#8f7ba8;background:#f3f0f7;padding:4px 6px;border-radius:3px}.card-footer{border-top:1px solid #eef0f5;display:flex;align-items:center;justify-content:space-between;padding:13px 0;margin-top:10px;font-size:9px;color:#74849a}.card-footer button{display:flex;align-items:center;gap:5px}.card-footer .read-marker{color:#a1a8b2}.read-marker.marked{color:#7da58d}.is-read{background:#fdfefd}.page-footer{padding:30px 0 24px;margin-top:7px;display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#9da4b1;gap:15px;border-top:1px solid #eceef3}.page-footer>div{display:flex;align-items:center;gap:8px}.notice,.error-box{padding:13px 17px;margin-bottom:20px;background:#fff8ec;border:1px solid #eadcc1;border-radius:7px;color:#8b7351;font-size:12px}.error-box{display:flex;justify-content:space-between;background:#fff1f2;border-color:#efd2d7;color:#a05d69}.error-box button{text-decoration:underline}.empty{padding:60px 20px;text-align:center;color:#99a1ae;border:1px dashed #dce0e9;border-radius:9px;display:flex;flex-direction:column;align-items:center}.empty h3{font-size:15px;font-weight:500;margin:15px 0 4px}.empty p{font-size:12px}.empty button{background:var(--navy);color:white;padding:9px 16px;border-radius:6px;font-size:11px}.spinning{animation:spin 1.3s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.reader-overlay{position:fixed;inset:0;z-index:80;display:flex;justify-content:flex-end}.reader-scrim{position:absolute;inset:0;background:#12203970;backdrop-filter:blur(3px)}.reader{position:relative;z-index:1;width:min(850px,94vw);height:100%;background:#fff;box-shadow:-20px 0 80px #111c3030;display:flex;flex-direction:column}.reader-toolbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eceef2;padding:18px 25px;flex-shrink:0;font-size:12px}.reader-toolbar>span,.reader-toolbar>div,.reader-toolbar a{display:flex;align-items:center;gap:9px}.reader-toolbar>div{gap:15px}.reader-toolbar a{font-size:10px;color:#8d7ca5}.reader-scroll{overflow:auto;padding:36px 50px 40px}.reader-meta{font-size:11px;color:#7e6e97;letter-spacing:.5px}.reader-meta span{color:#949aa5}.reader h1{font-family:var(--serif);font-size:27px;line-height:1.7;margin:16px 0;color:#28364c}.reader-tag-list{display:flex;gap:6px;flex-wrap:wrap}.reader-tag-list span{font-size:9px;background:#f4f1f8;color:#8a77a1;padding:5px 8px;border-radius:4px}.reader-note{font-size:10px;color:#9ba1ac;border-bottom:1px solid #eceef3;padding:20px 0 24px;margin-bottom:26px;line-height:1.8}.markdown{font-size:14px;line-height:2;color:#526078;overflow-wrap:anywhere}.markdown h1{font-size:23px;line-height:1.8}.markdown h2{font-size:20px;color:#35425b;margin:35px 0 16px;border-bottom:1px solid #edeff3;padding-bottom:10px;font-weight:600}.markdown h3{font-size:17px;color:#35425b;margin:27px 0 12px;font-weight:600}.markdown h4{font-size:15px;font-weight:600;margin:20px 0 10px}.markdown p{margin:13px 0}.markdown ul,.markdown ol{padding-left:24px;margin:16px 0}.markdown ul{list-style:disc}.markdown ol{list-style:decimal}.markdown li{margin:5px 0}.markdown a{color:#8569ac;text-decoration:underline;text-underline-offset:3px}.markdown strong{font-weight:600;color:#374662}.markdown blockquote{padding:10px 20px;background:#f7f5fb;border-left:3px solid #b39dc9;color:#81728e;margin:20px 0}.markdown hr{border:0;border-top:1px solid #e7eaf0;margin:28px 0}.markdown pre{padding:17px;background:#f4f5f8;border-radius:7px;overflow:auto;white-space:pre;font-size:12px}.markdown code{font-size:.9em;background:#f4f5f8;padding:2px 5px;border-radius:3px}.markdown table{display:block;overflow:auto;border-collapse:collapse;font-size:12px;width:100%;margin:20px 0}.markdown th,.markdown td{border:1px solid #e2e6ee;padding:9px 12px;min-width:100px}.markdown th{background:#f6f5f9;font-weight:600}.reading-end{display:flex;justify-content:space-between;gap:15px;align-items:center;border-top:1px solid #eceef3;margin-top:38px;padding:25px 0;font-size:11px;color:#99a1ae}.reading-end button{display:flex;align-items:center;gap:8px;background:#eef5f1;color:#719681;padding:10px 14px;border-radius:6px}.source-modified{font-size:9px;color:#a4aab4}.sidebar-scrim{display:none}
@media(min-width:1600px){.hero-art{right:100px}.hero{min-height:310px}.hero h1{font-size:38px}.document-card{min-height:255px}}
@media(max-width:1180px){.sidebar{width:220px;padding-left:15px;padding-right:15px}.main{margin-left:220px}.page-inner{padding:26px 26px 0}.topbar{padding:0 26px}.hero{padding:28px}.hero-art{right:-25px;transform:scale(.86);transform-origin:right center}.hero h1{font-size:29px}.hero p{max-width:360px}.stats>div{padding:17px 13px;gap:10px}.stat-icon{width:34px;height:34px}.stats strong{font-size:21px}.stats strong.sync-time{font-size:11px}.document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.sidebar{width:200px;padding-left:13px;padding-right:13px}.main{margin-left:200px}.brand{font-size:17px;gap:9px}.brand-icon{width:37px}.brand small{font-size:7px}.hero-art{opacity:.45;right:-75px}.hero-copy{max-width:78%}.hero p{font-size:11px}.stats{grid-template-columns:1fr 1fr}.stats>div:nth-child(3):before{display:none}.stats>div:nth-child(3),.stats>div:nth-child(4){border-top:1px solid var(--border)}.latest-grid{grid-template-columns:1fr}.featured-card{min-height:210px}.compact-card{padding:14px}.latest-stack{display:grid;grid-template-columns:1fr}.page-footer{align-items:flex-start;flex-direction:column}.filter-panel{flex-direction:column}.selects select{flex:1;min-width:0}.reader-scroll{padding:28px 30px}}
@media(max-width:680px){.sidebar{width:248px;transform:translateX(-100%);transition:transform .2s}.sidebar.is-open{transform:translateX(0)}.sidebar-scrim{display:block;position:fixed;inset:0;z-index:25;background:#14223e66}.main{margin-left:0}.menu-button{display:inline-flex}.topbar{height:61px;padding:0 16px}.breadcrumb{gap:9px;font-size:11px}.topbar-right{gap:10px}.private-badge{font-size:8px}.page-inner{padding:19px 17px 0}.hero{padding:24px 22px;min-height:280px}.hero h1{font-size:28px;letter-spacing:1px}.hero .eyebrow{font-size:7px;letter-spacing:1px}.hero p{font-size:11px;max-width:260px}.mobile-break{display:block}.hero-copy{max-width:100%}.hero-art{transform:scale(.65);right:-45px;top:-2px;opacity:.22}.hero-actions{gap:15px}.hero-actions button{font-size:10px;gap:12px}.hero-actions a{font-size:10px}.stats{margin:18px 0 27px}.stats>div{padding:17px 13px;gap:10px}.stats strong{font-size:22px}.stats div div>span{font-size:9px}.stats strong.sync-time{font-size:11px}.section-heading h2{font-size:18px}.section-heading .eyebrow{font-size:8px;letter-spacing:1px}.section-heading>span{font-size:9px}.latest-grid{gap:13px}.featured-card{padding:19px}.featured-card h3{font-size:18px;margin-top:14px}.compact-card h3{font-size:11px}.library-section{margin-top:28px}.document-grid{grid-template-columns:1fr;gap:13px}.document-card{min-height:218px;padding:17px 20px 0}.card-content h3{font-size:14px}.card-content p{font-size:11px}.tag-row{gap:6px}.tag-row button{font-size:9px;padding:6px 9px}.card-tags button{font-size:9px}.card-footer{font-size:10px}.reader{width:100vw}.reader-toolbar{padding:15px 17px}.reader-toolbar>div{gap:11px}.reader-scroll{padding:28px 22px}.reader h1{font-size:23px}.markdown{font-size:14px}.markdown h2{font-size:18px}.reading-end{flex-direction:column;align-items:flex-start}.page-footer{font-size:8px;line-height:1.9}.search-box{padding:0 12px}.refresh-button{font-size:9px;padding:7px 9px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
