:root{color-scheme:dark;--bg: #0f1117;--surface: #171a23;--surface-strong: #1f2430;--surface-soft: #252b38;--text: #f4f7fb;--muted: #a8b1c2;--faint: #6f7b8f;--line: #2d3443;--accent: #00d4aa;--accent-strong: #10f0c2;--accent-soft: rgba(0, 212, 170, .14);--danger: #ff6b6b;--warning: #f6b84b;--success: #45df8c;--radius: 8px;--shadow: 0 20px 60px rgba(0, 0, 0, .22);--font-ui: "DM Sans", "Sora", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Cascadia Code", Consolas, monospace}:root[data-theme=light]{color-scheme:light;--bg: #f6f7fb;--surface: #ffffff;--surface-strong: #eef2f6;--surface-soft: #e5eaf0;--text: #121621;--muted: #566174;--faint: #758093;--line: #d9e0e8;--accent: #009e84;--accent-strong: #007f6b;--accent-soft: rgba(0, 158, 132, .12);--danger: #c93737;--warning: #a76800;--success: #098b50;--shadow: 0 18px 48px rgba(20, 29, 43, .12)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,rgba(0,212,170,.08),transparent 280px),var(--bg);color:var(--text);font-family:var(--font-ui);letter-spacing:0}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,.dropzone:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.app-shell{width:min(1180px,calc(100% - 28px));margin:0 auto;padding:18px 0 40px}.app-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0 22px}.brand-block{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{display:grid;width:40px;height:40px;place-items:center;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--accent);box-shadow:var(--shadow)}h1,h2,p{margin:0}h1{font-size:clamp(1.45rem,4vw,2rem);font-weight:760}h2{font-size:1.05rem;font-weight:700}.theme-toggle,.tab-button,.primary-button,.secondary-button,.icon-button{border:0;cursor:pointer;color:var(--text)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.workspace{display:grid;gap:18px}.tab-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:6px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.tab-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border-radius:6px;background:transparent;color:var(--muted);transition:background .16s ease,color .16s ease}.tab-button.is-active{background:var(--accent-soft);color:var(--accent-strong)}.tool-grid{display:grid;gap:18px;animation:slideUp .18s ease both}.tool-panel{display:grid;align-content:start;gap:18px;min-width:0;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:var(--shadow)}.field-group,.upload-control{display:grid;gap:8px}.field-header,.meter-row,.file-summary{display:flex;align-items:center;justify-content:space-between;gap:12px}.field-label{color:var(--text);font-size:.92rem;font-weight:700}.dropzone{position:relative;display:grid;min-height:260px;overflow:hidden;place-items:center;border:1px dashed var(--faint);border-radius:var(--radius);background:var(--surface-strong);color:var(--muted);cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}.dropzone:hover,.dropzone.is-dragging{border-color:var(--accent);background:var(--accent-soft)}.dropzone.has-preview{aspect-ratio:16 / 10;min-height:220px}.dropzone img{width:100%;height:100%;object-fit:contain;background:#0b0d12;animation:fadeIn .18s ease both}:root[data-theme=light] .dropzone img{background:#edf2f7}.dropzone-empty{display:grid;justify-items:center;gap:9px;padding:18px;text-align:center}.dropzone-empty span{color:var(--text);font-weight:700}.dropzone-empty small,.file-summary span,.field-note,.result-card span,.empty-state,.disclaimer{color:var(--muted);font-size:.88rem}.dropzone-overlay{position:absolute;inset:auto 12px 12px 12px;display:inline-flex;justify-content:center;padding:9px 12px;border-radius:6px;background:#0f1117c7;color:#fff;font-weight:700;opacity:0;transform:translateY(4px);transition:opacity .16s ease,transform .16s ease}.dropzone:hover .dropzone-overlay,.dropzone:focus .dropzone-overlay{opacity:1;transform:translateY(0)}.file-summary{min-height:46px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong)}.file-summary div{display:grid;gap:3px;min-width:0}.file-summary strong{overflow:hidden;font-size:.92rem;text-overflow:ellipsis;white-space:nowrap}.message-box,.password-shell input{width:100%;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);color:var(--text)}.message-box{min-height:220px;resize:vertical;padding:14px;line-height:1.55}.password-shell{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong)}.password-shell input{min-width:0;height:44px;border:0;padding:0 12px;background:transparent}.icon-button{display:inline-grid;width:36px;height:36px;place-items:center;border-radius:6px;background:transparent;color:var(--muted)}.icon-button:hover{background:var(--surface-soft);color:var(--text)}.capacity-meter{display:grid;gap:8px}.meter-row{color:var(--muted);font-size:.88rem}.meter-track,.strength-track{height:9px;overflow:hidden;border-radius:999px;background:var(--surface-soft)}.meter-track span,.strength-track span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .16s ease,background .16s ease}.capacity-meter.is-over .meter-track span{background:var(--danger)}.char-count,.strength-label{color:var(--muted);font-size:.84rem}.char-count.is-over,.error-text,.strength-weak{color:var(--danger)}.strength-good{color:var(--warning)}.strength-strong{color:var(--success)}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;border-radius:var(--radius);font-weight:800;text-decoration:none;transition:transform .16s ease,background .16s ease,opacity .16s ease}.primary-button{width:100%;background:var(--accent);color:#061612}.primary-button:hover:not(:disabled),.secondary-button:hover{transform:translateY(-1px)}.primary-button:disabled{cursor:not-allowed;opacity:.62}.secondary-button{border:1px solid var(--line);padding:0 14px;background:var(--surface-strong);color:var(--text)}.result-card{display:grid;gap:14px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);animation:slideUp .18s ease both}.result-card.tone-success{border-color:color-mix(in srgb,var(--success) 45%,var(--line))}.result-body{display:grid;gap:8px;min-width:0}.result-body h2{font-size:.98rem}.result-actions{display:flex;flex-wrap:wrap;gap:10px}.decoded-message{max-height:360px;overflow:auto;margin:0;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:#0b0d12;color:#e9fff9;font-family:var(--font-mono);font-size:.92rem;line-height:1.55;white-space:pre-wrap;word-break:break-word}:root[data-theme=light] .decoded-message{background:#10131a}.empty-state{display:grid;min-height:220px;place-items:center;border:1px dashed var(--line);border-radius:var(--radius);background:var(--surface-strong)}.disclaimer{padding:12px;border:1px solid color-mix(in srgb,var(--warning) 38%,var(--line));border-radius:var(--radius);background:color-mix(in srgb,var(--warning) 9%,transparent)}.size-grid{display:grid;grid-template-columns:auto 1fr;gap:8px 16px}.size-grid strong{text-align:right}.toast-stack{position:fixed;right:16px;bottom:16px;z-index:20;display:grid;width:min(380px,calc(100vw - 32px));gap:10px}.toast{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.toast-success{border-color:color-mix(in srgb,var(--success) 42%,var(--line))}.toast-error{border-color:color-mix(in srgb,var(--danger) 42%,var(--line))}.toast-info{border-color:color-mix(in srgb,var(--accent) 42%,var(--line))}.toast-close{width:30px;height:30px}.seo-section{display:grid;gap:22px;margin-top:34px;padding:28px 0 6px;border-top:1px solid var(--line)}.seo-section h2{max-width:760px;font-size:clamp(1.25rem,3vw,1.75rem)}.seo-section h3,.seo-faq dt{margin:0;color:var(--text);font-size:1rem;font-weight:800}.seo-section p,.seo-faq dd{max-width:820px;margin:8px 0 0;color:var(--muted);font-size:.96rem;line-height:1.65}.seo-copy-grid{display:grid;gap:18px}.seo-faq{display:grid;gap:16px;margin:0}.seo-faq div{min-width:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(min-width:768px){.app-shell{width:min(1180px,calc(100% - 56px));padding-top:26px}.tool-grid{grid-template-columns:minmax(320px,.92fr) minmax(360px,1.08fr);align-items:start}.seo-copy-grid,.seo-faq{grid-template-columns:repeat(3,1fr)}}@media(min-width:1280px){.app-shell{padding-top:34px}}@media(max-width:420px){.app-shell{width:min(100% - 18px,1180px)}.app-header{align-items:flex-start}.theme-toggle span,.tab-button span{display:none}.tool-panel{padding:14px}.dropzone{min-height:220px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
