.atlas-lab{--lab-line:var(--line,#dbe4e9);--lab-muted:var(--muted,#64757b);min-width:0;font-size:14px;line-height:1.9}.atlas-lab *{box-sizing:border-box}.atlas-lab h3{margin:0 0 8px;font-size:22px}.atlas-lab h4{margin:20px 0 10px;font-size:15px}.atlas-lab p{margin:8px 0 16px}.atlas-lab .lab-intro{color:var(--lab-muted);max-width:78ch}.atlas-lab .lab-form{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:22px 0;display:grid}.atlas-lab .field{flex-direction:column;gap:5px;min-width:0;font-size:12px;display:flex}.atlas-lab input:not([type=checkbox]):not([type=range]),.atlas-lab select,.atlas-lab textarea{border:1px solid var(--lab-line);background:var(--surface,#fff);width:100%;min-width:0;color:var(--text,#172d34);font:inherit;border-radius:6px;padding:11px 12px;font-size:15px}.atlas-lab input[type=range]{accent-color:#28689a;width:100%}.atlas-lab input[type=checkbox]{accent-color:#28689a;vertical-align:middle;width:18px;height:18px}.atlas-lab .check-field{flex-direction:row;align-items:center;gap:8px}.atlas-lab .actions{flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0;display:flex}.atlas-lab .button{color:#fff;cursor:pointer;font:inherit;background:#28689a;border:1px solid #28689a;border-radius:5px;min-height:42px;padding:9px 15px;font-size:12px;line-height:1.7}.atlas-lab .button.secondary{color:var(--text,#172d34);border-color:var(--lab-line);background:0 0}.atlas-lab .button[aria-pressed=true]{color:#fff;background:#102a34;border-color:#62d6cb}.atlas-lab .button:focus-visible,.atlas-lab input:focus-visible,.atlas-lab select:focus-visible{outline-offset:3px;outline:3px solid #88bedd}.atlas-lab .button:hover{filter:brightness(1.08)}.atlas-lab .metrics{grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:10px;margin:20px 0;display:grid}.atlas-lab .metric{border:1px solid var(--lab-line);background:var(--surface,#fff);border-radius:6px;min-width:0;padding:14px 12px}.atlas-lab .metric strong{color:var(--text,#172d34);overflow-wrap:anywhere;font-size:25px;font-weight:750;line-height:1.5;display:block}.atlas-lab .metric span{color:var(--lab-muted);font-size:11px}.atlas-lab .notice{background:#28689a12;border-inline-start:3px solid #28689a;border-radius:3px;margin:16px 0;padding:15px 18px;font-size:12px}.atlas-lab .notice.danger{background:#bd4a4814;border-color:#bd4a48}.atlas-lab .notice.success{background:#21866b14;border-color:#21866b}.atlas-lab .notice.warning{background:#c48a2714;border-color:#c48a27}.atlas-lab .table-wrap{border:1px solid var(--lab-line);border-radius:6px;margin:16px 0;overflow-x:auto}.atlas-lab table{border-collapse:collapse;white-space:normal;width:100%;min-width:320px;font-size:12px}.atlas-lab td,.atlas-lab th{text-align:right;border-bottom:1px solid var(--lab-line);padding:10px 12px}.atlas-lab th{background:#28689a0d;font-weight:650}.atlas-lab tr:last-child td{border-bottom:0}.atlas-lab pre{text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;color:#c5eee7;direction:ltr;background:#102a34;border-radius:6px;max-height:360px;padding:18px;font:12px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:auto}.atlas-lab code,.atlas-lab .code{direction:ltr;unicode-bidi:isolate;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.atlas-lab .lab-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.atlas-lab .lab-columns>*{min-width:0}.atlas-lab .flow{direction:ltr;flex-wrap:wrap;align-items:stretch;gap:7px;margin:20px 0;display:flex}.atlas-lab .flow-node{border:1px solid var(--lab-line);background:var(--surface,#fff);direction:rtl;border-radius:6px;flex-direction:column;flex:1;justify-content:center;min-width:110px;padding:12px;font-size:12px;display:flex;position:relative}.atlas-lab .flow-node.active{color:#fff;background:#28689a;border-color:#28689a;box-shadow:0 0 0 3px #88bedd44}.atlas-lab .flow-node.done{background:#21866b13;border-color:#21866b}.atlas-lab .flow-node.failed{background:#bd4a4813;border-color:#bd4a48}.atlas-lab .flow-arrow{color:#88bedd;align-self:center;font-size:20px}.atlas-lab .log{border:1px solid var(--lab-line);border-radius:6px;max-height:290px;margin:16px 0;padding:0;list-style:none;overflow:auto}.atlas-lab .log li{border-bottom:1px solid var(--lab-line);align-items:start;gap:10px;padding:10px 14px;font-size:12px;display:flex}.atlas-lab .log li:last-child{border-bottom:0}.atlas-lab .log li b{color:#28689a;white-space:nowrap;direction:ltr;font-size:10px}.atlas-lab .tag{color:var(--text,#172d34);background:#28689a12;border-radius:99px;padding:3px 10px;font-size:11px;display:inline-block}.atlas-lab .lab-help{border-top:1px solid var(--lab-line);color:var(--lab-muted);margin-top:22px;padding-top:14px;font-size:12px}.atlas-lab .lab-help summary{cursor:pointer;font-weight:650}.atlas-lab .lab-help ul{padding-inline-start:20px}.atlas-lab .lab-error{font-weight:600}.atlas-lab .lab-chart{color:#28689a;width:100%;height:auto;max-height:220px;display:block}.atlas-lab .lab-chart text{fill:var(--lab-muted);font:11px Arial}.atlas-lab .lab-chart line{stroke:var(--lab-line)}.atlas-lab .risk-band{direction:ltr;background:linear-gradient(90deg,#21866b 0 33%,#c48a27 33% 66%,#bd4a48 66%);border-radius:5px;height:12px;margin:25px 8px 14px;position:relative}.atlas-lab .risk-band i{background:var(--text,#172d34);border:1px solid #fff;width:3px;position:absolute;top:-5px;bottom:-5px;transform:translate(-50%)}.atlas-lab .architecture-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.atlas-lab .architecture-node{font:inherit;border:1px solid var(--lab-line);background:var(--surface,#fff);color:var(--text,#172d34);cursor:pointer;border-radius:6px;min-height:66px;padding:13px 8px;font-size:12px}.atlas-lab .architecture-node[data-state=down]{background:#bd4a4820;border-color:#bd4a48}.atlas-lab .architecture-node[data-state=degraded]{background:#c48a2720;border-color:#c48a27}.atlas-lab .architecture-node[aria-pressed=true]{outline:2px solid #28689a}.atlas-lab .architecture-node small{color:var(--lab-muted);font-size:10px;display:block}.atlas-lab .lab-step-counter{margin-inline-start:auto;font-size:12px;font-weight:600}.atlas-lab .lab-orderbook td:first-child{direction:ltr}.atlas-lab .lab-progress{background:var(--lab-line);border-radius:3px;height:5px;margin:18px 0;overflow:hidden}.atlas-lab .lab-progress i{background:#62d6cb;height:100%;transition:width .2s;display:block}.atlas-lab .lab-status{flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0;display:flex}.atlas-lab .lab-status strong{font-size:18px}.atlas-lab .lab-hero{background:var(--surface,#fff);border:1px solid var(--lab-line);border-radius:8px;padding:20px}.atlas-lab .lab-toggle{flex-wrap:wrap;gap:8px;display:flex}.atlas-lab .lab-output{min-height:90px}.atlas-lab .data-caption{color:var(--lab-muted);font-size:11px}.atlas-lab svg text{font-family:Vazirmatn,sans-serif}.atlas-lab [hidden]{display:none!important}@media (width<=700px){.atlas-lab .lab-columns{grid-template-columns:1fr}.atlas-lab .architecture-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.atlas-lab .flow{grid-template-columns:1fr 1fr;gap:8px;display:grid}.atlas-lab .flow-arrow{display:none}.atlas-lab .flow-node{min-width:0;padding:10px;font-size:11px}.atlas-lab .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.atlas-lab .metric strong{font-size:22px}.atlas-lab .lab-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.atlas-lab input:not([type=checkbox]):not([type=range]),.atlas-lab select{font-size:16px}.atlas-lab .button{padding:8px 11px;font-size:11px}.atlas-lab h3{font-size:19px}.atlas-lab .lab-hero{padding:14px}.atlas-lab pre{padding:13px;font-size:11px}.atlas-lab .lab-step-counter{width:100%}}@media (prefers-reduced-motion:reduce){.atlas-lab *{transition:none!important;animation:none!important}}.atlas-lab .log{text-align:right;background:var(--surface,#fff);color:var(--text,#172d34);direction:rtl;font-family:Vazirmatn,sans-serif}.atlas-lab .architecture-node[data-state=failed]{background:#bd4a4820;border-color:#bd4a48}.lesson-side .atlas-lab .lab-columns,.lesson-side .atlas-lab .lab-form{grid-template-columns:1fr}.lesson-side .atlas-lab .architecture-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.atlas-lab .architecture-svg-wrap{border:1px solid var(--lab-line);background:color-mix(in srgb,#28689a 3%,var(--surface,#fff));direction:ltr;border-radius:8px;margin:18px 0;overflow:auto}.atlas-lab .architecture-svg-wrap svg{min-width:480px;height:auto;display:block}.atlas-lab .architecture-svg-wrap svg text{fill:var(--text,#172d34)}