@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700;800&display=swap";
.cipher-console{--cipher-bg:#010201;--cipher-bg-raised:#030503;--cipher-text:#5def88;--cipher-dim:#337344;--cipher-accent:#fdd506;--cipher-danger:#f54748;--cipher-border:#ffffff1a;--cipher-glow:#5def8859;--cipher-glow-bg:#5def8838;--cipher-radius-window:14px;--cipher-radius-tab:8px;z-index:1000;background:radial-gradient(circle at 50% 50%, var(--cipher-glow-bg) 0%, transparent 65%), linear-gradient(to right, #5def8812 1px, transparent 1px), linear-gradient(to bottom, #5def8812 1px, transparent 1px), #000;background-size:100% 100%,36px 36px,36px 36px,100% 100%;justify-content:center;align-items:center;padding:24px;font-family:JetBrains Mono,ui-monospace,monospace;display:flex;position:fixed;inset:0}@supports (color:lab(0% 0 0)){.cipher-console{--cipher-bg:lab(.482178% -.425667 .262582);--cipher-bg-raised:lab(1.24711% -.970133 .600728);--cipher-text:lab(84.993% -57.3581 37.8071);--cipher-dim:lab(43.2686% -30.0935 19.7304);--cipher-accent:lab(86.6644% 3.21394 85.4018);--cipher-danger:lab(57.2852% 66.3576 40.5014);--cipher-border:lab(100% 0 0/.1);--cipher-glow:lab(84.993% -57.3581 37.8071/.35);--cipher-glow-bg:lab(84.993% -57.3581 37.8071/.22);background:radial-gradient(circle at 50% 50%, var(--cipher-glow-bg) 0%, transparent 65%), linear-gradient(to right, lab(84.993% -57.3581 37.8071/.07) 1px, transparent 1px), linear-gradient(to bottom, lab(84.993% -57.3581 37.8071/.07) 1px, transparent 1px), lab(.0260239% -.0351518 .0212908)}}@media (max-width:768px){.cipher-console{padding:0}}.cipher-console.cipher-light{--cipher-bg:#f8f2dc;--cipher-bg-raised:#eee8d2;--cipher-text:#253a06;--cipher-dim:#73754b;--cipher-accent:#b45000;--cipher-danger:#cc272e;--cipher-border:#0000001a;--cipher-glow:transparent;--cipher-glow-bg:#b450001f;background:radial-gradient(circle at 50% 50%, var(--cipher-glow-bg) 30%, transparent 60%), linear-gradient(to right, #b450001a 1px, transparent 80px), linear-gradient(to bottom, #b450001a 1px, transparent 80px), #f8f2dc;background-size:100% 100%,36px 36px,36px 36px,100% 100%}@supports (color:lab(0% 0 0)){.cipher-console.cipher-light{--cipher-bg:lab(95.5354% -.745475 11.5482);--cipher-bg-raised:lab(92.0549% -.737399 11.5548);--cipher-text:lab(21.9077% -15.9331 27.0858);--cipher-dim:lab(48.2622% -5.82105 22.8131);--cipher-accent:lab(46.7395% 41.5551 69.2451);--cipher-danger:lab(45.7636% 63.3818 40.1799);--cipher-border:lab(0% 0 0/.1);--cipher-glow-bg:lab(46.7395% 41.5551 69.2451/.12);background:radial-gradient(circle at 50% 50%, var(--cipher-glow-bg) 30%, transparent 60%), linear-gradient(to right, lab(46.7395% 41.5551 69.2451/.1) 1px, transparent 80px), linear-gradient(to bottom, lab(46.7395% 41.5551 69.2451/.1) 1px, transparent 80px), lab(95.5354% -.745475 11.5482)}}.cipher-console *,.cipher-console :before,.cipher-console :after{box-sizing:border-box}.cipher-console button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}.cipher-console input{font-family:inherit}@media (prefers-reduced-motion:reduce){.cipher-console *,.cipher-console :before,.cipher-console :after{transition-duration:.001ms!important;animation-duration:.001ms!important}}.cipher-matrix-canvas{z-index:-1;opacity:.5;pointer-events:none;position:fixed;inset:0}.cipher-window{background:var(--cipher-bg);width:min(1040px,100%);height:min(720px,100%);color:var(--cipher-text);border-radius:var(--cipher-radius-window);border:1px solid var(--cipher-border);-webkit-user-select:text;user-select:text;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 50px 100px -20px #0009;box-shadow:0 50px 100px -20px lab(0% 0 0/.6)}@media (max-width:768px){.cipher-window{border-radius:0;width:100%;height:100%}}.cipher-window:before{content:"";z-index:5;pointer-events:none;opacity:.6;background:repeating-linear-gradient(#ffffff08 0 1px,#0000 1px 3px);background:repeating-linear-gradient(lab(100% 0 0/.03) 0 1px,#0000 1px 3px);position:absolute;inset:0}.cipher-window:after{content:"";z-index:5;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 140px #00000080;box-shadow:inset 0 0 140px lab(0% 0 0/.5)}.cipher-topbar{background:var(--cipher-bg-raised);border-bottom:1px solid var(--cipher-border);cursor:grab;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.cipher-topbar:active{cursor:grabbing}.cipher-traffic{gap:8px;display:flex}.cipher-traffic span,.cipher-traffic button{border:none;border-radius:50%;width:12px;height:12px;padding:0;display:block}.cipher-traffic .red{background:#ff5f57}.cipher-traffic .yellow{background:#febc2e}.cipher-traffic .green{background:#28c840}.cipher-traffic button.red:hover{filter:brightness(1.15)}.cipher-topbar-meta{letter-spacing:.04em;text-transform:uppercase;color:var(--cipher-dim);align-items:center;gap:14px;font-size:11px;font-weight:600;display:flex}.cipher-topbar-meta .cipher-clock{color:var(--cipher-accent);font-variant-numeric:tabular-nums}.cipher-tabs{background:var(--cipher-bg-raised);border-bottom:1px solid var(--cipher-border);flex-shrink:0;gap:6px;padding:10px 12px;display:flex;overflow-x:auto}.cipher-tabs::-webkit-scrollbar{display:none}.cipher-tab{letter-spacing:.02em;border-radius:var(--cipher-radius-tab);color:var(--cipher-dim);white-space:nowrap;border:1px solid #0000;padding:7px 14px;font-size:11.5px;font-weight:600;transition:color .15s,border-color .15s,background .15s}.cipher-tab:hover{color:var(--cipher-text);background:#ffffff0a;background:lab(100% 0 0/.04)}.cipher-tab.active{color:var(--cipher-accent);border-color:var(--cipher-accent);background:#ffffff0a;background:lab(100% 0 0/.04)}.cipher-body-row{flex:1;min-height:0;display:flex}.cipher-icon-rail{border-right:1px solid var(--cipher-border);background:var(--cipher-bg-raised);flex-direction:column;flex-shrink:0;align-items:center;gap:10px;width:56px;padding:16px 0;display:flex}@media (max-width:640px){.cipher-icon-rail{display:none}}.cipher-rail-icon{width:36px;height:36px;color:var(--cipher-dim);border-radius:10px;justify-content:center;align-items:center;transition:color .15s,background .15s;display:flex}.cipher-rail-icon:hover{color:var(--cipher-text);background:#ffffff0d;background:lab(100% 0 0/.05)}.cipher-rail-icon.active{color:var(--cipher-accent);background:#ffffff0f;background:lab(100% 0 0/.06)}.cipher-output{flex:1;padding:20px clamp(16px,3vw,36px);font-size:14px;line-height:1.7;overflow-y:auto}.cipher-output::-webkit-scrollbar{width:8px}.cipher-output::-webkit-scrollbar-thumb{background:var(--cipher-dim);border-radius:4px}.cipher-line{white-space:pre-wrap;word-break:break-word}.cipher-line.dim{color:var(--cipher-dim)}.cipher-line.accent{color:var(--cipher-accent)}.cipher-line.error{color:var(--cipher-danger)}.cipher-line.echo{color:var(--cipher-text);opacity:.9}.cipher-line b,.cipher-line strong{color:var(--cipher-accent);font-weight:700}.cipher-ascii{white-space:pre;background:linear-gradient(100deg, var(--cipher-accent), var(--cipher-text) 60%, var(--cipher-accent));color:#0000;text-shadow:0 0 24px var(--cipher-glow);background-size:200%;-webkit-background-clip:text;background-clip:text;margin-bottom:14px;font-size:9px;line-height:1.15;animation:3.5s linear infinite cipher-ascii-sheen}@keyframes cipher-ascii-sheen{to{background-position:-200%}}.cipher-section-table{margin:4px 0 10px}.cipher-kv{gap:10px;display:flex}.cipher-kv .k{color:var(--cipher-accent);flex-shrink:0;min-width:132px}.cipher-kv .v{color:var(--cipher-text)}.cipher-tag-row{flex-wrap:wrap;gap:6px;margin:6px 0 4px;display:flex}.cipher-tag{border:1px solid var(--cipher-border);color:var(--cipher-dim);border-radius:6px;padding:3px 9px;font-size:11px}.cipher-input-zone{border-top:1px solid var(--cipher-border);background:var(--cipher-bg-raised);flex-shrink:0}.cipher-chip-tray{flex-wrap:wrap;gap:6px;padding:10px clamp(16px,3vw,36px) 0;display:flex}.cipher-chip{border:1px solid var(--cipher-border);color:var(--cipher-text);background:#ffffff0d;background:lab(100% 0 0/.05);border-radius:8px;padding:6px 11px;font-size:11.5px;transition:border-color .15s,color .15s}.cipher-chip:hover,.cipher-chip:focus-visible{border-color:var(--cipher-accent);color:var(--cipher-accent)}.cipher-input-row{border-top:1px solid #0000;border-bottom:1px solid #0000;align-items:center;gap:10px;padding:14px clamp(16px,3vw,36px);transition:background .2s,border-color .2s,box-shadow .2s;display:flex}.cipher-input-row:focus-within{border-top-color:var(--cipher-accent);border-bottom-color:var(--cipher-accent);box-shadow:inset 0 0 10px var(--cipher-glow);background:#ffffff05;background:lab(100% 0 0/.02)}.cipher-prompt-prefix{color:var(--cipher-accent);white-space:nowrap;font-size:14px;font-weight:700}.cipher-input-wrap{flex:1}.cipher-input-wrap input{width:100%;color:var(--cipher-text);caret-color:var(--cipher-accent);background:0 0;border:none;outline:none;font-size:14px}.cipher-input-wrap input::placeholder{color:var(--cipher-dim);opacity:.65}.cipher-boot{z-index:20;background:var(--cipher-bg);cursor:pointer;flex-direction:column;justify-content:center;align-items:flex-start;padding:0 clamp(20px,5vw,60px);display:flex;position:absolute;inset:0}.cipher-boot-hint{color:var(--cipher-dim);font-size:11px;position:absolute;bottom:24px;right:28px}.cipher-exit-btn{color:var(--cipher-dim);border:1px solid var(--cipher-border);border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:11px;font-weight:600;transition:color .15s,border-color .15s;display:flex}.cipher-exit-btn:hover{color:var(--cipher-text);border-color:var(--cipher-accent)}.cipher-theme-btn{width:28px;height:28px;color:var(--cipher-dim);border-radius:8px;justify-content:center;align-items:center;transition:color .15s,background .15s;display:flex}.cipher-theme-btn:hover{color:var(--cipher-accent);background:#ffffff0d;background:lab(100% 0 0/.05)}.cipher-standby{z-index:15;background:var(--cipher-bg);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:24px;animation:.4s cubic-bezier(.23,1,.32,1) both cipher-standby-fade;display:flex;position:absolute;inset:41px 0 0}@keyframes cipher-standby-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.cipher-standby-content{flex-direction:column;align-items:center;gap:18px;max-width:600px;display:flex}.cipher-standby-header{letter-spacing:.1em;color:var(--cipher-dim);align-items:center;gap:8px;font-size:11px;font-weight:700;display:flex}.cipher-standby-beacon{background:var(--cipher-accent);width:8px;height:8px;box-shadow:0 0 8px var(--cipher-accent);border-radius:50%;animation:1.8s infinite cipher-beacon-pulse}@keyframes cipher-beacon-pulse{0%,to{opacity:.4;transform:scale(.9)}50%{opacity:1;box-shadow:0 0 12px var(--cipher-accent);transform:scale(1.1)}}.cipher-standby-title{color:var(--cipher-text);text-shadow:0 0 20px var(--cipher-glow);letter-spacing:-.02em;justify-content:center;align-items:center;margin:0;font-size:clamp(24px,4vw,42px);font-weight:800;display:flex}.cipher-standby-cursor{color:var(--cipher-accent);margin-left:2px;animation:1s step-end infinite cipher-caret-blink}.cipher-standby-subtitle{color:var(--cipher-dim);max-width:450px;margin:0;font-size:14px;line-height:1.5}.cipher-standby-meta{color:var(--cipher-dim);border-top:1px solid var(--cipher-border);border-bottom:1px solid var(--cipher-border);justify-content:center;gap:20px;width:100%;margin:10px 0;padding:10px 0;font-size:11px;display:flex}.cipher-standby-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px;display:flex}.cipher-standby-btn{text-transform:uppercase;letter-spacing:.05em;border:1px solid #0000;border-radius:8px;align-items:center;padding:10px 18px;font-size:12px;font-weight:600;text-decoration:none;transition:transform .16s cubic-bezier(.23,1,.32,1),background .15s,color .15s,border-color .15s;display:inline-flex}.cipher-standby-btn:active{transform:scale(.96)}.cipher-standby-btn.primary{background:var(--cipher-accent);color:var(--cipher-bg);border-color:var(--cipher-accent)}.cipher-standby-btn.primary:hover{color:var(--cipher-accent);background:0 0}.cipher-standby-btn.secondary{border-color:var(--cipher-border);color:var(--cipher-text);background:#ffffff05;background:lab(100% 0 0/.02)}.cipher-standby-btn.secondary:hover{border-color:var(--cipher-accent);color:var(--cipher-accent)}
