:root{--ink: #061a14;--canopy: #0b3d2e;--leaf: #1f8f4e;--lime: #8fd12a;--mist: #e7f6ec;--wash: #f3faf5;--sand: #d7ebe0;--panel: rgba(255, 255, 255, .88);--line: color-mix(in srgb, var(--canopy) 16%, white);--muted: color-mix(in srgb, var(--ink) 62%, transparent);--danger: #dc2626;--warn: #f59e0b;--radius: 1rem;--shadow: 0 18px 40px rgba(6, 26, 20, .1);--font-display: "Syne", system-ui, sans-serif;--font-body: "Outfit", system-ui, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, monospace;--sidebar: 17.5rem}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:var(--font-body);color:var(--ink);background:radial-gradient(120% 80% at 8% -12%,rgba(143,209,42,.28),transparent 52%),radial-gradient(90% 70% at 100% 0%,rgba(31,143,78,.16),transparent 48%),linear-gradient(165deg,var(--wash) 0%,#dff0e6 45%,#cfe8d8 100%);-webkit-font-smoothing:antialiased}.app{min-height:100vh}.layout{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;overflow:auto;padding:1.1rem .85rem 2rem;border-right:1px solid var(--line);background:color-mix(in srgb,white 72%,var(--mist));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:.75rem;padding:.35rem .5rem 1rem;color:inherit;text-decoration:none}.brand-logo{width:3rem;height:auto;filter:drop-shadow(0 10px 18px rgba(6,26,20,.18))}.brand-copy{display:grid;gap:.1rem}.brand-name{font-family:var(--font-display);font-size:1.35rem;font-weight:600;letter-spacing:-.03em;line-height:1}.brand-tag{font-size:.72rem;color:var(--muted)}.jacare-version{justify-self:start;margin-top:.3rem;padding:.18rem .5rem;border-radius:999px;font-family:var(--font-mono);font-size:.68rem;font-weight:700;letter-spacing:.03em;color:#062013;background:linear-gradient(135deg,var(--lime),var(--leaf))}.side-nav{display:grid;gap:.25rem}.side-link{display:grid;gap:.15rem;padding:.55rem .7rem;border-radius:.75rem;color:inherit;text-decoration:none;transition:background .18s ease,transform .18s ease}.side-link:hover{background:#8fd12a24}.side-link.jacare-here{background:linear-gradient(135deg,#1f8f4e29,#8fd12a38);box-shadow:inset 0 0 0 1px #1f8f4e2e}.side-title{font-size:.92rem;font-weight:650}.side-blurb{font-size:.72rem;line-height:1.35;color:var(--muted)}.shell-main{min-width:0;display:grid;grid-template-rows:auto 1fr auto}.topbar{position:relative;z-index:50;display:flex;align-items:center;gap:1rem;padding:.85rem 1.25rem;border-bottom:1px solid var(--line);background:#ffffff8c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topbar-hint{margin:0;flex:1;min-width:0;font-size:.85rem;color:var(--muted)}.topbar-devtools{flex-shrink:0;min-height:2rem;height:2rem;display:inline-flex;align-items:center;font-size:.78rem;padding:0 .75rem}.lab-locale{position:relative;z-index:55;flex-shrink:0;display:inline-flex;align-items:center;min-width:0}.lab-locale .jui-select{width:auto;min-width:0}.lab-locale .jui-select .jui-select__trigger{box-sizing:border-box;min-height:2rem!important;height:2rem!important;gap:.3rem;padding:0 .55rem 0 .75rem!important;border-radius:999px!important;border:1px solid var(--sand)!important;background:#fff!important;color:var(--canopy)!important;font-size:.78rem!important;font-weight:650;line-height:1;box-shadow:none!important;transition:border-color .12s ease,box-shadow .12s ease,background .12s ease}.lab-locale .jui-select .jui-select__trigger:hover{border-color:color-mix(in srgb,var(--canopy) 28%,var(--sand))!important;background:color-mix(in srgb,white 82%,var(--mist))!important}.lab-locale .jui-select .jui-select__trigger:focus,.lab-locale .jui-select .jui-select__control[open] .jui-select__trigger{border-color:color-mix(in srgb,var(--canopy) 42%,var(--sand))!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--lime) 26%,transparent)!important}.lab-locale .jui-select__value{gap:0}.lab-locale .jui-select__value-text{line-height:1;letter-spacing:.02em}.lab-locale .jui-select .jui-select__chevron{flex:0 0 auto;display:block;width:.65rem!important;height:.65rem!important;overflow:hidden;font-size:0!important;line-height:0!important;color:transparent!important;opacity:.7;background-color:var(--canopy);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M3.4 5.9a.85.85 0 0 1 1.2-.05L8 9.05l3.4-3.2a.85.85 0 1 1 1.15 1.25l-4 3.75a.85.85 0 0 1-1.15 0l-4-3.75a.85.85 0 0 1-.05-1.2z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M3.4 5.9a.85.85 0 0 1 1.2-.05L8 9.05l3.4-3.2a.85.85 0 1 1 1.15 1.25l-4 3.75a.85.85 0 0 1-1.15 0l-4-3.75a.85.85 0 0 1-.05-1.2z'/%3E%3C/svg%3E");-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}.lab-locale .jui-select__control[open]{z-index:60}.lab-locale .jui-select__panel{z-index:70;left:auto!important;right:0!important;width:max-content;min-width:6.5rem;max-width:min(12rem,calc(100vw - 2rem));padding:.35rem;border-radius:.85rem}.lab-locale .jui-select__list{max-height:none;margin-top:0;overflow:visible}.lab-locale .jui-select__option{min-height:2rem!important;padding:.35rem .65rem!important;border-radius:.55rem;font-size:.8rem;font-weight:650}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.topbar-devtools.devtools-on{border-color:#1890308c;background:#78c01829;color:var(--ink, #003030)}.menu-btn{display:none}.main{min-width:0;padding:1.25rem clamp(1rem,3vw,2rem) 2rem;overflow-x:clip}.site-footer{padding:1rem clamp(1rem,3vw,2rem) 1.5rem;border-top:1px solid var(--line);background:#fff6}.site-footer-line{margin:0;text-align:center;font-size:.82rem;font-weight:600;letter-spacing:.02em;color:var(--muted)}.site-footer-flag{margin-left:.2rem}.backdrop{display:none}.page{width:min(54rem,100%);max-width:100%;min-width:0;margin:0 auto;display:grid;gap:1.25rem;animation:fade .45s ease both}.page-hero{display:grid;gap:.55rem;padding:.25rem 0 .5rem}.page-kicker{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--leaf)}.page-title{margin:0;font-family:var(--font-display);font-size:clamp(1.9rem,4vw,2.6rem);font-weight:600;letter-spacing:-.035em;line-height:1.05}.page-lead{margin:0;max-width:52ch;font-size:1.02rem;line-height:1.5;color:var(--muted)}.page-lead a,.muted a,.ref-card a,.text-link{color:#189030;font-weight:650;text-decoration:underline;text-decoration-color:color-mix(in srgb,#189030 45%,transparent);text-underline-offset:.18em;transition:color .15s ease,text-decoration-color .15s ease}.page-lead a:hover,.muted a:hover,.ref-card a:hover,.text-link:hover{color:#004830;text-decoration-color:#004830}.page-lead a:focus-visible,.muted a:focus-visible,.ref-card a:focus-visible,.text-link:focus-visible,.btn:focus-visible,.input:focus-visible,.side-link:focus-visible{outline:2px solid #78c018;outline-offset:2px;border-radius:.2rem}.page-lead code{font-size:.9em}.lesson-grid{display:grid;gap:1rem;min-width:0}.home-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.75rem}.home-card{display:grid;gap:.35rem;padding:1rem;border-radius:var(--radius);border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);color:inherit;text-decoration:none;transition:transform .18s ease,border-color .18s ease}.home-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--lime) 55%,var(--line))}.home-card strong{font-size:1rem}.home-card span{font-size:.82rem;color:var(--muted);line-height:1.4}.demo{display:grid;gap:.85rem;min-width:0;padding:1rem 1.1rem 1.15rem;border-radius:calc(var(--radius) + .15rem);border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow)}.demo-live{display:grid;gap:.75rem;min-width:0;padding:.85rem;border-radius:.85rem;background:linear-gradient(180deg,#e7f6eca6,#ffffff80);border:1px dashed color-mix(in srgb,var(--leaf) 28%,transparent)}.demo-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.demo-head>.btn{flex-shrink:0;white-space:nowrap}.demo-title{margin:0;font-family:var(--font-display);font-size:1.2rem;font-weight:600;letter-spacing:-.02em}.demo-lead{margin:.35rem 0 0;font-size:.9rem;line-height:1.45;color:var(--muted)}.binding-compare{gap:.55rem}.binding-row{display:grid;grid-template-columns:4.25rem minmax(0,1fr) auto minmax(0,1fr);gap:.45rem .55rem;align-items:center;padding:.55rem .65rem;border-radius:.65rem;background:#ffffffb8;border:1px solid color-mix(in srgb,var(--leaf) 18%,transparent)}.binding-label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--canopy)}.binding-syntax{font-family:var(--font-mono);font-size:.76rem;color:var(--muted);overflow:auto}.binding-arrow{color:var(--leaf);font-weight:700}.binding-value{font-size:.92rem}@media(max-width:640px){.binding-row{grid-template-columns:1fr;gap:.3rem}.binding-arrow{display:none}}.stack{display:grid;gap:.65rem}.row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.metric{font-family:var(--font-display);font-size:1.75rem;font-weight:600;letter-spacing:-.03em}.muted{color:var(--muted);font-size:.9rem}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-radius:999px;padding:.45rem .9rem;font:inherit;font-size:.88rem;font-weight:650;cursor:pointer;background:var(--canopy);color:#fff;transition:transform .15s ease,background .15s ease,opacity .15s ease}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn-ghost{background:transparent;color:var(--canopy);border-color:color-mix(in srgb,var(--canopy) 25%,transparent)}.btn-outline{background:#fff;color:var(--canopy);border-color:var(--sand)}.btn-lime{background:linear-gradient(135deg,var(--leaf),#6bb81f);color:#061a14}.input,.select,.textarea{width:min(100%,22rem);padding:.55rem .75rem;border-radius:.7rem;border:1px solid var(--sand);background:#fff;font:inherit}@media(max-width:920px){.input,.select,.textarea,input,select,textarea{font-size:16px}}.textarea{min-height:5rem;resize:vertical}.input.invalid,.field-input.invalid{border-color:var(--danger)}.field{display:grid;gap:.35rem}.field-label{font-size:.82rem;font-weight:650;color:var(--canopy)}.field-error{font-size:.8rem;color:var(--danger)}.badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;font-size:.75rem;font-weight:700;background:#8fd12a38;color:var(--canopy)}.badge-warn{background:#f59e0b33;color:#92400e}.badge-danger{background:#dc262624;color:var(--danger)}.card{display:grid;gap:.65rem;padding:.9rem;border-radius:.9rem;background:#fff;border:1px solid var(--line)}.card-title{margin:0;font-family:var(--font-display);font-size:1.1rem}.card-sub{margin:0;color:var(--muted);font-size:.88rem}.list{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}.list-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .7rem;border-radius:.7rem;background:#fff;border:1px solid var(--line)}.list-item.done .item-label{text-decoration:line-through;color:var(--muted)}.progress{height:.7rem;border-radius:999px;background:var(--sand);overflow:hidden}.progress-fill{height:100%;width:var(--pct, 0%);background:linear-gradient(90deg,var(--leaf),var(--lime));transition:width .25s ease}.gauge-mini{--angle: 0deg;width:min(14rem,100%);aspect-ratio:2 / 1;margin:0 auto;border-radius:999px 999px 0 0;background:conic-gradient(from 270deg at 50% 100%,#4ade80 0deg,#f59e0b,#ef4444 var(--angle),#d7ebe0 var(--angle) 180deg,transparent 180deg);-webkit-mask:radial-gradient(circle at 50% 100%,transparent 48%,#000 49%);mask:radial-gradient(circle at 50% 100%,transparent 48%,#000 49%)}.pad{width:min(100%,16rem);height:8rem;border-radius:.9rem;border:1px solid var(--line);background:radial-gradient(circle at var(--x, 50%) var(--y, 50%),rgba(143,209,42,.45),transparent 42%),#fff;touch-action:none}.log{margin:0;padding:.65rem .75rem;border-radius:.7rem;background:#0b1f18;color:#d7f5c8;font-family:var(--font-mono);font-size:.78rem;line-height:1.45;white-space:pre-wrap;max-height:8rem;overflow:auto}.code-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:1rem;overflow:hidden;background:#061a147a;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade .2s ease both}.code-panel{width:min(48rem,100%);min-width:0;max-height:min(78vh,40rem);display:grid;grid-template-rows:auto 1fr;border-radius:1rem;background:#0b1f18;color:#e8f8dc;box-shadow:0 24px 60px #00000059;overflow:hidden;animation:fade .2s ease both}.code-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid rgba(143,209,42,.2)}.code-panel-title{margin:0;font-family:var(--font-display);font-size:1.05rem}.code-scroll{min-width:0;overflow-x:hidden;overflow-y:auto;display:grid;gap:0}.code-file{min-width:0;border-bottom:1px solid rgba(143,209,42,.14)}.code-file:last-child{border-bottom:none}.code-file-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .75rem .55rem 1rem;background:#8fd12a14}.code-file-name{min-width:0;margin:0;font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.02em;color:#8fd12a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-copy{display:inline-flex;align-items:center;gap:.35rem;flex-shrink:0;padding:.28rem .65rem;font-size:.72rem;font-weight:700;letter-spacing:.02em;background:#8fd12a29;color:#d7f5c8;border:1px solid rgba(143,209,42,.35)}.btn-copy:hover{background:#8fd12a47}.btn-copy:disabled{opacity:1;color:#8fd12a;border-color:#8fd12a8c;background:#8fd12a38}.btn-copy-icon{width:.7rem;height:.7rem;border:1.5px solid currentColor;border-radius:.12rem;box-shadow:.18rem -.18rem 0 -.05rem transparent,.18rem -.18rem 0 0 currentColor}.code-body{max-width:100%;margin:0;padding:.85rem 1rem 1.1rem;overflow-x:auto;overflow-y:hidden;font-family:var(--font-mono);font-size:.78rem;line-height:1.55;white-space:pre}@media(max-width:640px){.code-modal{padding:.5rem}.code-panel{width:100%;max-height:calc(100dvh - 1rem)}.code-panel-head{padding:.7rem .75rem}.code-panel-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.tip{padding:.75rem .9rem;border-radius:.85rem;background:#8fd12a24;border:1px solid rgba(31,143,78,.18);font-size:.9rem;line-height:1.45}.ref-card{display:grid;gap:.5rem;padding:1rem;border-radius:var(--radius);border:1px solid var(--line);background:var(--panel)}.vscode-card{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:center;padding:.85rem 1rem;border-radius:calc(var(--radius) + .1rem);border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);color:inherit;text-decoration:none;transition:transform .18s ease,border-color .18s ease}.vscode-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--lime) 55%,var(--line))}.vscode-card-img{width:min(12.5rem,42vw);height:auto;display:block;border-radius:.65rem}.vscode-card-copy{display:grid;gap:.3rem;min-width:0}.vscode-card-copy strong{font-family:var(--font-display);font-size:1.15rem;letter-spacing:-.02em}.vscode-card-copy span{font-size:.88rem;line-height:1.4;color:var(--muted)}.vscode-card-link{font-family:var(--font-mono);font-size:.72rem!important;color:var(--leaf)!important;word-break:break-all}@media(max-width:640px){.vscode-card{grid-template-columns:1fr;justify-items:start}}.ref-card h3{margin:0;font-family:var(--font-display);font-size:1.1rem}.ref-card pre{margin:0;padding:.75rem;border-radius:.7rem;background:#0b1f18;color:#e8f8dc;font-family:var(--font-mono);font-size:.75rem;overflow:auto;white-space:pre}.arch-panel{display:grid;gap:1rem;margin:0 0 1.35rem;padding:1.15rem 1.2rem 1.25rem;border-radius:calc(var(--radius) + .15rem);border:1px solid var(--line);background:linear-gradient(145deg,#ffffffeb,#e7f6ecb8);box-shadow:var(--shadow)}.arch-panel__title{margin:0;font-family:var(--font-display);font-size:1.35rem;font-weight:600;letter-spacing:-.03em}.arch-panel__lead{margin:.45rem 0 0;font-size:.95rem;line-height:1.55;color:var(--muted);max-width:52rem}.arch-panel__lead strong{color:var(--canopy);font-weight:600}.arch-diagram{margin:0;padding:.9rem 1rem;border-radius:.85rem;background:#0b1f18;color:#d8f5c4;font-family:var(--font-mono);font-size:.68rem;line-height:1.45;overflow:auto;white-space:pre;border:1px solid color-mix(in srgb,var(--lime) 28%,#0b1f18)}.arch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.arch-list{margin:.35rem 0 0;padding-left:1.1rem;display:grid;gap:.35rem;font-size:.88rem;line-height:1.45;color:var(--ink)}.arch-list code{font-size:.82em}@media(max-width:860px){.arch-grid{grid-template-columns:1fr}}.helper-table{display:grid;gap:.35rem}.helper-row{display:grid;grid-template-columns:minmax(8rem,12rem) 1fr auto;gap:.75rem;align-items:center;padding:.55rem .7rem;border-radius:.7rem;background:var(--panel);border:1px solid var(--line)}.helper-row code{font-family:var(--font-mono);font-size:.8rem;color:var(--canopy)}.helper-row span{font-size:.85rem;color:var(--muted)}.import-catalog .import-row{display:grid;gap:.45rem;grid-template-columns:1fr auto;align-items:start;padding:.75rem .85rem}.import-row-head{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .55rem}.import-name{font-size:.88rem!important;font-weight:700}.import-line{grid-column:1 / -1;margin:0;padding:.45rem .6rem;border-radius:.45rem;background:#0b1f18;color:#e8f8dc;font-size:.72rem;line-height:1.4;overflow:auto}.import-line code{color:inherit!important;font-size:inherit;white-space:pre-wrap}.import-usage{grid-column:1 / -1;margin:0;font-size:.88rem;font-weight:650;line-height:1.4;color:var(--ink)}.import-about{grid-column:1 / -1;margin:0;font-size:.84rem;line-height:1.55;color:var(--muted);max-width:72ch}.import-label{grid-column:1 / -1;margin:.15rem 0 0;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.import-example{grid-column:1 / -1;margin:0;padding:.65rem .75rem;border-radius:.45rem;background:#071611;border:1px solid color-mix(in srgb,var(--leaf) 22%,transparent);color:#d8f0c8;font-size:.72rem;line-height:1.45;overflow:auto}.import-example code{color:inherit!important;font-size:inherit;white-space:pre}.import-catalog .btn{grid-column:1 / -1;justify-self:start}@media(min-width:720px){.import-catalog .import-row{grid-template-columns:1fr auto}.import-catalog .btn{grid-column:2;grid-row:2 / span 6;align-self:start;margin-top:.15rem}.import-line,.import-usage,.import-about,.import-label,.import-example{grid-column:1}}.text-link{color:var(--leaf);font-weight:650;text-decoration:none}.text-link:hover{text-decoration:underline}.scope-a-box{padding:.75rem;border-radius:.7rem;background:#dcfce7;color:#14532d}.scope-b-box{padding:.75rem;border-radius:.7rem;background:#ffedd5;color:#9a3412}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes sheet{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media(max-width:920px){.layout{grid-template-columns:1fr}.sidebar{position:fixed;z-index:40;left:0;top:0;width:min(20rem,86vw);height:100vh;padding-top:4.5rem;transform:translate(-105%);transition:transform .22s ease;box-shadow:var(--shadow)}.sidebar.open{transform:none}.topbar{z-index:50}.menu-btn{display:inline-flex}.backdrop.show{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;background:#061a1459}.topbar-hint{display:none}.topbar-devtools{margin-left:auto}.lab-locale{margin-left:0}.helper-row{grid-template-columns:1fr}}.page-lifecycle{width:min(58rem,100%)}.lifecycle-cycle{container-type:inline-size;display:grid;gap:1.1rem;padding:1.15rem 1.2rem 1.25rem;border-radius:calc(var(--radius) + .2rem);border:1px solid color-mix(in srgb,var(--canopy) 20%,white);background:radial-gradient(120% 90% at 50% -20%,rgba(143,209,42,.2),transparent 55%),linear-gradient(180deg,#fffffff0,#e7f6ecb8);box-shadow:var(--shadow)}.lifecycle-cycle-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem}.lifecycle-cycle-title{margin:.55rem 0 0;font-family:var(--font-display);font-size:clamp(1.35rem,2.4vw,1.75rem);font-weight:600;letter-spacing:-.03em}.lifecycle-cycle-lead{margin:.4rem 0 0;max-width:38rem;font-size:.92rem;line-height:1.5;color:var(--muted)}.lifecycle-orbit{position:relative;width:min(100%,38rem);margin:.75rem auto 0;padding:.35rem 0}.lifecycle-orbit-layout{position:relative;z-index:1;display:grid;gap:.65rem}.lifecycle-orbit-center{position:relative;z-index:1;display:grid;place-content:center;gap:.25rem;width:100%;max-width:none;aspect-ratio:auto;margin:0;padding:1rem;text-align:center;border-radius:var(--radius);background:#ffffffeb;border:1px solid color-mix(in srgb,var(--lime) 45%,white);box-shadow:0 12px 28px #061a1414}.lifecycle-orbit-svg{display:none;position:absolute;top:50%;left:50%;width:min(100%,24rem);aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none;z-index:0}.lifecycle-orbit-ring{fill:none;stroke:color-mix(in srgb,var(--leaf) 18%,white);stroke-width:2;stroke-dasharray:6 10}.lifecycle-orbit-path{fill:none;stroke-width:3;stroke-linecap:round}.lifecycle-orbit-path--enter{stroke:var(--leaf)}.lifecycle-orbit-path--leave{stroke:var(--warn)}.lifecycle-orbit-phase{font-family:var(--font-mono);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--canopy)}.lifecycle-orbit-timer{font-family:var(--font-display);font-size:1.45rem;font-weight:600;letter-spacing:-.03em}.lifecycle-orbit-node{position:relative;z-index:1;width:100%;display:grid;gap:.2rem;padding:.75rem .8rem;border-radius:.85rem;background:#fffffff5;border:1px solid var(--line);box-shadow:0 10px 22px #061a140f}.lifecycle-orbit-node code{font-family:var(--font-mono);font-size:.82rem;font-weight:700;color:var(--canopy)}.lifecycle-orbit-node p{margin:0;font-size:.72rem;line-height:1.35;color:var(--muted)}.lifecycle-orbit-step{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.lifecycle-orbit-count{font-family:var(--font-display);font-size:1.15rem;font-weight:600;letter-spacing:-.02em}.lifecycle-orbit-node--activate{border-color:color-mix(in srgb,var(--leaf) 35%,white)}.lifecycle-orbit-node--activate .lifecycle-orbit-step{color:var(--leaf)}.lifecycle-orbit-node--mount{border-color:color-mix(in srgb,var(--leaf) 28%,white)}.lifecycle-orbit-node--mount .lifecycle-orbit-step{color:var(--leaf)}.lifecycle-orbit-node--deactivate{border-color:color-mix(in srgb,var(--warn) 40%,white)}.lifecycle-orbit-node--deactivate .lifecycle-orbit-step{color:color-mix(in srgb,var(--warn) 85%,var(--ink))}.lifecycle-orbit-node--unmount{border-color:color-mix(in srgb,var(--warn) 32%,white)}.lifecycle-orbit-node--unmount .lifecycle-orbit-step{color:color-mix(in srgb,var(--warn) 85%,var(--ink))}.lifecycle-orbit-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.lifecycle-legend{display:inline-flex;align-items:center;gap:.45rem;font-size:.82rem;font-weight:650;color:var(--muted)}.lifecycle-legend:before{content:"";width:2.25rem;height:.2rem;border-radius:999px}.lifecycle-legend--enter:before{background:var(--leaf)}.lifecycle-legend--leave:before{background:var(--warn)}.lifecycle-orbit-actions{display:grid;gap:.65rem;padding-top:.25rem;border-top:1px dashed color-mix(in srgb,var(--leaf) 22%,transparent)}@keyframes lifecycle-pulse{0%,to{box-shadow:0 12px 28px #061a1414}50%{box-shadow:0 14px 32px #1f8f4e29}}@media(max-width:720px){.lifecycle-cycle-head{flex-direction:column}}@container (min-width: 40rem){.lifecycle-orbit{min-height:20rem}.lifecycle-orbit-svg{display:block}.lifecycle-orbit-layout{grid-template-columns:minmax(0,1fr) minmax(9rem,11rem) minmax(0,1fr);grid-template-rows:auto minmax(7.5rem,auto) auto;grid-template-areas:". activate ." "unmount center mount" ". deactivate .";gap:.9rem 1rem}.lifecycle-orbit-center{grid-area:center;max-width:10.5rem;aspect-ratio:1;margin:0 auto;border-radius:999px;animation:lifecycle-pulse 3.2s ease-in-out infinite}.lifecycle-orbit-node{max-width:11rem}.lifecycle-orbit-node--activate{grid-area:activate;justify-self:center}.lifecycle-orbit-node--mount{grid-area:mount;justify-self:start}.lifecycle-orbit-node--deactivate{grid-area:deactivate;justify-self:center}.lifecycle-orbit-node--unmount{grid-area:unmount;justify-self:end}}.nav-summary{display:grid;gap:.85rem;padding:1.05rem 1.1rem;border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--canopy) 18%,white);background:#fff;box-shadow:var(--shadow)}.page-nav{width:min(58rem,100%)}.nav-setup{display:grid;gap:1rem;padding:1.1rem 1.15rem 1.2rem;border-radius:calc(var(--radius) + .15rem);border:1px solid color-mix(in srgb,var(--canopy) 18%,white);background:radial-gradient(120% 90% at 0% -10%,rgba(143,209,42,.16),transparent 55%),linear-gradient(180deg,#fffffff2,#e7f6ecb3);box-shadow:var(--shadow)}.nav-setup-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem}.nav-setup-title{margin:.5rem 0 0;font-family:var(--font-display);font-size:clamp(1.3rem,2.2vw,1.65rem);font-weight:600;letter-spacing:-.03em}.nav-setup-lead{margin:.4rem 0 0;max-width:46rem;font-size:.92rem;line-height:1.5;color:var(--muted)}.nav-flow{margin:0;padding:.85rem 1rem .85rem 1.5rem;border-radius:.85rem;background:#ffffffb8;border:1px solid var(--line);display:grid;gap:.45rem}.nav-flow li{font-size:.9rem;line-height:1.45;color:var(--ink)}.nav-flow strong{color:var(--canopy)}.nav-options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.75rem}.nav-options-card{display:grid;gap:.55rem;padding:.85rem;border-radius:.85rem;background:#ffffffc7;border:1px solid var(--line)}.nav-options-title{margin:0;font-size:.88rem;font-weight:700;color:var(--canopy)}.nav-options-card .nav-live-row{grid-template-columns:6.5rem minmax(0,1fr)}.nav-options-card .nav-live-row code{white-space:normal;font-size:.72rem;line-height:1.4}.nav-sim{display:grid;gap:.7rem;padding-top:.25rem}.nav-sim-group{display:grid;gap:.4rem}.nav-sim-label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--canopy)}@media(max-width:720px){.nav-setup-head{flex-direction:column}}.nav-live{display:grid;gap:.55rem;container-type:inline-size;container-name:nav-live}.nav-live-row{display:grid;grid-template-columns:minmax(0,max-content) minmax(0,1fr);gap:.85rem 1rem;align-items:start;font-size:.9rem}.nav-live-row span{color:var(--canopy);font-weight:700;font-size:.82rem;line-height:1.45;padding-top:.35rem;min-width:0;overflow-wrap:anywhere;word-break:normal}.nav-live-row code{display:block;width:fit-content;max-width:min(100%,16rem);min-width:0;padding:.4rem .65rem;border-radius:.55rem;background:#0b1f18;color:#e8f8dc;font-family:var(--font-mono);font-size:.78rem;line-height:1.4;white-space:normal;overflow-wrap:anywhere;word-break:break-word}@media(max-width:900px){.nav-live-row{grid-template-columns:1fr;gap:.3rem}.nav-live-row span{padding-top:0;max-width:100%;font-weight:550;color:var(--ink)}.nav-live-row code{width:auto;max-width:100%}.ref-card{padding:.85rem .8rem}}@container nav-live (max-width: 34rem){.nav-live-row{grid-template-columns:1fr;gap:.3rem}.nav-live-row span{padding-top:0;max-width:100%;font-weight:550;color:var(--ink)}.nav-live-row code{width:auto;max-width:100%}}.nav-live-cli{gap:.7rem}.nav-live-cli .nav-live-row{grid-template-columns:1fr;gap:.3rem}.nav-live-cli .nav-live-row code{width:100%;max-width:none}.nav-live-cli .nav-live-row span{padding-top:0;padding-left:.1rem}.nav-live+.log{margin-top:.35rem}.nav-alert{margin:0;padding:.75rem .9rem;border-radius:.75rem;background:#8fd12a2e;border:1px solid rgba(31,143,78,.28);color:var(--ink);font-size:.92rem;font-weight:550}.playground-page{width:min(72rem,100%)}.playground-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.playground-status{font-size:.82rem;font-weight:650;color:var(--leaf)}.playground-status.error{color:var(--danger)}.playground-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:1rem;align-items:stretch;min-height:min(70vh,40rem)}.playground-pane{display:grid;grid-template-rows:auto 1fr;min-width:0;min-height:22rem;border-radius:calc(var(--radius) + .1rem);border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);overflow:hidden}.playground-pane-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .9rem;border-bottom:1px solid var(--line);background:#ffffffb8}.playground-pane-title{margin:0;font-family:var(--font-display);font-size:1.05rem}.playground-editor-wrap{position:relative;min-height:20rem;height:100%;overflow:hidden;background:#0b1f18}.playground-highlight,.playground-editor{box-sizing:border-box;margin:0;padding:.9rem 1rem;border:0;font-family:var(--font-mono);font-size:.8rem;line-height:1.55;-moz-tab-size:2;tab-size:2;white-space:pre;overflow:auto}.playground-highlight{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;color:#d7eccb}.playground-highlight code{display:block;min-height:100%;font:inherit}.playground-editor{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;resize:none;outline:none;background:transparent;color:transparent;caret-color:#e8f8dc;-webkit-text-fill-color:transparent;z-index:1}.playground-editor::selection{background:#7dd3a747;color:transparent}.playground-highlight .pg-tok-keyword{color:#8ecbff}.playground-highlight .pg-tok-string{color:#f0b35a}.playground-highlight .pg-tok-comment{color:#6b8f7a;font-style:italic}.playground-highlight .pg-tok-number{color:#ffd4a3}.playground-highlight .pg-tok-tag{color:#7dd3a7}.playground-highlight .pg-tok-attr{color:#c4e87a}.playground-highlight .pg-tok-directive{color:#f5a9c5}.playground-highlight .pg-tok-punct{color:#9db5a8}.playground-highlight .pg-tok-ident{color:#e8f8dc}.playground-host{min-height:12rem;padding:1rem;overflow:auto;background:linear-gradient(180deg,#e7f6eca6,#ffffff80)}.playground-error{margin:0;padding:.75rem .9rem;border-bottom:1px solid rgba(220,38,38,.2);background:#dc262614;color:#991b1b;font-family:var(--font-mono);font-size:.78rem;white-space:pre-wrap}.jacare-debug{display:grid;gap:.45rem;padding:.65rem .75rem;border-radius:.65rem;border:1px dashed color-mix(in srgb,var(--lime) 45%,var(--line));background:color-mix(in srgb,var(--panel) 88%,#0f172a)}.jacare-debug-head{display:flex;align-items:center;justify-content:space-between;gap:.65rem}.jacare-debug-label{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--lime)}.jacare-debug-copy{padding:.2rem .55rem;font-size:.72rem}.jacare-debug-body{margin:0;overflow:auto;max-height:14rem;font-family:var(--font-mono);font-size:.78rem;line-height:1.45;color:var(--text);white-space:pre}@media(max-width:920px){.playground-grid{grid-template-columns:1fr;min-height:0}.playground-pane{min-height:16rem}}.mesh30{display:grid;gap:1rem}.mesh30-steps{margin:0;padding-left:1.2rem;display:grid;gap:.35rem;color:var(--ink-soft);font-size:.92rem;line-height:1.45}.mesh30-steps code{font-size:.84em}.mesh30-screens{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.mesh30-screen{display:grid;gap:.65rem;padding:.85rem .95rem;border:1px solid color-mix(in srgb,var(--sand) 80%,var(--line));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--panel) 94%,white)}.mesh30-screen-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.45rem}.mesh30-screen-label{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.mesh30-screen-lead{margin:0;font-size:.88rem;color:var(--ink-soft);line-height:1.4}.mesh30-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--canopy) 22%,var(--sand));background:color-mix(in srgb,var(--lime-soft) 55%,white);font-family:var(--font-mono);font-size:.8rem;font-weight:650;color:var(--canopy)}.mesh30-badge-address{border-color:color-mix(in srgb,var(--leaf) 35%,var(--sand));background:color-mix(in srgb,var(--leaf) 12%,white)}.mesh30-badge-lg{font-size:1.05rem;padding:.45rem .85rem}.mesh30-foot{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1rem;margin:0}.mesh30-checkout-card{display:grid;gap:1rem;padding:1.1rem 1.15rem;border:1px solid color-mix(in srgb,var(--sand) 80%,var(--line));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--panel) 94%,white);max-width:28rem}@media(max-width:720px){.mesh30-screens{grid-template-columns:1fr}}.bag-depth{margin-top:.65rem;padding:.75rem .85rem;border-left:3px solid color-mix(in srgb,var(--lime) 65%,var(--line));border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:color-mix(in srgb,var(--panel) 88%,var(--lime-soft))}.bag-depth .bag-depth{background:color-mix(in srgb,var(--panel) 92%,transparent)}.bag-depth-label{margin:0 0 .45rem;font-size:.78rem;font-weight:650;letter-spacing:.02em;text-transform:uppercase;color:var(--ink-soft)}.bag-depth-body{display:grid;gap:.35rem}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.btn:hover,.side-link:hover{transform:none}}:root{--j-deep: #001818;--j-forest: #003030;--j-primary: #189030;--j-leaf: #30a830;--j-bright: #60a818;--j-lime: #78c018;--j-mint: #d8f3dc;--j-surface: #f4fbf6;--j-surface-2: #ffffff;--j-border: #b8e0c4;--j-text: #001818;--j-muted: #3d6b52;--j-danger: #c62828;--j-warn: #c47a00;--j-info: #1f6feb;--j-success: #189030;--j-radius: 12px;--j-radius-sm: 8px;--j-radius-pill: 999px;--j-shadow: 0 12px 40px rgba(0, 24, 24, .12);--j-shadow-sm: 0 4px 16px rgba(0, 24, 24, .08);--j-focus: 0 0 0 3px rgba(24, 144, 48, .28);--j-font: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--j-font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--j-space-1: .25rem;--j-space-2: .5rem;--j-space-3: .75rem;--j-space-4: 1rem;--j-space-5: 1.5rem;--j-space-6: 2rem;--j-density: 1;--j-control-height: calc(2.5rem * var(--j-density));--j-control-padding-x: calc(1.15rem * var(--j-density));--j-control-padding-y: calc(.65rem * var(--j-density));--j-duration-fast: .12s;--j-duration-normal: .2s;--j-duration-slow: .32s;--j-ease-out: cubic-bezier(.16, 1, .3, 1);--j-ease-in-out: cubic-bezier(.65, 0, .35, 1)}[data-j-density=compact]{--j-density: .84}[data-j-density=comfortable]{--j-density: 1}[data-j-density=spacious]{--j-density: 1.12}[data-j-motion=reduce]{--j-duration-fast: 0ms;--j-duration-normal: 0ms;--j-duration-slow: 0ms}@media(prefers-reduced-motion:reduce){:root:not([data-j-motion=full]),[data-j-theme]:not([data-j-motion=full]){--j-duration-fast: 0ms;--j-duration-normal: 0ms;--j-duration-slow: 0ms}}[data-j-theme=dark]{--j-deep: #e8f5e9;--j-forest: #d8f3dc;--j-primary: #3dd068;--j-leaf: #5ad87a;--j-bright: #8fd63a;--j-lime: #a8e048;--j-mint: #0d2818;--j-surface: #061410;--j-surface-2: #0c1f18;--j-border: #1a3d2e;--j-text: #e8f5e9;--j-muted: #8fb89a;--j-danger: #ff6b6b;--j-warn: #ffb020;--j-info: #6ea8fe;--j-success: #3dd068;--j-shadow: 0 16px 48px rgba(0, 0, 0, .45);--j-shadow-sm: 0 6px 20px rgba(0, 0, 0, .35);--j-focus: 0 0 0 3px rgba(61, 208, 104, .35)}:root,[data-j-theme]{--j-bg: var(--j-surface);--j-bg-elevated: var(--j-surface-2);--j-fg: var(--j-text);--j-fg-muted: var(--j-muted);--j-accent: var(--j-primary);--j-accent-hover: var(--j-leaf);--j-ring: var(--j-focus);--j-error: var(--j-danger);--j-warning: var(--j-warn)}:root{color:var(--j-fg);background:var(--j-bg);font-family:var(--j-font)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%}button,input,textarea,select{font:inherit}:focus-visible{outline:none;box-shadow:var(--j-ring)}
