.sd{color:#eceef4c7;font-size:16px;line-height:1.75}.sd .section-head{display:none}.sd p{margin:0 0 1rem}.sd strong{color:#fff;font-weight:500}.sd a{color:#ff9a70}.sd code{font-family:var(--font-jetbrains), monospace;color:#fff;background:#ffffff14;border-radius:6px;padding:.1em .4em;font-size:.88em}.sd .hl,.sd .hl-accent{color:#ffb499;background:#ff5b291a;border-radius:4px;padding:0 .25em}.sd .hl-green{color:#6ee7b7}.sd .hl-red{color:#fda4af}.sd .prose{color:#eceef4b8}.sd .req-grid,.sd .card-grid,.sd .tradeoff-grid,.sd .similar-grid,.sd .ref-grid{gap:12px;margin:0 0 1.25rem;display:grid}.sd .req-grid,.sd .tradeoff-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.sd .card-grid,.sd .similar-grid,.sd .ref-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.sd .req-box,.sd .card,.sd .tradeoff,.sd .similar-card,.sd .failure,.sd .endpoint,.sd .diagram-wrap,.sd .ref-link{background:#ffffff06;border:1px solid #ffffff1a;border-radius:18px;padding:18px}.sd .req-box-head,.sd .card-head,.sd .tradeoff-kicker,.sd .diagram-head,.sd .callout-label{font-family:var(--font-jetbrains), monospace;letter-spacing:.12em;text-transform:uppercase;color:#eceef473;margin-bottom:10px;font-size:11px}.sd .req-box-head.func{color:#6ee7b7}.sd .req-box-head.nonfunc{color:#ffb499}.sd .req-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.sd .req-list li{gap:10px;font-size:15px;line-height:1.55;display:flex}.sd .req-dot,.sd .card-dot{background:#ff5b29;border-radius:999px;flex-shrink:0;width:6px;height:6px;margin-top:.6em;display:inline-block}.sd .card-title,.sd .tradeoff-name,.sd .failure-title,.sd .similar-name,.sd .timeline-title,.sd .ref-title{color:#fff;margin-bottom:6px;font-size:16px;font-weight:500;line-height:1.4}.sd .tradeoff.chosen{background:linear-gradient(160deg,#ff5b291a,#ff5b2905);border-color:#ff5b2973}.sd .tradeoff p{font-size:14.5px;line-height:1.65}.sd .verdict{border-radius:999px;margin-top:6px;padding:3px 10px;font-size:12px;display:inline-block}.sd .verdict-yes{color:#6ee7b7;background:#34d3991f}.sd .verdict-maybe{color:#fcd34d;background:#fbbf241f}.sd .verdict-no{color:#fda4af;background:#fb71851f}.sd .table-wrap{border:1px solid #ffffff1a;border-radius:18px;margin:0 0 1.25rem;overflow-x:auto}.sd table{border-collapse:collapse;width:100%;font-size:14px}.sd th{text-align:left;font-family:var(--font-jetbrains), monospace;letter-spacing:.12em;text-transform:uppercase;color:#eceef473;background:#ffffff08;border-bottom:1px solid #ffffff1a;padding:12px 16px;font-size:10.5px}.sd td{vertical-align:top;border-bottom:1px solid #ffffff0f;padding:11px 16px}.sd tr:last-child td{border-bottom:0}.sd .t-metric{color:#fff}.sd .t-calc{font-family:var(--font-jetbrains), monospace;color:#eceef480;font-size:12.5px}.sd .t-value{font-family:var(--font-jetbrains), monospace;color:#ffb499;white-space:nowrap}.sd .endpoint{margin-bottom:10px;padding:14px 16px}.sd .endpoint-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sd .method{font-family:var(--font-jetbrains), monospace;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:600}.sd .method.get{color:#6ee7b7;background:#34d39924}.sd .method.post{color:#93c5fd;background:#60a5fa26}.sd .method.delete{color:#fda4af;background:#fb718524}.sd .ep-path{font-family:var(--font-jetbrains), monospace;color:#fff;font-size:14px}.sd .ep-desc{color:#eceef48c;font-size:14px}.sd .endpoint-body{margin-top:10px}.sd .code{font-family:var(--font-jetbrains), monospace;white-space:pre-wrap;background:#0e0e11;border:1px solid #ffffff14;border-radius:12px;padding:12px 14px;font-size:12.5px;line-height:1.7;overflow-x:auto}.sd .c-key{color:#93c5fd}.sd .c-str{color:#6ee7b7}.sd .c-num{color:#fcd34d}.sd .c-kw{color:#f0abfc}.sd .c-comment{color:#eceef459}.sd .diagram-wrap{margin:0 0 1.25rem;padding:0;overflow:hidden}.sd .diagram-head{border-bottom:1px solid #ffffff14;justify-content:space-between;margin:0;padding:12px 16px;display:flex}.sd .diagram-type{color:#eceef459}.sd .diagram-body{background:#0c0c0f;padding:16px;overflow-x:auto}.sd .diagram-body svg,.sd .arch-svg svg,.sd svg{max-width:100%;height:auto}:is(.sd .diagram-body:has(>svg.arch-svg),.sd .diagram-body:has(svg.arch-svg)){background-color:#fafaf8;background-image:radial-gradient(#120c0d17 1px,#0000 1px);background-size:18px 18px;padding:28px 20px}.sd svg.arch-svg{width:100%;min-width:620px;max-width:860px;margin:0 auto;display:block}.sd svg.arch-svg text{font-family:var(--font-jetbrains), ui-monospace, monospace;paint-order:stroke;stroke:#fafaf8;stroke-width:3px;stroke-linejoin:round}.sd svg.arch-svg rect+text,.sd svg.arch-svg rect+text+text,.sd svg.arch-svg rect+text+text+text{stroke-width:0}.sd .callout{background:#ff5b2912;border-left:2px solid #ff5b29;border-radius:0 16px 16px 0;margin:0 0 1.25rem;padding:16px 18px}.sd .callout-good{background:#34d3990f;border-left-color:#34d399}.sd .callout-warn{background:#fbbf240f;border-left-color:#fbbf24}.sd .tips{gap:10px;display:grid}.sd .tip{background:#ffffff05;border:1px solid #ffffff14;border-radius:16px;gap:14px;padding:14px 16px;display:flex}.sd .tip-n{font-family:var(--font-jetbrains), monospace;color:#ff5b29;padding-top:3px;font-size:13px}.sd .tip-text{margin:0;font-size:15px;line-height:1.65}.sd .failure{grid-template-columns:34px minmax(0,1fr);gap:4px 12px;margin-bottom:10px;display:grid}.sd .failure-icon{grid-row:span 3;font-size:20px}.sd .failure-desc{font-size:14.5px;line-height:1.6}.sd .mitigation{color:#6ee7b7;font-size:14px}.sd .timeline{border-left:1px solid #ffffff1f;gap:0;margin-left:8px;display:grid}.sd .timeline-step{padding:0 0 22px 24px;position:relative}.sd .timeline-step:before{content:"";background:#ff5b29;border-radius:999px;width:9px;height:9px;position:absolute;top:8px;left:-5px}.sd .timeline-phase{font-family:var(--font-jetbrains), monospace;letter-spacing:.12em;text-transform:uppercase;color:#ff9a70;font-size:11px}.sd .timeline-desc{font-size:14.5px;line-height:1.6}.sd .ref-link{align-items:center;gap:12px;padding:10px;text-decoration:none;display:flex}.sd .ref-thumb{aspect-ratio:16/9;background:#ffffff0f;border-radius:10px;flex-shrink:0;width:110px;position:relative;overflow:hidden}.sd .ref-thumb img{object-fit:cover;width:100%;height:100%}.sd .ref-play{place-items:center;display:grid;position:absolute;inset:0}.sd .ref-play-icon{color:#000;background:#fff;border-radius:999px;place-items:center;width:28px;height:28px;font-size:11px;display:grid}.sd .ref-source,.sd .ref-meta{color:#eceef473;font-size:12.5px}.sd .similar-reason{color:#eceef480;font-size:13.5px}
