@charset "UTF-8";
:root{color-scheme:light;--bg:#f7f8f4;--ink:#24332b;--muted:#65715f;--green:#537b54;--line:#dfe3d9;--white:#fff;--soft:#edf1e7;--danger:#a33f34;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible{outline:3px solid #759b61;outline-offset:4px}input:focus{outline:2px solid #759b61;outline-offset:1px}[hidden]{display:none!important}.shell{max-width:1104px;margin:0 auto;padding:0 40px;min-height:100dvh;display:flex;flex-direction:column}.header{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:13px;align-items:center;font-size:19px;font-weight:600;letter-spacing:-.6px}.brand-muted{font-weight:400;color:#65715f}.brand-mark{background:var(--ink);color:var(--bg);width:34px;height:34px;border-radius:10px;font:italic 30px Georgia;position:relative;text-align:center;padding-right:7px;padding-top:1px}.brand-mark span{position:absolute;right:3px;top:1px;font:15px sans-serif}.header-actions{display:flex;align-items:center;gap:19px}.private-label{font-size:12px;color:#65715f;display:flex;align-items:center;gap:7px}.status-dot,.tiny-dot{width:6px;height:6px;background:#75946b;border-radius:50%;display:inline-block}.icon-button{border:1px solid var(--line);background:transparent;width:30px;height:30px;border-radius:50%;font-size:15px;display:inline-flex;align-items:center;justify-content:center}.text-button{background:none;border:0;font-size:12px;padding:8px 0;color:#65715f}.text-button:hover{color:var(--ink)}main{flex:1}h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:58px;letter-spacing:-2.2px;margin:16px 0 16px;line-height:1.13}.accent{color:var(--green)}.intro{font-size:14px;color:#65715f;line-height:1.85;margin:0}.dropzone{width:100%;min-height:190px;background:#f0f3eb;border:1px dashed #b6c4ab;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-direction:column;transition:background .2s,border .2s,transform .2s}.dropzone:hover,.dropzone.dragging{background:#e8efdf;border-color:#66885a}.dropzone.dragging{transform:scale(1.008)}.upload-symbol{display:flex;align-items:center;justify-content:center;height:55px;width:55px;background:#e3eadb;border:1px solid #d9e3cf;border-radius:16px;margin-bottom:18px;color:#65715f}.upload-symbol svg{width:24px;height:24px}.drop-title{font-size:17px;font-weight:500;letter-spacing:-.3px}.drop-subtitle{font-size:12px;color:#65715f;margin-top:10px}.browse-label{color:#52704b;border-bottom:1px solid #a5b59d;padding-bottom:2px}.browse-label span{margin-left:3px}.drop-meta{color:#65715f;font-size:10px;letter-spacing:.15px;margin-top:24px}.shelf-heading{display:flex;justify-content:space-between;align-items:center;margin:26px 0 18px}h2{font-size:18px;font-weight:500;letter-spacing:-.5px;margin:0}.shelf-heading h2{display:flex;align-items:center;gap:9px}.count{font:10px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#e9ede3;padding:3px 7px;border-radius:20px;color:#65715f;min-width:22px;text-align:center}.refresh span{font-size:17px;margin-left:5px}.file-list{border-top:1px solid var(--line)}.file-row{display:flex;align-items:center;gap:16px;padding:21px 2px;border-bottom:1px solid var(--line)}.file-type{height:43px;width:39px;flex-shrink:0;border-radius:7px;background:#e9eee2;display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:600;letter-spacing:.7px;color:#65715f;border:1px solid #e1e6d8}.file-type.image{background:#ebe8df;border-color:#e4e0d5;color:#65715f}.file-type.archive{background:#e7e9ee;border-color:#dde1e8;color:#65715f}.file-type.pdf{background:#f0e5df;border-color:#eadbd2;color:#65715f}.file-info{min-width:0;flex:1}.file-name{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-details{font-size:10px;color:#65715f;display:flex;gap:8px;align-items:center;margin-top:7px}.detail-dot{font-size:8px}.locked-tag{display:flex;align-items:center;gap:3px;color:#65715f}.locked-tag svg{width:10px;height:10px}.expiry{font-size:10px;background:#edf1e6;color:#65715f;padding:6px 9px;border-radius:5px;white-space:nowrap;margin-right:18px}.expiry.soon{background:#f3ebdd;color:#65715f}.row-actions{display:flex;gap:4px}.action{height:34px;width:34px;padding:9px;display:inline-flex;align-items:center;justify-content:center;border:0;background:none;border-radius:7px;color:#65715f}.action svg{width:16px;height:16px;flex-shrink:0}.action:hover{background:#e8ede1;color:#45643d}.action.delete:hover{background:#f2e2de;color:var(--danger)}.action.active{color:#65715f}.empty-state{text-align:center;padding:41px 16px 44px;border-bottom:1px solid var(--line)}.empty-icon{display:inline-flex;color:#65715f;margin-bottom:15px}.empty-icon svg{width:29px;height:29px}.empty-state h3{font-family:Georgia,serif;font-weight:400;letter-spacing:-.3px;font-size:21px;margin:0 0 9px}.empty-state p{font-size:12px;color:#65715f;margin:0;line-height:1.7}.shelf-footnote{font-size:10px;color:#65715f;display:flex;justify-content:space-between;gap:16px;margin-top:18px}.shelf-footnote>span:first-child{display:flex;align-items:center;gap:7px}.tiny-dot{width:4px;height:4px;background:#9ca98d}.footer{justify-content:flex-end;border-top:1px solid var(--line);margin-top:32px;min-height:56px;display:flex;align-items:center;justify-content:space-between;color:#65715f;font-size:11px;padding-bottom:env(safe-area-inset-bottom)}.footer .text-button{font-size:11px}.install-icon{font-size:16px;margin-right:5px}.state-view{padding:74px 0 25px}.state-view h1{font-size:61px;line-height:1.11}.login-card{max-width:430px;background:#fffefb;border:1px solid var(--line);border-radius:12px;padding:24px;margin-top:35px}.login-card label{font-size:14px}.login-card p{font-size:12px;color:var(--muted);line-height:1.7;margin:7px 0 16px}.login-fields{display:flex;gap:9px}.login-fields input{min-width:0;flex:1}.primary-button{border:1px solid var(--ink);background:var(--ink);color:#f6f8ef;border-radius:7px;padding:12px 17px;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:44px}.primary-button:hover{background:#3d533c}.primary-button span{font-size:16px}.wide{width:100%;margin-top:24px;justify-content:space-between}.quiet-note{font-size:11px;color:#65715f;margin-top:21px}.connection{margin-top:20px;background:#eee8db;color:#65715f;font-size:12px;border-radius:6px;padding:12px;line-height:1.6}input{width:100%;background:#fffefb;border:1px solid #dce1d5;border-radius:7px;min-height:44px;padding:11px 12px;color:var(--ink);font-size:14px}input::placeholder{color:#65715f}label{font-size:12px;display:block;margin-bottom:9px}.optional{font-size:10px;color:#65715f;margin-left:7px;font-weight:400}.form-error,.login-card p.form-error{color:var(--danger);font-size:12px;line-height:1.6;margin:12px 0 0}.field-hint{font-size:11px;line-height:1.7;color:#65715f;margin:9px 0 0}dialog{width:440px;max-width:calc(100% - 32px);border:1px solid var(--line);border-radius:16px;background:#f9faf6;color:var(--ink);padding:29px;box-shadow:0 24px 90px #1b332526}dialog::backdrop{background:#26352a50;backdrop-filter:blur(4px)}dialog h2{font:500 22px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-1px;margin:23px 0 10px}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head .icon-button{border:0;font-size:23px}.dialog-description{font-size:12px;color:#65715f;line-height:1.7;overflow-wrap:anywhere;margin:0 0 23px}.upload-selection{max-height:190px;overflow:auto;border-top:1px solid var(--line);margin:4px 0 23px}.selected-row{padding:12px 0;border-bottom:1px solid var(--line)}.selected-line{display:flex;gap:12px;align-items:center;justify-content:space-between}.selected-name{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-size{font-size:10px;color:#65715f;white-space:nowrap}.upload-progress{display:block;width:100%;height:3px;margin-top:10px;accent-color:var(--green);border:0;border-radius:5px}.upload-progress::-webkit-progress-bar{background:#e2e8dc;border-radius:5px}.upload-progress::-webkit-progress-value{background:#759466;border-radius:5px}.upload-status{font-size:10px;color:#65715f;margin-top:6px;display:block}.upload-status.failed{color:var(--danger)}.dialog-bottom{text-align:center;color:#65715f;font-size:10px;margin:16px 0 0}.dialog-buttons{display:flex;gap:10px;margin-top:26px}.dialog-buttons button{flex:1;border-radius:7px;font-size:12px;min-height:44px;padding:12px}.secondary-button{background:transparent;border:1px solid var(--line)}.danger-button{background:#a33f34;color:white;border:1px solid #a33f34}.help-steps{list-style:none;counter-reset:step;padding:0;margin:26px 0}.help-steps li{position:relative;padding-left:36px;margin-bottom:24px;counter-increment:step}.help-steps li::before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:2px;font-size:10px;color:#65715f}.help-steps strong{display:block;font-size:13px;font-weight:500}.help-steps span{display:block;font-size:12px;line-height:1.7;color:#65715f;margin-top:6px}.help-note{font-size:11px;line-height:1.8;border-top:1px solid var(--line);padding-top:18px;color:#65715f}.toast{position:fixed;left:50%;bottom:calc(26px + env(safe-area-inset-bottom));transform:translateX(-50%);background:var(--ink);color:#f2f5ec;font-size:12px;padding:13px 22px;border-radius:9px;box-shadow:0 4px 20px #0002;max-width:calc(100% - 32px);text-align:center;z-index:20;line-height:1.6}.share-card{margin-top:32px;max-width:500px;background:#fffefb;border:1px solid var(--line);border-radius:12px;padding:26px}.share-card h2{font-size:17px;overflow-wrap:anywhere;margin:17px 0 10px}.share-meta{font-size:12px;color:#65715f;line-height:1.8}.share-card .primary-button{margin-top:22px;width:100%}.share-card .field-hint{margin-top:16px}.share-gone{font-size:14px;line-height:1.8;color:#65715f}.share-card .file-type{width:45px;height:49px}.share-home{margin-top:24px;display:inline-block;font-size:12px;color:#65715f}
@media(min-width:1500px){.shell{max-width:1150px}.dropzone{min-height:190px}}
@media(max-width:700px){.shell{padding:0 23px}.header{height:87px}.brand{font-size:17px;gap:10px}.brand-mark{height:31px;width:31px;font-size:27px}.private-label{display:none}.header-actions{gap:15px}h1{font-size:43px;letter-spacing:-1.8px}.intro{font-size:12px}.dropzone{min-height:180px}.drop-title{font-size:15px}.shelf-heading{margin:24px 0 16px}.shelf-heading h2{font-size:17px}.file-row{gap:10px;padding:17px 0;flex-wrap:wrap}.file-type{height:40px;width:35px}.file-info{width:calc(100% - 50px);flex:1 1 calc(100% - 50px)}.file-name{font-size:12px}.expiry{margin:0 0 0 45px;padding:5px 8px}.row-actions{margin-left:auto;gap:7px}.action{height:40px;width:40px;padding:11px}.shelf-footnote{font-size:8px;gap:8px;line-height:1.6}.footer{margin-top:28px;min-height:56px;font-size:9px}.footer .text-button{font-size:10px}.state-view{padding:48px 0 14px}.state-view h1{font-size:45px;letter-spacing:-1.8px}.login-card{padding:20px;margin-top:28px}.login-fields{flex-direction:column}.login-fields input{font-size:16px}.login-fields .primary-button{justify-content:space-between}.quiet-note{font-size:9px;line-height:1.8}dialog{padding:24px;max-height:calc(100dvh - 40px);overflow:auto}dialog h2{font-size:29px}input{font-size:16px}.share-card{padding:22px}.empty-state p{font-size:11px}.empty-state{padding:35px 10px}.upload-symbol{width:48px;height:48px}.share-meta{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.primary-button svg{width:17px;height:17px;flex-shrink:0}

/* Compact tool layout. */
#shelf-view{padding-top:24px}.footer{justify-content:flex-end}.state-view{padding:32px 0 20px}.state-view h1{font-family:inherit;font-size:26px;line-height:1.3;letter-spacing:-.5px;margin:0 0 20px}.login-card{margin-top:0}.dialog-head{justify-content:flex-end}dialog h2{margin-top:8px;font-size:22px;letter-spacing:-.4px}.empty-state h3{font:500 14px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.share-card{margin-top:20px}@media(max-width:700px){#shelf-view{padding-top:20px}.state-view h1{font-size:24px}}

.field-spacing{height:20px}
