:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#1d2a3e;background:#f5f7fa;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #70a9ff;outline-offset:2px}a{color:#235da6}.app-shell{display:flex;min-height:100vh}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;flex:none;width:254px;height:100vh;background:#14233d;color:#d9e3f2;padding:27px 14px 19px;z-index:30}.brand{display:flex;gap:11px;align-items:center;padding:0 10px 29px;line-height:1.3}.brand strong{display:block;color:#fff;font-size:16px;letter-spacing:-.025em}.brand small{display:block;color:#9dacbf;font-size:12px;margin-top:3px}.brand-mark{display:grid;place-items:center;flex:none;width:38px;height:38px;border:1px solid #7893b5;border-radius:11px;color:#a5c8ff;font-weight:800;font-size:17px}.nav-label{color:#8295b0;font-size:11px;font-weight:750;letter-spacing:.12em;padding:0 14px;margin:9px 0 9px}.categories-label{margin-top:26px}.sidebar nav{display:grid;gap:3px}.nav-item{width:100%;display:flex;align-items:center;gap:12px;text-align:left;background:transparent;border:0;border-radius:9px;padding:11px 13px;color:#c8d5e6;font-size:14px;font-weight:560}.nav-item:hover,.nav-item.active{background:#263c5c;color:#fff}.nav-icon{display:inline-grid;place-items:center;width:19px;font-size:17px;color:#a9bee0}.nav-count{margin-left:auto;font-size:12px;color:#9aacc5}.sidebar-bottom{margin-top:auto;padding:14px 12px 3px;border-top:1px solid #30415c;color:#a5b3c7;font-size:12px;display:flex;align-items:center;gap:9px}.local-indicator{width:7px;height:7px;background:#74d5b4;border-radius:50%}.sidebar-close{display:none}.workspace{min-width:0;flex:1}.topbar{height:74px;background:#fff;border-bottom:1px solid #e3e8f0;display:flex;align-items:center;gap:18px;padding:0 clamp(22px,4vw,58px)}.topbar-title{white-space:nowrap;font-size:14px;font-weight:650;color:#34455e}.topbar-divider{color:#bdc7d3;margin:0 7px}.topbar-title #breadcrumb{color:#8290a3;font-weight:500}.search-box{margin-left:auto;width:min(390px,38vw);display:flex;align-items:center;gap:9px;background:#f5f7fa;border:1px solid #e2e7ed;border-radius:9px;padding:9px 12px;color:#7a8da6}.search-box>span{font-size:25px;line-height:15px}.search-box input{border:0;outline:0;background:transparent;width:100%;min-width:0;font-size:13px;color:#26364c}.search-box input::placeholder{color:#8795a6}.search-box kbd{flex:none;font:11px inherit;color:#8e9bae;border:1px solid #d8dee7;border-radius:4px;padding:2px 4px}.button{border:1px solid transparent;border-radius:9px;padding:10px 15px;font-size:13px;font-weight:700;white-space:nowrap}.button-primary{color:#fff;background:#2765b5}.button-primary:hover{background:#1c5298}.button-secondary{color:#2c4261;background:#fff;border-color:#d7e0ea}.button-secondary:hover{background:#f1f5f9}.button-danger{color:#ab3d40;background:#fff;border-color:#e7c9cd}.icon-button{border:0;background:transparent;color:#65758a;font-size:22px;line-height:1;padding:8px}.menu-button{display:none}main{max-width:1240px;margin:auto;padding:43px clamp(22px,4vw,58px) 80px}.eyebrow{display:block;color:#3473b9;text-transform:uppercase;font-size:11px;letter-spacing:.12em;font-weight:800}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:25px}.page-heading h1{font-size:clamp(26px,2.7vw,35px);letter-spacing:-.045em;margin:8px 0 8px;color:#142640}.page-heading p{color:#65758a;margin:0;line-height:1.5;font-size:14px}.heading-actions{display:flex;gap:9px;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:27px 0 34px}.stat{background:#fff;border:1px solid #e3e9f0;border-radius:13px;padding:19px 21px;min-height:104px}.stat span{color:#718197;font-size:13px}.stat strong{display:block;margin-top:8px;color:#19314d;font-size:27px;letter-spacing:-.04em}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 16px}.section-head h2{font-size:18px;letter-spacing:-.02em;margin:0;color:#182b45}.text-button{background:none;border:0;color:#2865ae;font-weight:700;font-size:13px}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:34px}.category-card{background:#fff;text-align:left;border:1px solid #e3e9f0;border-radius:13px;padding:20px;min-height:145px;transition:transform .15s,border-color .15s,box-shadow .15s}.category-card:hover,.note-card:hover{transform:translateY(-2px);border-color:#b4cbe9;box-shadow:0 9px 24px rgba(28,62,108,.07)}.category-card .category-symbol{display:grid;place-items:center;background:#eaf2fc;color:#2765b5;width:35px;height:35px;border-radius:9px;font-size:17px;margin-bottom:13px}.category-card strong{display:block;font-size:15px;color:#243751;margin-bottom:5px}.category-card small{font-size:12px;color:#738198}.note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.note-card{border:1px solid #e3e9f0;background:#fff;border-radius:12px;text-align:left;padding:18px;min-height:150px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex;flex-direction:column}.note-meta{display:flex;align-items:center;gap:8px;color:#6e7f95;font-size:12px}.tag{border-radius:5px;background:#eaf2fb;color:#366294;padding:4px 7px;font-size:11px;font-weight:700}.note-card strong{display:block;margin:12px 0 7px;color:#21334c;font-size:16px;line-height:1.4}.note-card p{margin:0;color:#65758a;font-size:13px;line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.note-card .note-footer{margin-top:auto;padding-top:13px;color:#8190a2;font-size:12px}.empty{background:#fff;border:1px dashed #cdd9e7;border-radius:13px;text-align:center;padding:55px 25px;color:#697b90}.empty h2{color:#253953;font-size:19px;margin:0 0 7px}.empty p{margin:0 0 20px;font-size:14px}.filter-row{display:flex;gap:8px;margin:0 0 20px;flex-wrap:wrap}.filter-chip{background:#fff;border:1px solid #dce5ef;border-radius:8px;padding:7px 11px;color:#56708d;font-size:12px;font-weight:650}.filter-chip.active{background:#dfeeff;border-color:#8bb6e9;color:#235b9b}.note-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:28px;align-items:start}.article{background:#fff;border:1px solid #e3e9f0;border-radius:13px;padding:clamp(22px,3.2vw,40px);min-width:0}.back-link{border:0;background:transparent;color:#346fad;font-size:13px;font-weight:650;padding:0 0 22px}.article h1{color:#152942;font-size:clamp(25px,2.7vw,33px);line-height:1.2;letter-spacing:-.035em;margin:14px 0 11px}.article-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;color:#7a899b;font-size:12px;padding-bottom:22px;border-bottom:1px solid #e9edf2}.article-content{font-size:15px;color:#34445a;line-height:1.7;overflow-wrap:anywhere}.article-content h2{font-size:19px;letter-spacing:-.02em;color:#20344e;margin:28px 0 8px}.article-content h3{font-size:16px;color:#20344e;margin:23px 0 7px}.article-content p{margin:13px 0}.article-content ul,.article-content ol{padding-left:24px}.article-content li{margin:4px 0}.article-content code:not(pre code){background:#edf2f7;border-radius:4px;padding:2px 5px;font-size:.92em}.code-wrap{border-radius:9px;background:#15253d;margin:16px 0;overflow:hidden}.code-top{display:flex;align-items:center;justify-content:space-between;padding:9px 13px;border-bottom:1px solid #34455d;color:#aebdd2;font-size:11px}.copy-code{background:transparent;border:1px solid #61728a;border-radius:5px;padding:4px 8px;color:#e3edfa;font-size:11px}.code-wrap pre{margin:0;padding:16px;overflow-x:auto;color:#e6eefb;line-height:1.6;font-size:13px}.article-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:28px;padding-top:22px;border-top:1px solid #e9edf2}.detail-aside{position:sticky;top:25px;background:#fff;border:1px solid #e3e9f0;border-radius:12px;padding:21px}.detail-aside strong{display:block;font-size:13px;color:#233852;margin-bottom:12px}.detail-aside button{display:block;background:none;border:0;color:#536c89;padding:7px 0;text-align:left;font-size:13px;width:100%}.detail-aside a{font-size:12px;overflow-wrap:anywhere}.source{border-top:1px solid #e6eaf0;margin-top:15px;padding-top:15px}.source span{display:block;color:#8b98a8;font-size:11px;margin-bottom:4px}.settings-panel{max-width:710px;background:#fff;border:1px solid #e3e9f0;border-radius:13px;padding:25px;margin-bottom:17px}.settings-panel h2{font-size:18px;margin:0 0 7px}.settings-panel p{color:#64758c;line-height:1.55;font-size:14px;margin:0 0 17px}.settings-panel .button{margin-right:8px}dialog{border:0;border-radius:16px;padding:0;width:min(660px,calc(100% - 26px));max-height:min(92vh,900px);box-shadow:0 24px 70px rgba(10,31,58,.27)}dialog::backdrop{background:rgba(13,29,51,.57)}.dialog-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px 26px 17px;border-bottom:1px solid #e9edf2}.dialog-header h2{font-size:22px;letter-spacing:-.03em;margin:5px 0 0}.dialog-body{padding:20px 26px;overflow:auto;max-height:calc(92vh - 165px)}.dialog-body label{display:block;color:#34455b;font-size:13px;font-weight:700;margin-bottom:16px}.dialog-body input,.dialog-body select,.dialog-body textarea{display:block;width:100%;background:#fff;color:#24344a;border:1px solid #cfd9e6;border-radius:8px;padding:10px 11px;margin-top:7px;font-size:14px;line-height:1.5}.dialog-body textarea{resize:vertical;min-height:180px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-hint{color:#79899c;font-size:12px;line-height:1.5;margin:0}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;padding:15px 26px;border-top:1px solid #e9edf2}#toast{position:fixed;bottom:22px;right:22px;z-index:80;background:#17314f;color:#fff;border-radius:9px;padding:11px 15px;font-size:13px;box-shadow:0 8px 26px #13284432;opacity:0;pointer-events:none;transform:translateY(10px);transition:.2s}#toast.show{opacity:1;transform:translateY(0)}@media(max-width:1050px){.sidebar{width:220px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar-title{display:none}.search-box{width:auto;flex:1;margin-left:0}}@media(max-width:760px){.sidebar{position:fixed;left:0;transform:translateX(-101%);transition:transform .2s;width:min(285px,85vw)}.sidebar.open{transform:translateX(0)}.sidebar-close{display:block;position:absolute;right:13px;top:24px;background:none;border:0;color:#d8e3f2;font-size:27px}.mobile-scrim:not([hidden]){position:fixed;inset:0;background:#14233d88;z-index:20}.menu-button{display:block}.topbar{height:68px;padding:0 18px;gap:10px}.search-box{padding:9px}.search-box kbd{display:none}.top-add{padding:10px;font-size:12px}main{padding:27px 18px 60px}.stats{gap:8px}.stat{padding:13px;min-height:85px}.stat strong{font-size:22px}.stat span{font-size:11px}.note-layout{display:block}.detail-aside{display:none}}@media(max-width:550px){.category-grid,.note-grid{grid-template-columns:1fr}.category-card{min-height:auto}.page-heading{align-items:flex-start;flex-direction:column}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.form-row{grid-template-columns:1fr;gap:0}.search-box input::placeholder{color:transparent}.search-box:focus-within input::placeholder{color:#8795a6}.search-box{min-width:35px}.search-box:focus-within{position:absolute;left:58px;right:110px;background:white;z-index:2}.article{padding:21px}}
