.app-layout__nav[data-v-0362f439]{display:flex;gap:16px;padding:16px;border-bottom:1px solid var(--border)}.app-layout__nav a[data-v-0362f439]{color:var(--text-h);text-decoration:none;font-weight:500}.app-layout__nav a.router-link-active[data-v-0362f439]{color:var(--accent)}.app-layout__content[data-v-0362f439]{padding:16px}.rotation-sequence-picker[data-v-a88ad140]{display:flex;gap:8px;list-style:none;padding:0;margin:0}.rotation-sequence-picker__item[data-v-a88ad140]{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;box-sizing:border-box;border:1px solid var(--border);border-radius:4px;cursor:grab;background:var(--code-bg);color:var(--text)}.rotation-sequence-picker__item--grabbed[data-v-a88ad140]{cursor:grabbing;border:2px solid var(--accent);background:var(--accent-bg);color:var(--text-h);box-shadow:var(--shadow)}.rotation-sequence-picker__handle[data-v-a88ad140]{color:var(--text-muted);flex-shrink:0}.rotation-sequence-picker__live[data-v-a88ad140]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loading-spinner[data-v-9aa194fb]{flex-shrink:0}.loading-spinner__track[data-v-9aa194fb]{stroke:var(--border)}.loading-spinner__arc[data-v-9aa194fb]{stroke:currentColor;stroke-dasharray:14 24;transform-origin:center;animation:loading-spinner-rotate-9aa194fb .8s linear infinite}@media(prefers-reduced-motion:reduce){.loading-spinner__arc[data-v-9aa194fb]{animation:none}}@keyframes loading-spinner-rotate-9aa194fb{to{transform:rotate(360deg)}}.encode-params-form[data-v-da4c68b2]{display:flex;flex-direction:column;gap:16px;max-width:480px;width:100%}.encode-params-form__field[data-v-da4c68b2]{display:flex;flex-direction:column;gap:4px}.encode-params-form__mode-toggle[data-v-da4c68b2]{display:flex;gap:16px;border:none;padding:0}.encode-params-form__group[data-v-da4c68b2]{display:flex;flex-direction:column;gap:16px;border:1px solid var(--border);border-radius:8px;padding:16px;margin:0;min-inline-size:0;box-sizing:border-box}.encode-params-form__group legend[data-v-da4c68b2]{padding:0 4px;font-weight:500;color:var(--text-h)}.encode-params-form__checkbox[data-v-da4c68b2]{display:flex;align-items:center;gap:8px}.encode-params-form__error[data-v-da4c68b2]{color:var(--danger)}.encode-params-form__submit[data-v-da4c68b2]{display:inline-flex;align-items:center;justify-content:center;gap:8px}.encode-result-panel[data-v-b1a56f68]{display:flex;flex-direction:column;gap:16px;max-width:480px;width:100%}.encode-result-panel__stale-notice[data-v-b1a56f68]{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--warning-border);background:var(--warning-bg);border-radius:8px}.encode-result-panel__stale-notice p[data-v-b1a56f68]{margin:0;flex:1}.encode-result-panel__content[data-v-b1a56f68]{display:flex;flex-direction:column;gap:16px}.encode-result-panel__content--stale .encode-result-panel__key[data-v-b1a56f68]{border-style:dashed;border-color:var(--warning-border);background:transparent}.encode-result-panel__preview[data-v-b1a56f68]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}.encode-result-panel__stale-badge[data-v-b1a56f68]{align-self:flex-end;padding:2px 8px;border:1px solid var(--warning-border);border-radius:4px;background:var(--warning-bg);color:var(--text-h);font-size:.75em;font-weight:600}.encode-result-panel__svg[data-v-b1a56f68]{width:100%;max-width:280px}.encode-result-panel__svg[data-v-b1a56f68] svg{width:100%;height:auto;display:block}.encode-result-panel__key[data-v-b1a56f68]{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:16px;border:1px solid var(--accent-border);border-radius:8px;background:var(--accent-bg)}.encode-result-panel__key-label[data-v-b1a56f68]{font-size:.8em;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-h)}.encode-result-panel__key-value[data-v-b1a56f68]{font-size:1.3em;padding:0;background:transparent;word-break:break-all}.encode-result-panel__key-size[data-v-b1a56f68],.encode-result-panel__key-hint[data-v-b1a56f68]{margin:0;font-size:.9em;color:var(--text)}.encode-result-panel__warnings[data-v-b1a56f68]{border:1px solid var(--warning-border);background:var(--warning-bg);border-radius:4px;padding:8px 12px}.encode-result-panel__downloads[data-v-b1a56f68]{display:flex;gap:12px}.encode-view[data-v-a7b13f54]{display:flex;flex-direction:column;gap:24px}.encode-view h1[data-v-a7b13f54]{align-self:center}.encode-view__body[data-v-a7b13f54]{display:flex;flex-direction:column;align-items:center;gap:24px}.encode-view__output[data-v-a7b13f54]{display:flex;flex-direction:column;gap:24px;width:100%;max-width:480px}.encode-view__error[data-v-a7b13f54]{color:var(--danger)}.encode-view__output-empty[data-v-a7b13f54]{display:flex;align-items:center;justify-content:center;min-height:200px;margin:0;padding:20px;border:2px dashed var(--border);border-radius:8px;color:var(--text-muted);text-align:center}.encode-view__output-loading[data-v-a7b13f54]{display:flex;flex-direction:column;gap:16px}.encode-view__skeleton-block[data-v-a7b13f54]{border-radius:8px;background:linear-gradient(90deg,var(--code-bg) 25%,var(--border) 50%,var(--code-bg) 75%);background-size:200% 100%;animation:encode-view-shimmer-a7b13f54 1.5s ease-in-out infinite}.encode-view__skeleton-block--preview[data-v-a7b13f54]{height:280px}.encode-view__skeleton-block--key[data-v-a7b13f54]{height:120px}@keyframes encode-view-shimmer-a7b13f54{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.encode-view__skeleton-block[data-v-a7b13f54]{animation:none;background:var(--code-bg)}}@media(min-width:900px){.encode-view h1[data-v-a7b13f54]{align-self:flex-start;width:100%;max-width:480px}.encode-view__body[data-v-a7b13f54]{display:grid;grid-template-columns:minmax(360px,480px) 1fr;align-items:start}.encode-view__output[data-v-a7b13f54]{max-width:none}}.decode-upload-area[data-v-ea014f9f]{display:flex;flex-direction:column;gap:8px;padding:16px;border:2px dashed var(--border);border-radius:4px}.decode-upload-area--dragging[data-v-ea014f9f]{border-color:var(--accent)}.decode-upload-area__input[data-v-ea014f9f]{display:none}.decode-upload-area__error[data-v-ea014f9f]{color:var(--danger)}.decode-params-form[data-v-4a03af5f]{display:flex;flex-direction:column;gap:16px;max-width:480px;width:100%}.decode-params-form__field[data-v-4a03af5f]{display:flex;flex-direction:column;gap:4px}.decode-params-form__error[data-v-4a03af5f]{color:var(--danger)}.decode-params-form__hint[data-v-4a03af5f]{font-size:.85em;color:var(--text-muted);margin:0}.decode-params-form__submit[data-v-4a03af5f]{display:inline-flex;align-items:center;justify-content:center;gap:8px}.decode-view[data-v-ad300d12]{display:flex;flex-direction:column;gap:24px}.decode-view h1[data-v-ad300d12]{align-self:center}.decode-view__body[data-v-ad300d12]{display:flex;flex-direction:column;align-items:center;gap:24px}.decode-view__output[data-v-ad300d12]{display:flex;flex-direction:column;gap:24px;width:100%;max-width:480px}.decode-view__error[data-v-ad300d12]{color:var(--danger)}.decode-view__result-region[data-v-ad300d12]{display:flex;flex-direction:column;gap:16px}.decode-view__stale-notice[data-v-ad300d12]{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--warning-border);background:var(--warning-bg);border-radius:8px}.decode-view__stale-notice p[data-v-ad300d12]{margin:0;flex:1}.decode-view__result-card[data-v-ad300d12]{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:16px;border:1px solid var(--accent-border);border-radius:8px;background:var(--accent-bg)}.decode-view__result-label[data-v-ad300d12]{font-size:.8em;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-h)}.decode-view__result[data-v-ad300d12]{margin:0;width:100%;font-family:var(--mono);overflow-wrap:anywhere;white-space:pre-wrap;max-height:40vh;overflow-y:auto}.decode-view__result-card--stale[data-v-ad300d12]{border:1px dashed var(--warning-border);background:transparent}.decode-view__output-empty[data-v-ad300d12]{display:flex;align-items:center;justify-content:center;min-height:200px;margin:0;padding:20px;border:2px dashed var(--border);border-radius:8px;color:var(--text-muted);text-align:center}.decode-view__output-loading[data-v-ad300d12]{display:flex;flex-direction:column}.decode-view__skeleton-block[data-v-ad300d12]{height:60px;border-radius:8px;background:linear-gradient(90deg,var(--code-bg) 25%,var(--border) 50%,var(--code-bg) 75%);background-size:200% 100%;animation:decode-view-shimmer-ad300d12 1.5s ease-in-out infinite}@keyframes decode-view-shimmer-ad300d12{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.decode-view__skeleton-block[data-v-ad300d12]{animation:none;background:var(--code-bg)}}@media(min-width:900px){.decode-view h1[data-v-ad300d12]{align-self:flex-start;width:100%;max-width:480px}.decode-view__body[data-v-ad300d12]{display:grid;grid-template-columns:minmax(360px,480px) 1fr;align-items:start}.decode-view__output[data-v-ad300d12]{max-width:none}}.key-generator-form[data-v-15aa605e]{display:flex;flex-direction:column;gap:16px;max-width:480px;width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:8px;padding:20px}.key-generator-form__field[data-v-15aa605e]{display:flex;flex-direction:column;gap:4px}.key-generator-form__error[data-v-15aa605e]{color:var(--danger)}.key-generator-form__submit[data-v-15aa605e]{display:inline-flex;align-items:center;justify-content:center;gap:8px}.key-generator-form__result[data-v-15aa605e]{display:flex;flex-direction:column;gap:16px}.key-generator-form__stale-notice[data-v-15aa605e]{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--warning-border);background:var(--warning-bg);border-radius:8px}.key-generator-form__stale-notice p[data-v-15aa605e]{margin:0;flex:1}.key-generator-form__result-content[data-v-15aa605e]{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:16px;border:1px solid var(--accent-border);border-radius:8px;background:var(--accent-bg)}.key-generator-form__result-content--stale[data-v-15aa605e]{border-style:dashed;border-color:var(--warning-border);background:transparent}.key-generator-form__result-label[data-v-15aa605e]{font-size:.8em;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-h)}.key-generator-form__result-value[data-v-15aa605e]{font-size:1.3em;padding:0;background:transparent;word-break:break-all}.key-generator-form__result-hint[data-v-15aa605e]{margin:0;font-size:.9em;color:var(--text)}.key-parser-form[data-v-91a9659a]{display:flex;flex-direction:column;gap:16px;max-width:480px;width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:8px;padding:20px}.key-parser-form__field[data-v-91a9659a]{display:flex;flex-direction:column;gap:4px}.key-parser-form__error[data-v-91a9659a]{color:var(--danger)}.key-parser-form__submit[data-v-91a9659a]{display:inline-flex;align-items:center;justify-content:center;gap:8px}.key-parser-form__result-region[data-v-91a9659a]{display:flex;flex-direction:column;gap:16px}.key-parser-form__stale-notice[data-v-91a9659a]{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--warning-border);background:var(--warning-bg);border-radius:8px}.key-parser-form__stale-notice p[data-v-91a9659a]{margin:0;flex:1}.key-parser-form__result[data-v-91a9659a]{display:grid;grid-template-columns:auto 1fr;gap:4px 12px}.key-parser-form__result dt[data-v-91a9659a]{font-weight:600}.key-parser-form__result--stale[data-v-91a9659a]{padding:12px;border:1px dashed var(--warning-border);border-radius:8px}.key-view[data-v-a723ba36]{display:flex;flex-direction:column;gap:24px}.key-view h1[data-v-a723ba36]{align-self:center}.key-view__body[data-v-a723ba36]{display:flex;flex-direction:column;align-items:center;gap:32px}@media(min-width:900px){.key-view h1[data-v-a723ba36]{align-self:flex-start}.key-view__body[data-v-a723ba36]{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:24px}}:root{--text: #6b6375;--text-h: #08060d;--text-muted: #756d80;--bg: #fff;--border: #8d8a92;--code-bg: #f4f3ec;--accent: #aa3bff;--accent-bg: rgba(170, 59, 255, .1);--accent-border: rgba(170, 59, 255, .5);--accent-contrast: #08060d;--danger: #c0392b;--warning-border: #b45309;--warning-bg: rgba(180, 83, 9, .08);--shadow: rgba(0, 0, 0, .1) 0 10px 15px -3px, rgba(0, 0, 0, .05) 0 4px 6px -2px;--sans: system-ui, "Segoe UI", Roboto, sans-serif;--heading: system-ui, "Segoe UI", Roboto, sans-serif;--mono: ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(max-width:1024px){:root{font-size:16px}}@media(prefers-color-scheme:dark){:root{--text: #9ca3af;--text-h: #f3f4f6;--text-muted: #8890a0;--bg: #16171d;--border: #6f6d78;--code-bg: #1f2028;--accent: #c084fc;--accent-bg: rgba(192, 132, 252, .15);--accent-border: rgba(192, 132, 252, .5);--accent-contrast: #08060d;--danger: #f87171;--warning-border: #fbbf24;--warning-bg: rgba(251, 191, 36, .12);--shadow: rgba(0, 0, 0, .4) 0 10px 15px -3px, rgba(0, 0, 0, .25) 0 4px 6px -2px}}body{margin:0}h1,h2{font-family:var(--heading);font-weight:500;color:var(--text-h)}code{font-family:var(--mono);display:inline-flex;border-radius:4px;color:var(--text-h);font-size:15px;line-height:135%;padding:4px 8px;background:var(--code-bg)}#app{max-width:1126px;margin:0 auto;min-height:100svh;box-sizing:border-box}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}button,select,input,textarea{font-family:inherit;font-size:1em}input[type=text],input[type=number],select,textarea{border:1px solid var(--border);border-radius:4px;padding:8px 10px;background:var(--bg);color:var(--text-h)}.btn-primary,.btn-secondary{min-height:44px;padding:10px 20px;border-radius:4px;font-weight:600;cursor:pointer}.btn-primary:disabled,.btn-secondary:disabled{cursor:not-allowed;background:var(--code-bg);color:var(--text);border-color:var(--border)}.btn-primary{border:none;background:var(--accent);color:var(--accent-contrast)}.btn-primary:hover:not(:disabled){filter:brightness(.92)}.btn-primary:active:not(:disabled){filter:brightness(.85)}.btn-secondary{border:1px solid var(--border);background:transparent;color:var(--text-h);font-weight:500}.btn-secondary:hover:not(:disabled){border-color:var(--accent-border);background:var(--accent-bg)}
