.published-project{--ink:#000;--muted:#555;--paper:#fff;--line:#d8d8d8;--accent:#2424ff;color:#000;background:#fff;min-height:100vh;font-family:Arial,Helvetica,sans-serif}.published-project .global-bar{background:#000;min-height:32px}.published-project .global-bar-content{width:96%;max-width:none;min-height:32px;padding-block:0}.published-project .project-breadcrumb-strip{min-height:32px}.published-project .project-breadcrumb{width:96%;max-width:none;min-height:31px;font-size:16px}.published-project .project-shell{width:96%;max-width:none;padding:0 0 80px}.published-project .project-heading{gap:24px;min-height:172px;padding:18px 0 32px;display:block}.published-project .project-heading>div:first-child{min-width:0}.published-project .project-heading h1{letter-spacing:-1.3px;text-wrap:initial;white-space:normal;overflow-wrap:anywhere;max-width:none;margin:0;font-family:inherit;font-size:48px;font-weight:900;line-height:72px}.published-project .project-heading .lede{color:#555;max-width:none;margin:0;font-size:24px;line-height:36px}.published-project .project-entry-actions{flex-wrap:wrap;flex-shrink:0;gap:12px;padding-top:0;display:flex}.published-project .project-entry-actions a{color:#444;background:#fff;border:1px solid #888;border-radius:24px;padding:6px 16px;font-size:14px;font-weight:400}.published-project .project-tabs{border-bottom:2px solid #d8d8d8;height:68px}.published-project .project-tabs a{color:#000;padding:0;font-size:16px;font-weight:400}.published-project .project-tabs a[aria-current=page]{color:#2424ff;font-weight:700}.published-project .project-tabs a[aria-current=page]:after{background:#000;height:4px;bottom:-2px}.published-project .project-tabs a svg{width:24px;height:24px}.published-project .published-overview{padding-top:42px}.published-project .published-summary{grid-template-columns:51.4% 48.6%;min-height:448px;display:grid;box-shadow:0 12px 60px #0000000d}.published-project .published-metadata{min-width:0;padding-bottom:64px}.published-project .published-summary-intro{overflow-wrap:anywhere;justify-content:space-between;align-items:flex-start;gap:16px;min-height:208px;padding:24px;line-height:24px;display:flex}.published-project .published-summary-intro-content{min-width:0}.published-project .published-summary-edit,.published-project .published-cover-edit{color:#2424ff;white-space:nowrap;background:#fff;border:1px solid #2424ff;border-radius:24px;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font:400 14px/20px Arial,Helvetica,sans-serif;text-decoration:none;display:inline-flex}.published-project .published-summary-edit{flex:none}.published-project .published-summary-intro p{margin:0 0 16px}.published-project .published-summary-intro img{max-width:100%;height:auto}.published-project .published-metadata dl{margin:0}.published-project .published-metadata dl>div{border-top:1px solid #d8d8d8;grid-template-columns:1fr 1fr;align-items:center;gap:24px;min-height:58px;padding:16px 24px;display:grid}.published-project .published-metadata dl>div:last-child{border-bottom:1px solid #d8d8d8}.published-project .published-metadata dt{font-weight:700}.published-project .published-metadata dd{color:#555;margin:0}.published-project .published-cover{color:#555;background:#d8d8d8;place-items:center;min-height:448px;display:grid;position:relative}.published-project .published-cover.has-cover-image{position:relative;overflow:hidden}.published-project .published-cover-image{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.published-project .published-cover-edit{background:#fff;padding:12px 20px}.published-project .published-cover.has-cover-image .published-cover-edit{position:absolute;bottom:16px;right:16px;box-shadow:0 4px 16px #102a4333}.published-project .published-cover-edit svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.published-project .published-summary-edit:hover,.published-project .published-cover-edit:hover{background:#f2f4ff}.published-project .overview-edit-actions{justify-content:center;gap:10px;width:100%;margin-top:16px;display:flex}.published-project .overview-edit-actions-bottom{margin-top:32px}.published-project .overview-edit-actions .published-summary-edit{cursor:pointer;transition:transform .18s,opacity .18s,background-color .18s;animation:.18s both overview-action-enter}.published-project .overview-edit-actions .published-summary-edit:disabled{opacity:.6;cursor:wait}.published-project .published-summary-intro.is-editing{align-items:stretch}.published-project .published-summary-intro-content{flex:auto}.published-project .overview-description-field{gap:8px;font-weight:700;display:grid}.published-project .overview-description-field textarea{box-sizing:border-box;color:#172b3a;resize:vertical;background:#fff;border:1px solid #aeb8c2;border-radius:6px;width:100%;min-height:120px;padding:12px;font:400 16px/1.5 Arial,Helvetica,sans-serif}.published-project .overview-description-field textarea:focus-visible{outline-offset:2px;outline:3px solid #2424ff66}.published-project .overview-inline-editor{margin-top:28px}.published-project .overview-inline-editor .readme-compose-layout{grid-template-columns:213px minmax(0,832px);align-items:start;gap:64px;display:grid}.published-project .overview-inline-editor .readme-compose-nav{flex-direction:column;gap:8px;display:flex}.published-project .overview-inline-editor .readme-compose-nav button{color:#111;text-align:left;overflow-wrap:anywhere;cursor:pointer;background:#fff;border:0;border-radius:28px;min-height:51px;padding:16px 24px;font:400 14px/20px Arial,Helvetica,sans-serif}.published-project .overview-inline-editor .readme-compose-nav button[aria-current]{background:#d8d8d8}.published-project .overview-inline-editor .readme-compose-nav .readme-add-section{color:#2424ff;border:1px solid #d8d8d8;margin-top:12px}.published-project .overview-inline-editor .readme-compose-article{min-width:0}.published-project .overview-license-field select{color:#172b3a;width:100%;min-height:40px;font:inherit;background:#fff;border:1px solid #aeb8c2;border-radius:5px;padding:6px 10px}.published-project .overview-cover-tags{z-index:1;flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex;position:absolute;top:16px;left:16px;right:16px}.published-project .overview-cover-tags ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.published-project .overview-cover-tags li{color:#172b3a;background:#fff;border-radius:20px;align-items:center;gap:6px;min-height:32px;padding:3px 12px;font-size:13px;display:inline-flex;box-shadow:0 2px 8px #102a4333}.published-project .overview-cover-tags li button,.published-project .overview-tag-form button{color:#2424ff;cursor:pointer;background:#eef1ff;border:0;border-radius:50%;width:28px;height:28px;font-size:18px}.published-project .overview-tag-form{gap:4px;display:inline-flex}.published-project .overview-tag-form input{box-sizing:border-box;color:#172b3a;background:#fff;border:1px solid #b7c2cb;border-radius:18px;width:120px;height:34px;padding:4px 10px;font:13px Arial,sans-serif}.published-project .overview-cover-upload{z-index:1;color:#2424ff;cursor:pointer;background:#fff;border:1px solid #2424ff;border-radius:24px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:10px 20px;font:400 16px/24px Arial,Helvetica,sans-serif;display:inline-flex;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.published-project .overview-cover-upload svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.published-project .overview-cover-upload:hover{background:#f2f4ff}.published-project .overview-cover-upload:disabled,.published-project .overview-tag-form button:disabled{cursor:not-allowed;opacity:.65}.published-project .overview-inline-editor .readme-title-field{display:none}.published-project .overview-edit-hint{color:#526575;margin:12px 0 0;font-size:14px}.published-project .overview-inline-editor .readme-rich-content{outline-offset:-1px;outline:1px solid #d8d8d8}.published-project .overview-edit-error{z-index:15}@keyframes overview-action-enter{0%{opacity:0;transform:translateY(5px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.published-project .published-readme{margin-top:48px}.published-project .published-readme h2{letter-spacing:-.5px;margin:0;font-family:inherit;font-size:24px;line-height:36px}.published-project .published-readme-layout{grid-template-columns:213px minmax(0,832px);gap:64px;margin-top:40px;display:grid}.published-project .published-readme nav{flex-direction:column;align-items:stretch;gap:8px;display:flex}.published-project .published-readme nav a{color:#000;overflow-wrap:anywhere;border-radius:30px;min-height:51px;padding:16px 24px;font-size:14px;text-decoration:none}.published-project .published-readme nav a[aria-current]{background:#d8d8d8}.published-project .published-readme-content{min-width:0}.published-project .published-readme-content>section{margin-bottom:48px;scroll-margin-top:24px}.published-project .published-readme-content h2{margin:8px 0 32px}.published-project .markdown-body{color:#000;overflow-wrap:anywhere;max-width:none;line-height:1.5}.published-project .markdown-body p{color:inherit}.published-project a:focus-visible,.published-project button:focus-visible,.published-project input:focus-visible{outline-offset:3px;outline:3px solid #2424ff}@media (width<=800px){.published-project .project-heading{flex-direction:column;padding-block:20px}.published-project .project-heading h1{font-size:36px;line-height:1.25}.published-project .project-heading .lede{font-size:18px;line-height:1.5}.published-project .project-entry-actions{padding-top:0}.published-project .published-summary{grid-template-columns:1fr}.published-project .published-summary-intro{flex-wrap:wrap;min-height:0}.published-project .published-summary-intro.is-editing{flex-direction:column}.published-project .overview-edit-actions{width:100%}.published-project .overview-inline-editor .readme-compose-layout{grid-template-columns:minmax(0,1fr);gap:24px}.published-project .overview-inline-editor .readme-compose-nav{flex-direction:row;padding:4px;overflow-x:auto}.published-project .overview-inline-editor .readme-compose-nav button{flex:none;max-width:220px}.published-project .overview-inline-editor .readme-compose-nav .readme-add-section{margin-top:0}.published-project .published-cover{min-height:240px}.published-project .published-readme{margin-top:64px}.published-project .published-readme-layout{grid-template-columns:minmax(0,1fr);gap:24px}.published-project .published-readme nav{flex-direction:row;overflow-x:auto}.published-project .published-readme nav a{flex:none;max-width:240px}}.published-project .published-files{--files-accent:#2424ff;padding-top:42px}.published-project .published-files .files-workspace{box-shadow:none;background:#fff;border:0;overflow:visible}.published-project .published-files .drive-toolbar{border-bottom:1px solid #d8d8d8;min-height:62px;padding:0;display:block}.published-project .published-files .drive-topline{padding:8px 0 21px}.published-project .published-files .drive-title-row{gap:16px}.published-project .published-files .drive-title-row h2{letter-spacing:0;font:700 24px/32px Arial,Helvetica,sans-serif}.published-project .published-files .drive-title-row h2 span{color:#555;font-weight:400}.published-project .published-files .drive-state{color:#555;background:0 0;border:0;padding:0}.published-project .published-files .file-breadcrumb{overflow-wrap:anywhere;border:0;gap:12px;min-height:76px;padding:16px 0}.published-project .published-files .file-crumb{min-width:0}.published-project .published-files .file-breadcrumb button{overflow-wrap:anywhere;text-align:left}.published-project .published-files .drive-content{margin:0;padding:0}.published-project .published-table-scroll{margin:-4px;padding:4px;overflow-x:auto}.published-project .published-files .published-file-table{table-layout:fixed;border-collapse:collapse;text-align:left;width:100%;min-width:660px}.published-project .published-files .published-file-table th{color:#555;border-bottom:1px solid #d8d8d8;height:34px;padding:4px 12px;font-size:14px;font-weight:400}.published-project .published-files .published-file-table .table-sort{min-height:24px}.published-project .published-files .published-file-table th:first-child{width:48px}.published-project .published-files .published-file-table th:nth-child(2){width:29%}.published-project .published-files .published-file-table td{color:#555;border-bottom:1px solid #d8d8d8;height:70px;padding:8px 12px;font-size:14px}.published-project .published-files .published-file-table tr[data-selected]{background:#eef2ff}.published-project .published-files .published-file-table tbody tr:hover{background:#f5f7ff}.published-project .published-files .published-file-table input{accent-color:#2424ff;cursor:pointer;width:24px;height:24px;margin:0}.published-project .published-file-name{align-items:center;gap:16px;min-width:0;display:flex}.published-project .published-file-icon{color:#2424ff;background:#eef1ff;border-radius:50%;flex:0 0 52px;place-items:center;width:52px;height:52px;display:grid}.published-project .published-file-icon svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.published-project .published-file-open{color:#2424ff;min-width:0;font:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:0;padding:4px 0}.published-project .published-file-open:hover{text-decoration:underline}.published-project .published-download{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;padding:32px 0;display:flex}.published-project .published-download button{color:#2424ff;border:1px solid #888;border-radius:24px;padding:10px 24px;font-weight:400}.published-project .published-download button:disabled{color:#555}.published-project .published-history-note{color:#555;margin:24px 0 0;font-size:14px;line-height:1.5}.published-project .published-table-scroll:focus-visible{outline-offset:3px;outline:3px solid #2424ff}.published-project .published-readme-content>section:focus-visible{outline-offset:6px;outline:3px solid #2424ff}.published-project .archive-overview-page,.published-project .archive-overview-page .published-readme-layout,.published-project .archive-overview-page .published-readme-content,.published-project .archive-overview-page .published-readme-content>*,.published-project .archive-overview-page .recovered-archive-files{min-width:0;max-width:100%}.published-project .archive-overview-page .published-readme-content :is(p,li,a,span.archive-historical-link,figcaption,td,th){overflow-wrap:anywhere}.published-project .archive-overview-page .recovered-archive-files :is(ul,li,a){min-width:0;max-width:100%}.published-project .archive-overview-page .recovered-archive-files :is(li,a){overflow-wrap:anywhere}.published-project .archive-overview-page .published-readme-content img,.published-project .archive-overview-page .recovered-video-list video{width:auto;max-width:100%;height:auto;display:block}.published-project .archive-overview-page .archive-markdown-figure,.published-project .archive-overview-page .recovered-archive-files figure{min-width:0;max-width:100%;margin:1rem 0}.published-project .archive-overview-page .archive-markdown-figure figcaption,.published-project .archive-overview-page .recovered-archive-files figcaption{color:#555;overflow-wrap:anywhere;margin-top:.4rem;font-size:14px;line-height:1.45}.published-project .archive-overview-page .recovered-video-list{gap:1.5rem;padding-left:1.25rem;display:grid}.published-project .archive-image-loading,.published-project .archive-image-error{overflow-wrap:anywhere;max-width:100%;display:block}@media (width<=800px){.published-project .archive-overview-page .published-readme-layout{grid-template-columns:minmax(0,1fr)}.published-project .archive-overview-page .published-readme-layout>*{min-width:0;max-width:100%}}@media (width>=801px){.published-project .global-bar .auth-controls{flex-basis:460px}}.published-project .overview-surface{--accent:#2424ff;box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}.published-project .project-reading-controls{justify-content:space-between;align-items:center;gap:24px;display:flex}.published-project .global-bar a:focus-visible,.published-project .global-bar button:focus-visible{outline-offset:2px;outline-color:#fff}.published-project .overview-surface a:focus-visible{outline-color:#2424ff}.published-project .published-files .published-file-table th{background:#fff}.published-project .published-files .published-file-table :is(th,td):first-child{text-align:left;width:48px;padding:4px 12px}.published-project .published-files .published-file-table :is(th,td):nth-child(3),.published-project .published-files .published-file-table :is(th,td):nth-child(4){width:auto;display:table-cell}.published-project .published-files .published-file-table tbody tr:last-child td{border-bottom:1px solid #d8d8d8}.published-project .published-files .published-file-table input[type=checkbox]{appearance:auto;block-size:24px;inline-size:24px;display:inline-block}.published-project .published-files .published-file-table input[type=checkbox]:before{content:none}@media (width<=1100px){.published-project .published-files .published-file-table td{height:58px}.published-project .published-file-icon{flex-basis:40px;width:40px;height:40px}}@media (width<=800px){.published-project .project-reading-controls{flex-direction:column;align-items:stretch;gap:24px;margin-top:8px}.published-project .published-table-scroll:focus-visible{outline-offset:-3px}}.published-project-loading .published-skeleton{background:linear-gradient(100deg,#e8e8e8 20%,#f4f4f4 38%,#e8e8e8 56%) 0 0/220% 100%;border-radius:3px;animation:1.6s ease-in-out infinite published-skeleton-shimmer;display:block}.published-project-loading .published-breadcrumb-placeholder{width:250px;height:14px}.published-project-loading .published-title-placeholder{width:min(62%,680px);height:58px;margin:8px 0 12px}.published-project-loading .published-lede-placeholder{width:min(78%,860px);height:25px}.published-project-loading .published-tab-placeholder{width:112px;height:28px}.published-project-loading .published-summary-intro{align-items:flex-start}.published-project-loading .published-loading-lines{gap:12px;width:100%;padding:4px 0;display:grid}.published-project-loading .published-loading-lines i{background:linear-gradient(100deg,#e8e8e8 20%,#f4f4f4 38%,#e8e8e8 56%) 0 0/220% 100%;border-radius:2px;width:100%;height:13px;animation:1.6s ease-in-out infinite published-skeleton-shimmer;display:block}.published-project-loading .published-loading-lines i:nth-child(2){width:92%}.published-project-loading .published-loading-lines i:nth-child(3){width:96%}.published-project-loading .published-loading-lines i:nth-child(4){width:72%}.published-project-loading .published-metadata dl>div{grid-template-columns:1fr 1fr}.published-project-loading .published-metadata-label{width:92px;height:14px}.published-project-loading .published-metadata-value{width:120px;height:14px}.published-project-loading .published-loading-cover{background:#ededed}.published-project-loading .published-cover-mark{width:92px;height:12px}.published-project-loading .published-readme-content{align-content:start;gap:24px;display:grid}.published-project-loading .published-readme-title{width:54%;height:34px}.published-project-loading .published-readme-section-title{width:92px;height:24px}.published-project-loading .published-readme nav i{background:#ededed;border-radius:30px;min-height:51px;display:block}.published-project-loading .published-readme nav i:nth-child(2){width:88%}.published-project-loading .published-readme nav i:nth-child(3){width:72%}.published-project-loading .drive-title-placeholder{width:15rem;height:1.5rem}.published-project-loading .drive-state-placeholder{border-radius:999px;width:4rem;height:1.4rem}.published-project-loading .drive-description-placeholder{width:18rem;max-width:90%;height:.8rem}.published-project-loading .file-path-placeholder{width:12rem;height:.9rem}.published-project-loading .file-action-placeholder{border-radius:50%;width:2.5rem;height:2.5rem}.published-project-loading .drive-title-row{align-items:center}.published-project-loading .file-path-row{min-height:76px}@keyframes published-skeleton-shimmer{to{background-position-x:-220%}}@media (prefers-reduced-motion:reduce){.published-project-loading .published-skeleton,.published-project-loading .published-loading-lines i{animation:none}}@media (width<=800px){.published-project-loading .published-title-placeholder{width:86%;height:42px}.published-project-loading .published-lede-placeholder{width:96%}.published-project-loading .published-loading-cover{min-height:240px}.published-project-loading .published-readme nav i{flex:0 0 150px;min-height:44px}.published-project-loading .file-path-row{min-height:54px}}@media (width<=1100px){.published-project .published-files .published-file-table td{height:58px}.published-project .published-file-icon{flex-basis:40px;width:40px;height:40px}}@media (width<=800px){.published-project .project-reading-controls{flex-direction:column;align-items:stretch;gap:24px;margin-top:8px}.published-project .published-table-scroll:focus-visible{outline-offset:-3px}}.cohort-label{color:#34403d;background:#f5f7f6;border:1px solid #d8d8d8;border-radius:999px;align-items:center;width:fit-content;margin:0 0 .55rem;padding:.2rem .5rem;font-size:.75rem;font-weight:650;line-height:1.3;display:inline-flex}.project-cohort-label{margin-top:.55rem}.readme-edit-route{color:#111;background:#fff;min-height:100vh;font-family:Arial,Helvetica,sans-serif}.readme-edit-route .global-bar-content{width:96%;max-width:none}.readme-edit-route .global-bar .auth-controls{flex-basis:460px}.readme-edit-route .project-shell,.readme-edit-route .project-breadcrumb{width:96%;max-width:none}.readme-edit-route .project-heading{min-height:148px;padding-block:24px}.readme-edit-route .project-heading h1{letter-spacing:-.02em;font-family:inherit;font-size:36px;line-height:1.3}.readme-edit-route .project-heading .lede,.readme-edit-route .project-heading>.button{display:none}.readme-edit-route .project-tabs{height:64px}.readme-edit-route .project-tabs a{font-family:inherit;font-size:16px}.readme-edit-route .project-tabs a[aria-current=page]{color:#2424ff}.readme-workbench{--ink:#111;--muted:#555;--accent:#2424ff;padding-top:48px}.readme-workbench .editor-heading{align-items:center;margin-bottom:48px}.readme-workbench .editor-heading h2 span{color:#555;font-size:16px;font-weight:400}.readme-workbench .editor-heading h2{letter-spacing:-.5px;margin:0;font:700 24px/36px Arial,Helvetica,sans-serif}.readme-workbench .readme-draft-label{color:#555;margin:0 0 4px;font-size:14px}.readme-workbench .editor-lede{color:#555;max-width:75ch;margin-top:8px;font-size:14px}.readme-workbench .button,.readme-workbench .readme-recovery button{color:#2424ff;background:#fff;border:1px solid #888;border-radius:24px;min-height:42px;padding:8px 22px;font:400 16px/24px Arial,Helvetica,sans-serif}.readme-workbench .button:hover{background:#f4f4ff}.readme-workbench .editor-heading .button{color:#111}.readme-workbench .readme-editor{max-width:none;box-shadow:none;border:0;border-radius:0;padding:0;display:block}.readme-workbench .readme-mode-bar{border-bottom:1px solid #d8d8d8;gap:8px;margin-bottom:0;padding-bottom:16px;display:flex}.readme-mode-bar button{min-height:40px;font:inherit;color:#444;cursor:pointer;background:#fff;border:1px solid #0000;border-radius:24px;padding:8px 20px}.readme-mode-bar button[aria-pressed=true]{color:#2424ff;border-color:#2424ff}.readme-workbench .readme-compose-layout{grid-template-columns:213px minmax(0,832px);align-items:start;gap:64px;display:grid}.readme-compose-nav{flex-direction:column;gap:8px;display:flex}.readme-compose-nav button{color:#111;text-align:left;overflow-wrap:anywhere;cursor:pointer;background:#fff;border:0;border-radius:28px;min-height:51px;padding:16px 24px;font:400 14px/20px Arial,Helvetica,sans-serif}.readme-compose-nav button[aria-current]{background:#d8d8d8}.readme-compose-nav .readme-add-section{color:#2424ff;border:1px solid #d8d8d8;margin-top:12px}.readme-compose-article{min-width:0}.readme-title-field{grid-template-columns:minmax(0,max-content) minmax(10rem,1fr);align-items:center;gap:8px;margin-bottom:40px;display:grid}.readme-title-field[hidden]{display:none}.readme-title-field>label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.readme-protected-title{overflow-wrap:anywhere;font-size:24px;font-weight:700;line-height:36px}.readme-title-field input,.readme-section-heading input{color:#111;background:#fff;border:0;border-bottom:1px solid #0000;border-radius:0;width:100%;min-width:0;padding:8px 0;font:700 24px/32px Arial,Helvetica,sans-serif}.readme-compose-section{margin-bottom:40px;scroll-margin-top:24px;position:relative}.readme-section-heading{align-items:center;gap:16px;min-width:0;margin-bottom:20px;display:flex}.readme-section-heading h3{color:#111;overflow-wrap:anywhere;margin:0;font:700 24px/36px Arial,Helvetica,sans-serif}.readme-section-heading button{color:#2424ff;cursor:pointer;background:#fff;border:1px solid #aaa;border-radius:24px;min-height:36px;margin-left:auto;padding:6px 16px}.readme-workbench .markdown-body{color:#111;overflow-wrap:anywhere;max-width:none;line-height:1.6}.readme-workbench .markdown-body p,.readme-workbench .markdown-body li{color:#111}.readme-workbench .mdxeditor{color:#111;border:1px solid #aaa;border-radius:0;font-family:Arial,Helvetica,sans-serif}.readme-workbench .mdxeditor-toolbar{background:#f5f5f5;border-bottom:1px solid #d8d8d8;border-radius:0;flex-wrap:wrap;top:0}.readme-workbench .mdxeditor-toolbar button{color:#222}.readme-workbench .readme-rich-content{overflow-wrap:anywhere;min-height:180px;padding:20px 24px;font:400 16px/1.6 Arial,Helvetica,sans-serif}.readme-workbench .readme-rich-content p{margin:0 0 16px}.readme-workbench .readme-placeholder{color:#555}.readme-workbench .readme-rich-content h3{font-size:22px}.readme-workbench .readme-rich-content ul,.readme-workbench .readme-rich-content ol{padding-left:24px}.readme-workbench .readme-rich-content blockquote{border-left:1px solid #aaa;margin:16px 0;padding-left:16px}.readme-workbench .readme-rich-content a{color:#2424ff;text-decoration:underline}.readme-workbench .readme-source-panel label{font-weight:700}.readme-workbench .readme-source-panel p{color:#555;line-height:1.5}.readme-workbench .readme-source-panel textarea{background:#fff;border-radius:0;min-height:440px;padding:16px}.readme-workbench .readme-recovery{padding:16px 0}.readme-workbench .readme-recovery>p{color:#555;font-size:14px;line-height:1.5}.readme-workbench .editor-footer{border-top:1px solid #d8d8d8;max-width:832px;margin:12px 0 0 277px;padding:24px 0}.readme-workbench .editor-footer p:first-child{flex-basis:320px}.readme-workbench .editor-footer .button{border-color:#2424ff}.readme-workbench .publication-controls{border:0;border-top:1px solid #d8d8d8;border-radius:0;width:auto;max-width:832px;margin:32px 0 0 277px;padding:24px 0;display:block}.readme-workbench .publication-controls h2{margin:0;font:700 20px/28px Arial,Helvetica,sans-serif}.readme-workbench .publication-controls p{color:#555;max-width:70ch;font-size:14px;line-height:1.6}.readme-workbench .publication-actions{margin-top:16px}.readme-workbench .publication-controls .button{border-radius:24px}.readme-workbench .readme-editor button:disabled,.readme-workbench .publication-controls button:disabled{color:#666;cursor:not-allowed;background:#f5f5f5;border-color:#bbb}.readme-workbench :is(button,input,textarea,a,[contenteditable],section):focus-visible{outline-offset:3px;outline:3px solid #2424ff}.readme-workbench .editor-error,.readme-workbench .editor-status{margin-top:16px}.readme-sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=800px){.readme-edit-route .global-bar .auth-controls{flex-basis:auto}.readme-edit-route .project-heading h1{font-size:28px}.readme-workbench .editor-heading{align-items:flex-start}.readme-workbench .readme-compose-layout{grid-template-columns:minmax(0,1fr);gap:24px}.readme-title-field{grid-template-columns:minmax(0,1fr)}.readme-compose-nav{flex-direction:row;padding:4px;overflow-x:auto}.readme-compose-nav button{flex:none;max-width:220px}.readme-compose-nav .readme-add-section{margin-top:0}.readme-workbench .editor-footer,.readme-workbench .publication-controls{margin-left:0}.readme-workbench .readme-rich-content{padding:16px}.readme-workbench .mdxeditor-toolbar{position:static}.readme-workbench .readme-mode-bar{gap:4px}.readme-mode-bar button{padding-inline:16px}}.readme-workbench .readme-title-field input:focus,.readme-workbench .readme-section-heading input:focus{border-bottom-color:#0000}.readme-workbench .readme-section-heading input:focus-visible{outline-offset:0;outline:1px solid #2424ff}.readme-workbench .readme-section-heading:empty{display:none}.editor-confirm-backdrop{z-index:2100;background:#102a4366;place-items:center;padding:20px;animation:.18s both editor-dialog-fade-in;display:grid;position:fixed;inset:0}.editor-confirm-backdrop.is-closing{animation:.18s both editor-dialog-fade-out}.editor-confirm-dialog{box-sizing:border-box;color:#172b3a;background:#fff;border:1px solid #b7c2cb;border-radius:12px;width:min(440px,100%);padding:24px;animation:.18s both editor-dialog-rise-in;box-shadow:0 18px 60px #102a4333}.editor-confirm-backdrop.is-closing .editor-confirm-dialog{animation:.18s both editor-dialog-rise-out}.editor-confirm-dialog h2{margin:0;font-size:1.25rem}.editor-confirm-dialog p{color:#526575;margin:12px 0 22px;line-height:1.5}.editor-confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.editor-confirm-actions .button{min-height:42px}@keyframes editor-dialog-fade-in{0%{opacity:0}to{opacity:1}}@keyframes editor-dialog-fade-out{0%{opacity:1}to{opacity:0}}@keyframes editor-dialog-rise-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes editor-dialog-rise-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(6px)scale(.98)}}@media (prefers-reduced-motion:reduce){.editor-confirm-backdrop,.editor-confirm-backdrop.is-closing,.editor-confirm-dialog,.editor-confirm-backdrop.is-closing .editor-confirm-dialog{animation-duration:1ms}}.readme-workbench .readme-compose-section:has(.readme-insertion) .mdxeditor:focus-within{border-color:#2424ff}.readme-workbench .mdxeditor{flex-direction:column;display:flex}.readme-workbench .mdxeditor:focus-within{border-color:#2424ff}.readme-workbench .mdxeditor [contenteditable]:focus-visible{outline:none}.readme-workbench .mdxeditor-toolbar{background:#fff;border:0;border-bottom:1px solid #d8d8d8;order:0;min-height:0;padding:4px 12px}.readme-formatting{flex-wrap:wrap;align-items:center;gap:2px;display:flex}.readme-insertion{margin:0 0 8px;position:relative}.readme-insert-trigger{color:#555;cursor:pointer;background:#fff;border:1px solid #888;border-radius:50%;width:30px;height:30px;padding:0;font:22px/28px Arial,sans-serif;position:absolute;top:6px;left:-38px}.readme-insert-menu{background:#fff;border:1px solid #aaa;flex-wrap:wrap;gap:8px;padding:12px;display:flex;position:relative}.readme-insert-menu button,.readme-file-picker button{color:#2424ff;min-height:40px;font:inherit;cursor:pointer;background:#fff;border:1px solid #aaa;border-radius:22px;padding:6px 12px}.readme-insert-menu p{color:#555;flex-basis:100%;margin:0;font-size:13px;line-height:1.5}.readme-media-feedback{color:#555;font-size:13px;line-height:1.5}.readme-file-picker{box-sizing:border-box;color:#111;background:#fff;border:1px solid #888;width:min(860px,100vw - 32px);max-height:85vh;padding:24px;overflow:auto}.readme-file-picker::backdrop{background:#00000059}.readme-file-picker header{justify-content:space-between;align-items:center;gap:16px;display:flex}.readme-file-picker h3{margin:0;font-size:20px}.readme-file-picker p{color:#555;font-size:14px;line-height:1.5}.readme-file-picker ul{padding:0;list-style:none}.readme-file-picker li{border-top:1px solid #ddd;justify-content:space-between;align-items:center;gap:16px;padding:10px 0;display:flex}.readme-file-picker li span{overflow-wrap:anywhere;min-width:0}.readme-file-search{flex:1;min-width:140px}.readme-file-search input{box-sizing:border-box;color:#111;width:100%;min-height:40px;font:inherit;background:#fff;border:1px solid #888;border-radius:4px;padding:8px 10px;font-size:14px}.readme-file-search input::placeholder{color:#555;opacity:1}.readme-picker-content{grid-template-columns:minmax(0,1fr) 220px;align-items:start;gap:24px;display:grid}.readme-picker-list{min-width:0;max-height:45vh;overflow-y:auto}.readme-picker-list ul{margin:0}.readme-file-picker .readme-file-select{color:#111;text-align:left;overflow-wrap:anywhere;border:0;border-radius:4px;flex:1;min-width:0;padding:8px}.readme-file-select:hover{background:#f4f4f4}.readme-file-picker li[data-selected]{background:#f0f0ff}.readme-file-picker li[data-selected] .readme-file-select{color:#2424ff;background:0 0}.readme-file-picker button:disabled{cursor:default;opacity:.55}.readme-file-picker button:focus-visible,.readme-file-search input:focus-visible{outline-offset:2px;outline:2px solid #2424ff}.readme-picker-preview{border-left:1px solid #ddd;min-width:0;padding-left:20px}.readme-picker-preview h4{margin:10px 0;font-size:14px}.readme-picker-preview p{overflow-wrap:anywhere}.readme-picker-preview .readme-preview-path{color:#111;font-weight:600}.readme-picker-preview img{object-fit:contain;width:100%;max-height:180px;display:block}@media (width<=600px){.readme-file-picker{max-height:90vh;padding:16px}.readme-file-picker header{flex-wrap:wrap;gap:12px}.readme-file-picker h3{flex:1;font-size:18px}.readme-file-search{flex-basis:100%;order:3}.readme-picker-content{grid-template-columns:minmax(0,1fr);gap:16px}.readme-picker-list{max-height:25vh}.readme-picker-preview{border-top:1px solid #ddd;border-left:0;padding:0}.readme-picker-preview img{max-height:140px}}.readme-workbench .editor-footer{justify-content:flex-end}.markdown-project-file .markdown-download{color:#2424ff;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline;display:inline}.markdown-project-file img,.readme-workbench .markdown-body img,.published-readme-content img{max-width:100%;height:auto}@media (width<=800px){.readme-secondary-tools{margin-left:0}.readme-insert-trigger{margin-bottom:8px;position:static}}.markdown-body .markdown-embed{background:#f7f8fa;width:100%;min-width:0;margin:24px 0;display:block}.markdown-embed :is(.pdf-preview,.stl-preview,.svg-embed){width:100%;min-width:0}.markdown-embed canvas{max-width:100%;height:auto;margin-inline:auto;display:block}.markdown-embed canvas[hidden]{display:none}.markdown-embed video{background:#15171b;width:100%;max-height:560px;display:block}.markdown-embed figcaption{color:#454b55;overflow-wrap:anywhere;border-top:1px solid #d8dde5;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font:14px/1.5 Arial,sans-serif;display:flex}.markdown-embed :is(.preview-error,.preview-fallback,p[role=status]){padding:16px}.pdf-page-controls{color:#454b55;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:12px;display:flex}.pdf-page-controls button{color:#2424ff;cursor:pointer;background:#fff;border:1px solid #b4bac4;border-radius:4px;min-height:40px;padding:8px 12px}.pdf-page-controls button:disabled{color:#666;cursor:default}.readme-embed-hint{color:#454b55;font-size:14px;line-height:1.5}.readme-picker-preview .markdown-embed{margin:12px 0}.readme-picker-preview .markdown-embed figcaption{padding-inline:0}@media (width<=480px){.markdown-embed figcaption{padding:10px}.pdf-page-controls{gap:8px}}:root{color:#18302c;font-synthesis:none;--ink:#18302c;--muted:#58706b;--paper:#fffdf7;--line:#c8d4ca;--accent:#d45f3f;--danger:#9d3125;background:#f6f2e9;font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}.page-shell{width:min(100% - 3rem,72rem);margin:0 auto;padding:5rem 0}.eyebrow{color:#b34f38;letter-spacing:.14em;margin:0 0 1rem;font-size:.72rem;font-weight:800}.lede{max-width:38rem;color:var(--muted);font-size:1.25rem;line-height:1.5}.project-card{background:var(--paper);border:1px solid var(--line);border-radius:1rem;justify-content:space-between;align-items:end;gap:2rem;margin-top:4rem;padding:2rem;display:flex}.project-card p{max-width:36rem;color:var(--muted);line-height:1.55}.button{white-space:nowrap;background:var(--ink);color:var(--paper);font:inherit;cursor:pointer;border:1px solid #0000;border-radius:.6rem;align-items:center;gap:.5rem;padding:.8rem 1rem;font-weight:700;text-decoration:none;display:inline-flex}.button:hover,.button:focus-visible{background:var(--accent)}.secondary{color:var(--ink);border-color:var(--line);background:0 0}.toolbar{align-items:center;gap:.75rem;margin:2rem 0;display:flex}.toolbar [role=status]{color:var(--muted);font-size:.9rem}.editor{background:var(--paper);border:1px solid var(--line);border-radius:1rem;gap:1rem;max-width:52rem;padding:1.5rem;display:grid}.editor-actions,.editor-mode-actions,.section-controls{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.editor-actions{justify-content:space-between}.text-button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:.2rem 0;font-weight:700}.text-button:hover{color:var(--ink)}.text-button:disabled{color:var(--muted);cursor:not-allowed}.text-button.danger{color:var(--danger)}.section-nav{gap:.5rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.section-nav-button{border:1px solid var(--line);color:var(--ink);font:inherit;cursor:pointer;background:0 0;border-radius:.5rem;flex:none;padding:.5rem .7rem;font-size:.85rem;font-weight:700}.section-nav-button[aria-current=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.section-row{border:0;border-top:1px solid var(--line);color:var(--muted);gap:.45rem;margin:0;padding:1rem 0 0;font-size:.85rem;font-weight:700;display:grid}.section-row legend{color:var(--ink);padding:0;font-size:1rem;font-weight:800}.section-controls{margin-bottom:.15rem;font-size:.85rem}.section-row input,.source-field textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:.4rem;padding:.7rem;font-weight:400}.section-body-field{color:var(--muted);gap:.45rem;font-size:.85rem;font-weight:700;display:grid}.rich-editor{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:.4rem;font-weight:400}.rich-editor-toolbar{border-bottom:1px solid var(--line);background:#f2eee4}.rich-editor-content{min-height:9rem;color:var(--ink);font:inherit;padding:.8rem;line-height:1.55}.rich-editor-content:focus-visible{outline-offset:-3px;outline:3px solid #d45f3f80}.source-field{color:var(--muted);gap:.45rem;font-size:.85rem;font-weight:700;display:grid}.source-field textarea{resize:vertical}.source-diff{border:1px solid var(--line);background:#f2eee4;border-radius:.6rem;gap:.65rem;padding:1rem;display:grid}.source-diff pre{white-space:pre-wrap;background:#fff;max-height:16rem;margin:0;padding:.75rem;font:500 .8rem/1.5 ui-monospace,SFMono-Regular,monospace;overflow:auto}.editor-error{color:var(--danger);margin:0;font-weight:700}.text-button:focus-visible,.button:focus-visible,.section-nav-button:focus-visible,.section-row input:focus-visible,.source-field textarea:focus-visible{outline-offset:2px;outline:3px solid #d45f3f80}.read-layout{max-width:52rem;padding-top:1rem}.read-layout>p{color:var(--muted);font-size:1.1rem;line-height:1.7}.read-layout section{border-top:1px solid var(--line);padding:1.5rem 0}.read-layout section p{color:var(--muted);line-height:1.7}.back-link{color:var(--ink);margin-bottom:4rem;font-weight:700;display:inline-block}h1{letter-spacing:-.04em;max-width:13ch;margin:.25rem 0;font-family:Georgia,serif;font-size:clamp(3rem,8vw,6rem);line-height:.95}h2{margin:0;font-family:Georgia,serif;font-size:clamp(1.7rem,3vw,2.4rem)}@media (width<=1100px){.page-shell{padding:2.5rem 0}.back-link{margin-bottom:2rem}h1{font-size:3.6rem}.editor{max-width:none;padding:1.25rem}}@media (width<=640px){.page-shell{padding:3rem 0}.project-card{flex-direction:column;align-items:start;margin-top:2.5rem}.button{justify-content:center;width:100%}.toolbar{flex-direction:column;align-items:stretch}.editor-actions{flex-direction:column;align-items:flex-start}.section-controls{gap:.65rem}.rich-editor-toolbar{overflow-x:auto}}.project-breadcrumb{color:var(--muted);align-items:center;gap:.55rem;font-size:.88rem;display:flex}.project-breadcrumb a{color:var(--ink);font-weight:700}.project-heading{padding:3.75rem 0 2.75rem}.project-heading .lede{margin-bottom:0}.project-tabs{gap:1.6rem;display:flex}.project-tabs a{color:var(--muted);padding:0 0 1rem;font-weight:800;text-decoration:none;position:relative}.project-tabs a[aria-current=page]:after{background:var(--accent);content:"";height:3px;position:absolute;bottom:-1px;left:0;right:0}.files-page{padding-top:1.5rem}.drive-topline{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.5rem 0 1.1rem;display:flex}.drive-topline h2{font-size:clamp(1.6rem,3vw,2.25rem)}.drive-topline p{color:var(--muted);margin:.35rem 0 0}.file-breadcrumb{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.45rem;margin:0;padding:1rem 0;font-size:.9rem;display:flex}.file-breadcrumb button{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.file-breadcrumb button[aria-current=page]{color:var(--muted);pointer-events:none}.file-crumb{align-items:center;gap:.45rem;display:flex}.file-actions{border-bottom:1px solid var(--line);padding:1.2rem 0}.file-action-primary{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.file-action-primary .button{padding:.63rem .8rem}.selection-count{color:var(--muted);font-size:.9rem;font-weight:700}.inline-file-form,.folder-upload{background:var(--paper);border:1px solid var(--line);border-radius:.7rem;flex-wrap:wrap;align-items:end;gap:.75rem;margin-top:1rem;padding:1rem;display:flex}.inline-file-form label{color:var(--muted);gap:.35rem;font-size:.82rem;font-weight:800;display:grid}.inline-file-form input{border:1px solid var(--line);min-width:13rem;color:var(--ink);font:inherit;background:#fff;border-radius:.4rem;padding:.55rem}.folder-upload{align-items:start}.folder-upload>div{gap:.35rem;display:grid}.folder-upload p{max-width:18rem;color:var(--muted);margin:0;font-size:.85rem;line-height:1.45}.file-picker-label input{max-width:15rem;display:block}.file-confirmation{background:#fff8f6;border:1px solid #d79d93;border-radius:.7rem;max-width:38rem;margin-top:1rem;padding:1rem}.file-confirmation h2{font-size:1.25rem}.file-confirmation p{color:#682c24;line-height:1.5}.danger-button{background:var(--danger)}.file-error{color:var(--danger);margin:1rem 0 0;font-weight:700}.download-only-note{color:var(--muted);margin:1rem 0 0;font-size:.9rem}.draft-notice,.file-feedback{color:var(--muted);margin:1rem 0 0;font-weight:700}.draft-notice{background:#edf3f0;border-radius:.5rem;padding:.7rem .85rem}.pending-actions{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:.65rem;margin-top:1rem;padding:.8rem 0;font-size:.88rem;display:flex}.pending-actions strong{color:var(--ink)}.pending-action{background:#f2eee4;border-radius:.3rem;padding:.2rem .45rem;font-family:ui-monospace,SFMono-Regular,monospace;font-size:.78rem}.drive-content{margin-top:1rem}.file-table-wrap{overflow-x:auto}.file-table{border-collapse:collapse;text-align:left;width:100%}.file-table th{color:var(--muted);padding:.55rem .75rem;font-size:.78rem}.file-table td{border-top:1px solid var(--line);color:var(--muted);padding:.9rem .75rem;font-size:.92rem}.file-table tr[data-selected]{background:#edf3f0}.file-table input{block-size:1rem;inline-size:1rem;accent-color:var(--accent)}.table-sort{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:800}.file-name{min-width:16rem;color:var(--ink);align-items:center;gap:.5rem;font-weight:700;display:flex}.file-type{width:1.3rem;color:var(--accent);place-items:center;display:inline-grid}.file-type-folder{color:#c4872d}.file-open{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:800}.file-kind{color:var(--muted);margin-left:auto;font-size:.75rem;font-weight:700}.empty-drive{text-align:center;justify-items:center;gap:.7rem;padding:5rem 1rem;display:grid}.empty-drive-mark{border:1px solid var(--line);width:2.6rem;height:2.6rem;color:var(--accent);border-radius:.5rem;place-items:center;font-size:1.7rem;display:grid}.empty-drive h2{font-size:1.6rem}.empty-drive p{max-width:29rem;color:var(--muted);margin:0;line-height:1.5}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.file-open:focus-visible,.file-breadcrumb button:focus-visible,.table-sort:focus-visible,.file-actions input:focus-visible{outline-offset:3px;outline:3px solid #d45f3f80}.file-preview-backdrop{z-index:30;background:#18302cb3;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.file-preview{background:var(--paper);border:1px solid var(--line);border-radius:.8rem;grid-template-rows:auto minmax(0,1fr) auto;width:min(100%,58rem);max-height:min(48rem,100vh - 2.5rem);display:grid;overflow:hidden}.file-preview header,.file-preview footer{justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.file-preview header{border-bottom:1px solid var(--line)}.file-preview footer{border-top:1px solid var(--line)}.file-preview h2{overflow-wrap:anywhere;font-size:1.25rem}.preview-label{color:var(--muted);margin:0 0 .2rem;font-size:.78rem;font-weight:800}.file-preview-body{background:#f2eee4;min-height:12rem;padding:1.2rem;overflow:auto}.file-preview-body>p{color:var(--muted);margin:0;line-height:1.5}.media-image-preview,.media-video-preview{max-width:100%;max-height:32rem;margin:auto;display:block}.media-image-preview{background:#fff}.media-video-preview{background:#18302c;width:100%}.pdf-preview{justify-items:center;gap:.75rem;min-height:12rem;display:grid}.pdf-preview canvas{background:#fff;max-width:100%;height:auto}.stl-preview{min-height:16rem}.stl-preview canvas{outline:0;width:100%;display:block}.preview-error{font-weight:800;color:var(--danger)!important}.preview-fallback{color:var(--muted);font-weight:700}@media (width<=640px){.project-shell{width:min(100% - 2rem,72rem);padding:1rem 0 3rem}.project-heading{padding:2.5rem 0 2rem}.project-heading h1{font-size:clamp(2.7rem,14vw,3.7rem)}.drive-topline{flex-direction:column;align-items:start}.file-action-primary>.button{width:auto}.file-action-primary{align-items:stretch}.file-action-primary .selection-count{width:100%}.inline-file-form,.folder-upload{flex-direction:column;align-items:stretch}.inline-file-form input{width:100%}.file-table th:nth-child(3),.file-table td:nth-child(3),.file-kind{display:none}}.catalog-heading,.project-heading{justify-content:space-between;align-items:flex-start;gap:2rem;display:flex}.auth-controls{border:1px solid var(--line);min-width:16rem;color:var(--ink);background:#edf3f0;border-radius:.7rem;flex:0 20rem;gap:.45rem;padding:1rem;display:grid}.auth-controls strong{font-size:.95rem}.auth-controls p{color:var(--muted);margin:0;font-size:.9rem;line-height:1.45}.auth-controls .button{justify-self:start}.auth-error{font-weight:700;color:var(--danger)!important}.publication-controls{border-top:1px solid var(--line);justify-content:space-between;align-items:end;gap:1.5rem;max-width:52rem;margin-top:3rem;padding:1.4rem 0;display:flex}.publication-controls h2{font-size:1.35rem}.publication-controls p{max-width:39rem;color:var(--muted);margin:.45rem 0 0;line-height:1.5}.publication-actions{flex:none;justify-items:start;gap:.65rem;display:grid}.publication-actions .button:disabled{color:#fff;cursor:not-allowed;background:#80918a}.oauth-callback-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.oauth-callback .back-link{margin:0}@media (width<=640px){.catalog-heading,.project-heading,.publication-controls{flex-direction:column;align-items:stretch}.auth-controls{width:100%;min-width:0}.auth-controls .button{width:auto}.publication-actions{width:100%}}.global-bar{color:#fff;background:#101112;height:34px}.global-bar-content,.project-breadcrumb-strip{width:min(100% - 3rem,72rem);margin:0 auto}.global-bar-content{justify-content:space-between;align-items:center;gap:1rem;height:100%;display:flex}.global-bar-brand{color:inherit;letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;font-weight:800;text-decoration:none;overflow:hidden}.global-bar .auth-controls{color:#fff;background:0 0;border:0;border-radius:0;min-width:0;padding:0;display:grid}.global-bar .auth-controls strong{white-space:nowrap;font-size:.75rem}.global-bar .auth-controls p{display:none}.global-bar .auth-controls .button,.global-bar .auth-controls .text-button{color:#fff;border-color:#fff;min-height:26px;padding:.2rem .55rem;font-size:.75rem}.global-bar .auth-controls .button:hover,.global-bar .auth-controls .button:focus-visible{background:#155eef}.project-breadcrumb-strip{border-bottom:1px solid var(--line);align-items:center;min-height:36px;display:flex}.project-breadcrumb{min-height:36px;color:var(--muted);align-items:center;gap:.55rem;font-size:.85rem;display:flex}.project-breadcrumb a{color:var(--ink);font-weight:750;text-decoration:none}.project-breadcrumb a:hover,.project-breadcrumb a:focus-visible{color:#155eef}.project-shell{width:min(100% - 3rem,72rem);margin:0 auto;padding:0 0 5rem}.project-header{border-bottom:0;padding:0}.project-heading{padding:2.5rem 0 2.75rem;display:block}.project-heading h1{letter-spacing:-.035em;text-wrap:balance;max-width:16ch;margin:.25rem 0;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:3rem;line-height:1.05}.project-heading .lede{max-width:42rem;margin:0}.project-tabs{border-bottom:1px solid var(--line);gap:0;display:flex}.project-tabs a{min-width:0;color:var(--ink);flex:50%;justify-content:center;align-items:center;gap:.6rem;padding:1rem .75rem;font-weight:750;text-decoration:none;display:inline-flex;position:relative}.project-tabs a svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;flex:none;width:1.2rem;height:1.2rem}.project-tabs a[aria-current=page]{color:#155eef}.project-tabs a[aria-current=page]:after{content:"";background:#101112;height:4px;position:absolute;bottom:-1px;left:0;right:0}.project-tabs a:hover{color:#155eef}.project-tabs a:focus-visible{outline-offset:-3px;outline:3px solid #155eef80}@media (width<=640px){.global-bar-content,.project-breadcrumb-strip,.project-shell{width:min(100% - 2rem,72rem)}.global-bar-brand span{display:none}.project-heading{padding:2rem 0 2.25rem}.project-heading h1{font-size:2.7rem}.project-tabs a{padding:.9rem .5rem}}.global-bar .auth-controls{grid-template-columns:auto minmax(0,13rem) auto;align-items:center;gap:.45rem;display:grid}.global-bar .auth-controls p{color:#fff;text-overflow:ellipsis;white-space:nowrap;max-width:13rem;font-size:.65rem;line-height:1.1;display:block;overflow:hidden}.global-bar .auth-controls .button,.global-bar .auth-controls .text-button{justify-self:end}.catalog-shell{width:min(100% - 3rem,72rem);margin:0 auto;padding:2.25rem 0 4rem}.catalog-workspace{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:2rem;display:grid}.catalog-navigation{border:1px solid var(--line);background:#f2eee4;gap:.15rem;width:220px;display:grid}.catalog-navigation a{color:var(--ink);padding:.78rem .9rem;font-size:.9rem;font-weight:750;text-decoration:none}.catalog-navigation a[aria-current=page]{color:#155eef;background:#fff}.catalog-navigation a:hover{color:#155eef}.catalog-navigation a:focus-visible{outline-offset:-3px;outline:3px solid #155eef80}.catalog-heading{display:block}.catalog-heading h1{letter-spacing:-.025em;text-wrap:balance;max-width:18ch;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:2rem;line-height:1.1}.catalog-heading .lede{margin:0;font-size:1rem}.project-card{border-radius:0;width:320px;max-width:100%;margin:2rem 0 0;padding:0;display:block;overflow:hidden}.project-card-illustration{background:#fff;place-items:center;height:178px;display:grid}.project-card-illustration svg{fill:none;stroke:#18302c;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.35px;width:100%;height:100%}.project-card-status{text-align:center;background:#155eef;padding:.32rem .9rem;font-weight:750;line-height:1.2;color:#fff!important;max-width:none!important;margin:0!important;font-size:.76rem!important}.project-card-content{padding:1rem}.project-card h2,.project-card h3{letter-spacing:-.01em;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:1.18rem;line-height:1.25}.project-card-content>p{margin:.5rem 0 1rem;font-size:.9rem;line-height:1.5}.project-card .button{border-radius:0;justify-content:center;width:100%;padding:.65rem .8rem;font-size:.9rem}@media (width<=640px){.global-bar .auth-controls{grid-template-columns:auto minmax(0,8.5rem) auto}.global-bar .auth-controls p{max-width:8.5rem}.catalog-shell{width:min(100% - 2rem,72rem);padding:1.5rem 0 3rem}.catalog-workspace{grid-template-columns:minmax(0,1fr);gap:1.5rem}.catalog-navigation{width:100%;display:flex;overflow-x:auto}.catalog-navigation a{text-align:center;flex:1 0 auto}.catalog-heading h1{font-size:1.8rem}.project-card{width:320px;margin-top:1.5rem}}.overview-page{padding-top:2rem}.overview-surface{--accent:#155eef;background:#fff;border:1px solid #d7dde3;border-radius:4px;overflow:hidden;box-shadow:0 22px 52px #18302c1a}.overview-surface>.toolbar{background:#fff;border-bottom:1px solid #d7dde3;justify-content:flex-end;min-height:64px;margin:0;padding:.6rem 1.25rem}.overview-surface>.toolbar .button{border-radius:4px;min-height:42px;padding:.65rem .9rem}.overview-surface>.toolbar .button:not(.secondary){color:#fff;background:#155eef}.overview-surface>.toolbar .button:not(.secondary):hover,.overview-surface>.toolbar .button:not(.secondary):focus-visible{background:#0c46bd}.overview-surface>.toolbar .secondary{color:var(--ink);background:#fff;border-color:#aeb8c2}.overview-surface>.toolbar .secondary:hover,.overview-surface>.toolbar .secondary:focus-visible{color:#155eef;border-color:#155eef}.overview-surface .button:focus-visible,.overview-surface .text-button:focus-visible,.overview-surface .section-nav-button:focus-visible,.overview-surface .section-row input:focus-visible,.overview-surface .source-field textarea:focus-visible,.overview-surface .rich-editor-content:focus-visible{outline-color:#155eef80}.overview-surface>.editor{background:#fff;border:0;border-radius:0;max-width:none;padding:1.5rem 2rem 2rem}.read-layout{max-width:none;padding:0}.read-introduction{padding:1.75rem 2rem}.read-introduction p{max-width:70ch;color:var(--muted);margin:0;font-size:1.05rem;line-height:1.7}.read-layout>section{border-top:1px solid #d7dde3;grid-template-columns:minmax(10rem,.34fr) minmax(0,1fr);gap:clamp(1.5rem,5vw,4.5rem);padding:2rem;display:grid}.read-layout>section>h2{letter-spacing:-.01em;text-wrap:balance;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:1.25rem;line-height:1.3}.markdown-body{min-width:0;max-width:70ch;color:var(--ink);line-height:1.7}.markdown-body>:first-child{margin-top:0}.markdown-body>:last-child{margin-bottom:0}.markdown-body p{color:var(--muted);margin:0 0 1rem}.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{color:var(--ink);text-wrap:balance;margin:0 0 .75rem;font-family:Inter,ui-sans-serif,system-ui,sans-serif;line-height:1.35}.markdown-body h3{font-size:1.12rem}.markdown-body h4{font-size:1rem}.markdown-body h5,.markdown-body h6{font-size:.92rem}.markdown-body ul,.markdown-body ol{margin:.25rem 0 1rem;padding-left:1.4rem}.markdown-body li{color:var(--muted);padding-left:.25rem}.markdown-body li+li{margin-top:.3rem}.markdown-body li>p{margin:0}.markdown-body a{color:#155eef;text-underline-offset:.18em}.markdown-body blockquote{color:var(--muted);border-left:1px solid #aeb8c2;margin:0 0 1rem;padding:.25rem 1rem}.markdown-body code{color:#102a43;background:#eef1f4;border-radius:3px;padding:.1rem .25rem;font:500 .88em/1.5 ui-monospace,SFMono-Regular,monospace}.markdown-body pre{background:#f4f6f8;border:1px solid #d7dde3;border-radius:4px;margin:0 0 1rem;padding:1rem;overflow:auto}.markdown-body pre code{background:0 0;padding:0}.markdown-body img{border-radius:2px;max-width:100%;height:auto;margin:1rem 0;display:block}.markdown-table-wrap{max-width:100%;margin:0 0 1rem;overflow-x:auto}.markdown-body table{border-collapse:collapse;width:100%}.markdown-body th,.markdown-body td{text-align:left;border:1px solid #d7dde3;padding:.65rem .75rem}.markdown-body th{color:var(--ink);background:#f4f6f8;font-size:.9rem}.markdown-body td{color:var(--muted)}.markdown-body hr{border:0;border-top:1px solid #d7dde3;margin:1.5rem 0}.markdown-download{align-items:center;min-height:44px;display:inline-flex}.publication-controls{background:#fff;border:1px solid #c8d0d8;border-radius:4px;width:min(100%,44rem);max-width:none;margin:1.5rem 0 0;padding:1.2rem 1.25rem}.publication-controls h2{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:1.15rem;line-height:1.3}.publication-controls p{margin:.35rem 0 0}.publication-controls .button{border-radius:4px}@media (width<=720px){.overview-page{padding-top:1.25rem}.overview-surface>.toolbar{flex-flow:wrap;justify-content:flex-start;align-items:center}.overview-surface>.toolbar .button{width:auto}.overview-surface>.editor{padding:1.25rem}.read-introduction{padding:1.4rem 1.25rem}.read-layout>section{grid-template-columns:minmax(0,1fr);gap:1rem;padding:1.5rem 1.25rem}.publication-controls{flex-direction:column;align-items:stretch}.publication-actions{width:100%}.publication-actions .button{width:auto}}@media (width<=420px){.overview-surface>.toolbar .button{flex:auto;justify-content:center}.read-introduction,.read-layout>section{padding-left:1rem;padding-right:1rem}}.files-page{--files-accent:#155eef;min-width:0;padding-top:2rem}.files-workspace{background:#fff;border:1px solid #d7dde3;border-radius:4px;min-width:0;overflow:hidden;box-shadow:0 2px 8px #18302c0f}.files-workspace .drive-toolbar{background:#fff;border-bottom:1px solid #d7dde3;justify-content:space-between;align-items:center;gap:1.25rem;min-width:0;padding:.8rem 1.25rem;display:flex}.files-workspace .drive-topline{flex:auto;gap:.2rem;min-width:0;padding:0;display:grid}.files-workspace .drive-title-row{align-items:center;gap:.55rem;min-width:0;display:flex}.files-workspace .drive-title-row h2{letter-spacing:-.015em;flex:none;margin:0;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:1.3rem;line-height:1.25}.files-workspace .drive-state{color:#46596a;white-space:nowrap;background:#f4f6f8;border:1px solid #d7dde3;border-radius:3px;align-items:center;min-height:24px;padding:.15rem .45rem;font-size:.72rem;font-weight:750;line-height:1;display:inline-flex}.files-workspace .drive-state[data-draft]{border-color:var(--files-accent);color:var(--files-accent);background:#fff}.files-workspace .drive-draft-action{min-height:44px;color:var(--files-accent);padding:.45rem;font-size:.82rem}.files-workspace .drive-topline>p{color:#607181;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.78rem;line-height:1.35;overflow:hidden}.files-workspace .file-actions{border:0;flex:0 auto;min-width:0;max-width:100%;padding:0}.files-workspace .file-action-primary{justify-content:flex-end;gap:.15rem}.files-workspace .file-action-primary>.button,.files-workspace .file-action-primary>.text-button{min-height:44px;color:var(--files-accent);background:0 0;border:0;border-radius:4px;padding:.5rem .55rem;font-size:.82rem;line-height:1.15}.files-workspace .file-action-primary>.button:hover,.files-workspace .file-action-primary>.button:focus-visible,.files-workspace .file-action-primary>.text-button:hover,.files-workspace .file-action-primary>.text-button:focus-visible,.files-workspace .drive-draft-action:hover,.files-workspace .drive-draft-action:focus-visible{color:var(--files-accent);background:#f4f6f8}.files-workspace .file-action-primary>.text-button.danger{color:var(--danger)}.files-workspace .file-action-primary>.text-button:disabled{color:#788895;background:0 0}.files-workspace .file-action-icon,.files-workspace .file-path-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.75px;flex:none;width:1.15rem;height:1.15rem}.files-workspace .selection-count{color:#607181;margin:0 .25rem;font-size:.78rem}.files-workspace .inline-file-form,.files-workspace .folder-upload{width:100%;max-width:100%;box-shadow:none;background:#f7f9fa;border:1px solid #d7dde3;border-radius:4px;margin:.5rem 0 0;padding:.8rem}.files-workspace .inline-file-form label{color:#46596a;min-width:0}.files-workspace .inline-file-form input{background:#fff;border-color:#b8c2cc;border-radius:4px;min-width:min(13rem,100%);min-height:44px}.files-workspace .inline-file-form select{min-width:min(16rem,100%);min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #b8c2cc;border-radius:4px;padding:.55rem}.files-workspace .inline-file-form .button,.files-workspace .folder-upload .button,.files-workspace .inline-file-form .text-button,.files-workspace .file-confirmation .button,.files-workspace .file-confirmation .text-button{border-radius:4px;min-height:44px}.files-workspace .inline-file-form .button:not(.secondary),.files-workspace .folder-upload .button:not(.secondary){background:var(--files-accent);color:#fff}.files-workspace .inline-file-form .button:not(.secondary):hover,.files-workspace .inline-file-form .button:not(.secondary):focus-visible,.files-workspace .folder-upload .button:not(.secondary):hover,.files-workspace .folder-upload .button:not(.secondary):focus-visible{background:#0c46bd}.files-workspace .folder-upload{align-items:flex-start}.files-workspace .folder-upload>.inline-file-form{background:0 0;border:0;flex:28rem;margin:0;padding:0}.files-workspace .file-confirmation{border-radius:4px;margin-top:.5rem}.files-workspace .file-confirmation-actions{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.files-workspace .file-confirmation h2{font-family:Inter,ui-sans-serif,system-ui,sans-serif}.files-workspace .file-path-row{border-bottom:1px solid #d7dde3;min-height:56px}.files-workspace .file-breadcrumb{min-height:56px;color:var(--files-accent);border:0;margin:0;padding:.35rem 1.25rem}.files-workspace .file-breadcrumb button{min-height:44px;color:inherit;padding:.35rem .15rem;font-weight:750}.files-workspace .file-breadcrumb button[aria-current=page]{color:var(--files-accent)}.files-workspace .file-path-icon{width:1.25rem;height:1.25rem}.files-workspace .drive-activity{background:#f7f9fa;border-bottom:1px solid #d7dde3;gap:.45rem;padding:.75rem 1.25rem;display:grid}.files-workspace .drive-activity>*{margin:0}.files-workspace .drive-activity .draft-notice{color:#34495a;background:0 0;border-radius:0;padding:0}.files-workspace .drive-activity .pending-actions{padding:0}.files-workspace .drive-content{background:#fff;min-width:0;min-height:310px;margin:0}.files-workspace .file-table-wrap{max-width:100%;overflow-x:hidden}.files-workspace .file-table{table-layout:fixed}.files-workspace .file-table th{color:#526575;background:#f7f9fa;border-bottom:1px solid #d7dde3;height:44px;padding:0 .65rem;font-size:.75rem}.files-workspace .file-table th:first-child,.files-workspace .file-table td:first-child{text-align:center;width:56px;padding:0 .35rem}.files-workspace .file-table th:nth-child(3),.files-workspace .file-table td:nth-child(3){width:7.5rem}.files-workspace .file-table th:nth-child(4),.files-workspace .file-table td:nth-child(4){width:10rem}.files-workspace .file-table td{color:#607181;border-top:0;border-bottom:1px solid #e1e6eb;height:52px;padding:0 .65rem;font-size:.84rem}.files-workspace .file-table tbody tr:last-child td{border-bottom:0}.files-workspace .file-table tbody tr:hover{background:#f7f9fa}.files-workspace .file-table tr[data-selected]{background:#edf3ff}.files-workspace .table-sort{min-height:44px;color:inherit}.files-workspace .file-table input[type=checkbox]{appearance:none;block-size:44px;inline-size:44px;color:var(--files-accent);cursor:pointer;background:0 0;place-content:center;margin:0;display:inline-grid}.files-workspace .file-table input[type=checkbox]:before{content:"";background:#fff;border:1px solid #91a0ad;border-radius:2px;width:16px;height:16px}.files-workspace .file-table input[type=checkbox]:checked:before{border-color:var(--files-accent);background:var(--files-accent);box-shadow:inset 0 0 0 3px #fff}.files-workspace .file-name{gap:.65rem;min-width:0;height:52px}.files-workspace .file-type{width:1.4rem;color:var(--files-accent);flex:0 0 1.4rem}.files-workspace .file-type svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6px;width:1.3rem;height:1.3rem}.files-workspace .file-open{color:#172b3a;text-align:left;text-overflow:ellipsis;white-space:nowrap;min-width:0;min-height:44px;overflow:hidden}.files-workspace .file-open:hover{color:var(--files-accent)}.files-workspace .file-path-row{align-items:center;gap:1rem;display:flex}.files-workspace .file-path-row .file-breadcrumb{flex:1;min-width:0}.files-workspace .file-path-actions,.files-workspace .file-selection-actions{align-items:center;gap:.55rem;display:flex}.files-workspace .file-path-actions{margin-right:.75rem}.files-workspace .file-selection-actions{min-height:44px}.files-workspace .file-icon-button{color:#155eef;cursor:pointer;background:#fff;border:1px solid #b7c2cb;border-radius:50%;flex:0 0 44px;place-items:center;width:44px;height:44px;padding:0;display:inline-grid}.files-workspace .file-icon-button:hover:not(:disabled){background:#f2f6ff;border-color:#155eef}.files-workspace .file-icon-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.files-workspace .file-icon-button.is-danger{color:#9d3125}.files-workspace .file-icon-button:disabled{opacity:.5;cursor:not-allowed}.files-workspace .file-icon-button:focus-visible{outline-offset:2px;outline:3px solid #155eef66}.event-toast{z-index:2000;color:#fff;text-align:center;background:#183d2c;border:1px solid #315c49;border-radius:999px;width:max-content;max-width:min(38rem,100vw - 2rem);margin:0;padding:.85rem 1.1rem;font-size:.95rem;font-weight:650;line-height:1.4;position:fixed;bottom:1.25rem;left:50%;right:1rem;transform:translate(-50%);box-shadow:0 8px 28px #102a4340}.event-toast[data-tone=error]{background:#76251f;border-color:#8d3028}.files-workspace dialog.file-dialog{box-sizing:border-box;color:#172b3a;background:#fff;border:1px solid #b7c2cb;border-radius:8px;width:min(440px,100vw - 32px);padding:24px;box-shadow:0 18px 60px #102a4333}.files-workspace dialog.file-dialog::backdrop{background:#102a4366}.files-workspace .file-dialog h2{margin:0;font-size:1.35rem}.files-workspace .file-dialog p{color:#587080;overflow-wrap:anywhere;margin:.5rem 0 1.25rem}.files-workspace .file-dialog .file-dialog-error{color:#9d3125;margin:.8rem 0 0;font-weight:700}.files-workspace .file-dialog label{gap:.4rem;font-weight:700;display:grid}.files-workspace .file-dialog input{min-height:44px;font:inherit;border:1px solid #aeb8c2;border-radius:4px;padding:.6rem .7rem}.files-workspace .file-dialog select{min-width:min(18rem,100%);min-height:44px;color:inherit;font:inherit;background:#fff;border:1px solid #aeb8c2;border-radius:4px;padding:.6rem .7rem}.files-workspace .file-dialog-actions{justify-content:flex-end;gap:.65rem;margin-top:1.25rem;display:flex}.files-workspace .file-dialog-actions .button{width:auto}.files-workspace .file-table th:last-child,.files-workspace .file-table td:last-child{text-align:right}.files-workspace .file-row-actions{white-space:nowrap;text-align:right;opacity:0;visibility:hidden;pointer-events:none;width:14rem;transition:opacity .12s}.files-workspace .file-row-actions .file-icon-button{flex-basis:36px;width:36px;height:36px;margin-left:4px}.files-workspace .file-row-actions .file-icon-button svg{width:18px;height:18px}.files-workspace .file-table tbody tr:hover .file-row-actions,.files-workspace .file-table tbody tr:focus-within .file-row-actions{opacity:1;visibility:visible;pointer-events:auto}.files-workspace .file-table[data-multi-selection=true] tbody tr .file-row-actions{opacity:0;visibility:hidden;pointer-events:none}@media (hover:none){.files-workspace .file-row-actions{opacity:1;visibility:visible;pointer-events:auto}}.files-workspace .file-kind{color:#6b7c89;flex:none}.files-workspace .empty-drive{align-content:center;gap:.6rem;min-height:310px;padding:3.5rem 1rem 4.25rem}.files-workspace .empty-drive-mark{color:#101112;background:#e9edf0;border:0;border-radius:50%;place-items:center;width:78px;height:78px;margin-bottom:.2rem;display:grid}.files-workspace .empty-drive-mark svg{fill:none;stroke:currentColor;stroke-linecap:square;stroke-linejoin:round;stroke-width:3.5px;width:56px;height:56px;overflow:visible}.files-workspace .empty-drive h2{letter-spacing:-.01em;margin:0;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:1rem;line-height:1.35}.files-workspace .empty-drive p{color:#46596a;max-width:56ch;font-size:.88rem}.files-workspace .button:focus-visible,.files-workspace .text-button:focus-visible,.files-workspace .file-open:focus-visible,.files-workspace .file-breadcrumb button:focus-visible,.files-workspace .table-sort:focus-visible,.files-workspace .file-actions input:focus-visible,.files-workspace .inline-file-form select:focus-visible{outline-offset:2px;outline:3px solid #155eef80}@media (width<=800px){.files-workspace .drive-toolbar{flex-wrap:wrap;align-items:flex-start;gap:.35rem}.files-workspace .drive-topline,.files-workspace .file-actions{flex:100%}.files-workspace .file-action-primary{justify-content:flex-start}}@media (width<=640px){.files-page{padding-top:1.25rem}.files-workspace .drive-toolbar,.files-workspace .drive-activity{padding-left:1rem;padding-right:1rem}.files-workspace .drive-title-row{flex-wrap:wrap}.files-workspace .drive-topline>p{white-space:normal}.files-workspace .file-action-primary{align-items:center}.files-workspace .file-action-primary>.button,.files-workspace .file-action-primary>.text-button{flex:0 auto;justify-content:center;width:auto}.files-workspace .inline-file-form,.files-workspace .folder-upload{align-items:stretch}.files-workspace .inline-file-form input,.files-workspace .file-picker-label input{width:100%;min-width:0;max-width:100%}.files-workspace .file-breadcrumb{padding-left:1rem;padding-right:1rem}.files-workspace .file-table th:first-child,.files-workspace .file-table td:first-child{width:52px}.files-workspace .file-table th:nth-child(4),.files-workspace .file-table td:nth-child(4){width:7.25rem}.files-workspace .empty-drive,.files-workspace .drive-content{min-height:280px}}.project-card-actions{flex-wrap:wrap;gap:.55rem;display:flex}.project-card-actions .button{flex:9rem;width:auto}.editor-page{padding:2rem 0 0}.editor-heading{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1.25rem;display:flex}.editor-heading h2{letter-spacing:-.02em;margin:.25rem 0 .5rem;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:1.7rem;line-height:1.15}.editor-lede{max-width:60ch;color:var(--muted);margin:0;line-height:1.55}.readme-editor{background:#fff;border:1px solid #d7dde3;border-radius:4px;gap:.75rem;max-width:72rem;padding:1.25rem;display:grid;box-shadow:0 2px 8px #18302c0f}.readme-editor>label{color:var(--ink);font-weight:800}.project-title-editor{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.project-title-prefix{color:var(--muted);font-weight:700}.project-title-editor input{min-width:min(32rem,100%);color:var(--ink);font:inherit;border:1px solid #aeb8c2;border-radius:4px;flex:18rem;padding:.65rem .75rem}.project-title-editor input:focus-visible{outline-offset:2px;border-color:#155eef;outline:3px solid #155eef80}.readme-editor textarea{resize:vertical;width:100%;min-height:28rem;color:var(--ink);background:#fbfcfd;border:1px solid #aeb8c2;border-radius:4px;padding:1rem;font:.92rem/1.6 ui-monospace,SFMono-Regular,Consolas,monospace}.readme-editor textarea:focus-visible{outline-offset:2px;border-color:#155eef;outline:3px solid #155eef80}.editor-footer{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.editor-footer p{color:var(--muted);margin:0;font-size:.82rem;line-height:1.4}.editor-footer p:first-child{flex:30rem}.editor-footer button{margin-left:auto}.editor-error,.editor-status{border:1px solid #d7dde3;border-radius:4px;margin:0;padding:.7rem .8rem;font-weight:700;line-height:1.45}.editor-error,.editor-status-conflict,.editor-status-failure{color:#8a2c1c;background:#fff5f2;border-color:#c9958a}.editor-status-success{color:#145c3c;background:#f1faf5;border-color:#91b6a5}.readme-editor button:disabled{cursor:not-allowed;color:#fff;background:#80918a}@media (width<=640px){.editor-page{padding-top:1.25rem}.editor-heading{flex-direction:column;align-items:stretch}.editor-heading .button{align-self:flex-start;width:auto}.readme-editor{padding:1rem}.readme-editor textarea{min-height:22rem}.editor-footer{flex-direction:column;align-items:stretch}.editor-footer button{width:100%;margin-left:0}}:root{--ink:#242424;--muted:#686868;--paper:#fff;--line:#d8d8d8;--accent:#155eef}body{color:var(--ink);background:#f7f7f7}.global-bar-content,.project-breadcrumb-strip>nav,.project-breadcrumb,.project-shell,.catalog-shell{width:calc(100% - 3rem);max-width:86rem;margin-inline:auto}.project-breadcrumb-strip{width:100%;max-width:none;margin-inline:0}.project-heading .eyebrow{display:none}.project-shell h1{white-space:nowrap;max-width:none}.files-workspace{box-shadow:none;border-inline:0}@media (width<=64rem){.project-shell h1{white-space:normal}}@media (width<=40rem){.global-bar-content,.project-breadcrumb-strip>nav,.project-breadcrumb,.project-shell,.catalog-shell{width:calc(100% - 2rem)}}.catalog-projects{grid-template-columns:repeat(auto-fit,minmax(280px,320px));gap:1.5rem;margin-top:2rem;display:grid}.catalog-projects .project-card{width:auto;margin:0}@media (width<=640px){.catalog-projects{grid-template-columns:minmax(0,1fr);gap:1rem;margin-top:1.5rem}}.global-bar{height:auto;min-height:34px}.global-bar-content{height:auto;min-height:34px;padding-block:.25rem}.global-bar .auth-controls{grid-template-columns:minmax(0,18rem) auto;max-width:100%}.global-bar .auth-controls strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:18rem;overflow:hidden}@media (width<=640px){.global-bar-content{flex-wrap:wrap;align-items:flex-start;row-gap:.25rem}.global-bar .auth-controls{flex:100%;grid-template-columns:minmax(0,1fr) auto;width:100%}.global-bar .auth-controls .auth-error{grid-column:1/-1;max-width:none}.global-bar .auth-controls .button,.global-bar .auth-controls .text-button{grid-area:1/2}}.project-card-illustration{background:#eaf0f4}.project-card-illustration svg rect{fill:#eaf0f4;stroke:none}.catalog-shell{padding-top:1rem}.catalog-content{width:100%}.catalog-search{margin:0 0 1rem;display:block}.catalog-search input{color:#242424;width:100%;height:clamp(3.5rem,4vw,4.5rem);font:inherit;background:#fff;border:1px solid #c8c8c8;border-radius:.3rem;padding:0 1rem;font-size:clamp(1.1rem,1.6vw,1.45rem);display:block}.catalog-search input::placeholder{color:#777;opacity:1}.catalog-search input:focus-visible{outline-offset:2px;border-color:#155eef;outline:3px solid #155eef80}.catalog-controls{flex-wrap:wrap;align-items:center;gap:1rem;margin:0 0 2rem;display:flex}.catalog-controls label{color:#5f5f5f;align-items:center;gap:.5rem;font-size:.9rem;font-weight:700;display:flex}.catalog-controls select{color:#242424;min-width:11rem;min-height:2.65rem;font:inherit;background:#fff;border:1px solid #c8c8c8;border-radius:.25rem;padding:.4rem .7rem;font-weight:400}.catalog-controls select:focus-visible{outline-offset:2px;outline:3px solid #155eef80}.catalog-project-group+.catalog-project-group{margin-top:2.5rem}.catalog-project-group>h2{color:#242424;margin:0 0 1rem;font:700 1.4rem/1.3 Inter,ui-sans-serif,system-ui,sans-serif}.catalog-projects{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin:0}.catalog-projects .project-card{align-items:stretch;justify-content:initial;background:#fff;border:1px solid #d8d8d8;border-radius:0;flex-direction:column;gap:0;width:auto;min-width:0;min-height:0;margin:0;padding:0;display:flex}.project-card-illustration{aspect-ratio:4/3;background:#fff;place-items:center;width:100%;height:auto;display:grid}.project-card-illustration svg rect{fill:#fff}.project-card-illustration svg{fill:none;stroke:#292929;stroke-width:1.45px;width:100%;height:100%;display:block}.project-card-illustration svg path:nth-of-type(2),.project-card-illustration svg path:nth-of-type(3){stroke:#bdbdbd}.project-card-visibility{color:#fff;background:#050505;justify-content:center;align-items:center;gap:.55rem;min-height:2.65rem;font-size:1rem;display:flex}.project-card-visibility[data-visibility=public]{background:#183bff}.project-card-visibility svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.25rem;height:1.25rem}.project-card-content{flex:1;min-height:12rem;padding:1.2rem 1rem 1rem}.project-card-content h2{color:#111;overflow-wrap:anywhere;margin:0 0 .7rem;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:clamp(1.25rem,1.7vw,1.65rem);font-weight:800;line-height:1.25}.project-card-content .project-card-creator{color:#222;max-width:none;margin:0 0 .35rem;font-size:1rem;line-height:1.4}.project-card-creator a{color:#155eef;text-decoration:none}.project-card-creator a:hover{text-decoration:underline}.project-card-content .project-card-description{color:#222;-webkit-line-clamp:4;-webkit-box-orient:vertical;max-width:none;margin:0;font-size:1rem;line-height:1.5;display:-webkit-box;overflow:hidden}.project-card-tags{flex-wrap:wrap;gap:.4rem;margin:.85rem 0 0;padding:0;list-style:none;display:flex}.project-card-tags li{color:#555;border:1px solid #d8d8d8;border-radius:999px;padding:.2rem .5rem;font-size:.75rem;line-height:1.3}.project-card-footer{border-top:1px solid #d8d8d8;grid-template-columns:1fr 1fr 4rem;min-height:4.5rem;display:grid}.project-card-stat,.project-card-open{color:#969696;justify-content:center;align-items:center;gap:.55rem;font-size:1rem;display:flex}.project-card-stat+.project-card-stat,.project-card-open{border-left:1px solid #d8d8d8}.project-card-stat svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.25rem;height:1.25rem}.project-card-open{color:#111;font-size:2rem;text-decoration:none}.project-card-open:hover,.project-card-open:focus-visible{color:#155eef;background:#f5f7ff}.catalog-empty{color:#686868;padding:2rem 0}@media (width<=900px){.catalog-projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}}@media (width<=640px){.catalog-shell{padding-top:.5rem}.catalog-search{margin-bottom:1.5rem}.catalog-projects{grid-template-columns:minmax(0,1fr);gap:1rem}.project-card-content{min-height:10rem}}.global-bar .auth-controls{text-align:right;justify-items:end}.project-card-illustration{background:#f1f3f1;overflow:hidden}.project-card-illustration svg{stroke:#263b3a}.project-card-illustration .thumbnail-background{fill:#f1f3f1;stroke:none}.project-card-illustration .thumbnail-grid{stroke:#d4dcda;stroke-width:.7px}.project-card-illustration .thumbnail-object{fill:#dce8e4;stroke:#263b3a;stroke-width:2px}.project-card-illustration .thumbnail-accent{stroke:#155eef;stroke-width:3px}.project-card-illustration .thumbnail-node{fill:#155eef;stroke:none}.project-card-status-badge{color:#fff;background:#155eef;justify-content:center;align-items:center;gap:.55rem;min-height:2.65rem;font-size:1rem;display:flex}.project-card-status-badge[data-status=finished],.project-card-status-badge[data-status=unknown]{background:#050505}.project-card-content{flex-direction:column;display:flex}.project-card-content h2{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.5em;max-height:2.5em;display:-webkit-box;overflow:hidden}.project-card-content .project-card-creator{text-overflow:ellipsis;white-space:nowrap;margin-bottom:.35rem;overflow:hidden}.project-card-summary{min-height:7rem;max-height:7rem;overflow:hidden}.project-card-content .project-card-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.5;display:-webkit-box;overflow:hidden}.project-card-tags{flex-wrap:wrap;gap:.3rem;max-height:3.3rem;margin:.35rem 0 0;display:flex;overflow:hidden}.project-card-tags li{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.catalog-skeleton-search,.catalog-skeleton-controls span,.catalog-skeleton-thumbnail,.catalog-skeleton-badge,.catalog-skeleton-content span,.catalog-skeleton-tags i,.catalog-skeleton-footer span{background:linear-gradient(100deg,#ecefed 20%,#f6f7f6 38%,#ecefed 56%) 0 0/220% 100%;animation:1.6s ease-in-out infinite catalog-skeleton-shimmer}.catalog-skeleton-search{border:1px solid #e1e4e2;border-radius:.3rem;height:clamp(3.5rem,4vw,4.5rem);margin-bottom:1.5rem}.catalog-skeleton-controls{justify-content:flex-end;gap:1rem;margin-bottom:2rem;display:flex}.catalog-skeleton-controls span{border-radius:.25rem;width:11rem;height:2.4rem}.catalog-skeleton-projects{display:grid}.catalog-skeleton-card{overflow:hidden}.catalog-skeleton-thumbnail{aspect-ratio:4/3;width:100%}.catalog-skeleton-badge{border-radius:0;min-height:2.65rem}.catalog-skeleton-content{flex-direction:column;gap:.7rem;min-height:12rem;padding:1.2rem 1rem 1rem;display:flex}.catalog-skeleton-content span{border-radius:.2rem;height:.8rem;display:block}.catalog-skeleton-title{width:78%;margin-bottom:.15rem;height:1.8rem!important}.catalog-skeleton-creator{width:54%}.catalog-skeleton-description{width:100%}.catalog-skeleton-description-short{width:68%}.catalog-skeleton-tags{gap:.35rem;margin-top:.1rem;display:flex}.catalog-skeleton-tags i{border-radius:999px;width:4.2rem;height:1.4rem}.catalog-skeleton-tags i+i{width:3.5rem}.catalog-skeleton-footer{border-top:1px solid #e1e4e2;grid-template-columns:1fr 1fr 4rem;min-height:4.5rem;display:grid}.catalog-skeleton-footer span+span{border-left:1px solid #e1e4e2}@keyframes catalog-skeleton-shimmer{to{background-position-x:-220%}}@media (prefers-reduced-motion:reduce){.catalog-skeleton-search,.catalog-skeleton-controls span,.catalog-skeleton-thumbnail,.catalog-skeleton-badge,.catalog-skeleton-content span,.catalog-skeleton-tags i,.catalog-skeleton-footer span{animation:none}}@media (width<=640px){.catalog-skeleton-controls{flex-wrap:wrap;justify-content:stretch}.catalog-skeleton-controls span{flex:10rem}.catalog-skeleton-content{min-height:10rem}}.file-list-loading{min-height:310px}.file-list-loading .file-table th:nth-child(3),.file-list-loading .file-table td:nth-child(3){width:7.5rem}.file-list-loading .file-table th:nth-child(4),.file-list-loading .file-table td:nth-child(4){width:10rem}.file-list-loading .file-table td{height:52px}.file-skeleton-checkbox,.file-skeleton-icon,.file-skeleton-name,.file-skeleton-meta,.file-skeleton-heading{background:linear-gradient(100deg,#ecefed 20%,#f6f7f6 38%,#ecefed 56%) 0 0/220% 100%;animation:1.6s ease-in-out infinite catalog-skeleton-shimmer;display:block}.file-skeleton-heading{border-radius:2px;width:4rem;height:.65rem}.file-skeleton-heading.is-short{width:2.5rem}.file-skeleton-heading.is-medium{width:3.25rem}.file-skeleton-checkbox{border:1px solid #d5dbd8;border-radius:2px;width:16px;height:16px;margin:auto}.file-skeleton-icon{border-radius:50%;flex:0 0 1.3rem;width:1.3rem;height:1.3rem}.file-skeleton-name{border-radius:2px;width:min(14rem,72%);height:.8rem}.file-skeleton-name.is-short{width:min(9rem,54%)}.file-skeleton-meta{border-radius:2px;width:3.5rem;height:.7rem}.file-skeleton-meta.is-date{width:6rem}@media (prefers-reduced-motion:reduce){.file-skeleton-checkbox,.file-skeleton-icon,.file-skeleton-name,.file-skeleton-meta,.file-skeleton-heading{animation:none}}.draft-project-loading .published-skeleton,.draft-project-loading .drive-title-placeholder,.draft-project-loading .drive-description-placeholder,.draft-project-loading .drive-state-placeholder,.draft-project-loading .file-path-placeholder,.draft-project-loading .file-action-placeholder{background:linear-gradient(100deg,#ecefed 20%,#f6f7f6 38%,#ecefed 56%) 0 0/220% 100%;border-radius:3px;animation:1.6s ease-in-out infinite catalog-skeleton-shimmer;display:block}.draft-project-loading-shell .project-heading{min-height:0;padding:2rem 0}.draft-project-loading-shell .draft-project-eyebrow{width:7rem;height:.7rem}.draft-project-loading-shell .published-title-placeholder{width:min(62%,40rem);height:3.5rem;margin:.6rem 0}.draft-project-loading-shell .project-tabs{padding-top:.5rem}.draft-project-loading-shell .published-tab-placeholder{width:6.5rem;height:1.5rem}.draft-project-loading .drive-title-placeholder{width:15rem;height:1.6rem}.draft-project-loading .drive-state-placeholder{border-radius:999px;width:4rem;height:1.4rem}.draft-project-loading .drive-description-placeholder{width:19rem;max-width:90%;height:.8rem}.draft-project-loading .file-path-row{min-height:3.5rem}.draft-project-loading .file-path-placeholder{width:12rem;height:.9rem}.draft-project-loading .file-path-actions{gap:.5rem}.draft-project-loading .file-action-placeholder{border-radius:50%;width:2.5rem;height:2.5rem}@media (prefers-reduced-motion:reduce){.draft-project-loading .published-skeleton,.draft-project-loading .drive-title-placeholder,.draft-project-loading .drive-description-placeholder,.draft-project-loading .drive-state-placeholder,.draft-project-loading .file-path-placeholder,.draft-project-loading .file-action-placeholder{animation:none}}
