.onload-animation{opacity:0;animation:.3s fade-in-up;animation-fill-mode:forwards}@keyframes fade-in-up{0%{scale:98%;transform:translateY(2rem);opacity:0}to{scale:100%;transform:translateY(0);opacity:1}}.onload-animation-fade-in{opacity:0;animation:.3s fade-in ease-in;animation-fill-mode:forwards}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.scrollbar-base.os-scrollbar{transition:width .15s ease-in-out,height .15s ease-in-out,opacity .15s,visibility .15s,top .15s,right .15s,bottom .15s,left .15s;pointer-events:unset}.scrollbar-base.os-scrollbar.os-scrollbar-horizontal{padding-top:4px;padding-bottom:4px;height:16px}.scrollbar-base.os-scrollbar.os-scrollbar-horizontal .os-scrollbar-track .os-scrollbar-handle{height:4px;border-radius:4px}.scrollbar-base.os-scrollbar.os-scrollbar-horizontal:hover .os-scrollbar-track .os-scrollbar-handle{height:8px}.scrollbar-base.os-scrollbar.os-scrollbar-horizontal.px-2{padding-left:8px;padding-right:8px}.scrollbar-base.os-scrollbar.os-scrollbar-vertical{padding-left:4px;padding-right:4px;width:16px}.scrollbar-base.os-scrollbar.os-scrollbar-vertical .os-scrollbar-track .os-scrollbar-handle{width:4px;border-radius:4px}.scrollbar-base.os-scrollbar.os-scrollbar-vertical:hover .os-scrollbar-track .os-scrollbar-handle{width:8px}.scrollbar-base.os-scrollbar.os-scrollbar-vertical.py-1{padding-top:4px;padding-bottom:4px}:root{--os-handle-bg-custom: rgba(0, 0, 0, .3);--os-handle-bg-custom-hover: rgba(0, 0, 0, .5);--os-handle-bg-custom-active: rgba(0, 0, 0, .6)}:root.dark{--os-handle-bg-custom: rgba(255, 255, 255, .4);--os-handle-bg-custom-hover: rgba(255, 255, 255, .6);--os-handle-bg-custom-active: rgba(255, 255, 255, .7)}.scrollbar-auto.os-scrollbar{--os-handle-bg: var(--os-handle-bg-custom);--os-handle-bg-hover: var(--os-handle-bg-custom-hover);--os-handle-bg-active: var(--os-handle-bg-custom-active)}.scrollbar-dark.os-scrollbar{--os-handle-bg: rgba(255, 255, 255, .4);--os-handle-bg-hover: rgba(255, 255, 255, .6);--os-handle-bg-active: rgba(255, 255, 255, .7)}.transition-leaving{transition:transform .3s,opacity .3s}html.is-changing .transition-main,html.is-leaving .transition-main{transition:opacity .25s ease-in-out}html.is-animating .transition-main{opacity:0}html.is-animating.is-leaving .transition-leaving{transform:translateY(2rem);opacity:0}.result-item{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.result-item:hover{background-color:var(--primary-color-lighten);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.result-item:hover .result-title{color:var(--primary-color)}.item-excerpt mark{background-color:transparent;font-weight:700;color:var(--primary-color)}#result-pannel{transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);will-change:height,opacity}.result-item{backface-visibility:hidden;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden}.password-overlay{position:absolute;inset:0;background:#000c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:flex-start;justify-content:center;padding-top:3vh;z-index:9999;opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease}.article-layout{position:relative}.password-overlay.ready{opacity:1;visibility:visible}.password-modal{background:var(--card-color);border-radius:1.5rem;padding:2.5rem;max-width:400px;width:90%;text-align:center;box-shadow:0 20px 40px #0003;animation:passwordModalSlideIn .3s ease-out;max-height:60vh;overflow-y:auto}@keyframes passwordModalSlideIn{0%{opacity:0;transform:translateY(-40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 768px){.password-overlay{padding-top:3vh}.password-modal{padding:2rem;margin:1rem;border-radius:1rem;max-height:70vh}}@media (max-width: 480px){.password-overlay{padding-top:2vh}.password-modal{padding:1.5rem;margin:.5rem;max-width:calc(100% - 1rem);max-height:80vh}}@media (min-height: 1080px){.password-overlay{padding-top:7vh}}.password-icon{color:var(--primary-color);margin-bottom:1rem;display:flex;align-items:center;justify-content:center}.password-title{color:var(--text-color);font-size:1.5rem;font-weight:600;margin:0 0 .5rem;font-family:var(--primary-font)}.password-description{color:var(--text-color-lighten);margin:0 0 2rem;font-size:.95rem;font-family:var(--primary-font)}.password-input-group{display:flex;gap:.75rem;margin-bottom:1rem}.password-input{flex:1;padding:.75rem 1rem;border:2px solid var(--primary-color-lighten);border-radius:.75rem;background:var(--background-color);color:var(--text-color);font-size:1rem;font-family:var(--primary-font);transition:border-color .2s,box-shadow .2s}.password-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-transparent)}.password-input::-moz-placeholder{color:var(--text-color-lighten);opacity:.7}.password-input::placeholder{color:var(--text-color-lighten);opacity:.7}.password-button{padding:.75rem 1.5rem;background:var(--primary-color);color:#fff;border:none;border-radius:.75rem;font-weight:600;font-family:var(--primary-font);cursor:pointer;transition:background-color .2s,transform .1s;display:flex;align-items:center;justify-content:center;min-width:80px}.password-button:hover:not(:disabled){background:var(--primary-color-hover);transform:translateY(-1px)}.password-button:active:not(:disabled){transform:translateY(0)}.password-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.button-text{display:inline}.button-loading{display:none;align-items:center;justify-content:center}.loading-spinner{animation:passwordSpinAnimation 1s linear infinite}@keyframes passwordSpinAnimation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.password-error{color:#ef4444;font-size:.875rem;font-family:var(--primary-font);background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:.5rem;padding:.5rem .75rem;animation:passwordErrorShake .4s ease-in-out;margin-top:.5rem}@keyframes passwordErrorShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.private-content,.private-annotations{filter:blur(8px);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:filter .3s ease}.article-layout.private-post{position:relative}:root.dark .password-overlay{background:#000000e6}:root.dark .password-modal{box-shadow:0 20px 40px #0006}:root.dark .password-error{background:#ef444426;border-color:#ef44444d}.password-input:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.password-button:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}@media (prefers-contrast: high){.password-modal{border:2px solid var(--text-color)}.password-input{border-width:3px}.password-button{border:2px solid white}}@media (prefers-reduced-motion: reduce){.password-modal,.password-error,.loading-spinner{animation:none}.private-content,.private-annotations{transition:none}}.encrypted-placeholder{color:#666!important;font-style:italic!important;background:#f5f5f5;padding:2px 4px;border-radius:3px;border:1px dashed #ccc;display:inline-block;transition:all .3s ease;font-family:monospace;font-size:.9em;word-break:break-all;max-width:100%;overflow-wrap:break-word}.encrypted-placeholder:hover{background:#eee;border-color:#999}.encrypted-placeholder{font-size:.9em;line-height:inherit;font-family:inherit}h1 .encrypted-placeholder,h2 .encrypted-placeholder,h3 .encrypted-placeholder,h4 .encrypted-placeholder,h5 .encrypted-placeholder,h6 .encrypted-placeholder{font-size:.8em;font-weight:400}pre .encrypted-placeholder,code .encrypted-placeholder{background:#2d2d2d;color:#888!important;border-color:#555}a .encrypted-placeholder{color:#666!important;text-decoration:none}@keyframes decryptFadeIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.encrypted-placeholder.decrypting{animation:decryptFadeIn .5s ease-out}.dialogue-scene-container{margin:2rem 0;padding:0;width:100%}.dialogue-scene{max-width:100%;width:100%}.dialogue-block{margin-bottom:1.5rem;opacity:0;transition:opacity .3s ease,transform .3s ease}.dialogue-block.visible{opacity:1;transform:translateY(0);animation:fadeInUp .4s ease-out}.dialogue-block.hidden{display:none}.dialogue-region{margin-bottom:1.5rem;opacity:0;transition:opacity .3s ease,transform .3s ease}.dialogue-region.visible{opacity:1;transform:translateY(0)}.dialogue-region.hidden{display:none}.dialogue-item.character{display:flex;margin-bottom:1.2rem;align-items:center;gap:.75rem}.dialogue-item.character.right{flex-direction:row-reverse;align-items:center}.dialogue-header{display:flex;flex-direction:column;flex-shrink:0;align-items:center;justify-content:center;min-width:98px}.dialogue-avatar-section{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:98px;justify-content:center;min-height:120px}.dialogue-avatar{width:90px;height:90px;border-radius:10px;overflow:hidden;margin-bottom:.4rem;background:#f0f0f0;box-shadow:0 2.5px 7.5px #0000001a;transition:transform .2s ease}.dialogue-avatar:hover{transform:scale(1.25)}.dialogue-avatar img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:center top;object-position:center top;display:block;margin:0;padding:0}.dialogue-name{font-size:1.0625rem;font-weight:600;color:var(--color-text-primary, #333);text-align:center;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;margin-top:.3rem}.dialogue-avatar-section.no-avatar{display:flex;flex-direction:column;align-items:center;justify-content:center;width:98px;min-width:98px;min-height:120px;padding:.625rem 0}.dialogue-avatar-section.no-avatar .dialogue-avatar{display:none}.dialogue-avatar-section.no-avatar .dialogue-name{font-size:1.125rem;color:var(--color-text-primary, #333);font-weight:600;white-space:normal;width:100%;max-width:98px;margin-top:0}.dialogue-avatar-section.avatar-load-failed{display:flex;flex-direction:column;align-items:center;justify-content:center;width:98px;min-width:98px;min-height:120px;padding:.625rem 0}.dialogue-avatar-section.avatar-load-failed .dialogue-avatar{display:none}.dialogue-avatar-section.avatar-load-failed .dialogue-name{font-size:1.125rem;color:var(--color-text-primary, #333);font-weight:600;white-space:normal;width:100%;max-width:98px;margin-top:0}.dialogue-content{background:var(--color-bg-secondary, #f8f9fa);color:var(--color-text-primary, #333);padding:.9375rem 1.25rem;border-radius:22.5px;max-width:calc(100% - 120px);word-wrap:break-word;position:relative;box-shadow:0 1.25px 2.5px #0000001a;border:1.25px solid var(--color-border, #e9ecef);font-size:1rem;line-height:1.5;margin:0;align-self:center}.dialogue-item.character.right .dialogue-content{background:var(--color-primary, #007bff);color:#fff;border-color:var(--color-primary, #007bff)}.dialogue-content:before{content:"";position:absolute;top:50%;transform:translateY(-50%);width:0;height:0;border:6px solid transparent}.dialogue-item.character:not(.right) .dialogue-content:before{left:-12px;border-right-color:var(--color-bg-secondary, #f8f9fa);border-left:0}.dialogue-item.character.right .dialogue-content:before{right:-12px;border-left-color:var(--color-primary, #007bff);border-right:0}.dialogue-item.narrator{display:flex;justify-content:flex-start;margin:1.44rem 0;padding:0;width:calc(100% - 10px);max-width:100%}.dialogue-item.narrator .dialogue-header{display:none}.narrator-content{background:var(--color-bg-secondary, #f8f9fa);color:var(--color-text-primary, #333);padding:.9375rem 1.25rem;border-radius:22.5px;max-width:100%;width:100%;word-wrap:break-word;position:relative;box-shadow:0 1.25px 2.5px #0000001a;border:1.25px solid var(--color-border, #e9ecef);font-size:1rem;line-height:1.5;margin-left:0;margin-right:0}.narrator-content:before{display:none}.dialogue-item.system{display:flex;justify-content:center;margin:1rem 0;padding:0}.dialogue-item.system .dialogue-header{display:none}.system-content{background:var(--color-bg-primary, #ffffff);color:var(--color-text-secondary, #666);font-size:.8rem;font-weight:400;padding:.375rem .75rem;border-radius:12px;border:1px solid var(--color-border, #dee2e6);max-width:60%;text-align:center;box-shadow:0 1px 2px #0000000d}.dialogue-choice{margin:2rem 0;padding:1rem;background:transparent;border-radius:12px;border:none}.choice-prompt{font-size:.95rem;font-weight:600;color:var(--color-text-primary, #333);margin-bottom:1rem;padding-left:.5rem;text-align:left}.choice-options{display:flex;flex-direction:column;gap:.75rem}.choice-option{background:var(--color-bg-primary, #ffffff);color:var(--color-text-primary, #333);border:2px solid var(--color-border, #dee2e6);border-radius:8px;padding:.75rem 1rem;font-size:.9rem;text-align:left;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.choice-option:hover{border-color:var(--color-primary, #007bff);background:var(--color-bg-secondary, #f8f9fa);transform:translate(4px)}.choice-option:focus{outline:none;border-color:var(--color-primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.choice-option.selected{background:var(--color-primary, #007bff);color:#fff;border-color:var(--color-primary, #007bff);font-weight:600}.choice-option.selected:after{content:"✓";position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-weight:700}.choice-option.unselected{background:var(--color-bg-primary, #ffffff);color:var(--color-text-primary, #333);border-color:var(--color-border, #dee2e6)}.choice-option.unselected:hover{border-color:var(--color-primary, #007bff);background:var(--color-bg-secondary, #f8f9fa);transform:translate(4px)}.dialogue-unknown{background:#fff3cd;color:#856404;border:1px solid #ffeaa7;padding:1rem;border-radius:8px;margin:1rem 0;font-style:italic}.dialogue-loading{display:flex;justify-content:center;align-items:center;padding:2rem;color:var(--color-text-secondary, #666)}.dialogue-loading:after{content:"";width:20px;height:20px;border:2px solid var(--color-border, #e9ecef);border-radius:50%;animation:spin 1s linear infinite;margin-left:.5rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.dialogue-scene-container{margin:1rem 0}.dialogue-item.character{gap:.5rem;margin-bottom:1rem}.dialogue-header{min-width:78px}.dialogue-avatar-section{width:78px}.dialogue-avatar{width:70px;height:70px}.dialogue-name{font-size:.9375rem}.dialogue-content{font-size:1rem;padding:.78125rem 1.09375rem;max-width:calc(100% - 95px)}.dialogue-item.narrator{margin:1.2rem 0}.narrator-content{padding:.9375rem 1.09375rem;font-size:1rem;margin-left:0;margin-right:0;width:calc(100% - 2px);max-width:100%}.choice-option{padding:.625rem .75rem;font-size:.8rem}.choice-prompt{font-size:.875rem;margin-bottom:.75rem}.system-content{font-size:.75rem;padding:.25rem .5rem}.dialogue-avatar-section.no-avatar{width:78px;min-width:78px;min-height:78px;padding:.325rem 0}.dialogue-avatar-section.no-avatar .dialogue-name{font-size:.9375rem;max-width:78px}.dialogue-avatar-section.avatar-load-failed{width:78px;min-width:78px;min-height:78px;padding:.325rem 0}.dialogue-avatar-section.avatar-load-failed .dialogue-name{font-size:.9375rem;max-width:78px}}@media (max-width: 480px){.dialogue-scene-container{margin:1rem 0}.dialogue-item.character{gap:.5rem;margin-bottom:1rem}.dialogue-header{min-width:78px}.dialogue-avatar-section{width:78px}.dialogue-avatar{width:70px;height:70px}.dialogue-name{font-size:.9375rem}.dialogue-content{font-size:1rem;padding:.78125rem 1.09375rem;max-width:calc(100% - 95px)}.dialogue-item.narrator{margin:1.2rem 0}.narrator-content{padding:.9375rem 1.09375rem;font-size:1rem;margin-left:0;margin-right:0;width:calc(100% - 2px);max-width:100%}.choice-option{padding:.625rem .75rem;font-size:.8rem}.choice-prompt{font-size:.875rem;margin-bottom:.75rem}.system-content{font-size:.75rem;padding:.25rem .5rem}.dialogue-avatar-section.no-avatar{width:78px;min-width:78px;min-height:78px;padding:.325rem 0}.dialogue-avatar-section.no-avatar .dialogue-name{font-size:.9375rem;max-width:78px}.dialogue-avatar-section.avatar-load-failed{width:78px;min-width:78px;min-height:78px;padding:.325rem 0}.dialogue-avatar-section.avatar-load-failed .dialogue-name{font-size:.9375rem;max-width:78px}}:root.dark{--color-bg-primary: #1a1a1a;--color-bg-secondary: #2d2d2d;--color-bg-tertiary: #404040;--color-text-primary: #ffffff;--color-text-secondary: #b3b3b3;--color-border: #4a4a4a;--color-primary: #4dabf7}:root.dark .dialogue-avatar{background:#333}:root.dark .dialogue-item.character.right .dialogue-content{background:var(--color-primary, #4dabf7);color:#fff;border-color:var(--color-primary, #4dabf7)}:root.dark .dialogue-item.character.right .dialogue-content:before{border-left-color:var(--color-bg-secondary, #2d2d2d)}:root.dark .dialogue-item.character:not(.right) .dialogue-content:before{border-right-color:var(--color-bg-secondary, #2d2d2d)}:root.dark .choice-option:hover{border-color:var(--color-primary, #4dabf7);background:var(--color-bg-secondary, #2d2d2d)}:root.dark .choice-option.selected{background:var(--color-primary, #4dabf7);color:#fff;border-color:var(--color-primary, #4dabf7)}:root.dark .system-content{background:var(--color-bg-secondary, #2d2d2d);color:var(--color-text-secondary, #b3b3b3);border-color:var(--color-border, #4a4a4a)}:root.dark .dialogue-unknown{background:#3d2f1f;color:#d4a574;border-color:#8b6914}@media (prefers-contrast: high){.dialogue-content,.choice-option{border-width:2px;font-weight:500}}@media (prefers-reduced-motion: reduce){.dialogue-block.visible,.dialogue-region.visible{transition:none;animation:none}.dialogue-avatar:hover,.choice-option:hover{transform:none}.dialogue-debug-overlay,.dialogue-debug-controls{transition:none}}@media (prefers-color-scheme: dark){.dialogue-debug-overlay{background:#141414f2;border-left-color:#4dabf7}.dialogue-debug-controls{background:#141414f2;border-color:#4dabf7}.debug-controls-header,.debug-control-group button{background:#4dabf7}.debug-control-group button:hover{background:#339af0}}@media print{.dialogue-choice{page-break-inside:avoid;border:1px solid #000;background:#fff!important;color:#000!important}.choice-option.selected{background:#f0f0f0!important;color:#000!important}.dialogue-content{background:#fff!important;color:#000!important;border:1px solid #000}.dialogue-item.character.right .dialogue-content{background:#f0f0f0!important;color:#000!important;border:1px solid #000}.dialogue-item.character:not(.right) .dialogue-content{background:#fff!important;color:#000!important;border:1px solid #000}.narrator-content{background:#fff!important;color:#000!important;border:1px solid #000}}.dialogue-debug-overlay{position:fixed;top:0;right:0;width:400px;height:100vh;background:#000000e6;color:#fff;z-index:10000;overflow-y:auto;font-family:monospace;font-size:12px;border-left:2px solid #007bff;display:none}.debug-header{background:#007bff;padding:10px;display:flex;justify-content:space-between;align-items:center;font-weight:700}.debug-close{background:none;border:none;color:#fff;font-size:18px;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.debug-content{padding:10px}.debug-section{margin-bottom:20px;border-bottom:1px solid #333;padding-bottom:10px}.debug-section h4{color:#007bff;margin-bottom:10px;font-size:14px}.debug-section h5{color:#4dabf7;margin:10px 0 5px;font-size:12px}.debug-block{margin:5px 0;padding:5px;border-radius:3px;display:flex;gap:10px;align-items:center}.debug-block.active{background:#28a7454d;border:1px solid #28a745}.debug-block.inactive{background:#dc35454d;border:1px solid #dc3545}.debug-block.content{border-left:3px solid #28a745}.debug-block.choice{border-left:3px solid #ffc107}.block-id{color:#4dabf7;font-weight:700;min-width:80px}.block-type{color:#ffc107;min-width:60px}.block-status{color:#28a745}.block-choice{color:#e83e8c;font-size:10px}.block-branch{color:#17a2b8;font-size:10px}.debug-choice-info{margin:5px 0;padding:5px;background:#6c757d4d;border-radius:3px;font-size:11px}.debug-choice-item{margin:3px 0;padding:3px 5px;background:#e93e8c33;border-radius:2px;display:flex;gap:5px;align-items:center;font-size:11px}.choice-id{color:#4dabf7;font-weight:700}.choice-arrow{color:#6c757d}.branch-id{color:#e83e8c;font-weight:700}.debug-hierarchy-item{margin:2px 0;padding:2px 5px;border-radius:2px;font-size:11px;line-height:1.2}.debug-items-info{color:#6c757d;font-style:italic}.dialogue-debug-controls{position:fixed;bottom:20px;right:20px;background:#000000e6;color:#fff;border:2px solid #007bff;border-radius:8px;z-index:9999;font-family:monospace;font-size:12px;max-width:300px}.debug-controls-header{background:#007bff;padding:8px 12px;display:flex;justify-content:space-between;align-items:center;font-weight:700;cursor:pointer}.debug-toggle{background:none;border:none;color:#fff;font-size:16px;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.debug-controls-content{padding:10px;display:block}.debug-control-group{margin:8px 0}.debug-control-group label{display:block;margin-bottom:5px;cursor:pointer}.debug-control-group input[type=checkbox]{margin-right:8px}.debug-control-group button{width:100%;padding:6px 10px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-family:monospace;font-size:11px;margin:2px 0}.debug-control-group button:hover{background:#0056b3}.debug-block-content{border:2px dashed rgba(40,167,69,.6)!important;background:#28a7451a!important;position:relative}.debug-block-content:before{content:"内容区块";position:absolute;top:-20px;left:0;background:#28a745cc;color:#fff;padding:2px 6px;font-size:10px;border-radius:2px;font-family:monospace}.debug-block-choice{border:2px dashed rgba(255,193,7,.6)!important;background:#ffc1071a!important;position:relative}.debug-block-choice:before{content:"选择区块";position:absolute;top:-20px;left:0;background:#ffc107cc;color:#000;padding:2px 6px;font-size:10px;border-radius:2px;font-family:monospace}.debug-block-active{border:2px solid rgba(40,167,69,.8)!important;background:#28a74533!important}.debug-block-inactive{border:2px solid rgba(220,53,69,.8)!important;background:#dc354533!important}@media (max-width: 768px){.dialogue-debug-overlay{width:100%;height:50vh;top:auto;bottom:0;border-left:none;border-top:2px solid #007bff}.dialogue-debug-controls{bottom:10px;right:10px;max-width:250px}}@media (max-width: 480px){.dialogue-debug-overlay{height:60vh;font-size:10px}.dialogue-debug-controls{bottom:5px;right:5px;max-width:200px}.debug-control-group button{font-size:10px;padding:4px 6px}}.page-container{width:100%;box-sizing:border-box}.article-layout{max-width:var(--page-width-xl);margin:0 auto;width:100%}.article-layout.has-annotations{display:grid;grid-template-columns:1fr 280px;gap:.75rem;align-items:start}.article-wrapper{border-radius:2rem;background:var(--card-color);padding:var(--content-spacing) 0;position:relative;min-width:0;overflow-wrap:break-word;margin-bottom:0}.article{display:flex;flex-direction:column;font-size:var(--primary-font);min-width:0;word-wrap:break-word;padding:0 2rem}.article .article-meta-card{margin-top:var(--section-spacing)!important}.article>div:last-child.article-meta-card{margin-top:var(--section-spacing)!important}.annotation-panel{position:relative;min-height:100%;height:100%;display:flex;flex-direction:column;width:280px;max-width:280px;overflow:hidden;padding:0}.annotation-content-area{position:relative;min-height:100%;height:100%;width:100%;overflow-wrap:break-word;word-break:break-word;padding:0}@media (min-width: 1400px){.article-layout.has-annotations{grid-template-columns:1fr 320px;gap:1rem}.annotation-panel{width:320px;max-width:320px}}.article-layout.private-post{max-width:var(--page-width-xl);margin:0 auto;width:100%}.article-layout.private-post.has-annotations{display:grid;grid-template-columns:1fr 280px;gap:.75rem;align-items:start}@media (min-width: 1400px){.article-layout.private-post.has-annotations{grid-template-columns:1fr 320px;gap:1rem}}@media (max-width: 640px){.page-container{padding:0 calc(var(--element-spacing) / 2)}.article-wrapper{padding:var(--content-spacing) 0}.article{padding:0 1rem}}@media (max-width: 1024px){.article-layout.has-annotations{display:block;max-width:100%}.article-wrapper{margin-bottom:var(--card-spacing)}.annotation-panel{margin-top:var(--card-spacing);max-height:60vh;overflow-y:auto;width:100%;max-width:100%}.article-layout.private-post.has-annotations{display:block;max-width:100%}.article-layout.private-post .annotation-panel{margin-top:var(--card-spacing);max-height:60vh;overflow-y:auto;width:100%;max-width:100%}}/*! 
 * OverlayScrollbars
 * Version: 2.10.1
 * 
 * Copyright (c) Rene Haas | KingSora.
 * https://github.com/KingSora
 * 
 * Released under the MIT license.
 */.os-size-observer,.os-size-observer-listener{scroll-behavior:auto!important;direction:inherit;pointer-events:none;overflow:hidden;visibility:hidden;box-sizing:border-box}.os-size-observer,.os-size-observer-listener,.os-size-observer-listener-item,.os-size-observer-listener-item-final{writing-mode:horizontal-tb;position:absolute;left:0;top:0}.os-size-observer{z-index:-1;contain:strict;display:flex;flex-direction:row;flex-wrap:nowrap;padding:inherit;border:inherit;box-sizing:inherit;margin:-133px;inset:0;transform:scale(.1)}.os-size-observer:before{content:"";flex:none;box-sizing:inherit;padding:10px;width:10px;height:10px}.os-size-observer-appear{animation:os-size-observer-appear-animation 1ms forwards}.os-size-observer-listener{box-sizing:border-box;position:relative;flex:auto;padding:inherit;border:inherit;margin:-133px;transform:scale(10)}.os-size-observer-listener.ltr{margin-right:-266px;margin-left:0}.os-size-observer-listener.rtl{margin-left:-266px;margin-right:0}.os-size-observer-listener:empty:before{content:"";width:100%;height:100%}.os-size-observer-listener:empty:before,.os-size-observer-listener>.os-size-observer-listener-item{display:block;position:relative;padding:inherit;border:inherit;box-sizing:content-box;flex:auto}.os-size-observer-listener-scroll{box-sizing:border-box;display:flex}.os-size-observer-listener-item{right:0;bottom:0;overflow:hidden;direction:ltr;flex:none}.os-size-observer-listener-item-final{transition:none}@keyframes os-size-observer-appear-animation{0%{cursor:auto}to{cursor:none}}.os-trinsic-observer{flex:none;box-sizing:border-box;position:relative;max-width:0px;max-height:1px;padding:0;margin:0;border:none;overflow:hidden;z-index:-1;height:0;top:calc(100% + 1px);contain:strict}.os-trinsic-observer:not(:empty){height:calc(100% + 1px);top:-1px}.os-trinsic-observer:not(:empty)>.os-size-observer{width:1000%;height:1000%;min-height:1px;min-width:1px}[data-overlayscrollbars-initialize],[data-overlayscrollbars-viewport~=scrollbarHidden]{scrollbar-width:none!important}[data-overlayscrollbars-initialize]::-webkit-scrollbar,[data-overlayscrollbars-initialize]::-webkit-scrollbar-corner,[data-overlayscrollbars-viewport~=scrollbarHidden]::-webkit-scrollbar,[data-overlayscrollbars-viewport~=scrollbarHidden]::-webkit-scrollbar-corner{-webkit-appearance:none!important;appearance:none!important;display:none!important;width:0!important;height:0!important}[data-overlayscrollbars-initialize]:not([data-overlayscrollbars]):not(html):not(body){overflow:auto}html[data-overlayscrollbars-body]{overflow:hidden}html[data-overlayscrollbars-body],html[data-overlayscrollbars-body]>body{width:100%;height:100%;margin:0}html[data-overlayscrollbars-body]>body{overflow:visible;margin:0}[data-overlayscrollbars]{position:relative}[data-overlayscrollbars~=host],[data-overlayscrollbars-padding]{display:flex;align-items:stretch!important;flex-direction:row!important;flex-wrap:nowrap!important;scroll-behavior:auto!important}[data-overlayscrollbars-padding],[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]){box-sizing:inherit;position:relative;flex:auto!important;height:auto;width:100%;min-width:0;padding:0;margin:0;border:none;z-index:0}[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]){--os-vaw: 0;--os-vah: 0;outline:none}[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]):focus{outline:none}[data-overlayscrollbars-viewport][data-overlayscrollbars-viewport~=arrange]:before{content:"";position:absolute;pointer-events:none;z-index:-1;min-width:1px;min-height:1px;width:var(--os-vaw);height:var(--os-vah)}[data-overlayscrollbars],[data-overlayscrollbars-padding],[data-overlayscrollbars-viewport]{overflow:hidden!important}[data-overlayscrollbars~=noClipping],[data-overlayscrollbars-padding~=noClipping]{overflow:visible!important}[data-overlayscrollbars-viewport~=measuring]{overflow:hidden!important;scroll-behavior:auto!important;scroll-snap-type:none!important}[data-overlayscrollbars-viewport~=overflowXVisible]:not([data-overlayscrollbars-viewport~=measuring]){overflow-x:visible!important}[data-overlayscrollbars-viewport~=overflowXHidden]{overflow-x:hidden!important}[data-overlayscrollbars-viewport~=overflowXScroll]{overflow-x:scroll!important}[data-overlayscrollbars-viewport~=overflowYVisible]:not([data-overlayscrollbars-viewport~=measuring]){overflow-y:visible!important}[data-overlayscrollbars-viewport~=overflowYHidden]{overflow-y:hidden!important}[data-overlayscrollbars-viewport~=overflowYScroll]{overflow-y:scroll!important}[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId){font-size:0!important;line-height:0!important}[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId):before,[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId):after,[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId)>*{display:none!important;position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border-width:0!important}[data-overlayscrollbars-viewport~=scrolling]{scroll-behavior:auto!important;scroll-snap-type:none!important}[data-overlayscrollbars-content]{box-sizing:inherit}[data-overlayscrollbars-contents]:not(#osFakeId):not([data-overlayscrollbars-padding]):not([data-overlayscrollbars-viewport]):not([data-overlayscrollbars-content]){display:contents}[data-overlayscrollbars-grid],[data-overlayscrollbars-grid] [data-overlayscrollbars-padding]{display:grid;grid-template:1fr/1fr}[data-overlayscrollbars-grid]>[data-overlayscrollbars-padding],[data-overlayscrollbars-grid]>[data-overlayscrollbars-viewport],[data-overlayscrollbars-grid]>[data-overlayscrollbars-padding]>[data-overlayscrollbars-viewport]{height:auto!important;width:auto!important}@property --os-scroll-percent{syntax: "<number>"; inherits: true; initial-value: 0;}@property --os-viewport-percent{syntax: "<number>"; inherits: true; initial-value: 0;}.os-scrollbar{--os-viewport-percent: 0;--os-scroll-percent: 0;--os-scroll-direction: 0;--os-scroll-percent-directional: calc( var(--os-scroll-percent) - (var(--os-scroll-percent) + (1 - var(--os-scroll-percent)) * -1) * var(--os-scroll-direction) );contain:size layout;contain:size layout style;transition:opacity .15s,visibility .15s,top .15s,right .15s,bottom .15s,left .15s;pointer-events:none;position:absolute;opacity:0;visibility:hidden}body>.os-scrollbar{position:fixed;z-index:99999}.os-scrollbar-transitionless{transition:none!important}.os-scrollbar-track{position:relative;padding:0!important;border:none!important}.os-scrollbar-handle{position:absolute}.os-scrollbar-track,.os-scrollbar-handle{pointer-events:none;width:100%;height:100%}.os-scrollbar.os-scrollbar-track-interactive .os-scrollbar-track,.os-scrollbar.os-scrollbar-handle-interactive .os-scrollbar-handle{pointer-events:auto;touch-action:none}.os-scrollbar-horizontal{bottom:0;left:0}.os-scrollbar-vertical{top:0;right:0}.os-scrollbar-rtl.os-scrollbar-horizontal{right:0}.os-scrollbar-rtl.os-scrollbar-vertical{right:auto;left:0}.os-scrollbar-visible{opacity:1;visibility:visible}.os-scrollbar-auto-hide.os-scrollbar-auto-hide-hidden{opacity:0;visibility:hidden}.os-scrollbar-interaction.os-scrollbar-visible{opacity:1;visibility:visible}.os-scrollbar-unusable,.os-scrollbar-unusable *,.os-scrollbar-wheel,.os-scrollbar-wheel *{pointer-events:none!important}.os-scrollbar-unusable .os-scrollbar-handle{opacity:0!important;transition:none!important}.os-scrollbar-horizontal .os-scrollbar-handle{bottom:0;left:calc(var(--os-scroll-percent-directional) * 100%);transform:translate(calc(var(--os-scroll-percent-directional) * -100%));width:calc(var(--os-viewport-percent) * 100%)}.os-scrollbar-vertical .os-scrollbar-handle{right:0;top:calc(var(--os-scroll-percent-directional) * 100%);transform:translateY(calc(var(--os-scroll-percent-directional) * -100%));height:calc(var(--os-viewport-percent) * 100%)}@supports (container-type: size){.os-scrollbar-track{container-type:size}.os-scrollbar-horizontal .os-scrollbar-handle{left:auto;transform:translate(calc(var(--os-scroll-percent-directional) * 100cqw + var(--os-scroll-percent-directional) * -100%))}.os-scrollbar-vertical .os-scrollbar-handle{top:auto;transform:translateY(calc(var(--os-scroll-percent-directional) * 100cqh + var(--os-scroll-percent-directional) * -100%))}.os-scrollbar-rtl.os-scrollbar-horizontal .os-scrollbar-handle{right:auto;left:0}}.os-scrollbar-rtl.os-scrollbar-vertical .os-scrollbar-handle{right:auto;left:0}.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless,.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless.os-scrollbar-rtl{left:0;right:0}.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless,.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless.os-scrollbar-rtl{top:0;bottom:0}@media print{.os-scrollbar{display:none}}.os-scrollbar{--os-size: 0;--os-padding-perpendicular: 0;--os-padding-axis: 0;--os-track-border-radius: 0;--os-track-bg: none;--os-track-bg-hover: none;--os-track-bg-active: none;--os-track-border: none;--os-track-border-hover: none;--os-track-border-active: none;--os-handle-border-radius: 0;--os-handle-bg: none;--os-handle-bg-hover: none;--os-handle-bg-active: none;--os-handle-border: none;--os-handle-border-hover: none;--os-handle-border-active: none;--os-handle-min-size: 33px;--os-handle-max-size: none;--os-handle-perpendicular-size: 100%;--os-handle-perpendicular-size-hover: 100%;--os-handle-perpendicular-size-active: 100%;--os-handle-interactive-area-offset: 0}.os-scrollbar-track{border:var(--os-track-border);border-radius:var(--os-track-border-radius);background:var(--os-track-bg);transition:opacity .15s,background-color .15s,border-color .15s}.os-scrollbar-track:hover{border:var(--os-track-border-hover);background:var(--os-track-bg-hover)}.os-scrollbar-track:active{border:var(--os-track-border-active);background:var(--os-track-bg-active)}.os-scrollbar-handle{border:var(--os-handle-border);border-radius:var(--os-handle-border-radius);background:var(--os-handle-bg)}.os-scrollbar-handle:hover{border:var(--os-handle-border-hover);background:var(--os-handle-bg-hover)}.os-scrollbar-handle:active{border:var(--os-handle-border-active);background:var(--os-handle-bg-active)}.os-scrollbar-track:before,.os-scrollbar-handle:before{content:"";position:absolute;inset:0;display:block}.os-scrollbar-horizontal{padding:var(--os-padding-perpendicular) var(--os-padding-axis);right:var(--os-size);height:var(--os-size)}.os-scrollbar-horizontal.os-scrollbar-rtl{left:var(--os-size);right:0}.os-scrollbar-horizontal .os-scrollbar-track:before{top:calc(var(--os-padding-perpendicular) * -1);bottom:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-horizontal .os-scrollbar-handle{min-width:var(--os-handle-min-size);max-width:var(--os-handle-max-size);height:var(--os-handle-perpendicular-size);transition:opacity .15s,background-color .15s,border-color .15s,height .15s}.os-scrollbar-horizontal .os-scrollbar-handle:before{top:calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);bottom:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-horizontal:hover .os-scrollbar-handle{height:var(--os-handle-perpendicular-size-hover)}.os-scrollbar-horizontal:active .os-scrollbar-handle{height:var(--os-handle-perpendicular-size-active)}.os-scrollbar-vertical{padding:var(--os-padding-axis) var(--os-padding-perpendicular);bottom:var(--os-size);width:var(--os-size)}.os-scrollbar-vertical .os-scrollbar-track:before{left:calc(var(--os-padding-perpendicular) * -1);right:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-vertical .os-scrollbar-handle{min-height:var(--os-handle-min-size);max-height:var(--os-handle-max-size);width:var(--os-handle-perpendicular-size);transition:opacity .15s,background-color .15s,border-color .15s,width .15s}.os-scrollbar-vertical .os-scrollbar-handle:before{left:calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);right:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-vertical.os-scrollbar-rtl .os-scrollbar-handle:before{right:calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);left:calc(var(--os-padding-perpendicular) * -1)}.os-scrollbar-vertical:hover .os-scrollbar-handle{width:var(--os-handle-perpendicular-size-hover)}.os-scrollbar-vertical:active .os-scrollbar-handle{width:var(--os-handle-perpendicular-size-active)}[data-overlayscrollbars-viewport~=measuring]>.os-scrollbar,.os-theme-none.os-scrollbar{display:none!important}.os-theme-dark,.os-theme-light{box-sizing:border-box;--os-size: 10px;--os-padding-perpendicular: 2px;--os-padding-axis: 2px;--os-track-border-radius: 10px;--os-handle-interactive-area-offset: 4px;--os-handle-border-radius: 10px}.os-theme-dark{--os-handle-bg: rgba(0, 0, 0, .44);--os-handle-bg-hover: rgba(0, 0, 0, .55);--os-handle-bg-active: rgba(0, 0, 0, .66)}.os-theme-light{--os-handle-bg: rgba(255, 255, 255, .44);--os-handle-bg-hover: rgba(255, 255, 255, .55);--os-handle-bg-active: rgba(255, 255, 255, .66)}:root{--hue: 300;--primary-color: oklch(70% .15 var(--hue));--primary-color-lighten: oklch(95% .02 var(--hue));--primary-color-hover: oklch(90% .025 var(--hue));--primary-color-transparent: oklch(70% .15 var(--hue) / 15%);--text-color: oklch(30% 0 0);--text-color-lighten: oklch(50% 0 0);--card-color: oklch(100% 0 0);--card-color-transparent: oklch(100% 0 0 / 85%);--background-color: oklch(97% .01 var(--hue));--brand-font: "Raleway", "Noto Sans SC", sans-serif;--primary-font: "Noto Sans SC", sans-serif;--code-font: "JetBrains Mono", "Fira Code", monospace;--page-width-lg: 992px;--page-width-xl: 1264px;--banner-height: 55vh;--title-font: var(--brand-font);--title-color: oklch(100% 0 0 / 95%);--subtitle-font: var(--brand-font);--subtitle-color: oklch(100% 0 0 / 85%);--onload-animation-delay: .1s;--onload-animation-interval: .1s;--content-spacing: 2rem;--section-spacing: 3rem;--card-spacing: 1.5rem;--element-spacing: 1rem;--list-item-spacing: 1rem;--list-container-spacing: 2rem}:root.dark{--primary-color: oklch(70% .125 var(--hue));--primary-color-lighten: oklch(40% .04 var(--hue));--primary-color-hover: oklch(20% .015 var(--hue));--text-color: oklch(95% .002 var(--hue));--text-color-lighten: oklch(90% .002 var(--hue));--card-color: oklch(25% .02 var(--hue));--card-color-lighten: oklch(40% .04 var(--hue));--card-color-transparent: oklch(30% .025 var(--hue) / 85%);--background-color: oklch(17.5% .015 var(--hue))}.swup-progress-bar{height:5px}.space-y-8>*+*{margin-top:var(--list-container-spacing)}.space-y-4>*+*{margin-top:var(--list-item-spacing)}.mermaid-keeper[data-astro-cid-p6krngeg]{position:absolute;left:-9999px;top:-9999px;visibility:hidden;pointer-events:none;z-index:-1}body{background-color:var(--background-color)}.nav[data-astro-cid-ymhdp2rl]{position:fixed;left:50%;z-index:10;display:flex;width:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-direction:column;justify-content:flex-end;border-bottom-right-radius:.75rem;border-bottom-left-radius:.75rem;background-color:var(--card-color-transparent);padding-left:.625rem;padding-right:.625rem;opacity:0;--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media (min-width: 1024px){.nav[data-astro-cid-ymhdp2rl]{width:var(--page-width-lg);border-bottom-right-radius:1rem;border-bottom-left-radius:1rem}}@media (min-width: 1280px){.nav[data-astro-cid-ymhdp2rl]{width:var(--page-width-xl)}}.nav[data-astro-cid-ymhdp2rl]{transform:translate(-50%) translateY(-5rem);animation:.3s nav-onload-animation;animation-fill-mode:forwards}.brand[data-astro-cid-ymhdp2rl]{display:flex;width:100%;flex-direction:row;align-items:center;justify-content:space-between}@media (min-width: 1024px){.brand[data-astro-cid-ymhdp2rl]{display:none}}.brand[data-astro-cid-ymhdp2rl]>.title[data-astro-cid-ymhdp2rl]{position:absolute;left:50%;top:50%;--tw-translate-x: -50%;--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:.5rem;padding:.5rem 1rem;font-size:1.5rem;line-height:2rem;font-weight:500;color:var(--primary-color);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.brand[data-astro-cid-ymhdp2rl]>.title[data-astro-cid-ymhdp2rl]:hover{background-color:var(--primary-color-hover)}.brand[data-astro-cid-ymhdp2rl]>.title[data-astro-cid-ymhdp2rl]{font-family:var(--brand-font)}.brand[data-astro-cid-ymhdp2rl] button[data-astro-cid-ymhdp2rl]{margin-right:.5rem;display:flex;height:44px;width:44px;flex-direction:row;align-items:center;border-radius:.5rem;color:var(--text-color);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.brand[data-astro-cid-ymhdp2rl] button[data-astro-cid-ymhdp2rl]:hover{background-color:var(--primary-color-hover);color:var(--primary-color)}.brand[data-astro-cid-ymhdp2rl] .icon[data-astro-cid-ymhdp2rl]{width:100%;text-align:center;font-size:1.5rem;line-height:2rem}.brand-lg[data-astro-cid-ymhdp2rl]{display:none;height:3.25rem;border-radius:.5rem;padding-left:1.25rem;padding-right:1.25rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media (min-width: 1024px){.brand-lg[data-astro-cid-ymhdp2rl]{display:block}}.brand-lg[data-astro-cid-ymhdp2rl]:hover{background-color:var(--primary-color-hover)}.brand-lg[data-astro-cid-ymhdp2rl]:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.brand-lg[data-astro-cid-ymhdp2rl]>.title[data-astro-cid-ymhdp2rl]{display:flex;height:100%;flex-direction:row;align-content:center;align-items:center;font-size:1.5rem;line-height:2rem;color:var(--primary-color);font-family:var(--brand-font)}.brand-lg[data-astro-cid-ymhdp2rl] .icon[data-astro-cid-ymhdp2rl]{margin-right:.5rem;stroke-width:2;font-size:1.5rem;line-height:2rem}.menu[data-astro-cid-ymhdp2rl]{position:absolute;left:50%;display:none;--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));align-items:center;justify-content:space-between}.menu[data-astro-cid-ymhdp2rl]>:not([hidden])[data-astro-cid-ymhdp2rl]~:not([hidden])[data-astro-cid-ymhdp2rl]{--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.menu[data-astro-cid-ymhdp2rl]{font-size:1.125rem;line-height:1.75rem;color:var(--text-color);opacity:.85}@media (min-width: 1024px){.menu[data-astro-cid-ymhdp2rl]{display:flex}}.menu[data-astro-cid-ymhdp2rl] a[data-astro-cid-ymhdp2rl]{display:flex;height:3.25rem;align-items:center;border-radius:.5rem;padding-left:1.5rem;padding-right:1.5rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.menu[data-astro-cid-ymhdp2rl] a[data-astro-cid-ymhdp2rl]:hover{background-color:var(--primary-color-hover);color:var(--primary-color)}.menu[data-astro-cid-ymhdp2rl] a[data-astro-cid-ymhdp2rl]:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.menu[data-astro-cid-ymhdp2rl] p[data-astro-cid-ymhdp2rl]{font-weight:500;line-height:1.5;font-family:var(--primary-font)}.toolbar[data-astro-cid-ymhdp2rl]{display:flex;flex-direction:row;align-items:center;justify-content:flex-end}.toolbar[data-astro-cid-ymhdp2rl]>:not([hidden])[data-astro-cid-ymhdp2rl]~:not([hidden])[data-astro-cid-ymhdp2rl]{--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}@media (min-width: 1024px){.toolbar[data-astro-cid-ymhdp2rl]{margin-right:.5rem}}.toolbar[data-astro-cid-ymhdp2rl] button[data-astro-cid-ymhdp2rl]{display:flex;width:2.75rem;justify-content:center;border-radius:.5rem;padding-top:.5rem;padding-bottom:.5rem;color:var(--text-color);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.toolbar[data-astro-cid-ymhdp2rl] button[data-astro-cid-ymhdp2rl]:hover{background-color:var(--primary-color-hover);color:var(--primary-color)}.toolbar[data-astro-cid-ymhdp2rl] .icon[data-astro-cid-ymhdp2rl]{stroke-width:2;font-size:1.25rem;line-height:1.75rem}.mobile-menu-nav-closed[data-astro-cid-ymhdp2rl]{height:0px;opacity:0}.mobile-menu-nav-opened[data-astro-cid-ymhdp2rl]{opacity:1;height:calc(var(--navCount) * 52px + 200px)}.mobile-nav-item[data-astro-cid-ymhdp2rl]{display:flex;flex-direction:row;align-items:center;justify-content:space-between;font-family:var(--primary-font)}.mobile-category-header[data-astro-cid-ymhdp2rl]{font-family:var(--primary-font);-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.mobile-post-link[data-astro-cid-ymhdp2rl]{font-family:var(--primary-font);border-left:2px solid transparent;transition:all .2s ease}.mobile-post-link[data-astro-cid-ymhdp2rl]:hover{border-left-color:var(--primary-color)}.mobile-categories-closed[data-astro-cid-ymhdp2rl]{max-height:0px;opacity:0}.mobile-categories-opened[data-astro-cid-ymhdp2rl]{max-height:24rem;opacity:1}.mobile-posts-list[data-astro-cid-ymhdp2rl]{border-left:1px solid var(--border-color);margin-left:12px}@keyframes nav-onload-animation{0%{transform:translateY(-5rem) translate(-50%);opacity:0}to{transform:translateY(0) translate(-50%);opacity:1}}.banner[data-astro-cid-kggsjsm4]{position:relative;height:calc(var(--banner-height) * 3 / 4);opacity:1}@media (min-width: 1024px){.banner[data-astro-cid-kggsjsm4]{height:var(--banner-height)}}.carousel[data-astro-cid-kggsjsm4]{position:absolute;left:0;top:0;z-index:-10;display:block;height:calc(var(--banner-height) * 3 / 4);width:100%;overflow:hidden;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}@media (min-width: 1024px){.carousel[data-astro-cid-kggsjsm4]{height:var(--banner-height)}}.carousel[data-astro-cid-kggsjsm4]{animation-fill-mode:forwards}.carousel[data-astro-cid-kggsjsm4]:before{position:absolute;left:0;top:0;z-index:10;display:block;height:100%;width:100%;background-color:#00000040;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;--tw-content: "";content:var(--tw-content)}.carousel[data-astro-cid-kggsjsm4]:where([data-theme=dark],[data-theme=dark] *):before{background-color:#0000004d}.carousel[data-astro-cid-kggsjsm4] .item[data-astro-cid-kggsjsm4]{position:absolute;left:0;top:0;z-index:0;height:100%;width:100%;transform-origin:center;background-size:cover;background-position:center;background-repeat:no-repeat;opacity:0;animation:carousel-animation var(--carouselAnimationTime) linear infinite 0s;backface-visibility:hidden;transform-style:preserve-3d}.cover[data-astro-cid-kggsjsm4]{position:absolute;left:0;top:0;z-index:0;display:block;height:var(--banner-height);width:100%;overflow:hidden;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.cover[data-astro-cid-kggsjsm4]:before{position:absolute;left:0;top:0;z-index:10;display:block;height:100%;width:100%;background-color:#00000040;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;--tw-content: "";content:var(--tw-content)}.cover[data-astro-cid-kggsjsm4]:where([data-theme=dark],[data-theme=dark] *):before{background-color:#0000004d}.cover[data-astro-cid-kggsjsm4] .item[data-astro-cid-kggsjsm4]{height:100%;width:100%;-o-object-fit:cover;object-fit:cover}.title[data-astro-cid-kggsjsm4]{margin-top:2rem;text-align:center;font-weight:700;color:var(--title-color);--tw-drop-shadow: drop-shadow(0 10px 8px rgb(0 0 0 / .04)) drop-shadow(0 4px 3px rgb(0 0 0 / .1));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@media (min-width: 1024px){.title[data-astro-cid-kggsjsm4]{margin-top:.25rem}}.title[data-astro-cid-kggsjsm4]{font-family:var(--title-font)}.title-index[data-astro-cid-kggsjsm4]{margin-bottom:0;font-size:3rem;line-height:1;line-height:4rem}@media (min-width: 1024px){.title-index[data-astro-cid-kggsjsm4]{margin-bottom:.25rem;font-size:4.5rem;line-height:1}}.title-normal[data-astro-cid-kggsjsm4]{margin-bottom:.25rem;font-size:1.875rem;line-height:2.25rem}@media (min-width: 1024px){.title-normal[data-astro-cid-kggsjsm4]{font-size:3rem;line-height:1}}.subtitle[data-astro-cid-kggsjsm4]{text-align:center;font-size:1.25rem;line-height:1.75rem;color:var(--subtitle-color);--tw-drop-shadow: drop-shadow(0 4px 3px rgb(0 0 0 / .07)) drop-shadow(0 2px 2px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@media (min-width: 1024px){.subtitle[data-astro-cid-kggsjsm4]{font-size:1.875rem;line-height:2.25rem}}.subtitle[data-astro-cid-kggsjsm4]{font-family:var(--subtitle-font)}.waves[data-astro-cid-kggsjsm4]{position:absolute;bottom:-1px;height:10vh;max-height:9.375rem;min-height:3.125rem;width:100%}@media (min-width: 768px){.waves[data-astro-cid-kggsjsm4]{height:15vh}}.waves[data-astro-cid-kggsjsm4]>.parallax[data-astro-cid-kggsjsm4] use[data-astro-cid-kggsjsm4]{fill:var(--background-color);animation:wave 25s cubic-bezier(.5,.5,.45,.5) infinite}@keyframes wave{0%{transform:translate3d(-90px,0,0)}to{transform:translate3d(85px,0,0)}}@keyframes banner-onload-animation{0%{opacity:0;height:calc(var(--banner-height) + 4rem)}to{opacity:1;height:var(--banner-height)}}.link[data-astro-cid-sz7xmlte]{color:var(--primary-color);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.link[data-astro-cid-sz7xmlte]:hover{--tw-brightness: brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.category[data-astro-cid-sz7xmlte]{font-family:var(--primary-font)}.category[data-astro-cid-sz7xmlte]:hover>p[data-astro-cid-sz7xmlte]{padding-left:.5rem;color:var(--primary-color)}.title[data-astro-cid-f5u63ayj]{display:flex;flex-direction:row;align-items:center;position:relative}.title[data-astro-cid-f5u63ayj]:before{position:absolute;display:block;content:" ";background-color:var(--primary-color);top:3px;bottom:3px;width:.3rem;border-radius:4px}.category-header[data-astro-cid-f5u63ayj]{font-family:var(--primary-font);-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.category-header[data-astro-cid-f5u63ayj]:hover{background-color:var(--primary-color-lighten)}.category-header[data-astro-cid-f5u63ayj]:hover .arrow-icon[data-astro-cid-f5u63ayj]{color:var(--primary-color)}.arrow-icon[data-astro-cid-f5u63ayj]{transition:transform .2s ease;cursor:pointer;z-index:10;margin-right:8px}.category-header[data-astro-cid-f5u63ayj][data-expanded=true] .arrow-icon[data-astro-cid-f5u63ayj]{color:var(--primary-color);transform:rotate(90deg)}.post-link[data-astro-cid-f5u63ayj]{font-family:var(--primary-font);border-left:2px solid transparent;transition:all .2s ease}.post-link[data-astro-cid-f5u63ayj]:hover{border-left-color:var(--primary-color)}.posts-list[data-astro-cid-f5u63ayj]{border-left:1px solid var(--border-color);margin-left:12px;transition:max-height .3s ease-in-out}.sidebar-container[data-astro-cid-f5u63ayj]::-webkit-scrollbar{width:6px}.sidebar-container[data-astro-cid-f5u63ayj]::-webkit-scrollbar-track{background:var(--background-color)}.sidebar-container[data-astro-cid-f5u63ayj]::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.sidebar-container[data-astro-cid-f5u63ayj]::-webkit-scrollbar-thumb:hover{background:var(--text-color-lighten)}.main-container[data-astro-cid-ouamjn2i]{width:100%}@media (min-width: 768px){.main-container[data-astro-cid-ouamjn2i]{min-width:80%;max-width:80%}}@media (min-width: 1024px){.main-container[data-astro-cid-ouamjn2i]{min-width:var(--page-width-lg);max-width:var(--page-width-lg)}}@media (min-width: 1280px){.main-container[data-astro-cid-ouamjn2i]{min-width:var(--page-width-xl);max-width:var(--page-width-xl)}}@media (min-width: 768px){.main-container[data-astro-cid-ouamjn2i]{margin-left:auto;margin-right:auto}}.side-bar[data-astro-cid-ouamjn2i]{display:none;min-width:248px}@media (min-width: 1280px){.side-bar[data-astro-cid-ouamjn2i]{display:block}.content[data-astro-cid-ouamjn2i]{width:calc(var(--page-width-xl) - 264px)}}
