:root{--tt-ink: #1e1b4b;--tt-ink-soft: #4b5563;--tt-ink-faint: #9ca3af;--tt-paper: #f8fafc;--tt-paper-dim: #eef2f7;--tt-line: rgba(30, 27, 75, .12);--tt-line-dark: rgba(250, 248, 243, .14);--tt-white: #ffffff;--tt-ember: #4f46e5;--tt-ember-dark: #4338ca;--tt-ember-tint: #e0e7ff;--tt-teal: #7c3aed;--tt-teal-dark: #6d28d9;--tt-teal-tint: #ede9fe;--tt-ember-light: #a5b4fc;--tt-teal-light: #c4b5fd;--tt-radius-sm: 8px;--tt-radius: 12px;--tt-radius-lg: 20px;--tt-ease: cubic-bezier(.16, 1, .3, 1)}.tt-container{width:100%;max-width:1256px;margin-inline:auto;padding-inline:1.25rem}@media (min-width: 768px){.tt-container{padding-inline:2rem}}.tt-section{padding-block:clamp(3.25rem,7vw,6.5rem)}.tt-section-tight{padding-block:clamp(2.5rem,5vw,4rem)}.tt-surface-ink{background:linear-gradient(135deg,#312e81,#3730a3 55%,#4338ca)!important;color:var(--tt-paper)}.tt-surface-paper{background:var(--tt-paper);color:var(--tt-ink)}.tt-surface-dim{background:var(--tt-paper-dim);color:var(--tt-ink)}.tt-surface-white{background:var(--tt-white);color:var(--tt-ink)}.tt-dotgrid{background-image:radial-gradient(circle,rgba(250,248,243,.16) 1px,transparent 1px);background-size:26px 26px}.tt-dotgrid-dim{background-image:radial-gradient(circle,rgba(30,27,75,.12) 1px,transparent 1px);background-size:24px 24px}.tt-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.tt-eyebrow--ember{color:var(--tt-ember)}.tt-eyebrow--teal{color:var(--tt-teal)}.tt-eyebrow--paper{color:#faf8f3b3}.tt-eyebrow-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.tt-h1{font-size:clamp(2.35rem,5.4vw,4.35rem);font-weight:900;line-height:1.06;letter-spacing:-.02em}.tt-h2{font-size:clamp(1.85rem,3.6vw,2.85rem);font-weight:800;line-height:1.12;letter-spacing:-.015em}.tt-h3{font-size:clamp(1.2rem,1.8vw,1.55rem);font-weight:800;line-height:1.3}.tt-lede{font-size:clamp(1.02rem,1.3vw,1.2rem);line-height:1.7;color:var(--tt-ink-soft)}.tt-lede--paper{color:#faf8f3c7}.tt-num{font-weight:900;letter-spacing:-.02em}mark.tt-mark{background:none;color:inherit;position:relative;white-space:nowrap}mark.tt-mark:after{content:"";position:absolute;inset-inline:-.05em;bottom:.08em;height:.32em;background:var(--tt-ember-tint);z-index:-1;border-radius:2px}mark.tt-mark--teal:after{background:var(--tt-teal-tint)}.tt-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.6rem;border-radius:var(--tt-radius-sm);font-weight:700;font-size:.92rem;line-height:1;transition:transform .2s var(--tt-ease),background-color .2s,border-color .2s,opacity .2s;white-space:nowrap}.tt-btn:active{transform:scale(.97)}.tt-btn-ink{background:var(--tt-ink);color:var(--tt-paper)}.tt-btn-ink:hover{background:var(--tt-ink-soft)}.tt-btn-paper{background:var(--tt-white);color:var(--tt-ink)}.tt-btn-paper:hover{background:var(--tt-ember-light)}.tt-btn-ember{background:var(--tt-ember);color:#fff}.tt-btn-ember:hover{background:var(--tt-ember-dark)}.tt-btn-teal{background:var(--tt-teal);color:#fff}.tt-btn-teal:hover{background:var(--tt-teal-dark)}.tt-btn-outline{background:transparent;border:1.5px solid var(--tt-line);color:inherit}.tt-btn-outline:hover{border-color:currentColor}.tt-btn-outline--paper{border-color:var(--tt-line-dark)}.tt-btn-ghost{background:none;padding:.4rem 0;font-weight:700;border-bottom:1.5px solid var(--tt-line);border-radius:0}.tt-btn-ghost:hover{border-color:currentColor}.tt-card{background:var(--tt-white);border:1px solid var(--tt-line);border-radius:var(--tt-radius);padding:1.75rem}.tt-card--ink{background:var(--tt-ink);border-color:var(--tt-line-dark)}.tt-card--tight{padding:1.25rem}.tt-chip{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:700;padding:.3rem .7rem;border-radius:999px;border:1px solid var(--tt-line)}.tt-nav-link{font-size:.9rem;font-weight:600;color:var(--tt-ink-soft);transition:color .15s}.tt-nav-link:hover{color:var(--tt-ink)}.tt-nav-drop{position:absolute;top:calc(100% + .6rem);background:var(--tt-white);border:1px solid var(--tt-line);border-radius:var(--tt-radius);box-shadow:0 18px 40px -12px #1e1b4b2e;padding:.6rem;min-width:15rem}.tt-nav-drop-item{display:flex;gap:.75rem;align-items:flex-start;padding:.7rem .75rem;border-radius:var(--tt-radius-sm);transition:background .15s}.tt-nav-drop-item:hover{background:var(--tt-paper-dim)}.tt-reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--tt-ease),transform .7s var(--tt-ease)}.tt-reveal.is-visible{opacity:1;transform:none}.tt-reveal-1.is-visible{transition-delay:.06s}.tt-reveal-2.is-visible{transition-delay:.12s}.tt-reveal-3.is-visible{transition-delay:.18s}.tt-reveal-4.is-visible{transition-delay:.24s}.tt-reveal-5.is-visible{transition-delay:.3s}@media (prefers-reduced-motion: reduce){.tt-reveal{opacity:1;transform:none;transition:none}}@keyframes tt-ping{0%{transform:scale(1);opacity:1}75%,to{transform:scale(2.2);opacity:0}}.tt-ping{position:relative}.tt-ping:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;animation:tt-ping 2.2s cubic-bezier(0,0,.2,1) infinite}@media (prefers-reduced-motion: reduce){.tt-ping:before{animation:none}}@keyframes tt-dash{to{stroke-dashoffset:-40}}.tt-flow-line{stroke-dasharray:5 6;animation:tt-dash 1.6s linear infinite}@media (prefers-reduced-motion: reduce){.tt-flow-line{animation:none}}.tt-hero{background:radial-gradient(60% 50% at 82% 8%,rgba(124,58,237,.35),transparent 60%),radial-gradient(45% 40% at 8% 92%,rgba(79,70,229,.4),transparent 65%),linear-gradient(160deg,#1e1b4b,#312e81 45%,#3730a3 78%,#4338ca)!important}.tt-glow{position:absolute;border-radius:50%;filter:blur(70px);pointer-events:none;z-index:0}.tt-glow-violet{background:radial-gradient(circle,rgba(124,58,237,.55),transparent 70%)}.tt-glow-blue{background:radial-gradient(circle,rgba(79,70,229,.5),transparent 70%)}@keyframes tt-drift-1{0%,to{transform:translate(0)}50%{transform:translate(2rem,-1.5rem)}}@keyframes tt-drift-2{0%,to{transform:translate(0)}50%{transform:translate(-1.75rem,1.75rem)}}.tt-glow-1{animation:tt-drift-1 20s ease-in-out infinite}.tt-glow-2{animation:tt-drift-2 24s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.tt-glow-1,.tt-glow-2{animation:none}}.tt-spotlight{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 60% 45%,rgba(165,180,252,.22),transparent 55%);pointer-events:none;z-index:0}.tt-device{position:relative;background:linear-gradient(155deg,#171335,var(--tt-ink) 65%);border-radius:26px;border:1px solid rgba(250,248,243,.08);box-shadow:0 40px 80px -30px #0000008c,inset 0 1px #ffffff0f;padding:1.5rem}.tt-device-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.tt-device-led{width:7px;height:7px;border-radius:50%;background:var(--tt-ember);flex-shrink:0}.tt-device-screen{background:#faf8f30a;border:1px solid rgba(250,248,243,.08);border-radius:var(--tt-radius);padding:1.1rem;margin-bottom:1.1rem}.tt-device-btn{border:none;border-radius:12px;padding:.85rem .5rem;display:flex;flex-direction:column;align-items:center;gap:.35rem;font-weight:700;font-size:.72rem;color:#fff;transition:transform .12s var(--tt-ease),filter .12s;cursor:pointer}.tt-device-btn:hover{filter:brightness(1.08)}.tt-device-btn.is-pressed{transform:scale(.92)}.tt-device-btn-emoji{font-size:1.35rem;line-height:1}.tt-dash{background:var(--tt-white);border:1px solid var(--tt-line);border-radius:var(--tt-radius-lg);box-shadow:0 40px 90px -40px #1e1b4b59;overflow:hidden}.tt-dash-bar{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid var(--tt-line);background:var(--tt-paper-dim)}.tt-dash-dot{width:9px;height:9px;border-radius:50%}.tt-dash-tile{border:1px solid var(--tt-line);border-radius:var(--tt-radius);padding:1rem 1.1rem}.tt-dash-bars{display:flex;align-items:flex-end;gap:.35rem;height:64px}.tt-dash-bars>span{flex:1;border-radius:4px 4px 0 0;background:var(--tt-teal);opacity:.85}.tt-flow-node{border:1px solid var(--tt-line-dark);border-radius:var(--tt-radius);padding:.9rem 1.1rem;background:#faf8f308}.tt-field-label{display:block;font-size:.82rem;font-weight:700;margin-bottom:.4rem;color:var(--tt-ink)}.tt-field{width:100%;background:var(--tt-white);border:1.5px solid var(--tt-line);border-radius:var(--tt-radius-sm);padding:.75rem .95rem;font-size:.95rem;transition:border-color .15s}.tt-field:focus{outline:none;border-color:var(--tt-ink)}.tt-need-pill{border:1.5px solid var(--tt-line);border-radius:var(--tt-radius);padding:.9rem 1rem;cursor:pointer;transition:border-color .15s,background .15s;display:flex;align-items:center;gap:.6rem}.tt-need-pill:hover{border-color:var(--tt-ink-faint)}.tt-need-pill.is-selected{border-color:var(--tt-ink);background:var(--tt-paper-dim)}.tt-index-mark{font-size:.85rem;font-weight:800;color:var(--tt-ink-faint);font-variant-numeric:tabular-nums}@media print{.tt-reveal{opacity:1!important;transform:none!important}}.tt-chapter{display:flex;align-items:flex-end;gap:1rem;margin-bottom:1.5rem}.tt-chapter-num{font-size:clamp(2.75rem,7vw,4.5rem);font-weight:900;line-height:.85;font-variant-numeric:tabular-nums;-webkit-text-stroke:1.5px var(--tt-ink-faint);color:transparent}.tt-chapter-num--paper{-webkit-text-stroke-color:rgba(250,248,243,.4)}.tt-chapter-meta{padding-bottom:.4rem}.tt-chapter-tag{display:block;font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--tt-ink-faint);margin-bottom:.2rem}.tt-chapter-tag--paper{color:#faf8f380}.tt-chapter-title{font-size:1rem;font-weight:800}.tt-annotation{position:absolute;display:flex;align-items:center;gap:.55rem;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.66rem;font-weight:600;letter-spacing:.04em;color:#faf8f3b8;white-space:nowrap;direction:ltr}.tt-annotation--dark{color:#1e1b4b99}.tt-annotation-dot{width:5px;height:5px;border-radius:50%;background:var(--tt-teal-light);flex-shrink:0}.tt-annotation--dark .tt-annotation-dot{background:var(--tt-teal)}.tt-annotation-line{height:1.5px;background:#faf8f373;flex-shrink:0}.tt-annotation--dark .tt-annotation-line{background:#1e1b4b59}.tt-terminal{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.78rem;line-height:2;direction:ltr;text-align:left;unicode-bidi:isolate}.tt-terminal .k{color:#faf8f366}.tt-terminal .v{color:var(--tt-paper);font-weight:700}.tt-terminal--dark .k{color:var(--tt-ink-faint)}.tt-terminal--dark .v{color:var(--tt-ink)}.tt-huge{font-size:clamp(2.75rem,10vw,7rem);font-weight:900;line-height:.98;letter-spacing:-.02em}.tt-stage{min-height:clamp(18rem,50vh,30rem);display:flex;flex-direction:column;justify-content:center}@media (min-width: 1024px){.tt-sticky{position:sticky;top:6.5rem;align-self:start}}@keyframes tt-packet{0%,8%{transform:translate(0);opacity:0}18%{opacity:1}85%{opacity:1}to{transform:translate(var(--tt-packet-x, 100%));opacity:0}}.tt-packet-line{position:relative;height:1px;background:var(--tt-line);overflow:visible}.tt-packet-line:before{content:"";position:absolute;inset-inline-start:0;top:-3px;width:7px;height:7px;border-radius:50%;background:var(--tt-teal);box-shadow:0 0 8px 1px #7c3aed80;animation:tt-packet 2.8s ease-in-out infinite}.tt-packet-line--paper{background:var(--tt-line-dark)}.tt-packet-line--paper:before{background:var(--tt-teal-light);box-shadow:0 0 8px 1px #c4b5fd80}[dir=rtl] .tt-packet-line{--tt-packet-x: -100%}@media (prefers-reduced-motion: reduce){.tt-packet-line:before{animation:none;opacity:1;inset-inline-start:50%}}.tt-list-row{display:grid;grid-template-columns:3.5rem 1fr;gap:1.25rem;align-items:baseline;padding-block:1.35rem;border-top:1px solid var(--tt-line);cursor:pointer;background:none;width:100%;text-align:inherit;transition:background .2s}.tt-list-row:hover,.tt-list-row.is-active{background:var(--tt-paper-dim)}.tt-list-row-title{font-size:clamp(1.1rem,2.2vw,1.6rem);font-weight:800;transition:color .2s}.tt-list-row.is-active .tt-list-row-title{color:var(--tt-teal)}.tt-list-panel{border:1px solid var(--tt-line);border-radius:var(--tt-radius);padding:1.5rem;min-height:14rem}.tt-scene-tab{font-size:.85rem;font-weight:700;padding:.55rem .2rem;border-bottom:2px solid transparent;color:var(--tt-ink-faint);transition:color .2s,border-color .2s;white-space:nowrap}.tt-scene-tab.is-active{color:var(--tt-ink);border-color:var(--tt-teal)}.tt-scene-tab--paper{color:#faf8f380}.tt-scene-tab--paper.is-active{color:var(--tt-paper);border-color:var(--tt-ember-light)}
