:root{--accent:#c5e9ff;--ink:#17344d;--cream:#f2f9ff;--muted:#5c7488}
*{box-sizing:border-box}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,sans-serif;min-height:100vh;display:flex;flex-direction:column}
header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1060px)/2));border-bottom:1px solid #d4e7f5;background:#fbfdff}
.brand{color:inherit;text-decoration:none;font-weight:900;font-size:23px}
.logo{display:inline-grid;place-items:center;background:var(--accent);border-radius:12px;width:45px;height:45px;margin-right:8px}
.badge{font-size:12px;font-weight:800;text-transform:uppercase;border:1px solid #d4e7f5;padding:8px 12px;border-radius:20px}
main{flex:1}
.hero{max-width:850px;margin:auto;padding:70px 24px 45px;text-align:center}
.hero.compact{max-width:700px}
.eyebrow{letter-spacing:.14em;font-size:12px;font-weight:900;color:#176aa5}
h1{font-size:clamp(38px,6.5vw,70px);line-height:1.08;letter-spacing:-.035em;margin:18px 0}
.tagline{font-size:clamp(34px,4.65vw,49px);white-space:normal;text-wrap:balance;letter-spacing:-.04em}
.tagline em{display:inline-block;white-space:nowrap}
.tagline em:after{height:.2em;bottom:.04em}
h1 em{font-style:normal;position:relative;z-index:0}
h1 em:after{content:"";position:absolute;left:-2%;right:-2%;height:18px;bottom:3px;background:var(--accent);z-index:-1;transform:rotate(-1deg)}
.lead{max-width:620px;margin:25px auto 40px;color:var(--muted);font-size:18px;line-height:1.6}
.drop,.download-card{background:#fff;border:2px dashed #9ecbec;border-radius:24px;padding:36px;box-shadow:0 14px 45px #236fa510;transition:.2s}
.drop.over{background:#e3f3ff;transform:scale(1.01)}
.plane{display:grid;place-items:center;color:#448fc4;margin-bottom:16px}
.plane svg{width:64px;height:64px}
.logo svg{width:29px;height:29px}
.logo{color:#176aa5}
.brand{display:inline-flex;align-items:center}
.drop h2{margin:5px}
.drop p{color:var(--muted)}
.actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:24px}
button:focus-visible{outline:2px solid #176aa5;outline-offset:3px}
.button,.secondary{display:inline-block;padding:14px 22px;border-radius:12px;font-weight:800;cursor:pointer;border:0;font-size:15px}
.button{background:#176aa5;color:white}
.secondary{background:var(--accent);color:var(--ink)}
input[type=file]{display:none}
.features{display:flex;max-width:850px;margin:0 auto 50px;border-top:1px solid #d4e7f5;padding-top:30px}
.features div{flex:1;text-align:center;border-right:1px solid #d4e7f5}
.features div:last-child{border:0}
.features b{font-size:25px;display:block}
.features span,.result span,small{font-size:13px;color:var(--muted)}
.result{max-width:700px;margin:auto;background:white;padding:28px;border:2px solid var(--accent);border-radius:20px;display:flex;flex-wrap:wrap;gap:15px;align-items:center;text-align:left;overflow-wrap:anywhere}
.result div{display:flex;flex-direction:column;min-width:0}
.tick{background:var(--accent);color:var(--ink)!important;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-weight:bold}
.copy{width:100%;flex-direction:row!important}
.copy input{padding:12px;border:1px solid #d4e7f5;flex:1;min-width:0;width:0;font-size:16px}
.copy button{border:0;background:var(--accent);font-weight:bold;padding:12px;min-height:44px;cursor:pointer;color:var(--ink)}
.hidden{display:none!important}
.download-card{text-align:left}
.download-card ul{max-height:180px;overflow:auto;overflow-wrap:anywhere;background:#f2f9ff;padding:15px 35px;border-radius:10px}
.download-card .button{display:block;width:100%;margin:22px 0}
.delete{display:flex;align-items:center;gap:18px;padding:18px;background:#f2f9ff;border:1px solid #d4e7f5;border-radius:16px;cursor:pointer;position:relative}
.delete-copy{flex:1;min-width:0}
.delete-copy strong{display:block;font-size:14px;font-weight:650;line-height:1.45}
.delete-copy small{display:block;margin-top:5px;font-size:12px;line-height:1.4}
.delete input{position:absolute;right:18px;width:46px;height:28px;opacity:0;margin:0;cursor:pointer}
.switch-track{flex:0 0 46px;width:46px;height:28px;border-radius:20px;background:#b4c8d8;transition:background .15s;pointer-events:none}
.switch-track:after{content:"";display:block;width:22px;height:22px;margin:3px;border-radius:50%;background:white;box-shadow:0 1px 3px #17344d30;transition:transform .15s}
.delete input:checked+.switch-track{background:#176aa5}
.delete input:checked+.switch-track:after{transform:translateX(18px)}
.delete input:focus-visible+.switch-track{outline:2px solid #176aa5;outline-offset:4px}
.paste-hint{font-size:13px;margin:20px 0 0;line-height:1.7}
kbd{font:inherit;font-size:12px;border:1px solid #d4e7f5;border-bottom-width:2px;border-radius:5px;padding:2px 5px;background:#f2f9ff}
.paste-status{font-size:13px;line-height:1.5;margin:8px 0 0}
.paste-status:empty{display:none}
.retention{border:0;padding:0;margin:18px auto 0;max-width:520px;min-width:0;text-align:left}
.retention legend{font-size:12px;font-weight:600;color:var(--muted);margin-bottom:8px;text-align:center;width:100%}
.retention-control{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px;gap:0;border:1px solid #d4e7f5;background:#edf6fc;border-radius:16px;isolation:isolate}
.retention-slider{position:absolute;left:4px;top:4px;bottom:4px;width:calc((100% - 8px)/3);background:#176aa5;border-radius:12px;transform:translateX(200%);transition:transform .18s;z-index:-1}
.retention-control:has(input[value="24h"]:checked) .retention-slider{transform:translateX(0)}
.retention-control:has(input[value="first"]:checked) .retention-slider{transform:translateX(100%)}
.retention-control label{position:relative;display:flex;align-items:center;justify-content:center;min-height:40px;text-align:center;cursor:pointer;padding:7px 6px;color:var(--ink);font-size:12px;font-weight:650;line-height:1.3;border-radius:12px}
.retention-control input{position:absolute;opacity:0;width:100%;height:100%;inset:0;margin:0;cursor:pointer}
.retention-control label:has(input:checked){color:white}
.retention-control label:has(input:focus-visible){outline:2px solid #176aa5;outline-offset:3px}
.retention-hint{font-size:11px;color:var(--muted);line-height:1.45;margin:8px 0 0;min-height:32px;text-align:center}
.fixed-policy{padding:18px;border:1px solid #d4e7f5;border-radius:16px;background:#f2f9ff;font-size:14px;line-height:1.5}
@media(max-width:400px){.retention-control label{font-size:11px;padding:7px 4px;min-height:44px}}
@media(prefers-reduced-motion:reduce){.retention-slider{transition:none}}
@media(prefers-reduced-motion:reduce){.switch-track,.switch-track:after{transition:none}}
.spinner{width:35px;height:35px;border:4px solid #eee;border-top-color:#176aa5;border-radius:50%;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}
}
footer{text-align:center;padding:25px;color:#5c7488;font-size:13px}
@media(max-width:600px){.hero{padding-top:45px}
header{padding:0 16px;gap:10px}
.brand{font-size:20px}
.logo{width:38px;height:38px;flex-shrink:0}
.badge{font-size:10px;padding:8px;white-space:nowrap}
h1{font-size:clamp(32px,7vw,42px);overflow-wrap:anywhere}
.lead{font-size:16px;margin:22px auto 30px}
.features{display:none}
.drop,.download-card{padding:25px 15px}
.result{padding:20px 15px}
.delete{line-height:1.5}
footer{padding:20px 16px}
}


@media(max-width:600px){.actions>.button{width:100%;min-height:48px}}
.header-nav{display:flex;align-items:center;gap:18px}.header-nav>a{font-size:14px;font-weight:650;color:var(--ink);text-decoration:none}a:focus-visible{outline:2px solid #176aa5;outline-offset:4px}a{color:#176aa5}.button{text-decoration:none;text-align:center}.text-button{background:none;border:0;color:#176aa5;font:inherit;font-size:14px;padding:12px;cursor:pointer;text-decoration:none}.upload-progress{display:block}.result .progress-heading{display:flex;flex-direction:row;justify-content:space-between;gap:16px;margin-bottom:16px}.progress-heading span{font-variant-numeric:tabular-nums;color:#176aa5;font-weight:700}progress{display:block;width:100%;height:10px;border:0;border-radius:20px;overflow:hidden;background:#e7f2fa;accent-color:#2589cd;margin:0 0 14px}progress::-webkit-progress-bar{background:#e7f2fa;border-radius:20px}progress::-webkit-progress-value{background:#2589cd;border-radius:20px}progress::-moz-progress-bar{background:#2589cd;border-radius:20px}.link-result{max-width:610px;padding:28px;border:1px solid #d4e7f5;box-shadow:0 10px 40px #236fa50a;gap:16px}.result-heading{gap:4px}.result-heading strong{font-size:18px}.link-result .share-link{width:100%;padding:20px 0 18px;border-top:1px solid #e3eef6;border-bottom:1px solid #e3eef6;gap:7px;margin-top:4px}.share-label{font-size:10px!important;letter-spacing:.12em;font-weight:650}.share-link a{font-size:clamp(22px,4vw,30px);font-weight:650;letter-spacing:-.035em;text-decoration:none;overflow-wrap:anywhere}.share-link a:hover{text-decoration:underline;text-underline-offset:5px}.result-policy{font-size:12px;color:var(--muted);line-height:1.5;margin:0;width:100%}.result .result-actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px;width:100%}.result-actions .button{font-size:14px;padding:13px 18px}footer nav{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:10px}footer a,footer button{color:var(--muted);font:inherit;background:none;border:0;padding:4px 0;text-decoration:none;cursor:pointer}.cookie-banner{position:fixed;z-index:10;bottom:14px;left:50%;transform:translateX(-50%);width:calc(100% - 28px);max-width:860px;background:#fff;border:1px solid #d4e7f5;box-shadow:0 5px 35px #17344d15;border-radius:15px;padding:12px 16px;display:flex;align-items:center;gap:18px;font-size:12px;line-height:1.45}.cookie-banner[hidden]{display:none}.cookie-banner p{margin:0;flex:1}.cookie-banner>div{display:flex;gap:8px;flex-shrink:0}.cookie-banner button{font:inherit;white-space:nowrap;background:#edf6fc;color:var(--ink);border:1px solid #d4e7f5;border-radius:8px;padding:9px 11px;cursor:pointer}.cookie-banner button:first-child{background:#176aa5;color:white;border-color:#176aa5}body:has(.cookie-banner:not([hidden])){padding-bottom:105px}.document{width:100%;max-width:850px;margin:0 auto;padding:52px 24px;line-height:1.75;min-width:0}.document h1{font-size:clamp(30px,5vw,45px);line-height:1.15;margin-bottom:24px}.doc-lead{font-size:18px;color:var(--muted)}.document section{margin:38px 0}.document h2{font-size:23px;line-height:1.3;margin-bottom:14px}.document h3{font-size:17px;margin-top:28px}.document p{overflow-wrap:anywhere}.document ul{padding-left:22px}.document pre{max-width:100%;overflow:auto;background:#e7f2fa;padding:16px;border-radius:12px;font-size:13px;line-height:1.6}.document code{overflow-wrap:anywhere;font-size:.9em}.notice{padding:18px;border:1px solid #badff7;background:#e8f5ff;border-radius:14px}.privacy-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.stats-grid>div{background:#fff;border:1px solid #d4e7f5;border-radius:14px;padding:18px}.stats-grid b{display:block;font-size:28px}.stats-grid span{font-size:12px;color:var(--muted)}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px;white-space:nowrap}th,td{text-align:right;padding:10px;border-bottom:1px solid #d4e7f5}th:first-child,td:first-child{text-align:left}select{font:inherit;color:var(--ink);background:white;border:1px solid #d4e7f5;border-radius:8px;padding:8px}.not-found{max-width:650px;margin:0 auto;padding:60px 24px;text-align:center}.error-code{font-size:clamp(90px,20vw,150px);font-weight:800;letter-spacing:-.07em;color:#8ecbf3;margin:0;line-height:1}.not-found h1{font-size:clamp(30px,5vw,42px);margin:25px 0 16px}.not-found>p:not(.error-code){color:var(--muted);line-height:1.7;margin-bottom:28px}.not-found>.button,.not-found>.text-button{display:inline-block;margin:4px}
@media(max-width:600px){.header-nav{gap:12px}.header-nav>a{font-size:13px}.link-result{padding:22px 18px}.result-actions .button{flex:1}.cookie-banner{flex-wrap:wrap;gap:9px;padding:12px;bottom:8px;width:calc(100% - 16px)}.cookie-banner>div{width:100%;justify-content:flex-end}.cookie-banner button{padding:8px 12px}body:has(.cookie-banner:not([hidden])){padding-bottom:155px}.document{padding:35px 20px}.stats-grid{grid-template-columns:repeat(2,1fr)}.document section{margin:28px 0}.not-found{padding-top:45px}}
@media(max-width:350px){.header-nav .badge{display:none}.result-actions{justify-content:center}.result-actions .button{width:100%}}
.service-rules{width:calc(100% - 48px);max-width:802px;margin:12px auto 0;border-top:1px solid #d4e7f5;color:var(--muted);font-size:13px;line-height:1.65}.service-rules summary{cursor:pointer;padding:15px 0;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center}.service-rules summary::-webkit-details-marker{display:none}.service-rules summary:after{content:'+';font-size:21px;font-weight:400}.service-rules[open] summary:after{content:'−'}.service-rules>div{padding:0 0 16px}.service-rules p{margin:8px 0}.service-rules ol{padding-left:21px}.service-rules li{padding:3px 0}.service-rules summary:focus-visible{outline:2px solid #176aa5;outline-offset:3px}
.password-option{border:0;padding:0;margin:16px auto 0;max-width:520px;min-width:0;text-align:left}.password-option legend{font-size:12px;font-weight:600;color:var(--muted);margin-bottom:8px;text-align:center;width:100%}.password-control{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:#edf6fc;border:1px solid #d4e7f5;border-radius:16px}.password-control label{position:relative;text-align:center;padding:11px 8px;font-size:12px;font-weight:650;border-radius:12px;cursor:pointer}.password-control input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0}.password-control label:has(input:checked){background:#176aa5;color:white}.password-control label:has(input:focus-visible){outline:2px solid #176aa5;outline-offset:3px}.password-field{margin:14px 0 0}.password-field>label{display:block;font-size:12px;color:var(--muted);margin:0 0 7px}.password-input{display:flex;align-items:center;background:white;border:1px solid #bad9ef;border-radius:12px;overflow:hidden}.password-input:focus-within{outline:2px solid #91c8ed;outline-offset:2px}.password-input input{width:100%;min-width:0;flex:1;background:none;border:0;padding:14px;font:inherit;font-size:16px;color:var(--ink);outline:none}.password-input button{border:0;background:none;padding:12px;color:#176aa5;font:inherit;font-size:12px;cursor:pointer}.password-field small{display:block;margin-top:6px;font-size:11px;text-align:center}.password-field p{font-size:13px;color:var(--muted)}
.stats-grid strong{display:block;font-size:28px;line-height:1.4}.privacy-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.privacy-controls>strong{width:100%;font-size:13px}

/* Consistent typography throughout the privacy notice, including cookie controls. */
.privacy-document{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.7}
.privacy-document section p,.privacy-document section li{font-family:inherit;font-size:1rem;font-weight:400;line-height:1.7;letter-spacing:normal}
.privacy-document section li span{font:inherit}
.privacy-document .privacy-controls{gap:12px;margin-top:20px}
.privacy-document .privacy-controls>strong{font-family:inherit;font-size:14px;font-weight:600;line-height:1.5}
.privacy-document .privacy-controls button{font-family:inherit;font-size:14px;font-weight:600;line-height:1.5}
.privacy-controls .stats-choice{padding:12px 18px;border:1px solid #bad9ef;border-radius:12px;background:white;color:#176aa5;cursor:pointer;transition:background .15s,color .15s}
.privacy-controls .stats-choice[aria-pressed="true"]{background:#176aa5;color:white;border-color:#176aa5}
.privacy-controls .stats-choice[aria-pressed="true"]:before{content:"✓ ";font-weight:700}
.privacy-controls .stats-choice:disabled{opacity:.5;cursor:not-allowed}

.result-settings{width:100%;border-top:1px solid #e3eef6;padding-top:12px}.result-settings summary{cursor:pointer;color:#176aa5;font-size:14px;font-weight:600;padding:8px 0}.result-settings .retention,.result-settings .password-option{width:100%;margin:14px 0}.result-settings .retention-control,.result-settings .password-control{display:grid;flex-direction:initial}.result-settings .password-input{flex-direction:row}.result-settings label span{color:inherit}.result-settings .settings-note,.result-settings #settingsStatus{font-size:12px;line-height:1.5;color:var(--muted)}.result-settings .button{font-size:14px}.result-settings .button:disabled{opacity:.6}.result-settings .password-field{display:block}
