:root{--ground: #0e1220;--panel: #151b2e;--panel-2: #1b2338;--sunk: #0b0f1a;--rule: #29334f;--rule-soft: #1f2740;--ink: #e3e8f5;--ink-dim: #b3bcd4;--muted: #8792ae;--brand: #7c6cf0;--brand-soft: #7c6cf022;--ok: #46c79b;--warn: #e7a93c;--fail: #ef5f62;--info: #5aa9e6;--r-sm: 6px;--r-md: 10px;--r-lg: 16px;--shadow: 0 18px 40px -24px #00000099;--fs-1: clamp(1.5rem, 1.1rem + 1.6vw, 2.1rem);--fs-2: 1.05rem;--fs-3: .92rem;--fs-4: .8rem;--fs-5: .72rem}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--ground);color:var(--ink);font-family:Vazirmatn,system-ui,sans-serif;font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}body{background-image:radial-gradient(70rem 40rem at 85% -10%,#7c6cf014,transparent 60%),radial-gradient(50rem 30rem at 0% 100%,#46c79b0e,transparent 60%);background-attachment:fixed}.mono{font-family:JetBrains Mono,ui-monospace,monospace;font-variant-ligatures:none;letter-spacing:-.01em;direction:ltr;unicode-bidi:isolate}.shell{max-width:1420px;margin:0 auto;padding:0 20px 96px}.masthead{display:flex;flex-wrap:wrap;align-items:flex-end;gap:18px;padding:34px 0 22px;border-bottom:1px solid var(--rule-soft);margin-bottom:26px}.masthead h1{font-size:var(--fs-1);font-weight:800;letter-spacing:-.02em;margin:0;line-height:1.15}.masthead h1 span{color:var(--brand)}.masthead p{margin:6px 0 0;color:var(--muted);font-size:var(--fs-3);max-width:46ch}.masthead .grow{flex:1}.privacy{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--rule);background:var(--panel);border-radius:999px;padding:6px 14px;font-size:var(--fs-5);color:var(--ink-dim)}.privacy:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px #46c79b26}.columns{display:grid;grid-template-columns:minmax(0,1fr) 470px;gap:22px;align-items:start}@media (max-width: 1080px){.columns{grid-template-columns:minmax(0,1fr)}}.stack{display:flex;flex-direction:column;gap:16px;min-width:0}.card{background:var(--panel);border:1px solid var(--rule-soft);border-radius:var(--r-lg);overflow:hidden}.card>header{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--rule-soft);background:linear-gradient(180deg,#ffffff05,transparent)}.card>header h2{font-size:var(--fs-2);font-weight:600;margin:0;letter-spacing:-.01em}.path{font-family:JetBrains Mono,monospace;font-size:var(--fs-5);color:var(--muted);direction:ltr;background:var(--sunk);border:1px solid var(--rule-soft);border-radius:var(--r-sm);padding:2px 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:46%}.card>.body{padding:18px;display:flex;flex-direction:column;gap:14px}.collapse-btn{margin-inline-start:auto;background:none;border:none;color:var(--muted);cursor:pointer;font-size:1.1rem;line-height:1;padding:4px 6px;border-radius:var(--r-sm)}.collapse-btn:hover{color:var(--ink);background:var(--panel-2)}.grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.grid.two{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field>label{font-size:var(--fs-4);color:var(--ink-dim);font-weight:600}.field .hint{font-size:var(--fs-5);color:var(--muted);line-height:1.5}input[type=text],input[type=number],select,textarea{width:100%;background:var(--sunk);border:1px solid var(--rule);color:var(--ink);border-radius:var(--r-md);padding:9px 11px;font-family:JetBrains Mono,monospace;font-size:var(--fs-4);direction:ltr;transition:border-color .15s ease,box-shadow .15s ease}select{font-family:Vazirmatn,sans-serif;direction:rtl;cursor:pointer}textarea{resize:vertical;min-height:110px;line-height:1.5;white-space:pre;overflow-wrap:normal;overflow-x:auto}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}input::placeholder,textarea::placeholder{color:#56607d}.switch{display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:var(--fs-4);color:var(--ink-dim)}.switch input{position:absolute;opacity:0;width:0;height:0}.switch .track{flex:none;width:38px;height:21px;border-radius:999px;background:var(--sunk);border:1px solid var(--rule);position:relative;transition:background .18s ease,border-color .18s ease}.switch .track:after{content:"";position:absolute;inset-inline-start:3px;top:2px;width:15px;height:15px;border-radius:50%;background:var(--muted);transition:transform .18s ease,background .18s ease}.switch input:checked+.track{background:var(--brand-soft);border-color:var(--brand)}.switch input:checked+.track:after{background:var(--brand);transform:translate(-17px)}.switch input:focus-visible+.track{box-shadow:0 0 0 3px var(--brand-soft)}.chips{display:flex;flex-wrap:wrap;gap:7px}.chip{border:1px solid var(--rule);background:var(--sunk);color:var(--muted);border-radius:999px;padding:4px 13px;font-size:var(--fs-5);font-family:JetBrains Mono,monospace;cursor:pointer;transition:all .15s ease}.chip[aria-pressed=true]{border-color:var(--brand);color:var(--ink);background:var(--brand-soft)}.seg{display:inline-flex;background:var(--sunk);border:1px solid var(--rule);border-radius:var(--r-md);padding:3px;gap:3px}.seg button{border:none;background:none;color:var(--muted);font-family:inherit;font-size:var(--fs-4);padding:5px 14px;border-radius:7px;cursor:pointer;transition:all .15s ease}.seg button[aria-pressed=true]{background:var(--brand);color:#fff}button.btn{border:1px solid var(--rule);background:var(--panel-2);color:var(--ink);font-family:inherit;font-size:var(--fs-4);border-radius:var(--r-md);padding:8px 15px;cursor:pointer;transition:all .15s ease}button.btn:hover:not(:disabled){border-color:var(--brand);color:#fff}button.btn:disabled{opacity:.45;cursor:not-allowed}button.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}button.btn.ghost{background:none}button.btn.danger:hover:not(:disabled){border-color:var(--fail);color:var(--fail)}button.btn.tiny{padding:3px 9px;font-size:var(--fs-5)}.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.row.end{justify-content:flex-end}.divider{height:1px;background:var(--rule-soft);margin:2px 0}.item{border:1px solid var(--rule-soft);border-radius:var(--r-md);padding:12px;background:var(--panel-2);display:flex;flex-direction:column;gap:10px}.item>.item-head{display:flex;align-items:center;gap:8px;font-size:var(--fs-5);color:var(--muted);font-family:JetBrains Mono,monospace}.item>.item-head .grow{flex:1}.empty{border:1px dashed var(--rule);border-radius:var(--r-md);padding:16px;text-align:center;color:var(--muted);font-size:var(--fs-4)}.sidecol{position:sticky;top:16px;display:flex;flex-direction:column;gap:14px;max-height:calc(100vh - 32px)}@media (max-width: 1080px){.sidecol{position:static;max-height:none}}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--rule-soft);padding:0 8px;background:linear-gradient(180deg,#ffffff05,transparent)}.tabs button{border:none;background:none;color:var(--muted);font-family:inherit;font-size:var(--fs-4);padding:12px 12px 10px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;display:flex;align-items:center;gap:6px}.tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--brand)}.count{font-family:JetBrains Mono,monospace;font-size:.65rem;border-radius:999px;padding:1px 6px;background:var(--sunk);border:1px solid var(--rule)}.count.fail{color:var(--fail);border-color:#ef5f6255}.count.warn{color:var(--warn);border-color:#e7a93c55}.scroller{overflow:auto;min-height:200px;max-height:min(62vh,720px)}pre.json{margin:0;padding:16px;font-family:JetBrains Mono,monospace;font-size:.74rem;line-height:1.6;direction:ltr;text-align:left;white-space:pre;color:var(--ink-dim);background:var(--sunk)}pre.json .k{color:var(--brand)}pre.json .s{color:var(--ok)}pre.json .n{color:var(--warn)}pre.json .b{color:var(--info)}.findings{display:flex;flex-direction:column}.finding{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px 16px;border-bottom:1px solid var(--rule-soft);animation:rise .22s ease both}@keyframes rise{0%{opacity:0;transform:translateY(4px)}}.finding .dot{width:8px;height:8px;border-radius:2px;margin-top:8px;flex:none}.finding .t{font-size:var(--fs-4);font-weight:600}.finding .d{font-size:var(--fs-5);color:var(--muted);line-height:1.6}.finding .where{font-family:JetBrains Mono,monospace;font-size:.66rem;color:#5d6784;direction:ltr;margin-top:3px;word-break:break-all}.lv-fail .dot{background:var(--fail)}.lv-warn .dot{background:var(--warn)}.lv-dead .dot{background:var(--muted)}.lv-info .dot{background:var(--info)}.lv-ok .dot{background:var(--ok)}.lv-fail .t{color:var(--fail)}.lv-warn .t{color:var(--warn)}.lv-ok .t{color:var(--ok)}.ladder{display:flex;flex-direction:column;gap:0;padding:4px 0}.rung{border:1px solid var(--rule);border-radius:var(--r-md);background:var(--sunk);padding:11px 13px;display:flex;flex-direction:column;gap:7px}.rung .cn{font-family:JetBrains Mono,monospace;font-size:var(--fs-4);color:var(--ink);word-break:break-all;direction:ltr;text-align:left}.rung .meta{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:.66rem;color:var(--muted);font-family:JetBrains Mono,monospace;direction:ltr}.rung .role{font-family:Vazirmatn,sans-serif;font-size:var(--fs-5);color:var(--brand);font-weight:600}.life{height:3px;background:var(--rule-soft);border-radius:2px;overflow:hidden}.life i{display:block;height:100%;background:var(--ok);transition:width .4s ease}.life.short i{background:var(--warn)}.life.gone i{background:var(--fail)}.link{display:flex;align-items:center;gap:9px;padding:3px 0;margin-inline-start:22px;font-size:.66rem;color:var(--muted);font-family:JetBrains Mono,monospace;direction:ltr}.link .wire{width:2px;height:26px;background:var(--rule);border-radius:2px;flex:none;position:relative}.link.valid .wire{background:linear-gradient(180deg,var(--ok),#46c79b55)}.link.invalid .wire{background:repeating-linear-gradient(180deg,var(--fail) 0 4px,transparent 4px 8px)}.link.valid{color:var(--ok)}.link.invalid{color:var(--fail)}.keytie{display:flex;align-items:center;gap:8px;border:1px solid var(--rule);border-radius:var(--r-md);padding:9px 12px;font-size:var(--fs-5);background:var(--panel-2)}.keytie.match{border-color:#46c79b55;color:var(--ok)}.keytie.mismatch{border-color:#ef5f6255;color:var(--fail)}.fp{font-family:JetBrains Mono,monospace;font-size:.62rem;color:#5d6784;word-break:break-all;direction:ltr;text-align:left}.beam{border:1px solid var(--rule);border-radius:var(--r-md);background:var(--sunk);padding:12px;font-family:JetBrains Mono,monospace;font-size:.7rem;direction:ltr;text-align:left;white-space:pre-wrap;word-break:break-word;max-height:260px;overflow:auto;color:var(--ink-dim)}.pill{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-5);border-radius:999px;padding:3px 10px;border:1px solid var(--rule);color:var(--muted);font-family:JetBrains Mono,monospace}.pill.on{color:var(--ok);border-color:#46c79b55}.pill.off{color:var(--muted)}.pill.err{color:var(--fail);border-color:#ef5f6255}.notice{font-size:var(--fs-5);color:var(--muted);border-inline-start:2px solid var(--rule);padding-inline-start:10px;line-height:1.7}.toast{position:fixed;inset-block-end:22px;inset-inline-start:22px;background:var(--panel-2);border:1px solid var(--brand);color:var(--ink);padding:10px 18px;border-radius:var(--r-md);font-size:var(--fs-4);box-shadow:var(--shadow);animation:rise .2s ease both;z-index:50}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}
