@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Fraunces:opsz,wght@9..144,400;9..144,600&family=Source+Serif+4:opsz,wght@8..60,400;8..60,500&display=swap");:root{--ink-deep:#0d0d0f;--ink-dark:#161619;--ink-medium:#1e1e22;--ink-light:#2a2a30;--ink-subtle:#3a3a42;--paper:#f8f6f1;--paper-dim:#e8e6e1;--accent:#c9a55c;--accent-glow:#c9a55c33;--accent-hover:#ddb86a;--text-primary:#f0ede6;--text-secondary:#9a9898;--text-dim:#5a5a5e;--shadow-sm:0 1px 2px rgba(0,0,0,.3);--shadow-md:0 4px 20px rgba(0,0,0,.4);--shadow-lg:0 12px 40px rgba(0,0,0,.5),0 0 0 1px hsla(0,0%,100%,.03);--shadow-glow:0 0 40px var(--accent-glow);--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1)}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;height:100%}body{font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--ink-deep);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");opacity:.015;pointer-events:none;z-index:0}.container{position:relative;z-index:1;display:flex;flex-direction:column;height:100vh;max-width:900px;margin:0 auto;padding:0 1.5rem}header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 0;border-bottom:1px solid var(--ink-light);animation:fadeDown .6s var(--ease-out) both}@keyframes fadeDown{0%{opacity:0;transform:translateY(-10px)}}h1{margin:0;font-family:Fraunces,Georgia,serif;font-size:1.5rem;font-weight:400;letter-spacing:-.02em;color:var(--text-secondary)}h1 span{font-weight:600;color:var(--text-primary);position:relative}h1 span:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent),transparent);border-radius:1px}.header-actions{display:flex;gap:.625rem;align-items:center}.format-toggle{padding:.5rem .875rem;font-size:.75rem;background:var(--ink-light);border:1px solid var(--ink-subtle);color:var(--text-secondary);border-radius:6px;transition:all .2s var(--ease-out)}.format-toggle:hover{background:var(--ink-subtle);color:var(--text-primary)}.compression-info{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;margin:.5rem 0;background:var(--ink-light);border:1px solid var(--ink-subtle);border-radius:8px;font-size:.75rem;animation:fadeUp .4s var(--ease-out) both}.compression-stat{color:var(--text-secondary)}.compression-ratio{color:var(--accent);font-weight:600}button{font-family:DM Sans,sans-serif;font-size:.8125rem;font-weight:500;letter-spacing:.02em;background:var(--ink-light);color:var(--text-primary);border:1px solid var(--ink-subtle);padding:.625rem 1.125rem;border-radius:6px;cursor:pointer;transition:all .2s var(--ease-out);position:relative;overflow:hidden}button:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,hsla(0,0%,100%,.04),transparent);opacity:0;transition:opacity .2s}button:hover{background:var(--ink-subtle);border-color:var(--text-dim);transform:translateY(-1px)}button:hover:before{opacity:1}button:active{transform:translateY(0)}.share-btn{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--accent) 0,#b8944a 100%);border:none;color:var(--ink-deep);font-weight:600;box-shadow:var(--shadow-sm),0 0 20px var(--accent-glow)}.share-btn:hover{background:linear-gradient(135deg,var(--accent-hover) 0,var(--accent) 100%);box-shadow:var(--shadow-md),0 0 30px var(--accent-glow)}.share-btn svg{flex-shrink:0}.download-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;padding:.625rem}.download-btn svg{flex-shrink:0}.editor{flex:1 1;padding:2rem 0;border:none;background:transparent;color:var(--text-primary);font-family:"Source Serif 4",Georgia,serif;font-size:1.125rem;font-weight:400;line-height:1.8;letter-spacing:.01em;resize:none;outline:none;caret-color:var(--accent);animation:fadeUp .6s var(--ease-out) .1s both}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}}.editor::placeholder{color:var(--text-dim);font-style:italic}.editor::selection{background:var(--accent);color:var(--ink-deep)}.modal-overlay{position:fixed;inset:0;background:rgba(5,5,7,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:overlayFadeIn .3s var(--ease-out);padding:1rem}@keyframes overlayFadeIn{0%{opacity:0}}.modal{background:var(--ink-dark);border:1px solid var(--ink-light);border-radius:16px;padding:2rem;max-width:420px;width:100%;box-shadow:var(--shadow-lg);animation:modalSlideUp .4s var(--ease-spring);position:relative;overflow:hidden}.modal:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.1),transparent)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.96)}}.modal h2{margin:0 0 1.75rem;font-family:Fraunces,Georgia,serif;font-size:1.375rem;font-weight:600;letter-spacing:-.02em;text-align:center;color:var(--text-primary)}.qr-container{display:flex;justify-content:center;margin-bottom:1.75rem;animation:qrPop .5s var(--ease-spring) .15s both}@keyframes qrPop{0%{opacity:0;transform:scale(.9)}}.qr-code{border-radius:12px;padding:1rem;background:var(--paper);box-shadow:var(--shadow-md),inset 0 0 0 1px rgba(0,0,0,.05)}.share-url{margin-bottom:1.5rem;animation:fadeUp .4s var(--ease-out) .2s both}.share-url label{display:block;margin-bottom:.625rem;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.input-group{display:flex;gap:.5rem}.share-input{flex:1 1;padding:.75rem 1rem;background:var(--ink-deep);border:1px solid var(--ink-subtle);border-radius:8px;color:var(--text-primary);font-family:DM Sans,sans-serif;font-size:.8125rem;transition:all .2s var(--ease-out)}.share-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.input-group button{display:inline-flex;align-items:center;gap:.375rem;padding:.75rem 1.25rem;white-space:nowrap}.input-group button svg{flex-shrink:0}.close-button{width:100%;padding:.875rem;margin-top:.5rem;background:transparent;border:1px solid var(--ink-subtle);color:var(--text-secondary);animation:fadeUp .4s var(--ease-out) .25s both}.close-button:hover{background:var(--ink-light);color:var(--text-primary);border-color:var(--ink-light)}button.copied{border-color:transparent;color:#052e16}button.copied,button.copied:hover{background:linear-gradient(135deg,#4ade80,#22c55e)}@media (max-width:640px){.container{padding:0 1rem;min-height:100vh;height:auto}header{padding:1.25rem 0;flex-wrap:wrap;gap:1rem}h1{font-size:1.25rem}.editor{padding:1.5rem 0;font-size:1rem;min-height:60vh}.modal{padding:1.5rem;border-radius:12px}.modal h2{font-size:1.25rem}}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.share-input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.editor::-webkit-scrollbar{width:6px}.editor::-webkit-scrollbar-track{background:transparent}.editor::-webkit-scrollbar-thumb{background:var(--ink-subtle);border-radius:3px}.editor::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}