.pkg-page{min-height:100vh}.pkg-shell{display:flex;min-height:calc(100vh - 60px);max-width:min(1800px,100%);margin:clamp(1.5rem,3vw,2.5rem) clamp(.75rem,3vw,3rem);background:var(--odin-reading);border-radius:18px;border:.5px solid rgba(255,255,255,.16);border-top-color:#ffffff42;box-shadow:8px 8px #00000061,inset 0 1px #ffffff0f;box-sizing:border-box}@media(min-width:1500px){.pkg-shell{margin-inline:auto}}@media(max-width:900px){.pkg-shell{margin-inline:.5rem}}.pkg-sidebar{width:268px;flex-shrink:0;border-right:1px solid var(--border-subtle);position:sticky;top:60px;height:calc(100vh - 60px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.pkg-sidebar-inner{padding:1.2rem .65rem 1.5rem 1.15rem;display:grid;gap:.65rem}.pkg-search-open{margin:0 .5rem 0 0;display:flex;align-items:center;gap:.45rem;min-width:0;border:1px solid var(--input-border);border-radius:var(--input-radius);background:var(--input-bg);color:var(--text-subtle);min-height:2.25rem;padding:.4rem .65rem;text-align:left;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.pkg-search-open:hover{border-color:var(--input-border-focus);color:var(--text);background:var(--input-bg-focus)}.pkg-search-open-label{min-width:0;flex:1 1 0%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}.pkg-search-open-icon,.pkg-search-modal-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:inherit}.pkg-search-open-kbd{margin-left:auto;flex-shrink:0;align-self:center;white-space:nowrap;font-family:inherit;font-size:.66rem;line-height:1.2;font-weight:500;letter-spacing:.02em;color:inherit;opacity:.75;padding:.15em .4em;border-radius:4px;border:1px solid rgba(150,185,255,.15);background:#ffffff08}.pkg-sidebar-inner h2{margin:0;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-subtle);padding:0 .5rem 0 0}.pkg-main{flex:1;min-width:0;padding:2.5rem 1.5rem 4.5rem}.pkg-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:.15rem;margin-bottom:1rem;font-size:.78rem;color:var(--text-subtle)}.pkg-breadcrumb-unit{display:inline-flex;align-items:center;gap:.35rem}.pkg-breadcrumb-static{color:#96b9ff8c;font-weight:600;letter-spacing:.02em;padding:.22rem .55rem;border-radius:999px;border:1px dashed rgba(56,130,210,.22);background:#08102459}.pkg-breadcrumb-sep{color:#96b9ff61;font-size:.72rem}.pkg-breadcrumb-link{text-decoration:none;color:var(--text-muted);border:1px solid transparent;border-radius:999px;padding:.22rem .55rem;transition:color .15s,border-color .15s,background .15s}.pkg-breadcrumb-link:hover{color:var(--text);border-color:#3882d247;background:#3882d212}.pkg-breadcrumb-current{color:var(--accent);font-weight:600;letter-spacing:.01em;border:1px solid rgba(56,130,210,.34);border-radius:999px;background:#3882d221;padding:.22rem .55rem}.pkg-main-row{display:flex;align-items:stretch;gap:clamp(1.75rem,3vw,3rem);min-width:0}.pkg-article{flex:1 1 auto;min-width:0;max-width:none}.pkg-toc-aside{display:none;width:272px;flex-shrink:0;border-left:1px solid var(--border);padding-left:1.35rem;margin-left:0}.pkg-toc-sticky{position:sticky;top:72px;width:100%;max-height:calc(100vh - 88px);overflow-x:hidden;overflow-y:auto;padding-bottom:1.5rem;scrollbar-width:thin;scrollbar-color:var(--border) transparent;-webkit-overflow-scrolling:touch}@media(min-width:1120px){.pkg-toc-aside{display:block}}.pkg-content-inner{width:100%;display:flex;flex-direction:column;gap:1.25rem;min-width:0}.pkg-description-block{padding:0;min-width:0;border-bottom:1px solid rgba(150,185,255,.22);padding-bottom:1rem;margin-bottom:.1rem}.pkg-description-text{margin:0;color:var(--text-prose);font-size:.95rem;line-height:1.72;font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.pkg-overview{display:grid;gap:1rem}.pkg-platform-warning{border:1px solid rgba(250,204,21,.34);background:#facc1514;color:#fff1b3f2;border-radius:8px;padding:.55rem .7rem;font-size:.82rem}.pkg-platform-warning code{color:#fff8cdf2}.pkg-meta-card,.pkg-source-files{border:1px solid rgba(255,255,255,.18);border-top-color:#ffffff52;border-radius:var(--card-radius);background:#2e6bb0;box-shadow:5px 5px #325177d1;padding:1rem 1.1rem}.pkg-meta-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem}.pkg-meta-header h3{margin:0;font-size:.92rem;color:#fff}.pkg-meta-list{margin:0;display:grid;gap:.45rem}.pkg-meta-item{display:grid;grid-template-columns:minmax(7rem,auto) minmax(0,1fr);gap:.8rem;border-top:1px solid rgba(255,255,255,.11);padding-top:.45rem}.pkg-meta-item:first-child{border-top:0;padding-top:0}.pkg-meta-item dt{margin:0;font-size:.74rem;letter-spacing:.07em;text-transform:uppercase;color:#dcebffc2;font-weight:600}.pkg-meta-item dd{margin:0;color:#fff;font-size:.86rem;line-height:1.5;overflow-wrap:anywhere}.pkg-source-link{display:inline-flex;align-items:center;gap:.35rem;text-decoration:none;color:#fff;font-size:.8rem;font-weight:600;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:.26rem .6rem;background:#ffffff17}.pkg-source-link:hover{background:#ffffff2e;border-color:#ffffff85}.pkg-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.6rem}.pkg-stat{border:1px solid var(--border-subtle);border-radius:8px;padding:.6rem .75rem;background:#060c1a73}.pkg-stat-summary{list-style:none;cursor:pointer;display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem}.pkg-stat-summary::-webkit-details-marker{display:none}.pkg-stat[open]{border-color:#3882d247;background:#3882d214}.pkg-stat-label{font-size:.72rem;color:var(--text-subtle);text-transform:uppercase;letter-spacing:.05em}.pkg-stat-value{font-size:1.1rem;color:var(--text);font-weight:700}.pkg-stat-links{margin-top:.55rem;border-top:1px solid rgba(56,130,210,.2);padding-top:.5rem;display:grid;gap:.45rem}.pkg-stat-jump{text-decoration:none;color:var(--accent);font-size:.74rem;font-weight:600}.pkg-stat-jump:hover{text-decoration:underline;text-underline-offset:2px}.pkg-stat-entry-links{display:grid;gap:.35rem;max-height:16rem;overflow-y:auto;padding-right:.35rem;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.pkg-stat-entry-link{text-decoration:none;color:var(--text-muted);font-size:.9rem;line-height:1.45;border-left:2px solid transparent;border-radius:0;padding:.3rem .15rem .3rem .6rem;transition:border-color .15s,color .15s,background .15s,padding-left .15s;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.pkg-stat-entry-link:hover{color:var(--text);border-left-color:#3882d273;background:#3882d20f;padding-left:.75rem}.pkg-index-nav{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.pkg-index-label{font-size:.8rem;color:var(--text-subtle)}.pkg-index-links{display:flex;flex-wrap:wrap;gap:.5rem}.pkg-index-link{text-decoration:none;border:1px solid var(--border);border-radius:999px;padding:.24rem .65rem;color:var(--text-muted);font-size:.76rem;transition:border-color .15s,color .15s,background .15s}.pkg-index-link:hover{color:var(--text);border-color:#3882d259;background:#3882d20f}.pkg-source-files{display:grid;gap:.45rem}.pkg-source-files h3{margin:0;font-size:.9rem;color:#fff}.pkg-source-files ul{margin:0;padding-left:1rem;display:grid;gap:.28rem}.pkg-source-files li{color:#dcebffeb;font-size:.8rem}.pkg-source-files-note{margin:0;color:#dcebffc2;font-size:.74rem}.pkg-section{border-top:1px solid var(--border-subtle);padding:1rem 0;min-width:0;scroll-margin-top:82px}.pkg-section h2{margin:0 0 .75rem;font-size:.95rem;color:var(--text)}.pkg-tree-nav{padding:0 .1rem .5rem 0;max-height:calc(100vh - 200px);overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.pkg-tree-list{list-style:none;margin:0;padding:0}.pkg-tree-list:not(.pkg-tree-list--root){margin:.12rem 0 .2rem .35rem;padding:.1rem 0 .15rem .5rem;border-left:1px solid rgba(56,130,210,.14)}.pkg-tree-item{margin:.08rem 0}.pkg-tree-details--branch>.pkg-tree-summary{display:flex;align-items:center;gap:.3rem;list-style:none;cursor:pointer;font-size:.78rem;color:var(--text-muted);padding:.2rem .4rem .2rem .2rem;margin:.05rem 0;border-radius:7px;border:1px solid transparent;transition:background .12s ease,border-color .12s ease;-webkit-user-select:text;user-select:text}.pkg-tree-details--branch>.pkg-tree-summary::-webkit-details-marker{display:none}.pkg-tree-details--branch:has(.pkg-tree-summary:hover)>.pkg-tree-summary{background:#3882d212;border-color:#3882d224}.pkg-tree-details--branch[open]>.pkg-tree-summary{background:#3882d20d;border-color:#3882d22e}.pkg-tree-details--branch:has(>.pkg-tree-summary .pkg-tree-link--branch.active)>.pkg-tree-summary{background:#3882d21c;border-color:#3882d238;border-left:2px solid var(--accent)}.pkg-tree-chevron{flex:0 0 .85rem;width:.85rem;display:flex;align-items:center;justify-content:center;font-size:.62rem;line-height:1;color:#96b9ffb8;transform:rotate(0);transition:transform .16s ease,color .12s ease;-webkit-user-select:none;user-select:none}.pkg-tree-details--branch[open]>.pkg-tree-summary>.pkg-tree-chevron{transform:rotate(90deg);color:#3882d2f2}.pkg-tree-summary-main{flex:1;min-width:0}.pkg-tree-summary-main .pkg-tree-link,.pkg-tree-summary-main .pkg-tree-folder{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pkg-tree-folder{display:inline-block;padding:.2rem .45rem .2rem .35rem;border-radius:4px;color:#96b9ff9e;font-weight:600;letter-spacing:.01em}.pkg-tree-folder--branch{padding:.12rem .25rem .12rem 0;color:#bad2ffc7}.pkg-tree-link{display:inline-block;text-decoration:none;border-left:2px solid transparent;padding:.22rem .55rem .22rem .45rem;border-radius:0 6px 6px 0;color:var(--text-muted);font-size:.78rem;transition:border-color .12s,color .12s,background .12s;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pkg-tree-link--branch{border-left:2px solid transparent;padding:.12rem .35rem .12rem .28rem;border-radius:5px;box-sizing:border-box}.pkg-tree-link--branch:hover{background:transparent;border-left-color:transparent;color:var(--text)}.pkg-tree-link:hover{color:var(--text);background:#3882d20f;border-left-color:#3882d259}.pkg-tree-link.active{color:var(--accent);background:#3882d21f;border-left-color:var(--accent)}.pkg-tree-link--branch.active{background:transparent;border-left-color:transparent;color:var(--accent)}.pkg-tree-leaf.pkg-tree-link{display:block}.pkg-empty{color:var(--text-muted);margin:0}.pkg-sections{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;min-width:0}.pkg-section-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.pkg-section-header span{color:var(--text-subtle);font-size:.8rem}.pkg-entry-list{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem;min-width:0}.pkg-entry-block{border:0;border-bottom:1px solid rgba(150,185,255,.2);border-radius:0;background:transparent;padding:.3rem 0 1rem;display:flex;flex-direction:column;gap:.9rem;min-width:0}.pkg-entry-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem}.pkg-entry-header h3{margin:0;font-size:1.02rem;color:var(--text);word-break:break-word;flex:1}.pkg-entry-source-link{display:inline-flex;align-items:center;gap:.28rem;text-decoration:none;color:var(--accent);font-size:.74rem;font-weight:600;letter-spacing:.02em;flex-shrink:0}.pkg-entry-source-link:hover{text-decoration:underline;text-underline-offset:2px}.pkg-entry-init{margin:0;overflow-x:auto;overflow-y:hidden;max-width:100%;width:100%;box-sizing:border-box;-webkit-overflow-scrolling:touch}.pkg-entry-init code{display:block;width:max-content;min-width:100%;box-sizing:border-box;color:var(--text-prose);font-size:.78rem;font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;white-space:pre}.doc-code{margin:0;overflow-x:auto;overflow-y:hidden;max-width:100%;width:100%;box-sizing:border-box;-webkit-overflow-scrolling:touch;background:#08152a;border-radius:.375rem;padding:.6rem .9rem}.pkg-entry-header+.doc-code,.pkg-entry-header+.pkg-entry-init{margin-top:.2rem}.pkg-entry-anchor-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:var(--text-subtle);font-size:.78rem;line-height:1;border:1px solid rgba(150,185,255,.22);border-radius:999px;width:1.25rem;height:1.25rem;background:#3882d20d;transition:color .15s,border-color .15s,background .15s}.pkg-entry-anchor-link:hover{color:var(--accent);border-color:#3882d266;background:#3882d21f}.pkg-entry-anchor-link--title{margin-left:.5rem;vertical-align:middle;opacity:.8}.doc-code code{display:block;width:max-content;min-width:100%;box-sizing:border-box;color:var(--text-prose);font-size:.8rem;line-height:1.65;font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;background:transparent;white-space:pre}.doc-entity-name{color:#b392f0}.keyword-type,.keyword,.directive{color:#f97583}.number{color:#79b8ff}.string{color:#9ecbff}.comment{color:#6a737d}.code-typename{color:#79b8ff}a.code-typename{text-decoration:underline;text-underline-offset:2px;cursor:pointer}a.code-typename:hover{opacity:.8}.pkg-entry-inline-link{color:#fff;text-decoration:none;text-decoration-color:#ffffff73}.pkg-entry-inline-link:hover{text-decoration:underline;text-decoration-color:#ffffffe6;text-underline-offset:2px}.pkg-entry-text-group{display:grid;grid-template-columns:minmax(0,1fr);gap:.4rem;min-width:0}.pkg-entry-subhead{margin:0;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle)}.pkg-entry-doc-text{margin:0;color:var(--text-prose);font-size:.9rem;line-height:1.68;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:640px){.pkg-shell{flex-direction:column;margin-inline:.25rem}.pkg-sidebar{width:100%;height:auto;position:static;border-right:none;border-bottom:1px solid var(--border-subtle)}.pkg-sidebar-inner{padding:.8rem .45rem .8rem .95rem}.pkg-search-open{margin:0 .35rem 0 0;min-height:2rem}.pkg-search-open-kbd{display:none}.pkg-tree-nav{max-height:42vh;padding:0 .35rem .35rem}.pkg-main{padding:1.5rem 1rem 3rem}.pkg-main-row{flex-direction:column}.pkg-article{max-width:100%}.pkg-overview,.pkg-description-block,.pkg-source-files,.pkg-section{padding:.85rem}.pkg-section{padding:.85rem 0}}
