.dedektif-term,.dedektif-term[data-dt-theme=gri]{--dt-bg:#0b0b0c;--dt-fg:#d4d4d4;--dt-dim:#a6a6a6;--dt-phosphor:#ffb000;--dt-bright:#f5f5f5;--dt-line:#3d3d3d;--dt-accent:#f5f5f5;--dt-yes:#cfe6cf;--dt-no:#e6c1c1}.dedektif-term[data-dt-theme=amber]{--dt-bg:#0c0904;--dt-fg:#e9b44c;--dt-dim:#c49b46;--dt-phosphor:#ff9d2e;--dt-bright:#ffd37a;--dt-line:#4a3912;--dt-accent:#ffd37a;--dt-yes:#f5d28a;--dt-no:#e59a6b}.dedektif-term[data-dt-theme=buz]{--dt-bg:#060b10;--dt-fg:#b9dcec;--dt-dim:#94b9cc;--dt-phosphor:#7be0a8;--dt-bright:#e4f5ff;--dt-line:#1f3a4b;--dt-accent:#6cc8f0;--dt-yes:#bfe9f7;--dt-no:#d9a7b7}.dedektif-term[data-dt-theme=mor]{--dt-bg:#0a0710;--dt-fg:#d6c6f3;--dt-dim:#b4a1db;--dt-phosphor:#ffb86b;--dt-bright:#f1e8ff;--dt-line:#3a2a5a;--dt-accent:#c58bff;--dt-yes:#dcc9ff;--dt-no:#f0a6d4}.dedektif-term{--dt-mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;width:100%;min-width:0;font-family:var(--dt-mono);font-size:.9375rem;line-height:1.55;color:var(--dt-fg)}.dedektif-term *,.dedektif-term :after,.dedektif-term :before{box-sizing:border-box}.dedektif-term,.dedektif-term *{font-family:var(--dt-mono)!important}.dedektif-term :focus-visible{outline:2px solid var(--dt-accent);outline-offset:2px}.dedektif-term ::-moz-selection{background:var(--dt-fg);color:var(--dt-bg)}.dedektif-term ::selection{background:var(--dt-fg);color:var(--dt-bg)}.dedektif-term h1,.dedektif-term h2,.dedektif-term h3,.dedektif-term ol,.dedektif-term p,.dedektif-term ul{margin:0;padding:0;font-size:inherit;font-weight:inherit;letter-spacing:normal;text-transform:none;color:inherit}.dedektif-term ol,.dedektif-term ul{list-style:none}.dedektif-term a{color:inherit;text-decoration:none}.dedektif-term .dt-dim,.dedektif-term .dt-prompt{color:var(--dt-dim)}body:has(.dedektif-term[data-dt-theme=gri]),html:has(.dedektif-term[data-dt-theme=gri]){background:#0b0b0c!important}body:has(.dedektif-term[data-dt-theme=amber]),html:has(.dedektif-term[data-dt-theme=amber]){background:#0c0904!important}body:has(.dedektif-term[data-dt-theme=buz]),html:has(.dedektif-term[data-dt-theme=buz]){background:#060b10!important}body:has(.dedektif-term[data-dt-theme=mor]),html:has(.dedektif-term[data-dt-theme=mor]){background:#0a0710!important}body:has(.dedektif-term) .beach-scene{display:none}body:has(.dedektif-term) main{padding-bottom:.75rem}@media (min-width:641px){body:has(.dedektif-term) main{padding-top:.75rem}}body:has(.dedektif-term) footer>div{border-color:#3d3d3d;background:transparent;box-shadow:none}body:has(.dedektif-term) footer,body:has(.dedektif-term) footer a,body:has(.dedektif-term) footer button,body:has(.dedektif-term) footer h2,body:has(.dedektif-term) footer nav,body:has(.dedektif-term) footer p{color:#a8a8a8}body:has(.dedektif-term) footer a:hover,body:has(.dedektif-term) footer button:hover{color:#f5f5f5}.dedektif-term .dt-window{position:relative;display:flex;flex-direction:column;overflow:hidden;height:calc(100dvh - 1.5rem);min-height:30rem;border:1px solid var(--dt-line);border-radius:10px;background:var(--dt-bg);box-shadow:0 0 0 1px rgb(0 0 0/.5)}.dedektif-term .dt-titlebar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem 1rem;border-bottom:1px solid var(--dt-line);color:var(--dt-dim)}.dedektif-term .dt-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;letter-spacing:.12em;color:var(--dt-dim)}.dedektif-term .dt-live{flex:none;width:.5rem;height:.5rem;border-radius:50%;background:var(--dt-phosphor)}.dedektif-term .dt-body{position:relative;display:flex;flex:1;flex-direction:column;min-height:0;padding:.75rem 1rem 0}.dedektif-term .dt-crt{position:absolute;inset:0;z-index:10;pointer-events:none;background:repeating-linear-gradient(180deg,transparent 0,transparent 2px,rgb(0 0 0/.12) 3px),radial-gradient(120% 100% at 50% 40%,transparent 55%,rgb(0 0 0/.26))}.dedektif-term .dt-hub{display:flex;flex:1;flex-direction:column;justify-content:center;gap:2.25rem;min-height:0;overflow-y:auto;padding-bottom:1rem}.dedektif-term .dt-boot{display:grid;gap:.25rem;color:var(--dt-dim)}.dedektif-term .dt-boot li{width:-moz-max-content;width:max-content;max-width:100%}.dedektif-term .dt-boot li:before{content:"> "}.dedektif-term .dt-intro{max-width:34rem;color:var(--dt-fg)}.dedektif-term .dt-contact{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;min-height:11rem}.dedektif-term .dt-level{font-size:1.25rem;letter-spacing:.14em;color:var(--dt-bright)}.dedektif-term .dt-cursor{display:inline-block;width:.6em;height:1.05em;margin-left:.2em;vertical-align:text-bottom;background:currentColor}.dedektif-term .dt-marks{display:flex;flex-wrap:wrap;margin-left:-.35rem}.dedektif-term .dt-mark a,.dedektif-term .dt-mark>span{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;min-height:2.25rem;font-size:1.05rem;line-height:1}.dedektif-term .dt-mark.is-solved a{color:var(--dt-phosphor)}.dedektif-term .dt-mark.is-current a{color:var(--dt-phosphor);text-shadow:0 0 6px color-mix(in srgb,var(--dt-phosphor) 45%,transparent)}.dedektif-term .dt-mark.is-locked>span{color:var(--dt-dim)}.dedektif-term .dt-mark a:hover{color:var(--dt-bright)}@media (max-width:640px),(pointer:coarse){.dedektif-term .dt-mark a,.dedektif-term .dt-mark>span{min-width:2.75rem;min-height:2.75rem}}.dedektif-term .dt-btn{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.25rem 1.1rem;border:1px solid var(--dt-dim);border-radius:2px;background:transparent;color:var(--dt-fg);font-size:.9375rem;line-height:1.2;cursor:pointer}.dedektif-term .dt-btn:hover:not(:disabled){border-color:var(--dt-bright);color:var(--dt-bright);background:color-mix(in srgb,var(--dt-fg) 9%,transparent)}.dedektif-term .dt-btn:disabled{opacity:.5;cursor:not-allowed}.dedektif-term .dt-btn--go{min-width:10rem;border-color:var(--dt-phosphor);color:var(--dt-phosphor);letter-spacing:.08em}.dedektif-term .dt-btn--go:hover:not(:disabled){border-color:var(--dt-phosphor);color:var(--dt-phosphor);background:color-mix(in srgb,var(--dt-phosphor) 12%,transparent);text-shadow:0 0 6px color-mix(in srgb,var(--dt-phosphor) 45%,transparent)}.dedektif-term .dt-quiet{display:inline-flex;align-items:center;gap:.5ch;min-height:2.75rem;padding:0 .5rem;border:0;background:transparent;color:var(--dt-dim);font-size:.875rem;cursor:pointer}.dedektif-term .dt-quiet:hover:not(:disabled){color:var(--dt-bright)}.dedektif-term .dt-quiet:disabled{opacity:.5;cursor:not-allowed}.dedektif-term .dt-bar{display:flex;flex:none;align-items:center;justify-content:space-between;gap:.5rem;margin:0 -1rem;padding:0 .5rem;border-top:1px solid var(--dt-line)}.dedektif-term .dt-bar__buttons{display:flex;flex-wrap:wrap;align-items:center}.dedektif-term .dt-bar__status{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:.5rem;font-size:.8125rem;color:var(--dt-dim)}@media (max-width:560px){.dedektif-term .dt-bar:has(.dt-bar__buttons>.dt-quiet:nth-child(4)) .dt-quiet--global .dt-quiet__label{display:none}}.dedektif-term .dt-overlay{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;gap:.75rem;padding:.5rem 1rem 1rem;background:var(--dt-bg)}.dedektif-term .dt-overlay__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border-bottom:1px solid var(--dt-line);margin:0 -1rem;padding:0 .5rem 0 1rem}.dedektif-term .dt-overlay__title{letter-spacing:.12em;color:var(--dt-bright)}.dedektif-term .dt-overlay__body{flex:1;min-height:0;overflow-y:auto}.dedektif-term .dt-help{display:grid;gap:1.25rem;max-width:34rem}.dedektif-term .dt-steps{display:grid;gap:.35rem;counter-reset:step}.dedektif-term .dt-steps li{counter-increment:step}.dedektif-term .dt-steps li:before{content:counter(step) ". ";color:var(--dt-dim)}.dedektif-term .dt-legend{display:grid;gap:.5rem}.dedektif-term .dt-legend li{display:flex;align-items:baseline;gap:.9rem}.dedektif-term .dt-legend .dt-token{flex:none;min-width:6.5rem}.dedektif-term .dt-token{display:inline-block;letter-spacing:.14em;color:var(--dt-bright)}.dedektif-term .dt-token--yes{color:var(--dt-yes)}.dedektif-term .dt-token--no{color:var(--dt-no)}.dedektif-term .dt-token--none{color:var(--dt-dim)}.dedektif-term .dt-token--again{letter-spacing:normal;color:var(--dt-fg)}.dedektif-term .dt-play{display:flex;flex:1;flex-direction:column;gap:.6rem;min-height:0}.dedektif-term .dt-play__head{display:flex;flex:none;align-items:center;justify-content:space-between;gap:.75rem;font-size:.8125rem}.dedektif-term .dt-back{display:inline-flex;align-items:center;min-height:2.75rem;letter-spacing:.12em;color:var(--dt-dim)}.dedektif-term .dt-back>span[aria-hidden=true]{margin-right:.5ch}.dedektif-term .dt-back:hover{color:var(--dt-bright)}.dedektif-term .dt-log{flex:1;min-height:0}.dedektif-term .dt-log.is-scroll{overflow-y:auto;overscroll-behavior:contain;padding-right:.25rem}.dedektif-term .dt-case__setup{margin-bottom:1.1rem;max-width:44rem;color:var(--dt-bright)}.dedektif-term .dt-log__list{display:grid;gap:.9rem;max-width:44rem}.dedektif-term .dt-turn__q{display:flex;gap:.5ch;color:var(--dt-fg)}.dedektif-term .dt-turn__q>span:last-child{min-width:0;overflow-wrap:anywhere}.dedektif-term .dt-turn__a{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;margin-top:.15rem;padding-left:2ch}.dedektif-term .dt-turn__response{flex-basis:100%;color:var(--dt-dim)}.dedektif-term .dt-turn .dt-btn{min-height:2.75rem;margin:.25rem 0 0 2ch;font-size:.8125rem}.dedektif-term .dt-divider{color:var(--dt-dim);text-align:center}.dedektif-term .dt-flag{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;margin:-.9rem 0;border:0;background:transparent;color:var(--dt-dim);cursor:pointer}.dedektif-term .dt-flag:hover:not(:disabled){color:var(--dt-bright)}.dedektif-term .dt-warn{color:var(--dt-no)}.dedektif-term .dt-composer{flex:none;border-top:1px solid var(--dt-line);padding-top:.35rem}.dedektif-term .dt-composer__row{display:flex;align-items:flex-start;gap:.5rem}.dedektif-term .dt-composer__prompt{padding-top:.6rem;color:var(--dt-bright)}.dedektif-term .dt-input{display:block;flex:1;min-width:0;min-height:2.75rem;padding:.6rem 0;border:0;border-radius:0;background:transparent;color:var(--dt-bright);caret-color:var(--dt-accent);font-size:1rem;line-height:1.45;resize:none}.dedektif-term .dt-input:not(.dt-input--block):focus-visible{outline:none}.dedektif-term .dt-composer__row:focus-within .dt-composer__prompt{color:var(--dt-accent)}.dedektif-term .dt-composer__row:focus-within{box-shadow:inset 0 -2px 0 var(--dt-accent)}.dedektif-term .dt-input::-moz-placeholder{color:var(--dt-dim);opacity:1}.dedektif-term .dt-input::placeholder{color:var(--dt-dim);opacity:1}.dedektif-term .dt-input--block{width:100%;padding:.6rem .75rem;border:1px solid var(--dt-line)}.dedektif-term .dt-composer__send{flex:none;min-width:4.5rem}.dedektif-term .dt-composer__error{margin-top:.25rem}.dedektif-term .dt-composer__meta{font-size:.8125rem;text-align:right}.dedektif-term .dt-notice{display:grid;gap:.6rem;flex:none;padding:.75rem 0}.dedektif-term .dt-notice__title{color:var(--dt-bright)}.dedektif-term .dt-notice--error .dt-notice__text,.dedektif-term .dt-notice--error .dt-notice__title{color:var(--dt-no)}.dedektif-term .dt-notice--busy{color:var(--dt-dim)}.dedektif-term .dt-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.dedektif-term .dt-solve{display:grid;gap:.75rem;max-width:40rem}.dedektif-term .dt-solve .dt-btn{justify-self:start}.dedektif-term .dt-verdict{min-height:1.5em;color:var(--dt-bright)}.dedektif-term .dt-notes{display:grid;gap:1.1rem;max-width:40rem}.dedektif-term .dt-note__title{margin-bottom:.3rem;color:var(--dt-dim)}.dedektif-term .dt-note li{padding-left:2ch;text-indent:-2ch}.dedektif-term .dt-note--yes li{color:var(--dt-yes)}.dedektif-term .dt-note--no li{color:var(--dt-no)}.dedektif-term .dt-note--none li{color:var(--dt-fg)}.dedektif-term .dt-closed{display:flex;flex:1;flex-direction:column;gap:.75rem;min-height:0}.dedektif-term .dt-closed__scroll{display:grid;flex:1;align-content:start;gap:1rem;min-height:0;max-width:44rem;overflow-y:auto}.dedektif-term .dt-closed__stamp{font-size:1.25rem;letter-spacing:.14em;color:var(--dt-bright)}.dedektif-term .dt-solution{display:grid;gap:.6rem}.dedektif-term .dt-solution__summary{color:var(--dt-bright)}.dedektif-term .dt-transcript summary{display:inline-flex;align-items:center;min-height:2.75rem;color:var(--dt-dim);cursor:pointer;list-style:none}.dedektif-term .dt-transcript summary::-webkit-details-marker{display:none}.dedektif-term .dt-transcript summary:before{content:"[+] ";white-space:pre}.dedektif-term .dt-transcript[open] summary:before{content:"[-] "}.dedektif-term .dt-transcript summary:hover{color:var(--dt-bright)}.dedektif-term .dt-closed__actions{display:flex;flex:none;flex-wrap:wrap;align-items:center;gap:.25rem 1rem;padding-bottom:.25rem}@media (max-width:640px){.dedektif-term .dt-window{height:calc(100dvh - 6rem);min-height:26rem;border-radius:8px}.dedektif-term .dt-body{padding:.5rem .75rem 0}.dedektif-term .dt-bar{margin:0 -.75rem}.dedektif-term .dt-overlay{padding:.5rem .75rem .75rem}.dedektif-term .dt-overlay__head{margin:0 -.75rem}.dedektif-term .dt-hub{gap:1.75rem}.dedektif-term .dt-bar{position:relative;padding:0 .25rem}.dedektif-term .dt-bar__buttons{flex-wrap:nowrap}.dedektif-term .dt-quiet{padding:0 .4rem;font-size:.8125rem}.dedektif-term .dt-bar__status{position:absolute;right:.5rem;bottom:100%;padding:0 .4rem;background:var(--dt-bg)}}@media (prefers-reduced-motion:no-preference){.dedektif-term .dt-window{animation:dt-flicker .6s step-end backwards}.dedektif-term .dt-cursor{animation:dt-blink 1.1s step-end infinite}.dedektif-term .dt-live{animation:dt-blink 2.4s step-end infinite}.dedektif-term .dt-boot li{animation:dt-reveal .7s steps(18) calc(.15s + var(--dt-i, 0) * .8s) backwards}.dedektif-term .dt-contact{animation:dt-fade .5s ease 1.7s backwards}.dedektif-term .dt-token.is-typed{animation:dt-type calc(var(--dt-n, 4) * .11s) steps(var(--dt-n,4)) .6s backwards}.dedektif-term .dt-overlay{animation:dt-fade .15s ease backwards}}@keyframes dt-blink{50%{opacity:0}}@keyframes dt-flicker{0%{opacity:.85}20%{opacity:1}35%{opacity:.92}55%{opacity:1}}@keyframes dt-reveal{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@keyframes dt-fade{0%{opacity:0}}@keyframes dt-type{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}