/* Only the stack companion article downloads this stylesheet. */
.stack-guide{grid-template-columns:minmax(0,1fr) 235px;gap:55px}.stack-guide .article-body>h1{text-wrap:balance}.stack-guide .article-section{padding:40px 0}.stack-guide .article-section h2{font-size:40px;line-height:1.13}.stack-guide .article-section>p{max-width:66ch}.stack-guide .toc nav{max-height:66vh;overflow:auto;overscroll-behavior:contain}.stack-guide .toc nav a{font-size:12px;line-height:1.6;padding-block:7px}.stack-guide .video-block{margin-block:24px 30px}.stack-guide .guide-cover{height:100%;display:block}.stack-guide .video-trigger .guide-cover img{height:100%;object-fit:cover}.stack-guide .cover-caption{bottom:10%}.stack-guide .play-circle{width:56px;height:56px;top:27%;left:91%}.stack-guide .duration{font-variant-numeric:tabular-nums}
.stack-overview{padding-block:26px 35px;border-top:1px solid var(--line)}.stack-overview h2{font-size:44px;line-height:1.12;margin:12px 0 16px}.stack-overview>p:not(.eyebrow){font-size:15px;line-height:1.85;color:var(--muted)}.stack-facts{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:16px;margin:25px 0 16px;border-block:1px solid var(--line);padding:18px 0}.stack-facts dt{font-size:9px;letter-spacing:.15em;color:var(--accent);margin-bottom:7px}.stack-facts dd{margin:0;font-size:16px;font-weight:700}.stack-overview .stack-small{font-size:12px!important}.stack-roadmap{display:grid;grid-template-columns:repeat(4,1fr);margin-top:25px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.stack-roadmap a{display:grid;grid-template-columns:1fr auto;gap:10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 16px;font-size:14px;transition:background .15s}.stack-roadmap a:hover{background:#ff963b10}.stack-roadmap span{grid-column:1/-1;font-size:11px;color:var(--accent)}.stack-roadmap b{color:var(--muted);font-weight:400}.stack-prerequisites{margin-top:22px;border-bottom:1px solid var(--line)}.stack-prerequisites summary,.stack-state summary,.stack-guide .guide-help summary{display:flex;justify-content:space-between;gap:15px;align-items:center;cursor:pointer;min-height:52px;font-size:14px}.stack-prerequisites summary span,.stack-state summary span{color:var(--accent)}.stack-prerequisites p{font-size:14px;line-height:1.85;color:var(--muted);margin-bottom:18px}
.stack-visual{margin:26px 0;min-width:0}.stack-visual figcaption{display:flex;gap:10px;font-size:11px;line-height:1.75;color:var(--muted);margin-top:13px}.stack-visual figcaption>span{color:var(--accent);font-size:19px}.stack-visual figcaption b{display:block;font-weight:400;color:var(--accent);font-size:10px;margin-bottom:2px}.stack-window{background:#f3f3ef;color:#242621;border-radius:12px;overflow:hidden;border:1px solid #ffffff25}.stack-bar{display:flex;align-items:center;gap:14px;padding:13px 17px;border-bottom:1px solid #dddeda;font-size:12px;background:#fbfbf8}.stack-bar>b{font-weight:700;flex:1}.stack-bar>span:last-child{font-size:8px;letter-spacing:.14em;color:#666960}.stack-dots{display:flex;gap:5px}.stack-dots i{width:7px;height:7px;border-radius:50%;background:#ff6560}.stack-dots i:nth-child(2){background:#edba48}.stack-dots i:nth-child(3){background:#49bc78}.stack-panel{padding:27px}.stack-panel h3{font-family:var(--body);font-size:22px;letter-spacing:-.04em;line-height:1.3;margin:14px 0 9px}.stack-panel p{font-size:13px!important;line-height:1.8!important;color:#5c6157;margin:0}.stack-tag{display:inline-block;font-size:9px;letter-spacing:.1em;font-weight:700;color:#707969}.stack-split{display:grid;grid-template-columns:1fr 1fr;gap:18px;min-width:0}.stack-spec .stack-split{margin-top:22px;border-top:1px solid #d8dbd3;padding-top:20px}.stack-split>div{min-width:0}.stack-split b{font-size:13px}.stack-checks{list-style:none;padding:0;margin:12px 0 0}.stack-checks li{font-size:12px;line-height:1.8;display:flex;gap:9px;margin-top:7px}.stack-checks span{color:#357555}.stack-message{padding:13px 16px;background:#e4e8df;border:1px solid #d8ddcf;border-radius:8px;font-size:13px;line-height:1.6;margin-bottom:18px}.stack-code{background:#1b211e;color:#e5eee4;border-radius:8px;padding:17px;overflow:hidden}.stack-code>span{font-size:11px;color:#c4d5c0}.stack-code pre{font:12px/1.95 ui-monospace,monospace;overflow-x:auto;white-space:pre;margin:10px 0 0}.stack-code em{font-style:normal;color:#a0b3a1}.stack-added{color:#b5e4b9}.stack-removed{color:#f1b3a5}.stack-panel .stack-status{font-size:11px!important;line-height:1.75;margin-top:16px;color:#58664f}.stack-pr-title{margin-bottom:20px}.stack-path{display:flex;align-items:stretch;gap:10px}.stack-node{flex:1;min-width:0;display:flex;flex-direction:column;border:1px solid #494b3f;background:#1c1e18;border-radius:9px;padding:23px 17px;color:var(--ink)}.stack-node>span{font-size:9px;letter-spacing:.08em;color:var(--accent)}.stack-node strong{font-size:16px;line-height:1.5;margin:10px 0 7px;overflow-wrap:anywhere}.stack-node small{font-size:11px;line-height:1.8;color:#b2b8a7}.stack-arrow{align-self:center;color:var(--accent);font-size:20px}.stack-accent{background:linear-gradient(135deg,#42321d,#262017);border-color:#af7538}.stack-panel .stack-node{background:#fff;border-color:#d9ddd1;color:#242621;padding:18px 13px}.stack-panel .stack-node>span{color:#707a60}.stack-panel .stack-node small{color:#626b59}.stack-panel .stack-accent{background:#e9efdf;border-color:#bbcda0}.stack-envs{display:grid;grid-template-columns:1fr 1fr;gap:20px}.stack-envs>div{padding:22px;border:1px solid var(--line);border-radius:12px;background:#ffffff03}.stack-envs h3{font-family:var(--body);font-size:19px;margin:12px 0 20px;letter-spacing:-.03em}.stack-envs .stack-path{display:block}.stack-envs .stack-arrow{display:block;transform:rotate(90deg);width:20px;margin:8px auto}.stack-envs .stack-node{padding:16px}.stack-envs .stack-tag{color:var(--accent)}.stack-warning{padding:15px 18px;border-left:2px solid var(--accent);background:#ff963b08;font-size:13px;margin-top:15px;line-height:1.6}.stack-service-list{border-top:1px solid var(--line)}.stack-service-list>div{display:grid;grid-template-columns:1fr 1.15fr 1.3fr;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}.stack-service-list span{font-size:12px;color:var(--muted)}.stack-service-list strong{font-size:13px;font-weight:400}.stack-service-list small{font-size:11px;line-height:1.8;color:var(--muted)}.stack-state{margin-top:20px;border-top:1px solid #d6ddce}.stack-state summary{font-size:12px}.stack-state summary span{color:#4f7043}.stack-state ul{font-size:12px;line-height:1.9;padding-left:18px}.stack-loop .stack-path{display:grid;grid-template-columns:repeat(4,1fr)}.stack-loop .stack-arrow{display:none}.stack-loop p{color:var(--muted);font-size:12px!important}.stack-finale{padding:38px 30px;border:1px solid #a76d32;border-radius:12px;background:radial-gradient(ellipse at 100% 0,#ff963b22,transparent 70%),#1b1914}.stack-finale .stack-tag{color:var(--accent)}.stack-finale h3{font-size:55px;line-height:1.1;margin:17px 0}.stack-finale p{max-width:48ch;font-size:15px!important}.stack-finale a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:var(--accent);margin-top:15px}
.stack-actions{padding-left:23px;margin:24px 0;font-size:15px;line-height:1.85;color:var(--muted)}.stack-actions li{padding:4px 0 6px 7px}.stack-actions li::marker{color:var(--accent);font-weight:700}.stack-guide .guide-outcome{display:flex;gap:12px;border-left:2px solid #8cae91;background:#86ae9108;margin-top:24px;padding:17px}.stack-guide .guide-outcome>span{color:#b6d1bb}.stack-guide .guide-outcome b{color:#b6d1bb;font-size:12px}.stack-guide .guide-outcome p{font-size:14px;line-height:1.8;margin:6px 0 0}.stack-guide .guide-help{border-bottom:1px solid var(--line);margin-top:12px}.stack-guide .guide-help summary{color:var(--muted)}.stack-guide .guide-help summary span{color:var(--accent)}.stack-guide .guide-help[open] summary span{transform:rotate(45deg)}.stack-guide .guide-help>p{font-size:14px;margin:0;padding-bottom:17px}.stack-guide .guide-step-links{display:flex;flex-wrap:wrap;gap:5px 22px;margin-top:20px}.stack-guide .guide-step-links a{font-size:12px}.stack-guide .guide-step-links svg{width:15px}.stack-guide .guide-optional{font-size:10px;color:var(--accent);display:inline-block;border:1px solid #ff963b55;border-radius:18px;padding:5px 10px;margin:0 0 14px}
@media(max-width:1000px){.stack-guide{display:block}.stack-guide .article-section h2{font-size:36px}.stack-guide .toc{display:none}}
@media(max-width:700px){.stack-guide .article-section{padding:29px 0}.stack-guide .article-section h2{font-size:31px}.stack-overview h2{font-size:36px}.stack-facts{gap:12px;grid-template-columns:1fr 1fr}.stack-facts>div:last-child{grid-column:1/-1}.stack-facts dd{font-size:15px}.stack-roadmap{grid-template-columns:1fr 1fr}.stack-roadmap a{padding:17px 14px}.stack-panel{padding:19px}.stack-split,.stack-envs{grid-template-columns:1fr}.stack-path{flex-direction:column}.stack-arrow{align-self:center;transform:rotate(90deg)}.stack-node{padding:19px}.stack-panel .stack-node{padding:16px}.stack-code{padding:14px}.stack-code pre{font-size:11px}.stack-service-list>div{grid-template-columns:1fr 1.4fr;gap:7px 12px}.stack-service-list small{grid-column:2}.stack-loop .stack-path{grid-template-columns:1fr 1fr}.stack-finale{padding:28px 22px}.stack-finale h3{font-size:43px}.stack-actions{font-size:14px;padding-left:19px}.stack-guide .guide-outcome{padding:15px 13px}.stack-guide .guide-outcome p,.stack-guide .guide-help>p{font-size:13px}.stack-guide .guide-help summary{font-size:13px}.stack-guide .guide-step-links a{font-size:11px}.stack-guide .play-circle{left:89%;width:44px;height:44px}.stack-guide .play-circle svg{width:25px}.stack-bar{padding:12px;font-size:11px;gap:9px}}
