:root{--y2j-canvas: #f5f7fb;--y2j-canvas-2: #e9edf7;--y2j-panel: #ffffff;--y2j-panel-2: #f2f5fc;--y2j-line: #d8dfef;--y2j-line-2: #b7c3de;--y2j-ink: #131a2b;--y2j-ink-2: #26314a;--y2j-fade: #626e8a;--y2j-indigo: #4338ca;--y2j-indigo-2: #312e81;--y2j-indigo-soft: #e5e6fb;--y2j-green: #047857;--y2j-green-soft: #dcfaef;--y2j-red: #b91c1c;--y2j-red-soft: #fdeaea;--y2j-amber: #a15c07;--y2j-amber-soft: #fdf1dc;--y2j-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--primary: #4338ca;--primary-dark: #312e81;--border: #d8dfef;--surface: #ffffff;--surface-muted: #f2f5fc;--shadow-soft: 0 4px 18px rgba(67, 56, 202, 0.08);--text-main: #131a2b;--text-muted: #626e8a;}
.y2j-sr{position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0, 0, 0, 0);white-space: nowrap;border: 0;}
.y2j-deck [hidden]{display: none !important;}
.y2j-deck{position: relative;background: var(--y2j-canvas);border: 1px solid var(--y2j-line);border-radius: 1.1rem;padding: 1rem;margin-bottom: 2.4rem;}
.y2j-deck::before{content: "";position: absolute;inset: 0;border-radius: 1.1rem;background: linear-gradient(180deg, rgba(67, 56, 202, 0.07), transparent 42%);pointer-events: none;}
.y2j-deck > *{position: relative;z-index: 1;}
.y2j-topline{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 0.5rem 1rem;margin-bottom: 0.85rem;}
.y2j-byline{display: flex;flex-wrap: wrap;align-items: baseline;gap: 0.15rem 0.7rem;font-size: 0.82rem;color: var(--y2j-fade);}
.y2j-byline-author{color: var(--y2j-ink-2);font-weight: 600;}
.y2j-byline-author a{color: var(--y2j-indigo);text-decoration: none;border-bottom: 1px solid rgba(67, 56, 202, 0.4);}
.y2j-byline-author a:hover{color: var(--y2j-indigo-2);border-bottom-color: var(--y2j-indigo-2);}
.y2j-state{display: inline-flex;align-items: center;gap: 0.4rem;font-size: 0.78rem;font-weight: 600;color: var(--y2j-fade);background: var(--y2j-panel);border: 1px solid var(--y2j-line);border-radius: 999px;padding: 0.28rem 0.75rem;}
.y2j-state::before{content: "";width: 0.5rem;height: 0.5rem;border-radius: 50%;background: var(--y2j-line-2);}
.y2j-state.is-ok{color: var(--y2j-green);border-color: #b4e6d4;background: var(--y2j-green-soft);}
.y2j-state.is-ok::before{background: var(--y2j-green);}
.y2j-state.is-bad{color: var(--y2j-red);border-color: #f2c6c6;background: var(--y2j-red-soft);}
.y2j-state.is-bad::before{background: var(--y2j-red);}
.y2j-rig{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 0.75rem;}
.y2j-pane{display: flex;flex-direction: column;background: var(--y2j-panel);border: 1px solid var(--y2j-line);border-radius: 0.9rem;overflow: hidden;box-shadow: var(--shadow-soft);min-width: 0;}
.y2j-pane-head{display: flex;align-items: center;justify-content: space-between;gap: 0.5rem;padding: 0.5rem 0.75rem;background: var(--y2j-panel-2);border-bottom: 1px solid var(--y2j-line);}
.y2j-pane-title{font-size: 0.8rem;font-weight: 700;color: var(--y2j-ink);}
.y2j-tag{font-family: var(--y2j-mono);font-size: 0.68rem;font-weight: 600;color: var(--y2j-fade);background: var(--y2j-canvas-2);border: 1px solid var(--y2j-line);border-radius: 0.35rem;padding: 0.1rem 0.4rem;}
.y2j-area{width: 100%;flex: 1 1 auto;min-height: 20rem;resize: vertical;border: 0;outline: none;padding: 0.75rem;font-family: var(--y2j-mono);font-size: 0.83rem;line-height: 1.65;color: var(--y2j-ink);background: var(--y2j-panel);tab-size: 2;white-space: pre;overflow-wrap: normal;overflow-x: auto;}
.y2j-area::placeholder{color: #97a2bb;}
.y2j-area:focus{box-shadow: inset 0 0 0 2px var(--y2j-indigo-soft);}
.y2j-area.is-out{background: #fbfcff;color: var(--y2j-ink-2);}
.y2j-rail{display: flex;flex-wrap: wrap;align-items: center;gap: 0.45rem;margin-top: 0.8rem;}
.y2j-btn{appearance: none;font-size: 0.8rem;font-weight: 600;color: var(--y2j-ink-2);background: var(--y2j-panel);border: 1px solid var(--y2j-line);border-radius: 0.5rem;padding: 0.46rem 0.9rem;cursor: pointer;transition: border-color 0.16s ease, background 0.16s ease, color 0.16s ease;}
.y2j-btn:hover{border-color: var(--y2j-indigo);color: var(--y2j-indigo-2);background: var(--y2j-indigo-soft);}
.y2j-btn:focus-visible{outline: 2px solid var(--y2j-indigo-2);outline-offset: 2px;}
.y2j-btn.is-primary{background: var(--y2j-indigo);border-color: var(--y2j-indigo);color: #ffffff;box-shadow: var(--shadow-soft);}
.y2j-btn.is-primary:hover{background: var(--y2j-indigo-2);border-color: var(--y2j-indigo-2);color: #ffffff;}
.y2j-btn.is-ghost{background: transparent;border-style: dashed;color: var(--y2j-fade);}
.y2j-rail-gap{flex: 1 1 auto;}
.y2j-knobs{display: flex;flex-wrap: wrap;align-items: center;gap: 0.45rem;margin-top: 0.75rem;padding: 0.6rem 0.7rem;background: var(--y2j-panel);border: 1px solid var(--y2j-line);border-radius: 0.9rem;box-shadow: var(--shadow-soft);}
.y2j-knob{display: inline-flex;align-items: center;gap: 0.4rem;font-size: 0.77rem;font-weight: 600;color: var(--y2j-ink-2);background: var(--y2j-panel-2);border: 1px solid var(--y2j-line);border-radius: 0.5rem;padding: 0.35rem 0.6rem;cursor: pointer;}
.y2j-knob:hover{border-color: var(--y2j-line-2);background: var(--y2j-indigo-soft);}
.y2j-knob input{accent-color: var(--y2j-indigo);}
.y2j-knob-hint{font-weight: 400;font-size: 0.7rem;color: var(--y2j-fade);}
.y2j-pick{display: inline-flex;align-items: center;gap: 0.4rem;font-size: 0.77rem;font-weight: 600;color: var(--y2j-ink-2);background: var(--y2j-panel-2);border: 1px solid var(--y2j-line);border-radius: 0.5rem;padding: 0.25rem 0.55rem;}
.y2j-select{font-size: 0.77rem;color: var(--y2j-ink);background: var(--y2j-panel);border: 1px solid var(--y2j-line);border-radius: 0.4rem;padding: 0.26rem 0.4rem;}
.y2j-select:focus{outline: 2px solid var(--y2j-indigo-soft);border-color: var(--y2j-indigo);}
.y2j-gauges{display: grid;grid-template-columns: repeat(5, minmax(0, 1fr));gap: 0.45rem;margin-top: 0.8rem;}
.y2j-gauge{background: var(--y2j-panel);border: 1px solid var(--y2j-line);border-radius: 0.6rem;padding: 0.5rem 0.6rem;text-align: center;}
.y2j-gauge-v{display: block;font-family: var(--y2j-mono);font-size: 1.02rem;font-weight: 700;color: var(--y2j-indigo-2);line-height: 1.25;}
.y2j-gauge-k{display: block;font-size: 0.68rem;color: var(--y2j-fade);}
.y2j-flag{display: flex;align-items: flex-start;gap: 0.55rem;margin-top: 0.75rem;font-size: 0.8rem;line-height: 1.5;color: var(--y2j-ink-2);background: var(--y2j-red-soft);border: 1px solid #f2c6c6;border-left: 3px solid var(--y2j-red);border-radius: 0.5rem;padding: 0.55rem 0.7rem;}
.y2j-flag.is-warn{background: var(--y2j-amber-soft);border-color: #eed6ab;border-left-color: var(--y2j-amber);}
.y2j-flag-where{font-family: var(--y2j-mono);font-size: 0.72rem;font-weight: 700;color: var(--y2j-red);background: rgba(255, 255, 255, 0.75);border-radius: 0.3rem;padding: 0.12rem 0.4rem;flex: none;}
.y2j-flag.is-warn .y2j-flag-where{color: var(--y2j-amber);}
.y2j-toast{position: fixed;left: 50%;bottom: 1.4rem;transform: translateX(-50%);background: var(--y2j-ink);color: #ffffff;font-size: 0.82rem;border-radius: 0.55rem;padding: 0.5rem 1rem;box-shadow: 0 10px 28px rgba(19, 26, 43, 0.28);z-index: 60;}
.y2j-write{margin: 0 auto 2.2rem;color: var(--y2j-ink-2);font-size: 1rem;line-height: 1.75;}
.y2j-write h2{font-size: 1.55rem;font-weight: 700;color: var(--y2j-ink);margin: 2rem 0 0.7rem;}
.y2j-write h3{font-size: 1.2rem;font-weight: 700;color: var(--y2j-ink);margin: 1.7rem 0 0.55rem;}
.y2j-write p{margin: 0 0 0.95rem;}
.y2j-write a{color: var(--y2j-indigo);text-decoration: none;border-bottom: 1px solid rgba(67, 56, 202, 0.35);}
.y2j-write a:hover{color: var(--y2j-indigo-2);border-bottom-color: var(--y2j-indigo-2);}
.y2j-write code{font-family: var(--y2j-mono);font-size: 0.88em;color: var(--y2j-indigo-2);background: var(--y2j-indigo-soft);border-radius: 0.3rem;padding: 0.08rem 0.32rem;}
.y2j-lead{font-size: 1.05rem;}
.y2j-points{margin: 0 0 1.1rem;padding-left: 1.1rem;}
.y2j-points li{margin-bottom: 0.45rem;}
.y2j-swap{display: grid;grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));gap: 0.7rem;margin: 1.1rem 0 1.4rem;}
.y2j-swap-card{background: var(--y2j-panel);border: 1px solid var(--y2j-line);border-radius: 0.7rem;overflow: hidden;}
.y2j-swap-head{font-size: 0.75rem;font-weight: 700;color: var(--y2j-ink);background: var(--y2j-panel-2);border-bottom: 1px solid var(--y2j-line);padding: 0.4rem 0.7rem;}
.y2j-swap-card.is-out .y2j-swap-head{color: var(--y2j-indigo-2);}
.y2j-code{margin: 0;padding: 0.7rem 0.8rem;overflow-x: auto;font-family: var(--y2j-mono);font-size: 0.79rem;line-height: 1.6;color: var(--y2j-ink-2);background: var(--y2j-panel);white-space: pre;}
.y2j-code code{background: transparent;color: inherit;padding: 0;}
.y2j-scroll{overflow-x: auto;margin: 1rem 0 1.4rem;border: 1px solid var(--y2j-line);border-radius: 0.7rem;}
.y2j-table{width: 100%;min-width: 34rem;border-collapse: collapse;font-size: 0.88rem;background: var(--y2j-panel);}
.y2j-table th{text-align: left;font-weight: 700;color: var(--y2j-ink);background: var(--y2j-panel-2);padding: 0.55rem 0.75rem;border-bottom: 1px solid var(--y2j-line);}
.y2j-table td{padding: 0.55rem 0.75rem;border-bottom: 1px solid var(--y2j-line);vertical-align: top;}
.y2j-table tr:last-child td{border-bottom: 0;}
.y2j-aside{background: var(--y2j-panel);border: 1px solid var(--y2j-line);border-left: 4px solid var(--y2j-indigo);border-radius: 0.7rem;padding: 0.85rem 1rem;margin: 1.1rem 0 1.4rem;box-shadow: var(--shadow-soft);}
.y2j-aside p{margin: 0;font-size: 0.94rem;}
@media (max-width: 991px){.y2j-gauges{grid-template-columns: repeat(3, minmax(0, 1fr));}}
@media (max-width: 767px){.y2j-rig{grid-template-columns: minmax(0, 1fr);}.y2j-knob{flex: 1 1 100%;}}
@media (max-width: 575px){.y2j-deck{padding: 0.75rem;border-radius: 0.9rem;}.y2j-area{min-height: 14rem;font-size: 0.8rem;}.y2j-gauges{grid-template-columns: repeat(2, minmax(0, 1fr));}.y2j-btn{flex: 1 1 auto;text-align: center;}.y2j-rail-gap{display: none;}.y2j-write h2{font-size: 1.32rem;}.y2j-write h3{font-size: 1.08rem;}}