@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:Manrope,PingFang SC,Microsoft YaHei,sans-serif;color:#20201f;background:#f2efe9;line-height:1.5;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:#f2efe9}button,input,select{font:inherit}button{cursor:pointer}.grain{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.22;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.16'/%3E%3C/svg%3E");z-index:9}.paper-card{background:#fcfbf8;border:1px solid #d9d4ca;box-shadow:5px 7px #332b2014,0 18px 42px #3530271a}.eyebrow,.section-kicker{font:500 10px/1.4 DM Mono,monospace;letter-spacing:.14em;color:#806646}.eyebrow{margin:0 0 14px}.primary-btn,.secondary-btn,.text-btn,.download-btn{border:0;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:.2s ease}.primary-btn{background:#183b71;color:#fff;padding:13px 20px;font-weight:800;font-size:13px;border:1px solid #183b71;box-shadow:3px 3px #a58457}.primary-btn:hover{background:#28518e;transform:translate(-1px,-1px);box-shadow:5px 5px #a58457}.primary-btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.secondary-btn{background:transparent;border:1px dashed #9f998d;padding:11px 16px;color:#45423e}.icon-btn{width:34px;height:34px;border:0;background:transparent;color:#625d55;display:grid;place-items:center}.icon-btn:hover{background:#ece8e0}.auth-page,.share-page{min-height:100vh;display:grid;place-items:center;padding:36px;position:relative;overflow:hidden}.auth-page:before,.share-page:before{content:"";position:absolute;width:62vw;height:62vw;border:1px solid #d9d1c3;border-radius:50%;right:-25vw;top:-30vw}.auth-card{width:min(600px,100%);padding:58px 60px;position:relative;z-index:10}.stamp{display:inline-flex;align-items:center;gap:7px;border:1px dashed #b0834b;color:#9b6331;padding:7px 9px;font:600 10px DM Mono,monospace;letter-spacing:.1em;background:#fffaf0}.auth-card h1,.share-download h1,.share-error h1{font:700 40px/1.28 Libre Baskerville,Songti SC,serif;letter-spacing:-.04em;margin:0 0 20px}.auth-card h1 em{font-weight:400;color:#806646}.lead{font-size:14px;line-height:1.9;color:#69645c;max-width:470px;margin:0 0 32px}.auth-card label,.share-modal label{font-size:12px;font-weight:800;display:block;margin:14px 0 8px;color:#3f3d38}.secret-input{height:52px;border:1px solid #cfc7ba;background:#fff;display:flex;align-items:center;padding-left:15px}.secret-input svg{color:#806646}.secret-input input{border:0;outline:0;min-width:0;flex:1;background:transparent;padding:0 12px;font-size:14px}.secret-input button{height:100%;border:0;background:#183b71;color:#fff;font-weight:800;padding:0 17px;font-size:12px}.error{color:#b53232;font-size:12px;margin:13px 0 0}.auth-note{border-top:1px solid #e3ded5;margin-top:30px;padding-top:16px;font-size:11px;color:#777166}.auth-note span{color:#6d8d67}.auth-footer{position:absolute;bottom:22px;font:10px DM Mono;color:#898177;letter-spacing:.1em;z-index:2}.auth-footer span{margin:0 7px}.app-shell{min-height:100vh;max-width:1440px;margin:auto;padding:0 42px;position:relative}.topbar{height:88px;border-bottom:1px solid #d8d1c6;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px}.brand-mark{display:grid;place-items:center;width:34px;height:34px;background:#183b71;color:#fff;box-shadow:3px 3px #b18b58}.brand strong{display:block;font:700 11px DM Mono;letter-spacing:.1em}.brand small{display:block;font-size:10px;color:#81796d;margin-top:2px}.top-actions{display:flex;align-items:center;gap:15px}.status{font:10px DM Mono;letter-spacing:.08em;color:#6b665d}.status i{display:inline-block;width:7px;height:7px;background:#669460;border-radius:50%;margin-right:5px}.dashboard-hero{padding:67px 0 49px;display:flex;align-items:end;justify-content:space-between;gap:25px}.dashboard-hero h1{font:700 clamp(31px,4vw,51px)/1.25 "Libre Baskerville","Songti SC",serif;letter-spacing:-.055em;margin:0}.dashboard-hero h1 span{color:#806646;font-weight:400;font-style:italic}.hero-copy{font-size:13px;line-height:1.8;max-width:520px;color:#706a60;margin:17px 0 0}.upload-btn{flex:none}.toolbar{border-top:1px solid #d8d1c6;border-bottom:1px solid #d8d1c6;padding:13px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.library-count{display:flex;align-items:center;gap:11px}.library-count span{font:10px DM Mono;letter-spacing:.1em;color:#806646}.library-count strong{font:700 22px Libre Baskerville}.search-box{width:min(310px,100%);background:#faf9f6;border:1px solid #d9d4ca;display:flex;align-items:center;padding:0 10px;color:#847d72}.search-box input{height:36px;flex:1;min-width:0;border:0;outline:0;background:transparent;padding-left:8px;font-size:12px}.file-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:28px 0 68px}.file-card{min-width:0;background:#faf9f6;border:1px solid #d8d1c6;padding:16px;position:relative;box-shadow:2px 3px #463d2f12;transition:transform .2s,box-shadow .2s}.file-card:hover{transform:translateY(-3px);box-shadow:6px 9px #463d2f1c}.card-top{display:flex;justify-content:space-between;align-items:flex-start}.file-icon{width:54px;height:62px;background:#e5ded0;border:1px solid #cfc3af;color:#6d5738;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.file-icon:after{content:"";position:absolute;right:0;top:0;border-style:solid;border-width:0 0 12px 12px;border-color:transparent transparent #f8f6f0 transparent}.file-icon span{position:absolute;bottom:4px;font:700 8px DM Mono;letter-spacing:.05em}.file-icon.image-icon{background:#d8e0d2;color:#456149}.file-card h3{font-size:13px;line-height:1.45;margin:17px 0 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-meta{font:10px DM Mono;letter-spacing:.02em;color:#80786d;display:flex;gap:9px;flex-wrap:wrap}.file-meta span+span:before{content:"·";margin-right:9px}.card-bottom{border-top:1px solid #e5e0d7;margin-top:15px;padding-top:11px;font:10px DM Mono;color:#8a8378;display:flex;justify-content:space-between;align-items:center}.download-btn{background:transparent;color:#183b71;font-weight:800;font-size:11px;padding:3px 0}.mini-menu{position:absolute;right:14px;top:49px;background:#fffdf9;border:1px solid #d8d1c6;box-shadow:3px 5px 12px #463e3020;z-index:5;width:130px;padding:5px}.mini-menu button{width:100%;border:0;background:transparent;text-align:left;display:flex;gap:7px;align-items:center;padding:8px;font-size:11px}.mini-menu button:hover{background:#f0ede7}.danger-text{color:#ac3939}.empty-state{min-height:380px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;color:#756f65;gap:9px}.empty-state h2{font:700 25px Libre Baskerville;color:#37342f;margin:6px 0 0}.empty-state p{font-size:12px;margin:0 0 13px}.loader{width:23px;height:23px;border:2px solid #d7d0c4;border-top-color:#183b71;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-footer{border-top:1px solid #d8d1c6;padding:18px 0 24px;display:flex;justify-content:space-between;font:9px DM Mono;letter-spacing:.1em;color:#8c857a}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#27231d80;z-index:30;display:grid;place-items:center;padding:20px}.upload-modal,.share-modal,.result-modal{position:relative;width:min(600px,100%);padding:35px}.share-modal{width:min(470px,100%)}.result-modal{width:min(460px,100%);text-align:center;padding:44px}.close-btn{position:absolute;right:12px;top:12px;border:0;background:transparent;color:#756d61}.upload-modal h2,.share-modal h2,.result-modal h2{font:700 28px Libre Baskerville;margin:10px 0 8px;letter-spacing:-.04em}.muted{font-size:12px;color:#756f65;margin:0}.drop-zone{border:1px dashed #a79a87;background:#f6f2ea;margin:22px 0 14px;padding:38px 20px;display:flex;flex-direction:column;align-items:center;gap:7px;color:#806646}.drop-zone strong{font-size:13px;color:#413b33}.drop-zone span{font-size:11px;color:#7d756b}.selected-files{max-height:148px;overflow:auto;border-top:1px solid #e4ded3}.selected{padding:9px 0;border-bottom:1px solid #e4ded3;display:flex;justify-content:space-between;gap:10px;font-size:11px}.selected span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected small{white-space:nowrap;color:#7f786d}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:15px;margin-top:22px}.text-btn{background:none;color:#686157;font-size:12px;padding:11px}.share-file{border-bottom:1px solid #e4ded3;padding-bottom:15px;font:11px DM Mono;color:#776e61}.share-modal input,.share-modal select,.share-password{width:100%;border:1px solid #d2cabc;background:#fff;height:40px;padding:0 10px;outline-color:#183b71;font-size:12px}.optional{font-weight:400;color:#918a7d}.success-mark{width:42px;height:42px;margin:0 auto 14px;border:1px solid #9dbe94;color:#4f844a;display:grid;place-items:center;border-radius:50%;background:#f1f8ed}.url-box{margin:23px 0;border:1px solid #d7cdbc;background:#f7f3ea;padding:12px;display:flex;align-items:center;text-align:left;word-break:break-all;font:10px/1.6 DM Mono;color:#655b4d}.url-box button{border:0;background:none;color:#183b71;margin-left:8px}.wide{width:100%}.share-page{background:radial-gradient(circle at 60% 25%,#f8f2e6,transparent 30%),#f2efe9}.share-download{width:min(600px,100%);padding:50px;position:relative;z-index:3}.share-download h1{font-size:32px;overflow-wrap:anywhere;margin-top:17px}.share-details{border-top:1px solid #e3ddd3;border-bottom:1px solid #e3ddd3;padding:12px 0;margin:23px 0;display:grid;gap:8px}.share-details span{font-size:11px;color:#81786d;display:flex;justify-content:space-between;gap:10px}.share-details b{font-weight:700;color:#3f3b35}.share-password{margin-bottom:13px}.download-link{text-decoration:none;width:100%}.download-note{text-align:center;color:#888176;font-size:10px;margin:17px 0 0}.share-error{padding:46px;text-align:center;position:relative;z-index:3;width:min(470px,100%)}.error-symbol{font:35px Libre Baskerville;color:#a84141}.splash{min-height:100vh;display:grid;place-items:center;color:#183b71}@media(max-width:1000px){.file-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.app-shell{padding:0 18px}.topbar{height:73px}.status{display:none}.dashboard-hero{padding:42px 0 34px;align-items:flex-start;flex-direction:column}.dashboard-hero h1{font-size:32px}.toolbar{align-items:stretch;flex-direction:column}.search-box{width:100%}.file-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding-top:18px}.file-card{padding:12px}.file-icon{width:46px;height:53px}.app-footer span:nth-child(2){display:none}.auth-page,.share-page{padding:17px}.auth-card,.share-download{padding:36px 25px}.auth-card h1{font-size:31px}.secret-input button{padding:0 11px}.upload-modal,.share-modal{padding:27px 20px}.card-bottom{display:block}.download-btn{margin-top:6px}.file-meta{display:block}.file-meta span+span:before{display:none}.file-meta span{display:block}.share-download h1{font-size:25px}}@media(max-width:390px){.file-grid{grid-template-columns:1fr}.upload-btn{width:100%}}
