@font-face{font-family:Karla;src:url('/static/fonts/karla-700.ttf') format('truetype');font-weight:700;font-display:swap}@font-face{font-family:'Open Sans';src:url('/static/fonts/open-sans-400.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:'Open Sans';src:url('/static/fonts/open-sans-600.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:'Roboto Mono';src:url('/static/fonts/roboto-mono-400.ttf') format('truetype');font-weight:400;font-display:swap}
:root{--sans:'Open Sans',Arial,sans-serif;--display:Karla,Arial,sans-serif;--mono:'Roboto Mono',monospace}*{box-sizing:border-box}html{min-height:100%}body{margin:0;background:var(--paper);color:var(--ink);font:400 14px/1.6 var(--sans)}[hidden]{display:none!important}h1,h2,h3,p{margin:0}button,input{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button,input{border-radius:4px}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--blue);outline-offset:4px}svg{stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.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}.skip-link{position:absolute;top:-60px;left:20px;z-index:20;background:var(--surface);padding:12px;color:var(--ink)}.skip-link:focus{top:12px}.masthead{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:40px 48px 0}.brand{display:block;flex-shrink:0;max-width:100%}.brand-logo{width:300px;height:auto;max-width:100%}.brand-logo-positive{display:block}.header-actions{display:flex;align-items:center;gap:24px}.icon-button{width:44px;height:44px;padding:11px;display:inline-grid;place-items:center;border:0;background:transparent;font-size:27px;line-height:1}.icon-button svg{width:22px;height:22px}.icon-button:hover:not(:disabled){color:var(--blue);background:var(--blue-light)}.workspace{max-width:944px;margin:88px auto 60px;padding:0 32px}.dropzone{min-height:304px;display:grid;place-items:center;border:1px solid var(--line);border-radius:4px;background:var(--surface);transition:border-color .15s,background .15s}.dropzone.is-dragging{border-color:var(--blue);background:var(--blue-light)}.dropzone.is-disabled{opacity:.6}.browse{width:80px;height:80px;padding:18px;border:0;background:transparent;color:var(--muted)}.browse:hover:not(:disabled){color:var(--blue)}.browse svg{width:44px;height:44px;stroke-width:1.5}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:48px;padding:12px 24px;border:1px solid transparent;font:700 18px/1.3 var(--display)}.primary{background:var(--blue);color:var(--on-accent)}.primary:hover:not(:disabled){background:var(--blue-dark)}.outline{border-color:var(--line);background:var(--surface);color:var(--ink)}.outline:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.text-button{border:0;padding:10px 0;background:transparent;color:var(--blue);font-size:12px;font-weight:600;white-space:nowrap}.upload-actions{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px}.upload-actions>.button{min-width:200px;justify-content:space-between}.help{font-size:11px;line-height:1.7;color:var(--muted);margin-top:8px;overflow-wrap:anywhere}.muted{color:var(--muted);font-size:12px}.file-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:18px 0}.file-info{min-width:0;flex:1}.file-name{font-size:13px;font-weight:600;overflow-wrap:anywhere}.file-row .muted{margin-top:4px}.progress-panel{margin-top:24px}progress{display:block;width:100%;height:5px;border:0;border-radius:2px;background:var(--line);accent-color:var(--blue)}progress::-webkit-progress-bar{background:var(--line);border-radius:2px}progress::-webkit-progress-value{background:var(--blue);border-radius:2px}.progress-caption{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:8px;font-size:12px;color:var(--muted)}.share-panel{margin-top:24px}.copy-row{display:flex;gap:12px;align-items:center}.copy-row>input{min-width:0;flex:1}.copy-row>.button{font-size:15px;min-height:44px;white-space:nowrap}.transfers-section{margin-top:52px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.section-heading h2{font:700 22px var(--display)}.plain-list{list-style:none;padding:0;margin:0}.transfer-actions{display:flex;gap:16px;flex-wrap:wrap;justify-content:flex-end}.file-row .help{margin-top:2px}.message{padding:14px 16px;border-radius:4px;background:var(--red-light);color:var(--red);font-size:12px;white-space:pre-line;overflow-wrap:anywhere;margin-bottom:24px}.login-layout{max-width:360px;margin:112px auto 0}label,.field-label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}input:not([type=checkbox]){width:100%;height:46px;padding:10px 12px;background:var(--surface);border:1px solid var(--line)}input::placeholder{color:var(--muted)}.login-layout .button{width:100%;justify-content:space-between;margin-top:16px}.receiver{max-width:640px;margin:104px auto 0}.receiver h2{font:700 30px var(--display);margin-bottom:12px}.receiver .button{margin-top:24px}.receiver form{margin-top:24px}.download-name{font:700 24px/1.3 var(--display);margin:28px 0 10px;overflow-wrap:anywhere}.field{margin-bottom:24px}fieldset{padding:0;margin:0;border:0;min-width:0}.check-field{display:flex;align-items:center;gap:12px;min-height:40px;font-size:13px;font-weight:400;margin:8px 0}.check-field input{width:16px;height:16px;margin:0;accent-color:var(--blue);flex-shrink:0}dialog{width:calc(100% - 32px);max-width:500px;max-height:calc(100dvh - 48px);overflow:auto;margin:auto;padding:28px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);box-shadow:0 16px 64px rgb(0 0 0/.15)}dialog::backdrop{background:rgb(0 0 0/.35)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.dialog-heading h2{font:700 24px var(--display)}.dialog-heading .icon-button{margin:-8px -8px -8px 0}.key-management{margin:16px 0 24px}.key-management>summary{font-size:13px;cursor:pointer;min-height:40px}.key-management form{margin-top:12px}.key-management .file-row{flex-wrap:wrap;gap:8px}.key-management .copy-row{gap:8px}.account-actions{display:flex;justify-content:space-between;gap:16px;margin-top:8px}.key-name{overflow-wrap:anywhere}
@media(max-width:1024px){.masthead{padding:32px 32px 0}.brand-logo{width:270px}.workspace{margin-top:72px;max-width:824px}}
@media(max-width:680px){.masthead{padding:24px 24px 0;flex-wrap:wrap;gap:24px}.brand-logo{width:260px}.header-actions{gap:16px;margin-left:auto}.workspace{padding:0 24px;margin-top:48px}.dropzone{min-height:264px}.upload-actions{gap:16px}.upload-actions>.button{min-width:168px}.file-row{flex-wrap:wrap;gap:8px}.transfer-actions{width:100%;justify-content:flex-start}.receiver{margin-top:64px}}
@media(max-width:420px){.masthead{padding:24px 20px 0}.brand-logo{width:250px}.header-actions{width:100%;justify-content:flex-end}.workspace{padding:0 20px;margin-top:32px}.dropzone{min-height:236px}.upload-actions{align-items:flex-end}.upload-actions>.button{min-width:144px;padding:12px 16px;font-size:16px;gap:16px}.copy-row{flex-wrap:wrap}.copy-row>input{flex-basis:100%}.copy-row>.button{width:100%}.receiver{margin-top:40px}.receiver h2{font-size:26px}dialog{padding:24px}.key-management .copy-row>input{flex-basis:150px}.key-management .copy-row>.button{width:auto}.account-actions{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
.field select{display:block;width:100%;min-width:0;height:46px;padding:10px 12px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:4px;font:inherit}.field select:focus-visible{outline:2px solid var(--blue);outline-offset:4px}

.retention-settings{display:grid;grid-template-columns:minmax(140px,220px) minmax(0,1fr);align-items:center;gap:28px;margin-top:24px}.retention-settings .field{margin:0}.retention-delete .check-field{margin:0}.retention-delete .help{margin:0 0 0 28px}.retention-settings:disabled{opacity:.65}.upload-actions:has(#storage-summary[hidden]){justify-content:flex-end}.download-confirmation{margin-top:12px}.download-confirmation .help{margin-top:0}@media(max-width:520px){.retention-settings{grid-template-columns:minmax(0,1fr);gap:16px}}
