*{box-sizing:border-box}body{margin:0}body:before{content:"";z-index:-1;background:radial-gradient(at 15% 20%,#30426a66,#0000 60%),radial-gradient(at 85% 80%,#63345155,#0000 60%);animation:18s ease-in-out infinite alternate drift;position:fixed;inset:0}@keyframes drift{to{filter:hue-rotate(35deg);transform:scale(1.2)}}main{max-width:760px;margin:auto;padding:36px 18px}header{padding:20px 0 30px}h1{letter-spacing:-.05em;font-size:clamp(2rem,7vw,3rem);line-height:1.15}em{color:#b5b2ff;font-style:normal}small,footer,p{color:#b5bdce}section,aside{background:#141822;border:1px solid #303647;border-radius:18px;margin-bottom:18px;padding:24px}h2{margin-top:0;font-size:1.15rem}label{margin:16px 0;display:block}input,select{width:100%;font:inherit;background:#0c1019;border:1px solid #444b60;border-radius:9px;margin-top:7px;padding:12px;display:block}button{color:#fff;min-height:46px;font:inherit;cursor:pointer;background:#35334e;border:1px solid #575674;border-radius:10px;margin:5px 8px 5px 0;padding:10px 16px}button:hover{background:#484463}button:disabled{opacity:.45;cursor:wait}:focus-visible{outline-offset:3px;outline:3px solid #b9b5ff}summary{color:#b5bdce;cursor:pointer;min-height:44px;padding-top:8px;list-style:none}summary span{transition:transform .25s;display:inline-block}details[open] summary span{transform:rotate(180deg)}pre{white-space:pre-wrap;overflow-wrap:anywhere;color:#b8d9c9;background:#0c1019;max-height:240px;padding:14px;font-size:12px;overflow:auto}article{border-top:1px solid #303647;margin-top:20px}footer{padding:16px;font-size:13px}a{color:#c5c2ff}progress{width:100%}@media (prefers-reduced-motion:reduce){*,body:before{transition:none!important;animation:none!important}}@media (width<=420px){section,aside{padding:18px}button{width:100%}}:root{color:#16120b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fbff12;font:16px/1.55 Arial Narrow,Inter,system-ui,sans-serif}body{isolation:isolate;min-height:100dvh}body:before{z-index:-2;background:linear-gradient(90deg,#ff2d95,#1238ff,#18f4d6,#fbff12,#ff2d95) 0 0/400% 100%;animation:40s linear infinite colourFlow;inset:0}body:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#16120b0c 1px,#0000 1px) 0 0/22px 22px,linear-gradient(0deg,#16120b0c 1px,#0000 1px) 0 0/22px 22px,linear-gradient(135deg,#fff9e85c,#fff9e826);position:fixed;inset:0}@keyframes colourFlow{0%,to{background-position:0%}50%{background-position:100%}}main{max-width:1000px;padding:28px 22px 40px}header{background:#fff9e8;border:3px solid #16120b;margin-bottom:26px;padding:22px 26px;position:relative;box-shadow:6px 6px #16120b}header small{color:#16120b;letter-spacing:.12em;background:#fbff12;border:1.5px solid #16120b;padding:4px 8px;font-size:.68rem;font-weight:850;display:inline-block}h1{letter-spacing:-.065em;text-transform:uppercase;margin:18px 0 12px;font-size:clamp(2.8rem,10vw,5rem);font-weight:950;line-height:.98}h1 span{color:#ff2d95;margin-left:10px}header p{max-width:520px;margin-bottom:0}header>a{font-size:.8rem;font-weight:750;position:absolute;top:20px;right:22px}h2{align-items:center;gap:12px;margin:0 0 16px;font-size:1.1rem;font-weight:850;display:flex}h2 b{background:#fbff12;border:2px solid #16120b;flex:none;place-items:center;width:30px;height:30px;font-size:.7rem;display:grid}section,aside{background:#fff9e8;border:2px solid #16120b;border-radius:0;margin-bottom:22px;padding:24px;box-shadow:4px 4px #16120b}p{color:#49443d}label{font-size:.88rem;font-weight:650}input,select{color:#16120b;background:#fffef9;border:1.5px solid #16120b;border-radius:0;min-width:0}input[type=file]{cursor:pointer;background:repeating-linear-gradient(135deg,#16120b03 0 8px,#0000 8px 16px),#fffdf6;border:2px dashed #887f70;min-height:80px;padding:20px 14px;font-size:.82rem;font-weight:400}input::file-selector-button{color:#16120b;font:inherit;cursor:pointer;background:#fff9e8;border:1.5px solid #16120b;margin-right:10px;padding:9px 12px;font-weight:750}button{color:#16120b;background:#fbff12;border:2px solid #16120b;border-radius:0;font-weight:800;transition:transform .15s,box-shadow .15s;box-shadow:3px 3px #16120b}button:hover:not(:disabled){background:#fff86a;transform:translate(-1px,-1px);box-shadow:4px 4px #16120b}button:active:not(:disabled){box-shadow:none;transform:translate(3px,3px)}#encrypt button{background:#18f4d6}#decrypt button{background:#ff9fd3}form>button{width:100%;margin-right:0}a{color:#16120b;text-underline-offset:4px}:focus-visible{outline-color:#1238ff}summary{color:#665f55;border-top:1px solid #16120b26;justify-content:space-between;font-size:.85rem;display:flex}summary::-webkit-details-marker{display:none}details[open]>label{animation:.25s both reveal}@keyframes reveal{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}pre{color:#135a48;background:#e7fff6;border:1px solid #16120b44;font:13px/1.65 ui-monospace,Consolas,monospace}article:last-child pre{color:#8b215a;background:#ffe9f4}article{border-color:#16120b44}article h3{text-transform:uppercase;letter-spacing:.08em;font-size:.85rem}article button{background:#fff9e8;width:auto;padding:9px 15px;font-size:.8rem}aside{color:#fff9e8;background:#16120b;padding:16px 20px;box-shadow:4px 4px #fff9e8}#status{color:inherit;margin:0;font-size:.85rem}body.is-busy aside{border-color:#fbff12}progress{accent-color:#fbff12;margin-top:12px}#cancel{background:#fff9e8;margin-top:14px}footer{color:#49443d;background:#fff9e8eb;border:1px solid #16120b;padding:16px;font-size:.75rem}[hidden]{display:none!important}.file-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.file-grid section{min-width:0}@media (width<=650px){main{padding:16px 14px 28px}header{padding:18px}header>a{margin-top:14px;display:inline-block;position:static}header small{font-size:.62rem}section{padding:18px}.file-grid{display:block}input[type=file]{padding:18px 10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}section,aside,footer,article button{box-shadow:none}aside{color:#16120b;background:0 0;border:0;margin:0 0 18px;padding:0}aside:has(#status:empty):has(#cancel[hidden]){display:none}#status{font-size:.82rem}section.needs-key{background:#fff9e8d9}section.needs-key h2{color:#777064}button:disabled{cursor:not-allowed;box-shadow:none}footer{background:0 0;border:0;padding:4px 0}#generate small{color:#665f55;font-weight:400}body.is-busy aside{border:0}progress{accent-color:#16120b}#keys{overflow-anchor:none}#keys pre{white-space:pre;overflow-wrap:normal;word-break:normal;tab-size:2;max-width:100%;max-height:240px;padding:12px;font:11px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;overflow:auto}#keys pre.is-revealed{height:240px}#keys article button{min-width:70px}body:before{will-change:background-position}@media (prefers-reduced-motion:reduce){body:before{will-change:auto}}body.help-open{overflow:hidden}#help-panel{color:#16120b;overscroll-behavior:contain;width:min(440px,92vw);max-width:none;height:100dvh;max-height:100dvh;box-shadow:none;background:#fff9e8;border:0;border-right:2px solid #16120b;margin:0;padding:24px 28px 36px;position:fixed;inset:0 auto 0 0;overflow-y:auto}#help-panel[open]{animation:.26s cubic-bezier(.2,.8,.2,1) both drawerIn}#help-panel::backdrop{background:#16120b66}#help-close{box-shadow:none;background:0 0;border:0;width:auto;min-height:44px;margin:0 0 20px;padding:8px 0;font-size:.85rem}#help-close:hover{text-decoration:underline;transform:none}#help-title{letter-spacing:-.055em;text-transform:uppercase;margin:0 0 28px;font-size:2.4rem;line-height:1.05}#help-panel h2:not(#help-title){margin:24px 0 6px;font-size:.9rem}#help-panel p{margin:0 0 12px;font-size:.9rem;line-height:1.65}#help-panel .note{border-top:1px solid #16120b40;margin-top:24px;padding-top:16px;font-size:.8rem}@keyframes drawerIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@media (width<=420px){#help-panel{padding:20px}}@media (prefers-reduced-motion:reduce){#help-panel[open]{animation:none}}
