.gate-page{position:relative;min-height:100vh;overflow:hidden}.gate{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 1.25rem;transition:opacity .6s ease,transform .6s ease}.gate.is-opening{opacity:0;transform:scale(1.04);pointer-events:none}.gate__lock{margin-bottom:1.5rem;filter:drop-shadow(4px 4px 0 var(--pit))}.gate.is-wrong .gate__lock{animation:gate-shake .35s ease}@keyframes gate-shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.gate__title{font-size:clamp(1.6rem,1rem + 3vw,2.8rem);color:var(--bone)}.gate__lede{color:var(--ash);max-width:40ch;margin-inline:auto}.gate__form{display:flex;gap:.6rem;margin-top:1.6rem;flex-wrap:wrap;justify-content:center}.gate__input{background:var(--slate);border:2px solid var(--toxic);color:var(--bone);font-family:var(--font-title);font-size:1rem;letter-spacing:.06em;padding:.85rem 1rem;min-width:16rem;clip-path:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px);transition:border-color .2s ease,box-shadow .2s ease}.gate__input::placeholder{color:var(--ash);opacity:.6}.gate__input:focus{outline:none;border-color:var(--green);box-shadow:var(--glow-green)}.gate.is-wrong .gate__input{border-color:var(--red);box-shadow:0 0 18px #8e3b4680}.gate__msg{margin-top:1rem;min-height:1.4em;color:var(--ash);font-size:.95rem}.gate__msg--err{color:var(--red)}.gate__msg--warn{color:var(--amber);max-width:34ch}.gdd{display:block;position:relative;z-index:1;background:var(--night);min-height:100vh}.gdd[hidden]{display:none}.gdd__topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.25rem;background:#0d0f14eb;backdrop-filter:blur(8px);border-bottom:1px solid var(--moss)}.gdd__home{font-family:var(--font-title);font-size:.9rem;color:var(--ash)}.gdd__home:hover{color:var(--amber)}.gdd__lang{display:inline-flex;border:1px solid var(--moss);border-radius:6px;overflow:hidden}.gdd__lang-btn{font-family:var(--font-title);font-size:.82rem;letter-spacing:.06em;padding:.35rem .8rem;background:transparent;color:var(--ash);border:none;cursor:pointer;transition:background-color .2s ease,color .2s ease}.gdd__lang-btn:hover{color:var(--bone)}.gdd__lang-btn.is-active{background:var(--amber);color:var(--night)}.gdd__layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:3rem;max-width:88rem;margin:0 auto;padding:2rem 2rem 6rem}.gdd__toc{position:sticky;top:72px;align-self:start;max-height:calc(100vh - 90px);overflow-y:auto;padding-right:.5rem}.gdd__toc ol{list-style:none;margin:0;padding:0;counter-reset:toc}.gdd__toc li{margin:0}.gdd__toc a{display:block;padding:.32rem .6rem;border-left:2px solid var(--moss);color:var(--ash);font-size:.82rem;line-height:1.35;transition:color .2s ease,border-color .2s ease,background-color .2s ease}.gdd__toc a:hover{color:var(--bone);background:#171c2480}.gdd__toc a.is-active{color:var(--mint);border-left-color:var(--green);background:#4fa37b14}.gdd__doc{min-width:0;max-width:100%}.gdd__doc>p,.gdd__doc>ul,.gdd__doc>ol,.gdd__doc>blockquote,.gdd__doc>h1,.gdd__doc>h2,.gdd__doc>h3,.gdd__doc>.gdd-meta{max-width:68ch}.gdd-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem .75rem;margin:1.5rem 0 2rem;padding:1.25rem;background:var(--slate);border:1px solid var(--moss);border-radius:8px}.gdd-meta__row{display:flex;flex-direction:column;gap:.15rem}.gdd-meta__k{font-family:var(--font-title);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--green)}.gdd-meta__v{color:var(--bone);font-size:.92rem}.gdd__doc h1{font-family:var(--font-title);font-size:clamp(1.8rem,1rem + 4vw,2.8rem);color:var(--amber);margin-bottom:.4em}.gdd__doc h2{font-family:var(--font-title);font-size:clamp(1.3rem,1rem + 2vw,1.9rem);color:var(--mint);margin-top:2.4em;padding-bottom:.3em;border-bottom:2px solid var(--moss);scroll-margin-top:84px}.gdd__doc h3{font-family:var(--font-title);color:var(--green);margin-top:1.6em;font-size:1.1rem}.gdd__doc p,.gdd__doc li{color:var(--bone);line-height:1.7}.gdd__doc strong{color:var(--amber);font-weight:600}.gdd__doc a{color:var(--mint)}.gdd__doc ul,.gdd__doc ol{padding-left:1.4rem}.gdd__doc li{margin-bottom:.3rem}.gdd__doc blockquote{border-left:3px solid var(--green);background:#4fa37b14;margin:1.4rem 0;padding:.8rem 1.2rem;color:var(--mint);font-family:var(--font-title);font-size:1.05rem}.gdd__doc code{font-family:ui-monospace,Courier New,monospace;background:var(--night);color:var(--amber);padding:.1em .35em;border-radius:3px;font-size:.9em}.gdd__doc hr{border:none;border-top:2px solid var(--moss);margin:2.5rem 0}.gdd__doc .table-wrap{overflow-x:auto;margin:1.4rem 0}.gdd__doc table{border-collapse:collapse;width:100%;min-width:26rem;background:var(--slate);border:2px solid var(--moss)}.gdd__doc th,.gdd__doc td{border:1px solid var(--moss);padding:.6rem .8rem;text-align:left;vertical-align:top}.gdd__doc th{background:var(--night);color:var(--amber);font-family:var(--font-title);font-weight:400;letter-spacing:.03em}.gdd__doc tr:nth-child(2n) td{background:#232a2a59}.gdd__doc .mermaid{margin:1.6rem 0;padding:1.25rem;overflow-x:auto;background:var(--night);border:1px solid var(--moss);border-radius:8px;text-align:center}.gdd__doc .mermaid svg{max-width:100%;height:auto}.gdd__doc .mermaid .edgeLabel{color:var(--bone)}.gdd__doc .mermaid .flowchart-link{stroke:var(--green)}.gdd__doc .mermaid .mindmap-node .section-root rect,.gdd__doc .mermaid g.section-root>rect{fill:var(--slate)!important;stroke:var(--amber)!important}.gdd__doc pre code.language-mermaid{color:var(--ash)}.gdd__top{position:fixed;bottom:1.5rem;right:1.5rem;z-index:30;width:42px;height:42px;border-radius:8px;background:var(--amber);color:var(--night);border:none;cursor:pointer;font-size:.9rem;box-shadow:var(--glow-amber)}@media(max-width:860px){.gdd__layout{grid-template-columns:1fr;gap:1rem}.gdd__toc{position:static;max-height:none;margin-bottom:1rem;border:1px solid var(--moss);border-radius:8px;padding:.75rem;background:var(--slate)}.gdd__toc ol{display:flex;flex-wrap:wrap;gap:.3rem}.gdd__toc a{border-left:none;border-radius:4px;padding:.3rem .55rem;font-size:.78rem;background:var(--night)}.gdd-meta{grid-template-columns:1fr}}
