.modal[data-modal-state]{transform-origin:center;opacity:0;transform:translateY(10px) scale(.97);transition:opacity min(var(--modal-motion-duration, .42s),.2s) ease,transform var(--modal-motion-duration, .42s) cubic-bezier(.3,1.25,.5,1)}.modal[data-modal-state=open]{opacity:1;transform:translateY(0) scale(1)}.modal[data-modal-state=closed]{transition-timing-function:ease-in;transition-duration:min(var(--modal-motion-duration, .18s),.16s),var(--modal-motion-duration, .18s)}@media(max-width:700px){.modal[data-modal-state]{transform:translateY(48px);transform-origin:center bottom}.modal[data-modal-state=open]{transform:translateY(0)}}.modal[data-modal-state]::backdrop{opacity:0;transition:opacity .22s ease}.modal[data-modal-state=open]::backdrop{opacity:1}html[data-admin-input=keyboard] .modal[data-modal-state],html[data-admin-input=keyboard] .modal[data-modal-state]::backdrop{transition-duration:0ms}@media(prefers-reduced-motion:reduce){.modal[data-modal-state]{transform:none;transition-property:opacity}.modal[data-modal-state],.modal[data-modal-state]::backdrop{transition-duration:var(--modal-motion-duration, .1s)!important}}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:100 700;font-display:swap;src:url(/fonts/plex-latin-5.3.0/regular.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light dark;--surface: light-dark(#fff, #1c1c1c);font-family:IBM Plex Sans,IBM Plex Sans SC,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;color:light-dark(#2c2e30,#ededed);background:light-dark(#e5e6e7,#000);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--canvas: light-dark(#e5e6e7, #000);--ink: light-dark(#2c2e30, #ededed);--muted: light-dark(#727577, #ababab);--line: light-dark(#d3d5d6, #3b3b3b);--accent: light-dark(#13304a, #e9dcc8);--accent-dark: light-dark(#8d492f, #dfab91);--radius: 6px;--shadow: 0 2px 3px #23272b08, 0 8px 14px #23272b0b;--card-shadow: 0 1px 2px #23272b1a, 0 5px 10px #23272b14, 0 16px 28px #23272b14;font-size:16px;font-variant-numeric:tabular-nums}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{color:inherit;cursor:pointer}button{border:0;background:none}button:disabled{cursor:default;opacity:.45}a{color:inherit;text-decoration:none}input,textarea{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:var(--radius);padding:12px 14px;outline:none;transition:border-color .18s,box-shadow .18s}input:focus,textarea:focus{border-color:light-dark(#9b715e,#dfab91);box-shadow:0 0 0 3px light-dark(rgb(19 48 74 / 12%),rgb(233 220 200 / 14%))}input::placeholder,textarea::placeholder{color:light-dark(#919497,#ababab)}textarea{line-height:1.8;resize:vertical}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}h1,h2,p{margin:0}h1,h2{font-weight:560}button,a{transition:background-color .18s,color .18s,opacity .18s,border-color .18s}svg{flex-shrink:0}.muted{color:var(--muted)}.eyebrow{font-size:12px;letter-spacing:.07em;font-weight:550;color:var(--muted);display:flex;align-items:center;gap:8px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 16px;font-size:14px;font-weight:550;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);white-space:nowrap}.button:hover{background:light-dark(#f4f4f3,#242424);border-color:light-dark(#bfc1c2,#3b3b3b)}.button.primary{background:var(--accent);color:light-dark(#fff,#201611);border-color:var(--accent)}.button.subtle{border-color:transparent;background:transparent}.button.subtle:hover{background:light-dark(#f0f1f1,#242424)}.button.wide{width:100%}.icon-button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);color:light-dark(#666a6c,#ababab)}.icon-button:hover{background:light-dark(#e4e5e5,#292929);color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:light-dark(#606568,#ababab);padding:4px 0}.brand{display:inline-flex;align-items:center;gap:10px;font-size:25px;font-weight:650;letter-spacing:-.9px;line-height:1}.brand-period{color:var(--accent)}.brand-mark{--mark-front: var(--ink);--mark-back: light-dark(#9b9e9f, #3b3b3b);--mark-accent: var(--accent);display:block;flex:none;width:26px;height:26px;color:var(--mark-front);border:0 solid var(--mark-back);outline:0 solid var(--mark-accent);transition:color 1ms,border-color 1ms,outline-color 1ms}.site-header{height:104px;padding:0 48px;display:flex;align-items:center;justify-content:space-between}.site-footer{padding:28px 48px;display:flex;align-items:center;justify-content:space-between;color:light-dark(#787d80,#ababab);font-size:12px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0);white-space:nowrap}.page-loading{min-height:100vh;min-height:100dvh;display:grid;place-items:center}.empty-page{min-height:100svh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:32px;padding:32px;text-align:center}.empty-page h1{font-size:32px}.label{display:block;font-size:14px;font-weight:550;margin:24px 0 8px}.form-error{font-size:14px;background:light-dark(#f4ebe7,#292929);padding:12px 14px;border-radius:var(--radius);color:light-dark(#644738,#dfab91);line-height:1.6;white-space:pre-line}.form-error strong{margin-right:5px}.form-error{margin-top:16px}.viewer-page{min-height:100svh;background:var(--canvas)}.share-unlock-center{flex:1;display:grid;place-items:center;padding:32px 24px 80px}.login-form.share-unlock-form{width:min(100%,360px);min-width:0}.share-unlock-icon{margin-bottom:20px;color:var(--muted)}.viewer-rest{min-height:100svh;display:flex;flex-direction:column}.viewer-rest.after-opening-note>:is(.site-header,.viewer-state){animation:note-content-appear .6s ease-out}.share-note-help{margin:8px 0 0;font-size:12px;line-height:1.6}@keyframes note-content-appear{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.viewer-rest.after-opening-note>:is(.site-header,.viewer-state){animation:none}}.collection-heading{text-align:center;margin:38px 24px 0}.collection-heading .eyebrow{justify-content:center;font-size:12px;margin-bottom:16px}.collection-heading h1{font-size:32px;line-height:1.4;letter-spacing:-.5px}.collection-heading p{font-size:14px;color:var(--muted);line-height:1.8;margin-top:12px;white-space:pre-wrap}.gallery-grid{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:56px;padding:64px 48px 84px;flex:1;align-content:center;max-width:1360px;width:100%;margin:auto}.gallery-item{width:var(--card-width);max-width:100%;transition:opacity .45s}.gallery-item-0{margin-top:24px}.gallery-item-1{margin-top:-24px}.gallery-item-2{margin-top:56px}.single-item .gallery-item{margin-top:0}.preview-card{display:block;position:relative;padding:0;width:var(--card-width);height:var(--card-height);max-width:100%;background:var(--surface);border-radius:var(--radius);overflow:hidden;box-shadow:var(--card-shadow);border:1px solid #34383d0b;transition:box-shadow .3s,transform .3s;isolation:isolate}.preview-card:hover{transform:scale(1.025)}.preview-card.is-source{visibility:hidden;transform:none}.preview-card img{width:100%;height:100%;object-fit:cover;display:block}.paper-mini{width:640px;transform:scale(var(--paper-scale, .3));transform-origin:top left;text-align:left;pointer-events:none}.paper-content{width:100%;min-height:860px;padding:58px 52px;background:var(--surface);text-align:left}.paper-kicker{font-size:12px;font-weight:600;color:var(--accent);letter-spacing:.09em;display:block;margin-bottom:28px}.paper-content h1{font-size:40px;line-height:1.35;white-space:pre-wrap;letter-spacing:-.6px;font-weight:600;margin-bottom:32px;overflow-wrap:anywhere}.prose{font-size:17px;line-height:1.95;white-space:pre-wrap;overflow-wrap:anywhere}.paper-end{color:var(--accent);margin-top:42px;font-size:24px}.card-label{display:flex;justify-content:space-between;gap:16px;margin-top:16px;font-size:12px;color:light-dark(#727779,#ababab);opacity:.85}.card-label span:first-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.card-label span:last-child{flex-shrink:0;color:light-dark(#838789,#ababab)}.file-thumbnail{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;height:100%;padding:24px;color:light-dark(#878b8d,#ababab)}.file-thumbnail span{font-size:16px;line-height:1.6;color:var(--ink);overflow-wrap:anywhere}.file-thumbnail small{font-size:12px}.viewer-footer{margin-top:auto}.viewer-instruction{display:flex;align-items:center;gap:8px}.viewer-loading,.viewer-error{margin:auto;display:flex;flex-direction:column;align-items:center;gap:16px;padding:64px;color:var(--muted);text-align:center}.viewer-error{flex:0}.viewer-loading{flex:1;justify-content:center}.has-focus .viewer-rest{pointer-events:none}.has-focus .viewer-rest .site-header,.has-focus .collection-heading,.has-focus .card-label,.has-focus .viewer-footer{opacity:0;transition:opacity .3s}.focus-layer{position:fixed;inset:0;z-index:50;outline:0;isolation:isolate}.focus-wash{position:absolute;inset:0;background:var(--surface);pointer-events:none;opacity:0}.focus-surface{position:absolute;inset:0;transform-origin:center;background:transparent;overflow:hidden;will-change:transform,clip-path;box-shadow:0 1px 2px #282c3006,0 5px 10px #282c3009;z-index:1}.focus-content{position:absolute;transform-origin:top left;will-change:transform;overflow:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:light-dark(#d3d5d6,#3b3b3b) transparent}.focus-scroll{width:100%;overflow:hidden;background:var(--surface);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:light-dark(#d3d5d6,#3b3b3b) transparent}.focus-paper{width:min(640px,calc(100% - 96px));height:calc(100% - 132px);top:72px;left:50%;margin-left:max(-320px,calc(-50% + 48px))}.focus-paper .paper-content{padding:58px 52px;min-height:100%}.focus-media{inset:90px 100px 70px;display:flex;align-items:center;justify-content:center}.full-image,.focus-media video{max-width:100%;max-height:100%;object-fit:contain;display:block;border-radius:var(--radius)}.focus-media video{width:100%;height:100%}.focus-toolbar{position:absolute;left:32px;right:32px;top:22px;display:flex;align-items:center;justify-content:space-between;gap:24px;z-index:3}.focus-toolbar>span{font-size:14px;color:light-dark(#7b8083,#ababab);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.focus-toolbar>div{display:flex;gap:8px}.focus-toolbar .button{font-size:14px}.focus-caption{position:absolute;bottom:20px;left:48px;right:48px;display:flex;justify-content:space-between;gap:16px;font-size:12px;color:light-dark(#909497,#ababab)}.focus-toolbar,.focus-caption{opacity:0;transition:opacity .35s;pointer-events:none}.is-ready .focus-toolbar,.is-ready .focus-caption{opacity:1;pointer-events:auto}.focus-edge-close{position:absolute;inset:0;z-index:0;cursor:zoom-out}.focus-surface{pointer-events:auto}.document-first-page{width:100%;height:auto;display:block}.document-loading,.document-download{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;min-height:65vh;text-align:center;color:var(--muted);padding:32px}.document-download h1{font-size:28px;color:var(--ink);overflow-wrap:anywhere}.document-download p{font-size:16px;line-height:1.8}.document-download .muted{font-size:14px}.pdf-document{width:100%}.pdf-page{width:100%;min-height:200px;margin-bottom:24px;background:var(--surface)}.pdf-page canvas{display:block;width:100%;height:auto;min-height:200px}.reading-text{padding:32px}.reading-text h1{font-size:32px;margin:24px 0 32px}.media-error{position:absolute;bottom:0;background:var(--surface);padding:16px;font-size:14px}.admin-page{--canvas: light-dark(#f3f4f4, #000);background:var(--canvas);min-height:100svh}.sidebar{position:fixed;inset:0 auto 0 0;width:228px;padding:36px 24px;display:flex;flex-direction:column;border-right:1px solid light-dark(#dfe1e2,#3b3b3b);z-index:10;background:var(--canvas)}.sidebar .brand{margin-left:8px}.sidebar-label{font-size:12px;color:light-dark(#8b8f91,#ababab);margin:58px 12px 16px}.sidebar nav{display:flex;flex-direction:column;gap:8px}.sidebar nav button{display:flex;align-items:center;gap:12px;padding:12px;font-size:14px;border-radius:var(--radius);text-align:left;color:light-dark(#717678,#ababab)}.sidebar nav button span{margin-left:auto;color:light-dark(#929697,#ababab);font-size:12px}.sidebar nav button.active{background:light-dark(#e4e6e6,#292929);color:light-dark(#292d2f,#ededed);font-weight:550}.sidebar nav button:hover{background:light-dark(#e9ebeb,#292929)}.sidebar nav button.active svg{color:var(--accent)}.sidebar-preview{margin:28px 12px;display:flex;align-items:center;gap:8px;color:light-dark(#808587,#ababab);font-size:12px}.sidebar-bottom{margin-top:auto;padding:0 8px}.storage-heading{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:light-dark(#6f7577,#ababab)}.sidebar progress{display:block;width:100%;height:3px;margin:14px 0 10px;appearance:none;border:0;background:light-dark(#dfe1e2,#292929);border-radius:0}.sidebar progress::-webkit-progress-bar{background:light-dark(#dfe1e2,#292929)}.sidebar progress::-webkit-progress-value{background:var(--accent)}.sidebar progress::-moz-progress-bar{background:var(--accent)}.sidebar-bottom p{color:light-dark(#939799,#ababab);font-size:12px;line-height:1.7}.logout{display:flex;align-items:center;gap:10px;font-size:14px;color:light-dark(#7b8083,#ababab);margin-top:36px;padding:8px 0}.admin-main{margin-left:228px}.admin-topbar{height:88px;border-bottom:1px solid light-dark(#e0e2e3,#3b3b3b);display:flex;align-items:center;justify-content:space-between;padding:0 48px;font-size:12px;color:light-dark(#83888a,#ababab)}.admin-topbar a{display:flex;align-items:center;gap:8px}.admin-content{padding:48px;max-width:1540px;margin:auto}.admin-title-row{display:flex;justify-content:space-between;gap:32px;align-items:center}.admin-title-row h1{font-size:32px;letter-spacing:-.7px;margin:12px 0;line-height:1.4}.admin-title-row p{font-size:14px;color:light-dark(#7a8082,#ababab);line-height:1.8}.header-actions{display:flex;gap:8px;flex-shrink:0}.library-toolbar{display:flex;justify-content:space-between;gap:24px;align-items:center;margin:48px 0 24px}.filter-tabs{display:flex;gap:8px;align-items:center}.filter-tabs button{font-size:14px;padding:8px 12px;border-radius:var(--radius);color:light-dark(#7a8082,#ababab);white-space:nowrap}.filter-tabs button:first-child{padding-left:0}.filter-tabs button.active{color:var(--ink);font-weight:600}.filter-tabs button span{margin-left:8px;font-size:12px;background:light-dark(#e3e5e5,#292929);border-radius:4px;padding:2px 6px;font-weight:500;color:light-dark(#73787a,#ababab)}.filter-tabs button:hover{color:var(--ink)}.search-box{display:flex;align-items:center;gap:8px;border-bottom:1px solid light-dark(#d3d6d7,#3b3b3b);color:light-dark(#929799,#ababab);max-width:220px;width:100%}.search-box input{font-size:14px;border:none;background:transparent;padding:8px 0;border-radius:0}.search-box input:focus{box-shadow:none}.library-grid{position:relative;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:32px 24px}.library-card{min-width:0}.library-preview{--preview-height: 168px;--preview-gutter: 48px;position:relative;width:100%;height:200px;border:1px solid light-dark(#dde0e1,#3b3b3b);border-radius:var(--radius);background:light-dark(#e9ebeb,#292929);padding:0;overflow:hidden;display:flex;align-items:center;justify-content:center;isolation:isolate;transition:border-color .2s,background .2s}.library-preview>img{max-height:168px;max-width:calc(100% - 48px);object-fit:contain;box-shadow:var(--card-shadow);border-radius:var(--radius)}.library-preview.kind-text .paper-mini{position:absolute;top:24px;left:50%;margin-left:-83px;transform:scale(.26);background:var(--surface);box-shadow:0 2px 4px #0001;min-height:860px;border-radius:6px}.library-preview.kind-text{--paper-scale: .26 !important}.library-card.selected .library-preview{border-color:var(--accent);background:light-dark(#e9e5e2,#292929);box-shadow:0 0 0 1px var(--accent)}.library-preview:hover{border-color:light-dark(#b7bdbf,#3b3b3b)}.selection-box{width:22px;height:22px;border:1px solid light-dark(#bcc1c3,#3b3b3b);background:light-dark(#ffffffed,#242424ed);border-radius:4px;position:absolute;right:12px;top:12px;display:flex;align-items:center;justify-content:center;color:#fff}.selected .selection-box{color:light-dark(#fff,#201611);background:var(--accent);border-color:var(--accent)}.library-card-info{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-top:16px}.library-card-info>div:first-child{min-width:0}.library-card-info h2{font-size:14px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:7px}.library-card-info p{display:flex;align-items:center;gap:6px;font-size:12px;color:light-dark(#878c8e,#ababab)}.asset-actions{display:flex;opacity:0;transition:opacity .2s}.library-card:hover .asset-actions,.library-card:focus-within .asset-actions{opacity:1}.asset-actions .icon-button{width:25px;height:28px}.library-bottom{display:flex;justify-content:space-between;gap:32px;margin:40px 0 60px;padding-top:20px;border-top:1px solid light-dark(#dfe1e2,#3b3b3b);font-size:12px;color:light-dark(#8b9092,#ababab)}.admin-loading,.library-empty{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;color:light-dark(#8a9092,#ababab)}.library-empty h2{font-size:24px;color:light-dark(#4b5154,#ededed);margin-top:8px}.library-empty p{font-size:14px;margin-bottom:12px;line-height:1.8}.selection-bar{position:fixed;z-index:15;bottom:32px;left:calc(50% + 114px);transform:translate(-50%);min-width:460px;padding:12px 16px;background:var(--surface);box-shadow:0 2px 4px #23272b0b,0 6px 14px #23272b10;border:1px solid light-dark(#d9dcdd,#3b3b3b);border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;gap:32px;animation:bar-in .3s ease}.selection-bar{max-width:calc(100vw - 32px);flex-wrap:wrap}.selection-bar .selection-actions{flex-wrap:wrap}.selection-bar>div{display:flex;align-items:center;gap:12px}.selection-bar strong{font-size:14px;font-weight:550}.selection-bar>div>svg{color:var(--accent)}.selection-bar .text-link{font-size:12px}.selection-bar .button{min-height:38px}.load-more{display:flex;margin:32px auto}.toast{position:fixed;z-index:100;bottom:32px;left:50%;transform:translate(-50%);padding:14px 20px;background:#2f3335;color:#fff;border-radius:var(--radius);box-shadow:var(--shadow);font-size:14px;display:flex;align-items:center;gap:10px;animation:bar-in .25s ease;max-width:calc(100% - 32px)}@keyframes bar-in{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}.inline-error{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px;margin-top:24px;padding:12px 16px;background:light-dark(#efe5df,#292929);border-radius:var(--radius);line-height:1.6}.pending-uploads{margin-top:24px;padding:16px;border:1px solid var(--line);font-size:14px;line-height:1.8}.pending-uploads>div{display:flex;justify-content:space-between;margin-top:8px}.share-list{margin-top:40px}.share-row{padding:28px 0;border-bottom:1px solid light-dark(#d9dcdd,#3b3b3b);display:flex;align-items:center;gap:24px}.share-row-icon{width:48px;height:58px;background:var(--surface);border:1px solid light-dark(#d9dcdd,#3b3b3b);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:var(--accent)}.share-row-body{flex:1;min-width:0}.share-row h2{font-size:18px;margin-bottom:8px;overflow-wrap:anywhere}.share-row p{display:flex;gap:8px;font-size:12px;color:light-dark(#83888b,#ababab)}.share-row-body a{font-size:12px;color:light-dark(#8b9092,#ababab);display:inline-flex;gap:6px;align-items:center;margin-top:12px}.share-row-actions{display:flex;gap:8px;align-items:center}.modal{border:1px solid light-dark(#dadcdd,#3b3b3b);border-radius:var(--radius);background:light-dark(#fafbfb,#242424);color:var(--ink);padding:32px;width:480px;max-width:calc(100vw - 32px);max-height:calc(100svh - 48px);overflow:auto;box-shadow:0 4px 8px #0000000c,0 10px 20px #00000012}.modal::backdrop{background:#34383d40}.modal-wide{width:620px}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.modal-header h2{font-size:24px;line-height:1.4;letter-spacing:-.5px}.modal>p{font-size:14px;line-height:1.8}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:32px}.modal .label:first-child{margin-top:0}.modal .muted{font-weight:400}.modal .text-counter{text-align:right;font-size:12px;color:light-dark(#9a9ea0,#ababab);margin-top:8px}.dropzone{margin-top:24px;min-height:200px;border:1px dashed light-dark(#bfc5c7,#3b3b3b);width:100%;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;background:light-dark(#f0f2f2,#242424)}.dropzone svg{color:var(--accent)}.dropzone strong{font-size:16px;font-weight:500}.dropzone span{font-size:12px;color:light-dark(#92989a,#ababab)}.dropzone:hover,.dropzone.drag-over{background:light-dark(#e9e7e4,#292929);border-color:var(--accent)}.upload-paste-hint{margin:12px 0 0;font-size:12px;line-height:1.6;color:var(--muted)}.upload-footnote{font-size:12px!important;color:light-dark(#858b8d,#ababab);margin-top:20px;line-height:1.8}.upload-list{max-height:260px;overflow:auto;margin-top:16px}.upload-row{display:flex;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid light-dark(#e0e3e4,#3b3b3b);font-size:14px}.upload-row>svg{color:light-dark(#92989a,#ababab)}.upload-row>div{flex:1;min-width:0}.upload-row strong{font-size:14px;font-weight:500;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-row>div>span{display:block;font-size:12px;color:light-dark(#949a9c,#ababab);margin-top:4px}.upload-status{font-size:12px;color:light-dark(#818789,#ababab);white-space:nowrap}.share-picker-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:28px;margin-bottom:12px}.share-picker-heading .label{margin:0;white-space:nowrap}.share-picker-heading .label span{font-size:12px;color:light-dark(#92989a,#ababab);margin-left:8px}.share-picker-heading input{width:160px;font-size:12px;padding:8px 10px}.share-picker{max-height:260px;overflow:auto;border-top:1px solid light-dark(#dee1e2,#3b3b3b);border-bottom:1px solid light-dark(#dee1e2,#3b3b3b)}.picker-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 4px;border-bottom:1px solid light-dark(#e9ebec,#3b3b3b)}.picker-row:last-child{border:0}.picker-row label{display:flex;align-items:center;gap:12px;font-size:14px;min-width:0;flex:1;cursor:pointer}.picker-row label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-row label svg{color:light-dark(#969c9e,#ababab)}.picker-row input{width:16px;height:16px;accent-color:var(--accent);flex-shrink:0}.picker-order{display:flex;align-items:center;gap:2px;color:light-dark(#7d8386,#ababab);font-size:12px}.picker-order>span{margin-right:4px}.picker-order .icon-button{width:26px;height:28px}.share-picker-note{font-size:12px;color:light-dark(#929799,#ababab);margin-top:12px;line-height:1.7}.share-link-input{font-size:14px}.login-page{min-height:100svh;display:flex;flex-direction:column;--canvas: light-dark(#e5e6e7, #000)}.login-center{display:flex;align-items:center;justify-content:center;gap:120px;flex:1;padding:48px}.login-intro h1{font-size:48px;line-height:1.4;letter-spacing:-1px;margin:24px 0}.login-intro p{font-size:16px;line-height:2;color:light-dark(#7b8184,#ababab)}.login-form{width:360px;padding:32px;background:var(--surface);border-radius:var(--radius);border:1px solid light-dark(#d9dcde,#3b3b3b);box-shadow:var(--shadow)}.login-form h2{font-size:24px;margin-bottom:8px}.login-form>p.muted{font-size:14px;line-height:1.7}.login-form label{display:block;font-size:14px;font-weight:550;margin:32px 0 10px}.login-form .button{margin-top:24px}.login-form input{font-size:14px}.login-note{display:flex;align-items:center;justify-content:center;gap:8px;color:light-dark(#92989b,#ababab);font-size:12px;margin-top:24px}@media(min-width:1600px){.gallery-grid{gap:72px}.collection-heading{margin-top:6vh}.gallery-grid{padding-bottom:12vh}}@media(max-width:1100px){.sidebar{width:196px;padding-left:16px;padding-right:16px}.admin-main{margin-left:196px}.admin-content{padding:32px}.admin-topbar{padding:0 32px}.admin-title-row{align-items:flex-start;flex-direction:column;gap:24px}.admin-title-row h1{font-size:28px}.selection-bar{left:calc(50% + 98px)}.library-toolbar{gap:16px;align-items:flex-start;flex-direction:column}.search-box{max-width:100%}.login-center{gap:64px}.gallery-grid{gap:36px}}@media(max-width:700px){.site-header{height:80px;padding:0 24px}.brand{font-size:23px}.site-footer{padding:24px;font-size:12px}.viewer-header-right .text-link{font-size:12px}.collection-heading{margin-top:32px}.collection-heading h1{font-size:28px}.collection-heading p{font-size:14px;max-width:270px;margin:12px auto 0}.gallery-grid{gap:32px;padding:48px 24px 64px;align-items:center}.gallery-item{margin-top:0}.gallery-item-1{margin-top:32px}.card-label{font-size:12px;gap:8px}.card-label>span:last-child{display:none}.viewer-footer>span:first-child{display:none}.viewer-footer{gap:16px}.viewer-instruction{font-size:12px}.focus-paper{width:calc(100% - 28px);left:14px;margin-left:0;top:66px;height:calc(100% - 118px)}.focus-paper .paper-content{padding:32px 16px}.paper-content h1{font-size:34px}.focus-paper .prose{font-size:16px;line-height:1.9}.focus-toolbar{top:14px;left:10px;right:12px;gap:8px}.focus-toolbar>span{display:none}.focus-toolbar .button{font-size:12px;padding:8px}.focus-caption{left:26px;right:26px;font-size:12px;bottom:18px}.focus-media{inset:74px 22px 64px}.reading-text{padding:24px 12px}.reading-text h1{font-size:28px}.sidebar{position:relative;width:100%;height:auto;padding:22px 24px 0;border-right:0}.sidebar .brand{margin-left:0}.sidebar-label,.sidebar-preview,.sidebar-bottom{display:none}.sidebar nav{flex-direction:row;gap:24px;margin-top:24px;border-bottom:1px solid light-dark(#d7dcde,#3b3b3b)}.sidebar nav button{padding:12px 0;border-radius:0;gap:8px}.sidebar nav button.active{background:transparent;border-bottom:2px solid var(--accent)}.sidebar nav button span{font-size:12px}.admin-main{margin-left:0}.admin-topbar{display:none}.admin-content{padding:32px 24px}.admin-title-row h1{font-size:28px}.admin-title-row p{font-size:14px}.header-actions{width:100%}.header-actions .button{flex:1}.library-toolbar{margin-top:32px}.filter-tabs{gap:3px;width:100%;overflow-x:auto}.filter-tabs button{padding:8px 10px}.filter-tabs button span{display:none}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.library-preview{--preview-height: 132px;--preview-gutter: 28px;height:160px}.library-preview>img{max-height:132px;max-width:calc(100% - 28px)}.library-card-info{flex-direction:column;gap:4px;margin-top:12px}.library-card-info>div:first-child{width:100%}.asset-actions{opacity:1}.library-card-info p{font-size:12px;gap:4px}.library-preview.kind-text .paper-mini{top:18px;margin-left:-64px;transform:scale(.2)}.library-bottom{font-size:12px;line-height:1.8;margin-bottom:80px}.library-bottom>span:last-child{display:none}.selection-bar{left:16px;right:16px;bottom:16px;min-width:0;transform:none;gap:12px;padding:10px}.selection-bar>div{gap:8px}.selection-bar>div>svg{display:none}.selection-bar .text-link{display:none}.selection-bar .button{font-size:12px;padding:8px 12px}.share-row{gap:16px;flex-wrap:wrap;padding:24px 0}.share-row-body{width:calc(100% - 64px)}.share-row-actions{margin-left:64px}.share-row-actions .button{font-size:12px;min-height:36px}.share-row h2{font-size:16px}.modal{padding:24px;max-height:calc(100svh - 32px)}.modal-header h2{font-size:22px}.modal-actions{margin-top:24px}.dropzone{min-height:164px}.upload-row{gap:8px}.upload-status{max-width:80px}.share-picker-heading{gap:8px}.share-picker-heading input{width:130px}.picker-row label{gap:8px}.login-center{padding:32px 24px;gap:40px;flex-direction:column;align-items:stretch;max-width:430px;width:100%;margin:auto}.login-intro h1{font-size:36px;line-height:1.4;margin:16px 0}.login-intro p{font-size:14px}.login-form{width:100%;padding:24px}.login-page .site-footer>span:last-child{display:none}.document-download{padding:24px 8px}.document-download h1{font-size:24px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.preview-card:hover{transform:none}}.viewer-page .site-header{position:absolute;left:0;top:0;z-index:2;height:88px;pointer-events:none;transition:opacity .3s}.viewer-page .gallery-grid{min-height:100svh;padding-top:88px;padding-bottom:88px}.viewer-page.is-returning .site-header{opacity:1;transition:opacity .34s ease}.focus-surface{box-shadow:none;transform:none}@media(max-width:700px){.viewer-page .gallery-grid{padding-top:88px;padding-bottom:88px}.single-item .gallery-item{margin-top:0}.focus-paper .paper-content{padding:32px 16px}}.focus-back{position:absolute;z-index:5;left:10px;top:10px;width:44px;height:44px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:light-dark(#f7f8f8,#242424);border:0;color:light-dark(#6f767a,#ababab);box-shadow:none;will-change:transform,opacity}.focus-back:hover{background:var(--surface);color:light-dark(#383e42,#ededed)}@media(max-width:700px){.viewer-page .paper-mini{width:calc(100vw - 28px)}.viewer-page .paper-content{padding:32px 16px}.viewer-page .paper-content .prose{font-size:16px}}.blank-home{min-height:100svh}.preview-card.kind-image,.preview-card.kind-video{border:0;background:transparent}.focus-layer{touch-action:pan-y pinch-zoom;overscroll-behavior-x:contain}.focus-layer :is(.markdown table,.markdown pre,.office-content){touch-action:pan-x pan-y pinch-zoom}.photo-frame{position:relative;width:100%;height:100%}.photo-frame .photo-snapshot,.photo-frame .full-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;border-radius:var(--radius)}.photo-frame .full-image{opacity:0;transition:opacity .18s ease}.photo-frame .full-image.is-decoded{opacity:1}.stack-preview{position:relative;display:block;width:var(--card-width);height:var(--card-height);border:0;padding:0;background:transparent;overflow:visible;transition:transform .3s}.stack-preview:hover{transform:scale(1.025)}.stack-preview.is-source{visibility:hidden;transform:none}.stack-mini{position:absolute;top:50%;left:50%;overflow:hidden;border-radius:var(--radius);background:var(--surface);box-shadow:var(--card-shadow);pointer-events:none}.stack-mini.kind-image,.stack-mini.kind-video{background:transparent}.stack-mini img{display:block;width:100%;height:100%;object-fit:cover}.stack-view{position:fixed;inset:0;z-index:40;outline:0;overscroll-behavior-x:contain;touch-action:pan-x pan-y pinch-zoom}.stack-swipe-edge{position:absolute;left:0;top:48px;bottom:0;width:28px;z-index:4;touch-action:pan-y pinch-zoom}.stack-scroll{position:absolute;inset:0;overflow:auto;scrollbar-width:none;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom}.stack-rack{display:flex;width:max-content;min-width:100%;min-height:100%;align-items:center;justify-content:center;gap:32px;padding:80px 64px}.stack-card{flex:0 0 auto;transform-origin:top left;will-change:transform;transition:none}.stack-view.is-returning .stack-card{opacity:1}.stack-select{font-family:inherit;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);max-width:140px;padding:8px;margin-left:auto;font-size:14px}.picker-row{gap:8px}@media(max-width:700px){.stack-rack{padding:64px 32px;gap:24px}.stack-select{max-width:112px}.picker-row{flex-wrap:wrap}.picker-row>label{min-width:55%}}@media(prefers-reduced-motion:reduce){.stack-preview:hover{transform:none}}.viewer-page,.viewer-rest{height:100dvh;min-height:0;overflow:hidden}.brand{user-select:none}.canvas-viewport{position:absolute;inset:0;overflow:hidden;touch-action:none;overscroll-behavior:none;cursor:grab;outline:0}.canvas-viewport.is-panning,.canvas-viewport.is-panning *{cursor:grabbing}.canvas-world{position:absolute;left:50%;top:50%;will-change:transform;user-select:none}.canvas-item{position:absolute;margin:0;max-width:none}.canvas-viewport.is-panning .preview-card:hover,.canvas-viewport.is-panning .stack-preview:hover{transform:none}.retained-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;border-radius:var(--radius)}.video-frame{position:relative;width:100%;height:100%}.video-frame video{position:absolute;inset:0;opacity:0;transition:opacity .18s ease}.video-frame video.is-playing{opacity:1}.document-frame{position:relative;min-height:100%}.document-placeholder{position:absolute;top:0;left:0;width:100%;pointer-events:none;transition:opacity .18s ease}.document-renderer{position:relative;opacity:0;transition:opacity .18s ease}.document-frame.is-rendered .document-renderer{opacity:1}.document-frame.is-rendered .document-placeholder{opacity:0}.pdf-page{min-height:0;aspect-ratio:1 / 1.4142}.pdf-page canvas{min-height:0}.markdown{white-space:normal}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown p,.markdown ul,.markdown ol,.markdown blockquote,.markdown pre,.markdown table{margin:0 0 16px}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{color:var(--ink);font-weight:650;line-height:1.4;letter-spacing:normal;margin:32px 0 16px}.markdown h1{font-size:32px}.markdown h2{font-size:24px}.markdown h3,.markdown h4,.markdown h5,.markdown h6{font-size:18px}.markdown ul,.markdown ol{padding-left:24px}.markdown li>p,.markdown li>ul,.markdown li>ol{margin-bottom:8px}.markdown li{margin:4px 0}.markdown blockquote{margin-left:0;padding-left:16px;border-left:2px solid var(--line);color:var(--muted)}.markdown a{color:inherit;text-decoration:underline;text-underline-offset:3px}.markdown code{font:.9em ui-monospace,SFMono-Regular,Menlo,monospace;background:light-dark(#f1f2f2,#242424);padding:2px 4px}.markdown pre{padding:16px;overflow:auto;background:light-dark(#f1f2f2,#242424);white-space:pre;border-radius:var(--radius)}.markdown pre code{background:none;padding:0}.markdown table{border-collapse:collapse;display:block;max-width:100%;overflow-x:auto;font-variant-numeric:tabular-nums}.markdown th,.markdown td{padding:8px 16px;border:1px solid var(--line)}.markdown th{font-weight:650}.markdown hr{border:0;border-top:1px solid var(--line);margin:32px 0}.markdown input[type=checkbox]{width:16px;height:16px;margin-right:8px;accent-color:var(--accent)}.markdown .contains-task-list{list-style:none;padding-left:0}.markdown img{max-width:100%;height:auto;border-radius:var(--radius)}.markdown-image-label{color:var(--muted)}.editor-switch{display:flex;gap:16px;margin:0 0 8px}.editor-switch button{padding:8px 0;background:none;border:0;border-bottom:1px solid transparent;color:var(--muted)}.editor-switch button[aria-pressed=true]{border-color:var(--ink);font-weight:600;color:var(--ink)}.editor-preview{min-height:300px;max-height:50vh;overflow-y:auto;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}@media(prefers-reduced-motion:reduce){.document-renderer,.document-placeholder,.video-frame video,.photo-frame .full-image{transition:none}}.viewer-page .paper-mini{width:var(--paper-width, 1040px)}.viewer-page .paper-content{padding:48px 64px 96px}.viewer-page .paper-content .prose{font-size:20px;line-height:1.85}.viewer-page .paper-content .markdown h1{font-size:40px}.focus-kind-text .focus-paper{top:48px;height:calc(100% - 96px)}.focus-back{width:44px;height:44px;border:0;box-shadow:none}.reader-metadata{position:absolute;z-index:1;top:0;left:0;width:192px;margin:0;display:grid;gap:16px;font-family:inherit;text-align:left;pointer-events:auto;opacity:0;transform-origin:top left;will-change:transform,opacity}.reader-metadata>div{min-width:0}.reader-metadata:has([aria-expanded=true]){z-index:3}.reader-metadata dt{color:light-dark(#747b7e,#ababab);font-size:11px;font-weight:400;line-height:16px;margin-bottom:3px}.reader-metadata dd{margin:0;color:light-dark(#454d51,#ededed);font-size:12px;line-height:18px;font-variant-numeric:tabular-nums}.reader-file-detail dd{white-space:nowrap}.reader-filename{position:relative}.reader-filename-toggle{display:block;width:100%;padding:0;border:0;border-radius:2px;background:none;color:light-dark(#30393e,#ededed);font:inherit;font-size:13px;font-weight:500;line-height:20px;text-align:left;cursor:pointer}.reader-filename-toggle:disabled{opacity:1;cursor:text}.reader-filename-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.reader-filename-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--filename-lines, 2);overflow:hidden;overflow-wrap:anywhere;text-wrap:pretty}.reader-filename-extension{white-space:nowrap}.reader-filename-toggle svg{margin:0 0 1px 5px;vertical-align:middle;color:light-dark(#747b7e,#ababab);transition:transform .16s}.reader-filename-name:not([data-clipped=true]) svg{display:none}.reader-filename-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.reader-filename-sizer{position:absolute;top:0;left:0;width:0;height:0;overflow:hidden;visibility:hidden;white-space:pre}.reader-filename-full{position:absolute;z-index:1;top:calc(100% + 8px);left:0;width:100%;max-height:min(180px,32vh);overflow:auto;padding:12px;border:1px solid light-dark(#e2e5e6,#3b3b3b);border-radius:6px;background:var(--surface);box-shadow:0 4px 16px #192b3712;color:light-dark(#30393e,#ededed);font-size:13px;line-height:1.6;overflow-wrap:anywhere;user-select:text;scrollbar-width:thin;animation:compose-marker-in .12s ease-out}.reader-metadata[data-layout=header]{display:flex;flex-wrap:wrap;justify-content:flex-end;text-align:right;gap:12px 28px}.reader-metadata[data-layout=header] .reader-filename{flex:0 0 100%}.reader-metadata[data-layout=header] .reader-filename-toggle{text-align:right}.focus-kind-document .focus-paper{width:min(640px,calc(100% - 48px));left:50%;margin-left:max(-320px,calc(-50% + 24px));top:72px}.reader-actions{position:absolute;z-index:4;bottom:max(28px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%,100px);opacity:0;visibility:hidden;transition:transform .2s cubic-bezier(.4,0,.6,1),opacity .16s ease,visibility .2s}.reader-actions.is-visible{transform:translate(-50%);opacity:1;visibility:visible;transition:transform .52s cubic-bezier(.22,.8,.2,1),opacity .28s ease}.reader-actions-pill{display:flex;gap:8px;padding:4px 12px;background:#303436;border-radius:999px;box-shadow:0 1px 2px #20242814}.reader-actions-pill button{display:grid;place-items:center;padding:0;width:40px;height:40px;border:0;border-radius:50%;background:transparent;color:light-dark(#eceeee,#ababab);transition:background .16s ease,transform .16s ease}.reader-actions-pill button:hover{background:#464b4d}.reader-actions-pill button:active{transform:scale(.94)}.reader-actions-pill button:focus-visible{outline:2px solid light-dark(#bfa28f,#392c25);outline-offset:2px}.reader-actions-pill button:disabled{opacity:.65;cursor:wait}.reader-action-error{position:absolute;bottom:56px;left:50%;transform:translate(-50%);width:min(320px,calc(100vw - 48px));text-align:center;font-size:14px;line-height:1.5;color:var(--ink);background:var(--surface);padding:8px 16px;border:1px solid var(--line);border-radius:var(--radius)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.share-options{display:grid;gap:24px;padding:32px 0;border-bottom:1px solid var(--line)}.share-options>label{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.share-options input{width:16px;height:16px;margin-top:4px;flex-shrink:0;accent-color:var(--accent)}.share-options strong{font-size:14px;font-weight:600}.share-options small{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.6}@media(max-width:699px){.viewer-page .paper-content{padding:32px 8px 88px}.viewer-page .paper-content .prose{font-size:18px}.viewer-page .paper-content .markdown h1{font-size:32px}.focus-kind-text .focus-paper{top:56px;height:calc(100% - 88px)}.reader-actions{bottom:max(24px,env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){.reader-actions,.reader-metadata{transition:none}}@keyframes compose-marker-in{0%{opacity:0}to{opacity:1}}.password-visibility{display:flex;align-items:center;gap:8px;padding:8px 0;margin-top:8px;border:0;background:none;font-size:14px;color:var(--muted)}.login-password-changed{padding-bottom:16px;font-size:14px;font-weight:600}.focus-layer .reader-actions{bottom:max(calc(var(--reader-inset-bottom, 0px) + 16px),env(safe-area-inset-bottom))}.canvas-item{transition:none}.upload-queue{display:grid;gap:0;margin-top:16px;max-height:300px;overflow-y:auto}.queued-file{position:relative;display:flex;min-width:0;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.queued-preview{width:64px;height:64px;flex:0 0 64px;display:grid;place-items:center;border-radius:var(--radius);background:light-dark(#e9ecec,#292929);overflow:hidden;color:var(--muted)}.queued-preview img{width:100%;height:100%;object-fit:contain}.queued-details{flex:1;min-width:0}.queued-details strong{display:block;font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.queued-details span{display:block;font-size:12px;color:var(--muted);margin-top:4px}.queued-file .upload-status{display:flex;align-items:center;gap:4px}.queued-file progress{position:absolute;bottom:-1px;width:100%;height:2px;border:0;accent-color:var(--accent)}.dropzone.has-queue{min-height:120px;gap:8px}.dropzone.has-queue>svg{width:22px;height:22px}@media(max-width:700px){.queued-file{gap:8px}.queued-preview{width:48px;height:48px;flex-basis:48px}}.share-fields{display:grid;grid-template-columns:1fr 1fr;gap:32px}.share-fields .label{margin-top:0}.login-center{justify-content:center;max-width:520px}.login-form{flex:1;width:100%}@media(max-width:700px){.share-fields{grid-template-columns:1fr;gap:16px}}.login-center{width:100%;margin:auto}.focus-return-preview{position:absolute;inset:0;overflow:hidden;background:var(--surface);opacity:0;pointer-events:none}.focus-return-preview>img{width:100%;height:100%;object-fit:contain}.focus-content{z-index:2}.stack-mini{pointer-events:auto}.preview-card>canvas[data-video-still],.stack-mini>canvas[data-video-still]{width:100%;height:100%;object-fit:contain}.asset-context-menu{position:fixed;z-index:200;width:180px;padding:4px;border:1px solid light-dark(#d8dadd,#3b3b3b);border-radius:6px;background:var(--surface);box-shadow:0 2px 8px #181b2012;animation:context-in .14s ease-out}.asset-context-menu button{width:100%;display:flex;align-items:center;gap:16px;padding:12px;border:0;background:transparent;border-radius:2px;text-align:left;font-size:14px}.asset-context-menu button:hover,.asset-context-menu button:focus-visible{background:light-dark(#eeeff0,#292929);outline:none}.asset-context-menu p{padding:8px 12px;margin:0;font-size:12px;line-height:1.5}@keyframes context-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.asset-context-menu{animation:none}}@media(max-width:699px){.admin-page{position:relative}.admin-topbar{display:flex;position:absolute;z-index:11;top:20px;right:24px;height:auto;border:0;padding:0}.admin-topbar>span{display:none}.settings-button{padding:10px 12px}}.transition-panels{position:relative;transition:height .32s cubic-bezier(.22,.8,.2,1)}.transition-panel{position:absolute;top:0;left:0;width:100%;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s ease,transform .28s cubic-bezier(.22,.8,.2,1),visibility 0s .28s}.transition-panel.is-active{opacity:1;visibility:visible;transform:none;transition-delay:0s}.content-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin:8px 0 24px;border-radius:9px;background:light-dark(#e9ebeb,#292929)}.content-mode-switch button{display:flex;align-items:center;justify-content:center;gap:8px;height:42px;border-radius:6px;font-size:14px;color:var(--muted)}.content-mode-switch button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 4px #0000000c}.upload-description{font-size:14px;line-height:1.7}.editor-panels textarea{display:block;height:320px;min-height:240px}.editor-panels .editor-preview{height:320px;min-height:240px;max-height:none}.video-thumbnail{display:block;position:relative;width:100%;height:100%;overflow:hidden;background:light-dark(#e5e6e7,#000)}.library-preview>.video-thumbnail{width:min(calc(100% - var(--preview-gutter)),calc(var(--preview-height) * var(--video-aspect-ratio)));height:auto;aspect-ratio:var(--video-aspect-ratio);border-radius:var(--radius);box-shadow:var(--card-shadow)}.video-thumbnail>img,.video-thumbnail>canvas,.video-thumbnail video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}.video-thumbnail video{pointer-events:none;opacity:0;transition:opacity .16s ease}.video-thumbnail video.is-playing{opacity:1}.settings-modal{width:760px}.settings-modal .modal-header{margin-bottom:28px}.settings-grid{display:grid;grid-template-columns:230px minmax(0,1fr);gap:32px;align-items:start}.settings-language{border:0;margin:0;padding:0}.settings-password{border-left:1px solid var(--line);padding-left:32px}.settings-language h3,.settings-password h3{font-size:16px;line-height:1.5;margin:0 0 8px}.settings-grid .muted{font-size:13px;line-height:1.7}.settings-grid .label{margin:16px 0 6px;font-size:13px}.settings-grid input{height:42px;padding:10px 12px;font-size:13px}.settings-grid .modal-actions{margin-top:20px}.language-switch{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;margin-top:20px}.language-switch .button{width:100%;height:42px;min-height:42px;padding:0 12px;border-radius:6px;line-height:1}.language-switch>.spin{position:absolute;top:54px;right:0}@media(max-width:700px){.settings-grid{grid-template-columns:1fr;gap:24px}.settings-password{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}.settings-modal .modal-header{margin-bottom:20px}.language-switch{max-width:260px;margin-top:16px}}@media(prefers-reduced-motion:reduce){.transition-panels,.transition-panel,.video-thumbnail video{transition:none}}.office-content{box-sizing:border-box;padding:clamp(24px,5vw,52px);color:light-dark(#232728,#ededed);background:var(--surface);font:16px/1.7 -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-wrap:anywhere;overflow-x:auto;text-align:left}.office-content>:first-child{margin-top:0}.office-content h1{font-size:1.85em;line-height:1.3}.office-content h2{font-size:1.4em;line-height:1.4}.office-content p{margin:0 0 1em}.office-content img{max-width:100%;height:auto;object-fit:contain}.office-content table{border-collapse:collapse;width:100%;margin:16px 0;font-size:.85em}.office-content td,.office-content th{border:1px solid light-dark(#d9dddf,#3b3b3b);padding:7px 10px;min-width:48px;vertical-align:top}.office-content th{background:light-dark(#f3f4f4,#242424);text-align:left}.office-content pre{white-space:pre-wrap;font:14px/1.7 ui-monospace,monospace}.office-content section+section{border-top:1px solid light-dark(#e4e6e7,#3b3b3b);padding-top:24px;margin-top:28px}.office-thumbnail-render{font-size:21px;line-height:1.65}.attachment-content{display:flex;width:100%;height:100%;box-sizing:border-box;flex-direction:column;align-items:center;justify-content:center;padding:clamp(20px,4vw,44px);gap:12px;color:light-dark(#4f575b,#ededed);background:light-dark(#fafbfb,#242424);text-align:center}.attachment-content>svg{flex:0 0 auto;margin-bottom:6px}.attachment-content strong{font-size:clamp(15px,2vw,20px);font-weight:500;line-height:1.45;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.attachment-format{font-size:11px;letter-spacing:.08em;color:light-dark(#7d858a,#ababab)}.attachment-content p{font-size:12px;line-height:1.6;margin:0}.attachment-content p:empty{display:none}.attachment-content audio{display:block;width:100%;height:44px;flex:0 0 auto;margin-top:8px}.video-thumbnail>.file-thumbnail{width:100%;height:100%}.focus-kind-file .focus-media,.focus-kind-audio .focus-media{background:light-dark(#fafbfb,#242424);border-radius:14px;overflow:hidden}@media(max-width:420px){.attachment-content{gap:8px;padding:18px}.attachment-content>svg{width:40px;height:40px;margin-bottom:0}}.privacy-unavailable{margin:auto;padding:48px;color:light-dark(#62686b,#ababab);text-align:center}.office-content,.pdf-page{color-scheme:light}.library-selection-area.is-selecting{user-select:none;cursor:crosshair}.library-selection-area.is-selecting *{cursor:crosshair}.library-selection-rectangle{position:absolute;pointer-events:none;z-index:5;border:1px solid light-dark(#597968,#95b6a4);background:light-dark(rgb(89 121 104 / 14%),rgb(149 182 164 / 18%));border-radius:3px}.library-selection-area{position:relative;min-height:calc(100svh - 340px);padding:16px 24px 32px;margin:-16px -24px -32px}.video-media-host{display:contents}.modal.share-editor{width:1280px;height:min(820px,calc(100svh - 48px));padding:0;overflow:hidden}.share-editor[open]{display:flex;flex-direction:column}.share-editor>.modal-header{flex:0 0 auto;margin:0;padding:20px 28px;border-bottom:1px solid var(--line)}.share-editor>.modal-header h2{font-size:22px}.share-editor-form{display:flex;flex-direction:column;flex:1;min-height:0}.share-editor-body{display:grid;grid-template-columns:minmax(0,1fr) 304px;gap:28px;min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;padding:24px 28px;scroll-padding:20px}.share-editor-content{min-width:0;align-self:start;position:sticky;top:0}.share-editor-content>h3,.share-editor-settings>h3{margin:0 0 18px;font-size:16px;font-weight:600}.share-editor-settings{min-width:0;border-left:1px solid var(--line);padding-left:24px}.share-editor-fields{display:grid;gap:18px;margin-bottom:18px}.share-editor-fields .label{font-size:13px}.share-editor-fields input,.share-editor-fields textarea,.share-password-input input{font-size:14px}.share-editor-fields textarea{min-height:68px;resize:vertical}.share-editor-option{padding:16px 0;border-top:1px solid var(--line)}.share-editor-toggle{display:flex;align-items:center;gap:10px;cursor:pointer}.share-editor-toggle input{width:16px;height:16px;flex-shrink:0;accent-color:var(--accent)}.share-editor-toggle strong{font-size:13px;font-weight:550}.share-editor-option>p,.share-editor-legacy{margin:8px 0 0;font-size:12px;line-height:1.75}.share-password-input{position:relative;margin-top:12px}.share-password-input input{padding-right:44px}.share-password-input .icon-button{position:absolute;top:50%;right:4px;transform:translateY(-50%);width:36px;height:36px;color:var(--muted)}.share-editor-footer{flex:0 0 auto;padding:16px 28px;border-top:1px solid var(--line);background:light-dark(#fafbfb,#242424)}.share-editor-save{display:flex;align-items:center;justify-content:space-between;gap:16px}.share-editor-count{font-size:12px;color:var(--muted)}.share-editor-footer .modal-actions{margin:0}.share-editor-footer .form-error{margin:0 0 12px}@media(max-width:1050px){.share-editor-body{grid-template-columns:minmax(0,1fr);gap:28px}.share-editor-content{position:static}.share-editor-settings{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}.share-editor-fields{grid-template-columns:1fr 1fr;gap:24px}.share-editor-password .share-password-input{max-width:360px}}@media(max-width:700px){.modal.share-editor{max-width:calc(100vw - 16px);height:calc(100svh - 16px);max-height:calc(100svh - 16px)}.share-editor>.modal-header{padding:16px 20px}.share-editor>.modal-header h2{font-size:19px}.share-editor-body{padding:20px;gap:24px}.share-editor-fields{grid-template-columns:minmax(0,1fr);gap:16px}.share-editor-footer{padding:12px 16px max(12px,env(safe-area-inset-bottom))}.share-editor-save{gap:8px}.share-editor-footer .button{padding:10px 12px;font-size:13px}.share-editor-footer .modal-actions{gap:6px}}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plex-mono-2.5.0/regular.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/plex-mono-2.5.0/medium.woff2) format("woff2")}:root{--canvas: light-dark(#f4ece1, #0c1b27);--surface: light-dark(#fbf7f1, #12273a);--paper: light-dark(#fefaf4, #0f2232);--ink: light-dark(#182431, #ede4d6);--muted: light-dark(#5b6570, #9eafbd);--line: light-dark(#d2c3ae, #2e4a5f);--line-soft: light-dark(#e2d6c5, #223a4d);--accent: light-dark(#13304a, #e9dcc8);--accent-dark: light-dark(#1d4266, #f5eadb);--primary-text: light-dark(#f6eee3, #0c1b27);--wine: light-dark(#8a2f3c, #df8f97);--hover: light-dark(#efe5d7, #173045);--radius: 6px;--font-mono: "IBM Plex Mono", "IBM Plex Sans SC", monospace;--shadow: 0 1px 2px #0814200d, 0 8px 20px -8px #08142026;--card-shadow: 0 1px 2px #0814201a, 0 4px 10px -4px #08142033;color:var(--ink);background:var(--canvas)}::selection{background:#8a2f3c2e}h1,h2,h3,strong{font-weight:600}input,textarea{background:var(--paper)}input::placeholder,textarea::placeholder{color:light-dark(#8a8f93,#6f8496)}input:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px light-dark(rgba(19,48,74,.12),rgba(233,220,200,.14))}.button{min-height:40px;font-weight:500;padding:9px 16px;transition:background-color .18s,border-color .18s,color .18s,transform .2s cubic-bezier(.3,1.4,.5,1)}.button:hover,.button.subtle:hover{background:var(--hover);border-color:var(--line)}.button.primary{color:var(--primary-text);font-weight:600;border:0}.button.primary:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.button:active:not(:disabled){transform:scale(.98)}.icon-button,.text-link{color:var(--muted)}.icon-button:hover{color:var(--ink);background:var(--hover)}.text-link:hover{color:var(--ink)}.brand{gap:8px;font-size:20px;font-weight:600;letter-spacing:-.02em;line-height:normal}.brand-period{color:var(--wine)}.brand-mark{--mark-front: light-dark(#13304a, #ede4d6);--mark-back: light-dark(#8b8f93, #6f8496);--mark-accent: var(--wine);width:24px;height:24px}.form-error{color:inherit;background:transparent;padding:0;font-weight:600;border-radius:0}.form-error:has(strong){font-weight:400}.form-error strong{font-weight:600;margin-right:0}.inline-error{background:transparent;border-block:1px solid var(--line-soft);border-radius:0;padding:12px 0;color:inherit}.modal{background:var(--surface);border-color:var(--line-soft);border-radius:var(--radius);width:520px;padding:32px;box-shadow:0 1px 2px #0814201a,0 24px 48px -16px #08142059}.modal::backdrop{background:light-dark(rgba(19,48,74,.48),rgba(3,10,17,.64))}.modal-wide{width:640px}.modal-header h2{font-size:24px;font-weight:600;line-height:1.3;letter-spacing:normal}.modal .text-counter{color:var(--muted);font-family:var(--font-mono)}.modal .label{font-weight:500}.modal>p{line-height:1.6}.toast{background:var(--accent);color:var(--primary-text)}.login-page{--canvas: light-dark(#f4ece1, #0c1b27);min-height:100svh;background:var(--canvas)}.login-page .site-header{height:auto;padding:32px}.login-page .login-center{flex:1;display:grid;place-items:center;grid-template-columns:minmax(0,1fr);justify-content:normal;max-width:none;margin:0;padding:16px 24px 96px;gap:0}.login-page .login-form{width:100%;max-width:360px;padding:0;border:0;background:transparent;box-shadow:none}.login-page .login-form h1{font-size:40px;line-height:1.2;font-weight:600;letter-spacing:-.02em}.login-page .login-form>.muted{font-size:16px;line-height:1.6;margin-top:8px}.login-page .login-form label{margin:32px 0 8px;font-size:14px;font-weight:500}.login-page .login-form input{font-size:16px;padding:12px 14px}.login-page .login-form>.button{margin-top:24px;height:44px;padding-block:0;border:0}.login-page .login-form .form-error{margin-top:16px}.login-page .login-note{justify-content:flex-start;color:var(--muted);margin-top:24px;font-size:12px}.login-password-changed{padding:12px 16px;margin-bottom:32px;background:transparent;border:1px solid var(--line);border-radius:6px;font-weight:500;line-height:1.6}.loading-spinner{display:inline-block;flex:none;width:24px;height:24px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.loading-spinner-small{width:16px;height:16px}.page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--muted);font-size:14px}.empty-page h1{font-size:24px;line-height:1.3}.empty-page p{margin-top:8px;max-width:420px;font-size:16px;line-height:1.6;color:var(--muted)}.asset-context-menu{background:var(--surface);border-color:var(--line);border-radius:var(--radius)}.asset-context-menu button{border-radius:var(--radius)}.asset-context-menu button:hover,.asset-context-menu button:focus-visible{background:var(--hover)}.asset-context-menu .danger,.button.danger{color:var(--wine)}.text-counter,.file-extension,.attachment-size,.upload-progress,.reader-file-facts{font-family:var(--font-mono)}@media(max-width:700px){.modal{position:fixed;inset:auto 0 0;margin:0;width:100vw;max-width:100vw;max-height:calc(100dvh - 24px);border-radius:6px 6px 0 0;padding:24px 24px max(24px,env(safe-area-inset-bottom));border-bottom:0}}@media(pointer:coarse){.button,.icon-button{min-height:44px}.icon-button{min-width:44px}}@media(prefers-reduced-motion:reduce){.button:active:not(:disabled){transform:none}.button{transition:color .1s,background-color .1s,border-color .1s}}.office-content{color:var(--ink)}.office-content :is(td,th),.office-content section+section{border-color:var(--line)}.office-content th{background:var(--hover)}.viewer-page{--public-paper: light-dark(#f7efe4, #e7dccb);--public-ink: #1b2531;--public-muted: #6a6259;--public-shade: #081420;--public-shadow: 0 8px 20px -8px color-mix(in srgb, var(--public-shade) 42%, transparent);background:light-dark(#13304a,#07121b);color:#f1e7d8;font-family:IBM Plex Sans,IBM Plex Sans SC,system-ui,sans-serif;font-variant-numeric:tabular-nums}.viewer-page .site-header{height:auto;padding:32px;color:#f1e7d8}.viewer-page .brand{color:#f1e7d8}.viewer-page .brand-period{color:#e7a1a8}.viewer-page .brand-mark{--mark-front: #f1e7d8;--mark-back: #8fa6ba;--mark-accent: #e7a1a8}.viewer-page .viewer-loading{position:fixed;inset:0;z-index:2;margin:0;color:#f1e7d8;pointer-events:none;animation:viewer-loading-in .24s ease-out .45s both}@keyframes viewer-loading-in{0%{opacity:0}}.viewer-page .viewer-rest[data-arrival=waiting] .canvas-item{opacity:0}.viewer-page .viewer-rest[data-arrival=entering] .canvas-item{animation:canvas-card-fade var(--arrive-fade) ease-out var(--arrive-delay, 0ms) both,canvas-card-rise var(--arrive-rise) var(--arrive-easing) var(--arrive-delay, 0ms) both}@keyframes canvas-card-fade{0%{opacity:0}}@keyframes canvas-card-rise{0%{transform:translateY(12px) scale(.97)}}.viewer-page img[data-thumbnail]{opacity:0;transition:opacity .26s ease-out}.viewer-page img[data-thumbnail][data-loaded]{opacity:1}.viewer-page img[data-thumbnail][data-loaded=instant]{transition:none}@media(prefers-reduced-motion:reduce){.viewer-page .viewer-rest[data-arrival=entering] .canvas-item{animation:canvas-card-fade .2s ease-out both}}.viewer-page .viewer-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:96px 24px;text-align:center}.viewer-page .viewer-state h1{font-size:24px;line-height:1.3;font-weight:600}.viewer-page .viewer-state p{max-width:420px;font-size:16px;line-height:1.6;font-weight:400;color:#9eafbd}.viewer-page .viewer-state .button{background:var(--public-paper);color:var(--public-ink);border-color:transparent;border-radius:6px}.viewer-page .preview-card,.viewer-page .stack-mini{background:var(--public-paper);color:var(--public-ink);border:0;border-radius:6px;box-shadow:var(--public-shadow)}.viewer-page .stack-card{box-shadow:0 10px 22px -10px color-mix(in srgb,var(--public-shade) 48%,transparent)}.viewer-page .preview-card:is(.kind-image,.kind-video,.kind-document),.viewer-page .stack-mini:is(.kind-image,.kind-video,.kind-document),.viewer-page .preview-card .video-thumbnail,.viewer-page .stack-mini .video-thumbnail{background:#f1e7d80f}.viewer-page .preview-card:hover,.viewer-page .stack-preview:hover{transform:none}.viewer-page .preview-card:focus-visible,.viewer-page .stack-preview:focus-visible{outline:2px solid #f1e7d8;outline-offset:6px}.viewer-page .paper-mini{width:var(--paper-width, 640px)}.viewer-page .paper-content{padding:56px 40px 120px;background:var(--public-paper);color:var(--public-ink)}.viewer-page .paper-content .prose{font-size:16px;line-height:1.8}.viewer-page .paper-content .markdown h1{font-size:40px;line-height:1.3;font-weight:600}.viewer-page .paper-content .markdown h2{font-size:24px}.viewer-page .paper-content .markdown h3{font-size:16px}.viewer-page .paper-content .markdown blockquote{color:#4f4a44;border-color:#d8cab6}.viewer-page .paper-content .markdown pre,.viewer-page .paper-content .markdown code{color:var(--public-ink);background:#efe5d6;font-family:var(--font-mono, "IBM Plex Mono", monospace);font-size:14px;border-radius:6px}.viewer-page .paper-content .markdown a{color:#13304a}.viewer-page .file-thumbnail,.viewer-page .file-thumbnail span,.viewer-page .attachment-content{color:var(--public-ink)}.viewer-page .attachment-content{background:var(--public-paper)}.viewer-page .office-content{background:var(--public-paper);color:var(--public-ink)}.viewer-page .office-content :is(td,th),.viewer-page .office-content section+section{border-color:#d8cab6}.viewer-page .office-content th{background:#efe5d6}.viewer-page .attachment-content strong{font-size:24px;font-weight:600}.viewer-page .attachment-content p{font-size:14px}.viewer-page .file-thumbnail small,.viewer-page .attachment-format{color:var(--public-muted);font-family:var(--font-mono, "IBM Plex Mono", monospace);font-size:12px}.viewer-page .focus-wash,.viewer-page .focus-scroll,.viewer-page .focus-return-preview,.viewer-page .focus-kind-file .focus-media,.viewer-page .focus-kind-audio .focus-media{background:var(--public-paper);color:var(--public-ink);border-radius:6px}.viewer-page .focus-content{border-radius:6px;scrollbar-color:#b4a795 transparent}.viewer-page .focus-back{width:44px;height:44px;background:var(--public-paper);color:var(--public-ink);border-radius:50%;box-shadow:0 1px 2px color-mix(in srgb,var(--public-shade) 25%,transparent),0 6px 14px -6px color-mix(in srgb,var(--public-shade) 45%,transparent);transition:background-color .18s}.viewer-page .focus-back:hover{background:#fffaf2;color:var(--public-ink)}.viewer-page .focus-back-arrow{display:grid;place-items:center}.viewer-page .reader-metadata{z-index:1;display:flex;flex-direction:column;gap:12px;color:var(--public-ink);user-select:text;transform-origin:0 0}.viewer-page .reader-metadata:has([aria-expanded=true]){z-index:3}.viewer-page .reader-metadata>div{min-width:0}.viewer-page .reader-metadata dt{margin:0 0 2px;color:var(--public-muted);font-size:12px;line-height:16px;font-weight:400}.viewer-page .reader-metadata dd{margin:0;color:var(--public-ink);font-size:13px;line-height:20px}.viewer-page .reader-file-detail dd{font-family:var(--font-mono, "IBM Plex Mono", monospace);white-space:nowrap}.viewer-page .reader-filename{margin-bottom:8px}.viewer-page .reader-filename-toggle{padding:0;border-radius:2px;color:var(--public-ink);font-size:15px;line-height:22px;font-weight:600;text-align:left}.viewer-page .reader-filename-name{--filename-lines: 3}.viewer-page .reader-filename-toggle svg{margin:0 0 2px 4px;color:var(--public-muted)}.viewer-page .reader-metadata[data-layout=header]{flex-direction:row;flex-wrap:wrap;align-items:baseline;justify-content:flex-start;gap:2px 16px;text-align:left}.viewer-page .reader-metadata[data-layout=header] dt{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.viewer-page .reader-metadata[data-layout=header] .reader-filename{flex:1 1 auto;margin:0}.viewer-page .reader-metadata[data-layout=header] .reader-filename-toggle{text-align:left}.viewer-page .reader-metadata[data-layout=header] .reader-filename-name{--filename-lines: 2}.viewer-page .reader-metadata[data-layout=header] .reader-file-detail dd{color:var(--public-muted);font-size:12px;line-height:22px}.viewer-page .reader-filename-full{min-width:min(320px,80vw);background:#fbf7f1;border-color:#d8cab6;color:var(--public-ink);font-size:14px}.viewer-page .reader-actions{transform:translate(-50%,16px)}.viewer-page .reader-actions.is-visible{transform:translate(-50%);transition:transform .52s cubic-bezier(.2,.9,.3,1.05) 60ms,opacity .3s ease 60ms}.viewer-page .reader-actions-pill{gap:4px;padding:4px;border-radius:6px;background:#13304a;box-shadow:0 1px 2px color-mix(in srgb,var(--public-shade) 20%,transparent),0 8px 20px -8px color-mix(in srgb,var(--public-shade) 45%,transparent)}.viewer-page .reader-actions-pill button{display:flex;align-items:center;justify-content:center;gap:8px;min-width:40px;width:auto;height:36px;border-radius:2px;padding:0 10px;color:#f1e7d8;font-size:14px;font-weight:500}.viewer-page .reader-actions-pill .reader-copy{gap:0}.viewer-page .reader-copy-label{display:grid;grid-template-columns:0fr;opacity:0;transition:grid-template-columns .3s cubic-bezier(.4,0,.2,1),opacity .16s ease}.viewer-page .reader-copy-label[data-open=true]{grid-template-columns:1fr;opacity:1;transition:grid-template-columns .38s cubic-bezier(.2,.9,.3,1),opacity .24s ease 80ms}.viewer-page .reader-copy-label>span{min-width:0;overflow:hidden}.viewer-page .reader-copy-label>span>span{display:block;padding-left:8px;white-space:nowrap}.viewer-page .reader-actions-pill button:hover{background:#1f4466}.viewer-page .reader-actions-pill button:focus-visible{outline-color:#f1e7d8}.viewer-page .reader-action-error,.viewer-page .media-error,.viewer-page .privacy-unavailable{color:var(--public-ink);background:var(--public-paper);border-color:#d8cab6;font-weight:600}.viewer-page .asset-context-menu{width:194px;background:light-dark(#fbf7f1,#12273a);color:light-dark(#182431,#ede4d6);border-color:light-dark(#e2d6c5,#223a4d);box-shadow:0 1px 2px color-mix(in srgb,var(--public-shade) 20%,transparent),0 12px 28px -10px color-mix(in srgb,var(--public-shade) 45%,transparent)}.viewer-page .asset-context-menu button{min-height:36px;height:36px;border-radius:2px;padding:0 12px;gap:12px}.viewer-page .asset-context-menu button:hover,.viewer-page .asset-context-menu button:focus-visible{background:light-dark(#efe5d7,#173045)}.viewer-page .share-unlock-center{overflow-y:auto;padding:16px 16px 64px}.viewer-page .login-form.share-unlock-form{width:min(100%,380px);padding:32px;border:1px solid light-dark(#e2d6c5,#223a4d);border-radius:6px;background:light-dark(#fbf7f1,#12273a);color:light-dark(#182431,#ede4d6);box-shadow:0 1px 2px color-mix(in srgb,var(--public-shade) 18%,transparent),0 16px 32px -16px color-mix(in srgb,var(--public-shade) 45%,transparent)}.viewer-page .share-unlock-form h2{margin:16px 0 8px;font-size:24px;line-height:1.3;font-weight:600}.viewer-page .share-unlock-form>p{font-size:14px;line-height:1.6}.viewer-page .share-unlock-form>label{margin:32px 0 8px}.viewer-page .share-unlock-form .share-unlock-icon{display:block;margin:0}.viewer-page .share-unlock-password-field{position:relative}.viewer-page .share-unlock-password-field input{margin:0;height:46px;padding:12px 48px 12px 14px;line-height:20px;font-size:16px}.viewer-page .share-unlock-visibility{position:absolute;right:4px;top:4px;width:40px;height:40px;display:grid;place-items:center;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted)}.viewer-page .share-unlock-form .form-error{padding:0;border:0;color:inherit;background:transparent;font-weight:600}.viewer-page .share-unlock-form .button.primary{height:44px;margin-top:24px}.viewer-page .opening-note{--note-ink-light: #1b2531;--note-ink-dark: #ede4d6;background:light-dark(#f4ece1,#0c1b27)}.viewer-page .stack-rack{min-height:100%;padding:0 24px;gap:32px}.viewer-page .stack-rack.is-wrapped{width:100%;flex-wrap:wrap;align-content:center;column-gap:var(--rack-gap);row-gap:0;padding:var(--rack-block) var(--rack-inset)}.viewer-page .stack-break{flex-basis:100%;height:var(--rack-gap)}.viewer-page .paper-mini .paper-content{min-height:calc(var(--paper-width, 640px) * 290 / 220);translate:0 calc(-1 * var(--resume-offset, 0px))}.viewer-page .reading-mini{position:absolute;top:0;left:0;transform-origin:0 0;pointer-events:none;background:var(--public-paper)}.viewer-page .paper-content:has(.markdown>h1:first-child):before{content:"";display:block;margin-bottom:24px}.viewer-page .paper-content .markdown h1{margin:0 0 32px;color:var(--public-ink)}.viewer-page .paper-content .markdown h2,.viewer-page .paper-content .markdown h3,.viewer-page .paper-content .markdown h4,.viewer-page .paper-content .markdown h5,.viewer-page .paper-content .markdown h6{color:var(--public-ink)}.viewer-page .paper-content .markdown p{text-wrap:pretty}.viewer-page .paper-content .markdown blockquote,.viewer-page .paper-content .markdown pre{margin:24px 0}.viewer-page .paper-content .markdown blockquote p:last-child{margin-bottom:0}.viewer-page .paper-content .markdown ul:not(.contains-task-list){list-style:none;padding-left:0;margin:0}.viewer-page .paper-content .markdown ul:not(.contains-task-list)>li{position:relative;padding-left:22px;margin:0 0 4px;line-height:1.8}.viewer-page .paper-content .markdown ul:not(.contains-task-list)>li:before{content:"–";position:absolute;left:0;color:var(--public-muted)}.viewer-page .paper-content .markdown ul:not(.contains-task-list)>li>p{margin:0}.viewer-page .paper-content .markdown pre{line-height:1.6}.viewer-page .file-paper-mini{display:block;width:var(--paper-width, 640px);min-height:calc(var(--paper-width, 640px) * 236 / 190);padding:calc(var(--paper-width, 640px) * .34) 52px 58px;transform:scale(var(--paper-scale));transform-origin:0 0}.viewer-page .file-cover{display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--public-ink)}.viewer-page .file-cover-extension{width:96px;height:120px;border:2px solid var(--public-ink);border-radius:6px;display:grid;place-items:center;font-family:var(--font-mono);font-size:24px;font-weight:500}.viewer-page .file-cover strong{margin-top:40px;font-size:40px;font-weight:600;overflow-wrap:anywhere;max-width:100%}.viewer-page .file-cover-size{margin-top:16px;font-family:var(--font-mono);font-size:24px;color:var(--public-muted)}.viewer-page .file-paper{display:flex;flex-direction:column;align-items:center;text-align:center}.viewer-page .file-paper>p{max-width:360px;margin:32px 0 0;color:#4f4a44;font-size:16px;line-height:1.7}.viewer-page .file-download{margin-top:24px;height:44px;padding:0 20px;display:inline-flex;align-items:center;gap:8px;border:0;border-radius:6px;background:#13304a;color:#f6eee3;font-size:14px;font-weight:600;transition:background-color .18s,transform .2s cubic-bezier(.3,1.4,.5,1)}.viewer-page .file-download:hover{background:#1d4266}.viewer-page .file-download:active{transform:scale(.97)}.viewer-page .file-download:disabled{opacity:.65;cursor:wait}.viewer-page .file-download-error{font-weight:600}.viewer-page .focus-sheet-shadow{position:absolute;z-index:1;pointer-events:none;border-radius:6px;box-shadow:0 24px 48px -24px color-mix(in srgb,var(--public-shade) 50%,transparent)}.viewer-page .focus-surface{box-shadow:none}.viewer-page .focus-content{z-index:2}.viewer-page .focus-layer .reader-actions{bottom:calc(var(--reader-inset-bottom, 0px) + 24px)}.viewer-page .reader-actions-pill button{transition:background-color .18s}.viewer-page .reader-actions-pill button:active{transform:none}.viewer-page .reader-actions:not(.is-visible){transition:transform .2s ease-in,opacity .16s ease-in,visibility .2s}.viewer-page .asset-context-menu{animation:public-menu-in .16s cubic-bezier(.2,.8,.2,1)}@keyframes public-menu-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}.viewer-page.is-locked .site-header{position:relative;flex:none;padding:32px}.viewer-page .share-unlock-form>p{margin:0}.viewer-page .share-unlock-form .form-error{margin-top:16px}.viewer-page .share-unlock-form>label{line-height:normal}.viewer-page .public-toast{position:absolute;left:50%;bottom:32px;transform:translate(-50%);z-index:70;display:flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:6px;background:light-dark(#fbf7f1,#12273a);color:light-dark(#182431,#ede4d6);font-size:14px;font-weight:500;white-space:nowrap;box-shadow:0 1px 2px color-mix(in srgb,var(--public-shade) 20%,transparent),0 10px 24px -10px color-mix(in srgb,var(--public-shade) 45%,transparent);animation:public-toast-in .32s cubic-bezier(.3,1.3,.5,1)}@keyframes public-toast-in{0%{opacity:0;translate:0 12px;scale:.98}to{opacity:1;translate:0 0;scale:1}}@media(max-width:639px){.viewer-page .site-header{padding:20px}.viewer-page .paper-content{padding:40px 24px 96px}.viewer-page .paper-content .prose{font-size:16px}.viewer-page .paper-content .markdown h1{font-size:40px}.viewer-page .stack-rack{gap:16px;padding:0 24px}}@media(prefers-reduced-motion:reduce){.viewer-page .reader-copy-label,.viewer-page .reader-copy-label[data-open=true],.viewer-page .reader-actions,.viewer-page .reader-actions.is-visible{transition:none}}.viewer-page .video-badge{position:absolute;left:8px;bottom:8px;z-index:2;display:inline-flex;align-items:center;gap:6px;height:20px;padding:0 6px;border-radius:2px;background:#0c1b279e;color:#f1e7d8;font:500 11px/1 var(--font-mono);pointer-events:none;transition:opacity .2s}.viewer-page .video-media-host:has(.is-playing)~.video-badge{opacity:0}.viewer-page .document-frame.has-memory .document-placeholder{position:relative;opacity:1}.viewer-page .document-frame.has-memory .document-renderer{position:absolute;inset:0 0 auto;opacity:1}.viewer-page .document-frame.has-memory .document-loading{display:none}.viewer-page .document-frame.has-memory .pdf-page:not(:has(canvas[data-rendered])),.viewer-page .reading-mini .pdf-page:not(:has(canvas[data-rendered])){background:transparent}.viewer-page .reading-mini .pdf-page canvas:not([data-rendered]){display:none}.viewer-page.tone-gray{--public-paper: light-dark(#fff, #e6e6e6);--public-muted: #6b6e70;--public-shade: #23272b;--public-shadow: 0 1px 2px #23272b1a, 0 5px 10px #23272b14, 0 16px 28px #23272b14;background:light-dark(#e5e6e7,#000);color:light-dark(#2c2e30,#ededed)}.viewer-page.tone-gray :is(.site-header,.brand,.viewer-loading){color:light-dark(#2c2e30,#ededed)}.viewer-page.tone-gray .brand-period{color:light-dark(#a75b3c,#ce9478)}.viewer-page.tone-gray .brand-mark{--mark-front: light-dark(#2c2e30, #ededed);--mark-back: light-dark(#9b9e9f, #5a5d5f);--mark-accent: light-dark(#a75b3c, #ce9478)}.viewer-page.tone-gray .viewer-state p{color:light-dark(#727577,#ababab)}.viewer-page.tone-gray .preview-card:is(.kind-image,.kind-video,.kind-document),.viewer-page.tone-gray .stack-mini:is(.kind-image,.kind-video,.kind-document),.viewer-page.tone-gray .preview-card .video-thumbnail,.viewer-page.tone-gray .stack-mini .video-thumbnail{background:light-dark(rgb(44 46 48 / 6%),rgb(237 237 237 / 6%))}.viewer-page.tone-gray .preview-card:focus-visible,.viewer-page.tone-gray .stack-preview:focus-visible{outline-color:light-dark(#2c2e30,#ededed)}.viewer-page.tone-gray .office-content{background:var(--public-paper)}.viewer-page.tone-gray .office-content :is(td,th),.viewer-page.tone-gray .office-content section+section{border-color:#d6d8da}.viewer-page.tone-gray .office-content th{background:#f0f1f2}.viewer-page.tone-gray .focus-back:hover{background:#fff}.viewer-page.tone-gray .paper-content .markdown blockquote{color:#4d5052;border-color:#d6d8da}.viewer-page.tone-gray .focus-content{scrollbar-color:#b1b4b6 transparent}.viewer-page.tone-gray .paper-content .markdown pre,.viewer-page.tone-gray .paper-content .markdown code{background:#f0f1f2}.viewer-page.tone-gray :is(.reader-action-error,.media-error,.privacy-unavailable,.reader-filename-full){border-color:#d6d8da}.viewer-page.tone-gray .reader-filename-full{background:#fff}.viewer-page.tone-gray .reader-actions-pill,.viewer-page.tone-gray .file-download{background:#303436}.viewer-page.tone-gray .reader-actions-pill button:hover,.viewer-page.tone-gray .file-download:hover{background:#464b4d}.viewer-page.tone-gray{--public-ink: #2c2e30;--surface: light-dark(#fff, #1c1e20);--paper: light-dark(#fff, #1c1e20);--ink: light-dark(#2c2e30, #ededed);--muted: light-dark(#6b6e70, #ababab);--line: light-dark(#c4c7c9, #3a3e41);--line-soft: light-dark(#d6d8da, #2e3234);--accent: light-dark(#303436, #e6e6e6);--accent-dark: light-dark(#464b4d, #fff);--primary-text: light-dark(#f4f4f4, #1c1e20);--hover: light-dark(#f0f1f2, #26292b)}.viewer-page.tone-gray .reader-actions-pill button,.viewer-page.tone-gray .file-download{color:#f4f4f4}.viewer-page.tone-gray .reader-actions-pill button:focus-visible{outline-color:#f4f4f4}.viewer-page.tone-gray .file-paper>p{color:#4d5052}.viewer-page.tone-gray .paper-content .markdown a{color:#2c2e30}.viewer-page.tone-gray .asset-context-menu,.viewer-page.tone-gray .public-toast,.viewer-page.tone-gray .login-form.share-unlock-form{background:light-dark(#fff,#1c1e20);color:light-dark(#2c2e30,#ededed);border-color:light-dark(#d6d8da,#2e3234)}.viewer-page.tone-gray .asset-context-menu button:hover,.viewer-page.tone-gray .asset-context-menu button:focus-visible{background:light-dark(#f0f1f2,#26292b)}.viewer-page.tone-gray .video-badge{background:#23272b9e;color:#f4f4f4}.viewer-page.tone-gray .opening-note{--note-ink-light: #2c2e30;--note-ink-dark: #ededed;background:light-dark(#e5e6e7,#000)}.viewer-page.tone-gray .handwritten-note{background:light-dark(#e5e6e7,#000)}.viewer-page.tone-gray .handwritten-note-text{color:light-dark(#2c2e30,#ededed)}.viewer-page{--public-muted: light-dark(#6a6259, #625a51)}.viewer-page.tone-gray{--public-muted: light-dark(#6b6e70, #5f6264)}.viewer-page.tone-gray .viewer-state p{color:light-dark(#616466,#ababab)}.viewer-page .share-unlock-password-field input{border-color:light-dark(#8c7f6e,#5f7d94)}.viewer-page .share-unlock-password-field input::placeholder{color:light-dark(#646a71,#8fa2b4)}.viewer-page.tone-gray .share-unlock-password-field input{border-color:light-dark(#8a8d90,#6b7074)}.viewer-page.tone-gray .share-unlock-password-field input::placeholder{color:light-dark(#6b6e71,#9a9ea1)}.viewer-page .share-unlock-password-field input:focus{border-color:light-dark(#9b715e,#dfab91)}@media(prefers-contrast:more){.viewer-page :focus-visible{outline-width:3px;outline-offset:3px}}.login-page .login-art{display:none}.login-page .login-password{position:relative}.login-page .login-password input{width:100%;padding-right:48px;border-color:light-dark(#8c7f6e,#5f7d94);background:light-dark(#fefaf4,#0f2232)}.login-page .login-password input::placeholder{color:light-dark(#646a71,#8fa2b4)}.login-page .login-password input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.login-page .login-visibility{position:absolute;top:50%;right:6px;width:36px;height:36px;min-height:0;translate:0 -50%;color:light-dark(#56606b,#a3b3c0)}.login-page .login-visibility:hover{color:var(--ink)}.login-page .login-form.is-retry .login-password{animation:login-retry .42s cubic-bezier(.3,1.25,.5,1)}@keyframes login-retry{20%{translate:-6px 0}45%{translate:5px 0}70%{translate:-3px 0}}.login-page .login-form .form-error{animation:login-error-in .22s ease both}@keyframes login-error-in{0%{opacity:0;translate:0 -4px}}@media(min-width:960px){.login-page{display:grid;grid-template-columns:minmax(360px,5fr) 7fr;grid-template-rows:auto 1fr}.login-page .login-art{grid-row:1 / -1;grid-column:1;display:flex;flex-direction:column;justify-content:space-between;padding:40px;background:light-dark(#13304a,#091620);color:#f1e7d8;overflow:hidden}.login-page .login-art-mark{--mark-front: #f1e7d8;--mark-back: #8fa6ba;--mark-accent: #e7a1a8;width:168px;height:168px;margin:auto 0 0 -12px;animation:login-art-in .72s cubic-bezier(.3,1.25,.5,1) both}.login-page .login-art p{max-width:18em;margin:32px 0 auto;font-size:28px;line-height:1.35;font-weight:500;letter-spacing:-.01em;color:#f1e7d8;animation:login-art-in .72s 80ms cubic-bezier(.3,1.25,.5,1) both}.login-page .site-header{grid-column:2;grid-row:1}.login-page .login-center{grid-column:2;grid-row:2}}@keyframes login-art-in{0%{opacity:0;translate:0 12px}}@media(prefers-reduced-motion:reduce){.login-page .login-form.is-retry .login-password,.login-page .login-form .form-error,.login-page .login-art-mark,.login-page .login-art p{animation:none}}
