:root{color-scheme:dark;--bg:#0b0c0f;--bg-elevated:#12141a;--bg-card:#161922;--border:#2a2e3a;--border-strong:#3d4455;--text:#eef0f5;--text-muted:#9aa3b5;--text-dim:#6b7385;--accent:#6ee7b7;--accent-dim:#34d399;--accent-bg:rgba(110,231,183,0.08);--warn:#fbbf24;--warn-bg:rgba(251,191,36,0.1);--danger:#f87171;--danger-bg:rgba(248,113,113,0.1);--link:#7dd3fc;--mono:"IBM Plex Mono","JetBrains Mono",ui-monospace,monospace;--sans:"DM Sans","Segoe UI",system-ui,sans-serif;--radius:12px;--shadow:0 1px 3px rgba(0,0,0,0.4);--shell-pad:1rem;--nav-h:3.5rem;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px)}*,:after,:before{box-sizing:border-box}html{text-size-adjust:100%;scroll-behavior:smooth}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.5;min-height:100%;min-height:100dvh}body{background-image:radial-gradient(ellipse 80% 50% at 10% -10%,rgba(110,231,183,.12),transparent),radial-gradient(ellipse 60% 40% at 90% 0,rgba(125,211,252,.08),transparent);background-attachment:scroll}@media (min-width:768px){body{background-attachment:fixed}}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{text-wrap:balance}::selection{background:rgba(110,231,183,.25);color:var(--text)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px;border:2px solid var(--bg)}::-webkit-scrollbar-track{background:transparent}img,svg,video{max-width:100%;height:auto}.mono,code{font-family:var(--mono);font-size:.92em;word-break:break-all;overflow-wrap:anywhere}.shell{width:100%;max-width:1560px;margin:0 auto;padding:0 var(--shell-pad) calc(3rem + var(--safe-bottom));min-height:100dvh;display:flex;flex-direction:column}.shell>main{flex:1 1;width:100%;min-width:0}@media (min-width:480px){:root{--shell-pad:1.25rem}}@media (min-width:1024px){:root{--shell-pad:1.5rem}}@media (min-width:1440px){:root{--shell-pad:2rem}}.nav{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .85rem;border:1px solid transparent;border-radius:18px;margin:calc(.75rem + var(--safe-top)) 0 1.5rem;position:-webkit-sticky;position:sticky;top:calc(.75rem + var(--safe-top));z-index:40;background:transparent;transition:background .3s ease,border-color .3s ease,box-shadow .3s ease}.nav.is-scrolled{border-color:var(--border);background:rgba(18,20,26,.72);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);box-shadow:0 8px 32px rgba(0,0,0,.35)}@media (min-width:768px){.nav{padding:.65rem 1.1rem;margin-bottom:2rem}}@media (prefers-reduced-motion:reduce){.nav{transition:none}}.nav-brand{display:flex;align-items:baseline;gap:.45rem;color:var(--text);font-weight:700;letter-spacing:-.02em;font-size:1.05rem;flex-shrink:0;min-width:0}.nav-brand,.nav-brand:hover{text-decoration:none}.nav-brand span{color:var(--accent);font-weight:500;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width:520px){.nav-brand span{display:none}}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);color:var(--text);cursor:pointer;flex-shrink:0;padding:0}.nav-toggle:hover{border-color:var(--accent);background:var(--accent-bg)}.nav-toggle svg{width:1.25rem;height:1.25rem}@media (min-width:768px){.nav-toggle{display:none}}.nav-links{display:none;flex-direction:column;align-items:stretch;gap:.35rem;font-size:.95rem;position:absolute;left:0;right:0;top:calc(100% + .5rem);margin:0;padding:.75rem;background:rgba(15,17,22,.97);border:1px solid var(--border);border-radius:18px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 16px 48px rgba(0,0,0,.5)}.nav-links.is-open{display:flex}.nav-links a{color:var(--text-muted);text-decoration:none;padding:.7rem .85rem;border-radius:10px}.nav-links a:hover{color:var(--text);background:var(--bg-elevated);text-decoration:none}.nav-links .nav-actions{display:flex;flex-wrap:wrap;gap:.5rem;padding-top:.5rem;margin-top:.25rem;border-top:1px solid var(--border)}@media (min-width:768px){.nav-links{display:flex;flex-direction:row;align-items:center;position:static;margin:0;padding:0;background:transparent;border:none;box-shadow:none;gap:.85rem;font-size:.92rem}.nav-links a{padding:.25rem .15rem;border-radius:0}.nav-links a:hover{background:transparent}.nav-links .nav-actions{border:none;padding:0;margin:0 0 0 .25rem}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid var(--border-strong);background:var(--bg-card);color:var(--text);border-radius:999px;padding:.55rem 1rem;font:inherit;font-weight:600;font-size:.9rem;cursor:pointer;transition:border-color .15s,background .15s,transform .1s;min-height:2.5rem;white-space:nowrap;touch-action:manipulation}.btn:hover{border-color:var(--accent);background:var(--accent-bg);text-decoration:none}.btn:active{transform:translateY(1px)}.back-link{display:inline-flex;align-items:center;gap:.35rem;margin-bottom:1rem;padding:.3rem .2rem;border:none;background:none;color:var(--text-dim);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:color .15s,transform .1s}.back-link:hover{color:var(--accent)}.back-link:active{transform:translateX(-2px)}.back-link span{font-size:1.05rem;line-height:1}.btn-primary{background:var(--accent);color:#062016;border-color:var(--accent)}.btn-primary:hover{background:var(--accent-dim);border-color:var(--accent-dim);color:#04140e;box-shadow:0 0 24px rgba(110,231,183,.3)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-block{width:100%}.btn-row{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}.btn-row>.btn,.btn-row>a.btn{flex:1 1 auto;min-width:min(100%,9.5rem)}@media (min-width:480px){.btn-row>.btn,.btn-row>a.btn{flex:0 1 auto}}.connect-wrap{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.05rem;box-shadow:var(--shadow);min-width:0}@media (min-width:640px){.card{padding:1.25rem 1.35rem}}.card+.card{margin-top:1rem}.page-narrow{width:100%;max-width:560px}.page-title{letter-spacing:-.03em;margin-top:0;font-size:clamp(1.55rem,4.5vw,2.15rem);line-height:1.15;word-break:break-word}.stack{display:flex;flex-direction:column;gap:1rem}.hero{display:grid;grid-gap:2rem;gap:2rem;padding:1.5rem 0 3rem}@media (min-width:840px){.hero{grid-template-columns:1.15fr .85fr;align-items:center;gap:3rem;padding:3.5rem 0 4.5rem}}.hero h1{font-size:clamp(2.25rem,6vw,4.5rem);line-height:1.03;letter-spacing:-.04em;margin:0 0 .75rem}.hero h1 em{font-style:normal;color:var(--accent);text-shadow:0 0 32px rgba(110,231,183,.35)}.lead{color:var(--text-muted);font-size:clamp(1rem,2.5vw,1.1rem);max-width:36rem;margin:0 0 1.25rem}.terminal{border:1px solid var(--border);border-radius:var(--radius);background:#0d0f13;overflow:hidden}.terminal-bar{display:flex;align-items:center;gap:.45rem;padding:.65rem .9rem;border-bottom:1px solid var(--border);background:var(--bg-elevated)}.terminal-bar i{width:.65rem;height:.65rem;border-radius:50%;background:var(--border-strong)}.terminal-bar i:first-child{background:rgba(248,113,113,.6)}.terminal-bar i:nth-child(2){background:rgba(251,191,36,.6)}.terminal-bar i:nth-child(3){background:rgba(110,231,183,.6)}.terminal-bar span{margin-left:.4rem;font-family:var(--mono);font-size:.75rem;color:var(--text-dim)}.terminal-body{padding:1rem 1.1rem 1.2rem;font-family:var(--mono);font-size:.85rem;line-height:1.7}.terminal-body p{margin:0;white-space:pre-wrap;word-break:break-word}.t-prompt{color:var(--accent)}.t-dim{color:var(--text-dim)}.t-ok{color:var(--accent)}.steps{display:grid;grid-gap:2rem;gap:2rem;padding:2.5rem 0;border-top:1px solid var(--border);margin-bottom:1rem}@media (min-width:720px){.steps{grid-template-columns:repeat(3,1fr);gap:2.5rem;padding:3.5rem 0}}.step-num{font-family:var(--mono);font-size:2rem;font-weight:600;color:var(--accent);opacity:.85}.step h2,.step-num{letter-spacing:-.02em}.step h2{margin:.35rem 0 .5rem;font-size:1.25rem}.step p{margin:0;color:var(--text-muted);font-size:.95rem;max-width:34ch}.band{margin-bottom:2rem}@media (min-width:768px){.band{margin-bottom:2.5rem}}.badge-bad,.badge-ok,.badge-warn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .75rem;border-radius:999px;font-weight:600;font-size:clamp(.78rem,2.5vw,.9rem);line-height:1.3;max-width:100%;white-space:normal;text-align:left}.badge-ok{background:var(--accent-bg);color:var(--accent);border:1px solid rgba(110,231,183,.35)}.badge-bad{background:var(--danger-bg);color:var(--danger);border:1px solid rgba(248,113,113,.35)}.badge-warn{background:var(--warn-bg);color:var(--warn);border:1px solid rgba(251,191,36,.35)}.timeline{list-style:none;margin:0;position:relative;max-height:28rem;overflow-y:auto;padding:0 .5rem 0 0}.timeline:before{content:"";position:absolute;left:.55rem;top:.25rem;bottom:.25rem;width:2px;background:linear-gradient(var(--accent),transparent);opacity:.45}.timeline li{position:relative;padding:0 0 1.1rem 1.85rem;min-width:0}@media (min-width:640px){.timeline li{padding:0 0 1.25rem 2rem}}.timeline li:before{content:"";position:absolute;left:.3rem;top:.45rem;width:.55rem;height:.55rem;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-bg)}.timeline .meta{color:var(--text-dim);font-size:.82rem;display:flex;flex-wrap:wrap;gap:.45rem .65rem;margin-top:.25rem}.grid-2,.grid-3{display:grid;grid-gap:.85rem;gap:.85rem;min-width:0}@media (min-width:640px){.grid-2{grid-template-columns:1fr 1fr;gap:1rem}}@media (min-width:720px){.grid-2{gap:1rem}}@media (min-width:560px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media (min-width:900px){.grid-3{grid-template-columns:repeat(3,1fr)}}.stat{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem 1rem;min-width:0}.stat .label{color:var(--text-dim);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}.stat .value{font-size:clamp(1.25rem,4vw,1.6rem);font-weight:700;letter-spacing:-.03em;margin-top:.25rem;word-break:break-word}label.field{display:grid;grid-gap:.35rem;gap:.35rem;margin-bottom:.9rem;font-size:.9rem;color:var(--text-muted)}input,select,textarea{width:100%;max-width:100%;background:var(--bg);border:1px solid var(--border);border-radius:10px;color:var(--text);padding:.75rem .85rem;font:inherit;font-size:16px;min-height:2.75rem}input:focus,select:focus,textarea:focus{outline:2px solid rgba(110,231,183,.35);border-color:var(--accent)}.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -.15rem;padding:0 .15rem}.table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:640px}.table td,.table th{text-align:left;padding:.7rem .5rem;border-bottom:1px solid var(--border);vertical-align:top}.table th{color:var(--text-dim);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.project-cards{display:grid;grid-gap:.85rem;gap:.85rem}.project-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:.95rem 1rem}.project-card h3{margin:0 0 .4rem;font-size:1rem;letter-spacing:-.02em;word-break:break-word}.project-card .pc-meta{display:flex;flex-wrap:wrap;gap:.4rem .75rem;font-size:.82rem;color:var(--text-dim);margin-bottom:.75rem}.project-card .pc-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:space-between}@media (max-width:719px){.table-desktop-only{display:none!important}}@media (min-width:720px){.project-cards-mobile-only{display:none!important}.table{min-width:0;font-size:.92rem}}.muted{color:var(--text-muted)}.dim{color:var(--text-dim)}.break-all{word-break:break-all;overflow-wrap:anywhere}.pill{display:inline-block;padding:.15rem .5rem;border-radius:999px;background:var(--bg-elevated);border:1px solid var(--border);font-size:.78rem;color:var(--text-muted);max-width:100%}.bar-row{display:grid;grid-template-columns:4.25rem 1fr 1.75rem;grid-gap:.4rem;gap:.4rem;align-items:center;margin:.35rem 0;font-size:.8rem}@media (min-width:480px){.bar-row{grid-template-columns:5.5rem 1fr 2rem;gap:.5rem;font-size:.85rem}}.bar{height:.55rem;background:var(--bg);border-radius:999px;overflow:hidden;border:1px solid var(--border);min-width:0}.bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--accent-dim),var(--accent));border-radius:999px}.footer{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border);color:var(--text-dim);font-size:.85rem;line-height:1.5}.footer-grid{display:grid;grid-gap:2rem;gap:2rem;grid-template-columns:1fr;padding-bottom:2rem}@media (min-width:640px){.footer-grid{grid-template-columns:1.4fr 1fr 1fr}}@media (min-width:900px){.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr}}.footer-brand .nav-brand{font-size:1.1rem}.footer-brand p{max-width:32ch;margin:.6rem 0 0}.footer h4{margin:0 0 .75rem;font-size:.75rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted)}.footer ul{list-style:none;margin:0;padding:0;display:grid;grid-gap:.5rem;gap:.5rem}.footer ul a{color:var(--text-dim)}.footer ul a:hover{color:var(--text);text-decoration:none}.footer-bottom{border-top:1px solid var(--border);padding:1.1rem 0 0;display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;justify-content:space-between;font-size:.78rem}.error-box,.success-box{padding:.85rem 1rem;border-radius:10px;margin:.75rem 0;word-break:break-word;overflow-wrap:anywhere}.error-box{background:var(--danger-bg);border:1px solid rgba(248,113,113,.35);color:var(--danger)}.success-box{background:var(--accent-bg);border:1px solid rgba(110,231,183,.35);color:var(--accent)}.kicker{color:var(--accent);font-family:var(--mono);font-size:clamp(.7rem,2.2vw,.8rem);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.5rem;word-break:break-word}.sort-row{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.sort-row .btn{font-size:.82rem;padding:.45rem .8rem;min-height:2.25rem}.section-mb{margin-bottom:1.5rem}@media (min-width:768px){.section-mb{margin-bottom:2rem}}.embed-root{margin:0;min-height:0;padding:0}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}