.article-toc{background:var(--card);border-radius:0 var(--radius) var(--radius) 0;border:1px solid var(--border);z-index:1000;background:linear-gradient(135deg,#fff,#fff9f9);flex-direction:column;width:250px;height:calc(100vh - 120px);transition:transform .3s,box-shadow .3s;display:flex;position:fixed;top:100px;left:0;box-shadow:3px 0 15px #0000001a}.article-toc.hidden{transform:translate(-100%)}.toc-container{flex:1;padding:1.5rem;overflow-y:auto}.toc-toggle-btn{background:var(--card);border:1px solid var(--border);cursor:pointer;z-index:101;transition:var(--transition);border-radius:0 10px 10px 0;justify-content:center;align-items:center;width:35px;height:50px;padding:.75rem;display:flex;position:absolute;top:50%;right:-35px;transform:translateY(-50%);box-shadow:3px 3px 8px #0000001a}.toc-toggle-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.toc-container h3{color:var(--accent);border-bottom:2px solid var(--accent);align-items:center;gap:.5rem;margin-top:0;margin-bottom:1rem;padding-bottom:.5rem;display:flex}#toc-content{max-height:calc(100vh - 200px);overflow-y:auto}.toc-container ul{margin:0;padding-left:.5rem;list-style:none}.toc-container li{margin:.4rem 0;position:relative}.toc-container li:before{content:"•";color:var(--accent);font-size:.8rem;position:absolute;top:.2rem;left:-.8rem}.toc-container a{color:var(--text);transition:var(--transition);word-break:break-word;border-radius:5px;padding:.3rem .5rem;font-size:.9rem;text-decoration:none;display:block}.toc-container a:hover,.toc-container a.active{color:var(--accent);background:#ff6b9d1a;transform:translate(3px)}.toc-container a.active{background:linear-gradient(45deg, var(--accent), #ff9ec4);font-weight:600;color:#fff!important}.toc-container a.level-2{padding-left:.5rem}.toc-container a.level-3{padding-left:1.5rem}.toc-container a.level-4{padding-left:2.5rem}.toc-container a.level-5{padding-left:3.5rem}.toc-container a.level-6{padding-left:4.5rem}.article-main-content{width:calc(100% - 270px);max-width:1200px;margin:2rem auto 0;padding:0 1rem}.article-content-wrapper{min-width:0;margin:0 auto}.article-container{background:var(--card);border-radius:var(--radius);width:calc(100% - 4rem);max-width:100%;box-shadow:var(--shadow);background:linear-gradient(135deg,#fff,#fff9f9);border:1px solid #ffffff80;margin:2rem auto;padding:2.5rem;animation:.45s cubic-bezier(.22,1,.36,1) both articleEnter;position:relative;overflow:hidden}@keyframes articleEnter{0%{opacity:0;transform:translateY(16px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.article-header{text-align:center;border-bottom:1px solid var(--border);margin-bottom:2rem;padding-bottom:1rem}.article-title{color:var(--text);transition:var(--transition);margin-bottom:1rem;font-size:clamp(1.8rem,4vw,2.5rem);font-weight:700}.article-title:hover{color:var(--accent);transform:translate(5px)}.article-meta{color:var(--text-secondary);flex-wrap:wrap;justify-content:center;gap:1.5rem;font-size:.9rem;display:flex}.article-meta span{align-items:center;gap:.25rem;display:flex}.article-author{color:var(--text-secondary);flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-top:.5rem;padding-top:.5rem;font-size:.9rem;display:flex}.article-author span{align-items:center;gap:.25rem;display:flex}.article-content{color:var(--text);font-size:1.05rem;line-height:1.8}.article-content h1,.article-content h2,.article-content h3,.article-content h4,.article-content h5,.article-content h6{color:var(--accent);margin-top:1.5rem;margin-bottom:1rem;font-weight:600}.article-content h1{border-bottom:2px solid var(--border);padding-bottom:.5rem;font-size:2rem}.article-content h2{font-size:1.7rem}.article-content h3{font-size:1.4rem}.article-content p{text-align:justify;margin-bottom:1rem}.article-content ul,.article-content ol{margin:.6rem 0 1.1rem;padding-left:1.65rem;list-style-position:outside}.article-content li{margin:.35rem 0;padding-left:.35rem;line-height:1.8}.article-content li::marker{color:var(--accent);font-weight:600}.article-content li>ul,.article-content li>ol{margin:.35rem 0 .45rem}.article-content img{max-width:100%;transition:var(--transition);border-radius:10px;margin:1rem 0;box-shadow:0 5px 15px #0000001a}.article-content img:hover{transform:scale(1.02);box-shadow:0 8px 25px #00000026}.article-content a{color:var(--accent);transition:var(--transition);border-bottom:1px solid #0000;text-decoration:none}.article-content a:hover{color:#ff4d8d;border-bottom:1px solid var(--accent);text-decoration:none}.article-content blockquote{border-left:4px solid var(--accent);color:#555;background:linear-gradient(90deg,#fff9f9,#fff);border-radius:0 8px 8px 0;margin:1rem 0;padding:1rem 1.5rem;font-style:italic;position:relative}.article-content blockquote:before{content:"\"";color:var(--accent);opacity:.3;font-size:2rem;position:absolute;top:-10px;left:10px}.article-content blockquote>:last-child{margin-bottom:0}.article-content table{border-collapse:collapse;border-spacing:0;table-layout:fixed;border:1px solid var(--border);background:#fff;border-radius:8px;width:100%;margin:1.25rem 0;overflow:hidden;box-shadow:0 4px 14px #0000000f}.article-content thead{background:linear-gradient(45deg,#ff6b9d1f,#ff9ec41f)}.article-content th,.article-content td{border:1px solid var(--border);text-align:center;vertical-align:middle;word-break:break-word;padding:.75rem .9rem;line-height:1.65}.article-content th{color:var(--text);white-space:nowrap;font-weight:700}.article-content tbody tr:nth-child(2n){background:#fff9f9bf}.article-content tbody tr:hover{background:#ff6b9d0f}.article-content code{color:#d63384;transition:var(--transition);background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:.3rem .6rem;font-family:Fira Code,Courier New,monospace;font-size:.95em;font-weight:500}.article-content code:hover{color:#a61e4d;background:#e9ecef;border-color:#dee2e6}.article-content pre{color:#f8f8f2;transition:var(--transition);background:#1e1e1e;border:1px solid #343a40;border-radius:8px;margin:1.5rem 0;padding:1.5rem;position:relative;overflow-x:auto;box-shadow:inset 0 2px 8px #0000003d}.article-content pre:hover{box-shadow:inset 0 2px 12px #00000052}.article-content pre code,.article-content pre code:hover{color:#f8f8f2;background:0 0;border:0;padding:0;font-size:.95em;font-weight:400;line-height:1.6;display:block}.line-numbers{color:#6c757d;text-align:right;background:#0000001a;border-right:1px solid #ffffff1a;min-width:2.5rem;padding:1.5rem .5rem;font-size:.8em;line-height:1.5;position:absolute;top:0;left:0}.article-back{color:var(--accent);transition:var(--transition);border-radius:25px;margin-bottom:2rem;padding:.5rem 1rem;font-weight:500;text-decoration:none;display:inline-block}.article-back i{margin-right:.5rem}.article-back:hover{background:#ff6b9d1a;transform:translate(-3px)}.article-tags{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-top:2rem;padding-top:1rem;display:flex}.article-tags .post-tags{flex-wrap:wrap;justify-content:center;gap:.5rem;width:100%}.encrypted-content{text-align:center;border:1px dashed var(--accent);background:#ff6b9d0d;border-radius:10px;padding:2rem}.article-content .encrypted-summary{text-align:center;white-space:pre-line}.lock-icon{color:var(--accent);margin-bottom:1rem;font-size:3rem}.password-input{flex-wrap:wrap;justify-content:center;gap:1rem;margin:1.5rem 0;display:flex}.password-input input{border:2px solid var(--border);transition:var(--transition);border-radius:25px;outline:none;min-width:250px;padding:.75rem 1rem;font-size:1rem}.password-input input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #ff6b9d33}.password-input button{background:linear-gradient(45deg, var(--accent), #ff9ec4);color:#fff;cursor:pointer;transition:var(--transition);border:none;border-radius:25px;padding:.75rem 1.5rem;font-size:1rem}.password-input button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #ff6b9d66}.unlock-icon{color:#28a745;margin-bottom:1rem;font-size:2rem}.error-container{text-align:center;color:#666;padding:3rem}.error-container h2{color:#dc3545;margin-bottom:1rem}.error-message{color:#721c24;background:#f8d7da;border-radius:5px;margin-top:1rem;padding:.75rem}.table-of-contents{border-left:4px solid var(--accent);background:#f8f9fa;border-radius:10px;margin-bottom:2rem;padding:1rem}.table-of-contents h3{color:var(--accent);margin:0 0 1rem}.table-of-contents ul{padding-left:0;list-style:none}.table-of-contents li{margin:.25rem 0}.table-of-contents a{color:var(--text);transition:var(--transition);border-radius:5px;padding:.25rem .5rem;text-decoration:none;display:block}.table-of-contents a:hover{color:var(--accent);background:#ff6b9d1a;transform:translate(3px)}.scroll-top,.scroll-bottom{background:linear-gradient(45deg, var(--accent), #ff9ec4);color:#fff;cursor:pointer;z-index:1000;width:50px;height:50px;transition:var(--transition);border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:none;position:fixed;right:20px;box-shadow:0 4px 15px #ff6b9d66}.scroll-top{bottom:140px}.scroll-bottom{bottom:80px}.scroll-top:hover,.scroll-bottom:hover{transform:scale(1.1);box-shadow:0 6px 20px #ff6b9d99}.print-btn{color:#fff;cursor:pointer;z-index:1000;transition:var(--transition);background:linear-gradient(45deg,#6c757d,#495057);border:none;border-radius:25px;padding:.5rem 1rem;display:none;position:fixed;top:100px;right:20px}.print-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px #6c757d66}.article-share-btn-fixed{top:145px}.pdf-export-host{background:#fff;width:794px;position:absolute;top:0;left:-100000px}.pdf-export-host #article-container{background:#fff;width:auto;max-width:none;margin:0;animation:none}.pdf-watermark{z-index:10;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(var(--pdf-watermark-rows), minmax(0, 1fr));pointer-events:none;-webkit-user-select:none;user-select:none;display:grid;position:absolute;inset:0}.pdf-watermark-item{overflow-wrap:anywhere;color:#000;opacity:.12;text-align:center;place-self:center;width:max-content;max-width:90%;font-size:11pt;line-height:1.45;transform:rotate(-30deg)}.pdf-gif-notice{border-left:4px solid var(--accent);color:#555;background:#fff9f9;margin:1rem 0;padding:.8rem 1rem}pre[class*=language-]{background:#2d2d2d!important;border-radius:8px!important;padding:1.5rem!important;overflow-x:auto!important}code[class*=language-],pre[class*=language-]{color:#f8f8f2!important;text-shadow:0 1px #0000004d!important;text-align:left!important;white-space:pre!important;word-spacing:normal!important;word-break:normal!important;word-wrap:normal!important;tab-size:4!important;-webkit-hyphens:none!important;hyphens:none!important;direction:ltr!important;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace!important;line-height:1.5!important}.article-pagination-wrapper{border-top:2px dashed var(--border);margin-top:2rem;padding-top:1.5rem}#pagination{justify-content:center;align-items:center;gap:1rem;display:flex}#pagination a{color:var(--accent);transition:var(--transition);border:1px solid var(--border);text-align:center;border-radius:25px;flex:1;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-weight:500;text-decoration:none;display:flex}#pagination a:hover{background:linear-gradient(45deg, var(--accent), #ff9ec4);color:#fff;border-color:var(--accent);transform:translateY(-2px);box-shadow:0 5px 15px #ff6b9d66}#pagination a i{transition:var(--transition)}#pagination a:hover i{transform:translate(3px)}#pagination-prev{text-align:left}#pagination-next{text-align:right}#pagination-next a:hover i{transform:translate(3px)}#pagination-prev a:hover i{transform:translate(-3px)}@media (width<=768px){#pagination{flex-direction:column;gap:1rem}#pagination a{justify-content:center;width:100%}#pagination-prev,#pagination-next{margin:0}.article-toc{width:min(82vw,280px);height:calc(100vh - 96px);top:78px}.article-main-content{width:100%;padding:0 .75rem}.article-container{border-radius:16px;width:100%;margin:1rem auto;padding:1.5rem}.article-title{font-size:clamp(1.5rem,4vw,2rem)}.article-meta{justify-content:flex-start;gap:.65rem}.article-author{justify-content:flex-start;gap:.5rem}.toc-container{padding:1rem}.toc-container h3{font-size:1rem}.toc-container a{padding:.2rem .3rem;font-size:.8rem}.toc-container a.level-2{padding-left:.3rem}.toc-container a.level-3{padding-left:.8rem}.toc-container a.level-4{padding-left:1.3rem}.toc-container a.level-5{padding-left:1.8rem}.toc-container a.level-6{padding-left:2.3rem}.article-content h1{font-size:1.6rem}.article-content h2{font-size:1.4rem}.article-content h3{font-size:1.2rem}.article-content p{text-align:left;font-size:1rem}.article-content table{table-layout:auto;margin:1rem 0;font-size:.92rem;display:block;overflow-x:auto}.article-content th,.article-content td{min-width:7rem;padding:.6rem .7rem}.article-back{font-size:.9rem}.password-input input{min-width:180px;padding:.5rem;font-size:.9rem}.password-input button{padding:.5rem 1rem;font-size:.9rem}.article-tags .post-tags{gap:.3rem}.post-tag{padding:.2rem .5rem;font-size:.75rem}#live2d{display:none}.scroll-top,.scroll-bottom{left:auto;right:12px}.scroll-top{bottom:200px}.scroll-bottom{bottom:140px}.print-btn{padding:.45rem .8rem;top:auto;bottom:84px;right:12px;box-shadow:0 8px 20px #49505738}.article-share-btn-fixed{top:auto;bottom:34px}}@media (width<=480px){.article-main-content{padding:0 .5rem}.article-container{padding:1rem}.article-content{font-size:1rem;line-height:1.75}.article-content pre{margin-left:-.25rem;margin-right:-.25rem;padding:1rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
