:root{--paper:#f4f1ea;--paper-2:#fbf9f4;--ink:#1c3d5a;--ink-soft:#47617d;--muted:#8593a2;--line:#d9dee4;--line-strong:#b9c4cf;--accent:#e8590c;--accent-soft:#e8590c14;--live:#2f9e44;--warn:#c2255c;--grid-line:#1c3d5a0e;--mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--topbar-height:3.25rem;--interfaze-dock-width:24rem}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background-color:var(--paper);background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);color:var(--ink);-webkit-font-smoothing:antialiased;background-size:28px 28px;font:15px/1.55 -apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Noto Sans SC,sans-serif}a{color:var(--ink-soft);text-decoration:none}a:hover{color:var(--accent);text-decoration:none}.topbar{z-index:50;border-bottom:1px solid var(--line-strong);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f4f1eae0;position:sticky;top:0}.topbar-inner{height:var(--topbar-height);align-items:center;gap:1.5rem;max-width:76rem;margin:0 auto;padding:0 1rem;display:flex}@media (min-width:640px){.topbar-inner{padding:0 1.5rem}}.brand a{color:var(--ink);letter-spacing:.22em;align-items:center;gap:.5rem;font-size:.9rem;font-weight:800;display:flex}.brand a:before{content:"";background:var(--accent);border-radius:2px;width:10px;height:10px}.brand a:hover{color:var(--ink)}.menu{flex:1;align-items:stretch;gap:.25rem;min-width:0;height:100%;display:flex;overflow-x:auto}.menu-item{color:var(--muted);white-space:nowrap;align-items:center;padding:0 .75rem;font-size:.875rem;font-weight:500;transition:color .15s;display:flex;position:relative}.menu-item:hover{color:var(--ink)}.menu-item.active{color:var(--ink);font-weight:600}.menu-item.active:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:0;left:.75rem;right:.75rem}.topbar-right{align-items:center;gap:.75rem;margin-left:auto;display:flex}.user{color:var(--muted);font-size:.85rem}button{background:var(--paper-2);color:var(--ink);border:1px solid var(--line-strong);cursor:pointer;font:inherit;border-radius:6px;padding:.38rem .85rem;font-size:.85rem;transition:border-color .15s,color .15s}button:hover{border-color:var(--accent);color:var(--accent)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;border-radius:6px;padding:.5rem 1.25rem;font-weight:600}button.primary:hover{filter:brightness(1.05);color:#fff}.lang-switch{border:1px solid var(--line-strong);border-radius:6px;align-items:center;gap:0;display:inline-flex;overflow:hidden}button.lang-btn{color:var(--muted);letter-spacing:.04em;background:0 0;border:0;border-radius:0;padding:.28rem .55rem;font-size:.72rem;font-weight:600}button.lang-btn+button.lang-btn{border-left:1px solid var(--line)}button.lang-btn.on{background:var(--ink);color:var(--paper-2)}button.lang-btn:hover{color:var(--accent);border-color:#0000}button.lang-btn.on:hover{color:var(--paper-2)}main{max-width:76rem;margin:0 auto;padding:2rem 1rem 4rem}@media (min-width:640px){main{padding:2rem 1.5rem 4rem}}html.embody-host,html.embody-host body{background-color:var(--paper);min-height:100%}html.embody-host main{max-width:none;padding:.85rem 1rem 1.5rem}html.embody-host .topbar,html.embody-host footer{display:none}html.interfaze-dock-open main{padding-right:calc(var(--interfaze-dock-width) + 1.5rem)}@media (max-width:760px){html.interfaze-dock-open main{padding-right:1rem}}footer{max-width:76rem;color:var(--muted);border-top:1px solid var(--line);margin:0 auto;padding:1.25rem 1.5rem 2rem;font-size:.82rem}.page-head{margin-bottom:1.75rem}.page-head h2{letter-spacing:-.01em;margin:0 0 .35rem;font-size:1.6rem;font-weight:800}.page-head .meta{color:var(--muted);font-size:.9rem}.panel{background:var(--paper-2);border:1px solid var(--line-strong);border-radius:10px;box-shadow:0 1px 2px #1c3d5a0d}.empty{border:1px dashed var(--line-strong);color:var(--muted);background:var(--paper-2);text-align:center;border-radius:10px;padding:2.5rem 2rem}.empty h3{color:var(--ink);margin:0 0 .6rem;font-size:1.1rem;font-weight:700}.empty p{margin:.5rem 0}.empty pre{text-align:left;max-width:34rem;margin:.8rem auto 0}.empty ul{text-align:left;display:inline-block}.empty ol,.empty ul{margin:.6rem 0 0;padding-left:1.2rem}.empty li{margin:.35rem 0}code{font-family:var(--mono);background:var(--accent-soft);color:var(--ink);border:1px solid #e8590c33;border-radius:4px;padding:.05rem .35rem;font-size:.85em}pre{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:.85rem 1rem;font-size:.85rem;overflow-x:auto}pre code{background:0 0;border:none;padding:0}.badge{border:1px solid var(--line-strong);background:var(--paper-2);color:var(--ink-soft);letter-spacing:.02em;border-radius:4px;align-items:center;gap:.3rem;padding:.12rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.status{color:var(--muted);align-items:center;gap:.4rem;font-size:.82rem;font-weight:600;display:inline-flex}.status:before{content:"";background:var(--line-strong);border-radius:50%;width:8px;height:8px}.status.on{color:var(--live)}.status.on:before{background:var(--live);animation:2s infinite pulse;box-shadow:0 0 0 3px #2f9e442e}@keyframes pulse{0%,to{box-shadow:0 0 0 3px #2f9e442e}50%{box-shadow:0 0 0 5px #2f9e4414}}.grid{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1.1rem;display:grid}.body-card{border:1px solid var(--line-strong);background:var(--paper-2);border-radius:10px;transition:border-color .15s,box-shadow .15s,transform .15s;overflow:hidden;box-shadow:0 1px 2px #1c3d5a0d}.body-card:hover{border-color:var(--ink-soft);transform:translateY(-2px);box-shadow:0 4px 14px #1c3d5a1a}.body-card a{color:inherit;display:block}.body-cover{aspect-ratio:16/9;background:linear-gradient(#1c3d5a12 1px, transparent 1px), linear-gradient(90deg, #1c3d5a12 1px, transparent 1px), var(--paper);border-bottom:1px solid var(--line);background-size:18px 18px;position:relative}.body-cover .badge,.body-cover .status,.body-cover .keynum{z-index:1}.body-cover .badge{position:absolute;top:.6rem;left:.6rem}.body-cover .status{position:absolute;top:.6rem;right:.6rem}.body-cover .keynum{font-family:var(--mono);color:var(--ink-soft);background:#fbf9f4d1;border-radius:4px;padding:.1rem .4rem;font-size:.78rem;position:absolute;bottom:.55rem;right:.7rem}.body-cover .duck-stage,.body-cover .duck-stage canvas{pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.body-meta{padding:.75rem .9rem .85rem}.body-meta h3{color:var(--ink);margin:0;font-size:.95rem;font-weight:700}.body-meta h3 a:hover{color:var(--accent)}.body-meta .meta{margin-top:.25rem;font-size:.78rem}.home-modules{margin-top:.45rem}.room-head{margin:.75rem 0 1.25rem}.room-head .title-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.room-head h2{letter-spacing:-.01em;margin:0;font-size:1.7rem;font-weight:800}.room-head .sub{color:var(--muted);flex-wrap:wrap;gap:.35rem 1.1rem;margin-top:.45rem;font-size:.85rem;display:flex}.room-head .sub code{font-size:.8rem}.stage{grid-template-columns:minmax(0,1fr) 17rem;align-items:start;gap:1.1rem;display:grid}@media (max-width:760px){.stage{grid-template-columns:1fr}}.stage-rail,.drive-pad{flex-direction:column;gap:.7rem;display:flex}.drive-grid,.drive-tricks{grid-template-columns:1fr 1fr;gap:.45rem;margin-top:.55rem;display:grid}.drive-btn{-webkit-user-select:none;user-select:none;touch-action:none;min-height:2.4rem;font-weight:600}.drive-btn:disabled{opacity:.45;cursor:not-allowed;border-color:var(--line);color:var(--muted)}.drive-btn.halt{grid-column:1/-1}.preview{aspect-ratio:16/9;border:1px solid var(--line-strong);background:var(--paper-2);border-radius:10px;position:relative;overflow:hidden}.preview .duck-stage,.preview .duck-stage canvas{touch-action:none;cursor:grab;width:100%;height:100%;display:block;position:absolute;inset:0}.preview .duck-stage:active{cursor:grabbing}.preview .stage-caption{z-index:1;color:var(--ink-soft);pointer-events:none;background:#fbf9f4d1;border-radius:4px;margin:0;padding:.15rem .5rem;font-size:.78rem;position:absolute;bottom:.6rem;left:.75rem}.preview .stage-empty{text-align:center;color:var(--muted);justify-content:center;align-items:center;margin:0;padding:1.25rem;font-size:.88rem;display:flex;position:absolute;inset:0}.telemetry{flex-direction:column;gap:.7rem;display:flex}.stat{background:var(--paper-2);border:1px solid var(--line-strong);border-radius:8px;padding:.65rem .85rem .7rem}.stat .label{letter-spacing:.12em;color:var(--muted);text-transform:uppercase;font-size:.7rem;font-weight:700}.stat .value{font-family:var(--mono);color:var(--ink);font-variant-numeric:tabular-nums;margin-top:.2rem;font-size:1.35rem;font-weight:700}.stat .value .unit{color:var(--muted);margin-left:.25rem;font-size:.8rem;font-weight:500}.stat .sub{color:var(--muted);margin-top:.15rem;font-size:.78rem}.feet{gap:1rem;margin-top:.35rem;display:flex}.foot{font-family:var(--mono);color:var(--ink-soft);align-items:center;gap:.45rem;font-size:.85rem;display:flex}.foot:before{content:"";border:1.5px solid var(--line-strong);background:0 0;border-radius:50%;width:10px;height:10px}.foot.contact:before{background:var(--live);border-color:var(--live)}.build-panel{background:var(--paper-2);border:1px solid var(--line-strong);border-radius:8px;padding:.55rem .85rem}.build-row{align-items:baseline;gap:.85rem;padding:.3rem 0;display:flex}.build-row+.build-row{border-top:1px dashed var(--line-strong)}.build-nested{flex-direction:column;flex:1;min-width:0;display:flex}.build-nested .build-row{padding:.15rem 0 .15rem .4rem}.build-nested .build-row+.build-row{border-top:none}.build-key{letter-spacing:.12em;color:var(--muted);text-transform:uppercase;min-width:5.5rem;font-size:.7rem;font-weight:700}.build-val{font-family:var(--mono);color:var(--ink);word-break:break-all;font-size:.88rem}.module-list{flex-wrap:wrap;gap:.4rem;display:flex}.badge.module{text-transform:none}.badge.module.off{opacity:.45;text-decoration:line-through}.cards-head{letter-spacing:.12em;color:var(--muted);text-transform:uppercase;margin:1.75rem 0 .75rem;font-size:.78rem;font-weight:700}.skill-grid{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:1rem;display:grid}.skill-card{border:1px solid var(--line-strong);background:var(--paper-2);border-radius:10px;overflow:hidden;box-shadow:0 1px 2px #1c3d5a0d}.skill-card .skill-preview{aspect-ratio:16/9;background:#10151b;position:relative}.skill-card .skill-preview video{object-fit:contain;width:100%;height:100%;display:block}.skill-card .skill-preview .no-preview{color:var(--muted);background:linear-gradient(#1c3d5a0f 1px, transparent 1px), linear-gradient(90deg, #1c3d5a0f 1px, transparent 1px), var(--paper);background-size:16px 16px;justify-content:center;align-items:center;font-size:.82rem;display:flex;position:absolute;inset:0}.skill-card .skill-body{padding:.7rem .9rem .8rem}.skill-card .skill-body .alias-row{align-items:center;gap:.5rem;display:flex}.skill-card .alias{font-family:var(--mono);color:var(--ink);font-size:.92rem;font-weight:700}.skill-card .hub{font-family:var(--mono);color:var(--muted);word-break:break-all;margin-top:.3rem;font-size:.76rem}.skill-card .hub a{color:var(--ink-soft)}.skill-card .hub a:hover{color:var(--accent)}.control-log{background:var(--paper-2);border:1px solid var(--line-strong);border-radius:8px;padding:.2rem .85rem}.control-row{grid-template-columns:4.5rem 1fr auto;align-items:baseline;gap:.55rem .75rem;padding:.4rem 0;display:grid}.control-row+.control-row{border-top:1px dashed var(--line-strong)}.control-who{letter-spacing:.12em;color:var(--muted);text-transform:uppercase;font-size:.7rem;font-weight:700}.control-what{color:var(--ink);font-size:.9rem}.control-when{color:var(--muted);white-space:nowrap;font-size:.75rem}.control-hint{font-family:var(--mono);color:var(--muted);grid-column:2/3;margin-top:-.15rem;font-size:.75rem}@media (max-width:640px){.control-row{grid-template-columns:1fr auto}.control-who,.control-what{grid-column:1/2}.control-when{grid-area:1/2/3/3}.control-hint{grid-column:1/2}}.room-head .chat-open{padding:.15rem .65rem;font-size:.78rem}.training-banner{color:var(--ink);margin:.55rem 0 0;font-size:.88rem;font-weight:600}.training-banner a{font-weight:600}.interfaze-scrim{z-index:40;background:#1c3d5a59;border:0;border-radius:0;position:fixed;inset:0}@media (min-width:761px){.interfaze-scrim{display:none}}.interfaze-dock{z-index:40;background:var(--paper-2);border-left:1px solid var(--line-strong);flex-direction:column;display:none;position:fixed;overflow:hidden}.interfaze-dock.open{display:flex}@media (max-width:760px){.interfaze-dock.open{border-left:0;border-top:1px solid var(--line-strong);border-radius:12px 12px 0 0;height:80dvh;inset:auto 0 0}}@media (min-width:761px){.interfaze-dock.open{top:var(--topbar-height);width:var(--interfaze-dock-width);bottom:0;right:0}}.interfaze-dock-head{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:center;gap:.75rem;height:2.75rem;padding:0 .75rem;display:flex}.interfaze-dock-head h2{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.88rem;font-weight:700;overflow:hidden}.interfaze-dock-body{z-index:0;flex:1;min-height:0;position:relative;overflow:hidden}.interfaze-fill{height:100%;min-height:0;position:relative}.interfaze-frame{background:var(--paper-2);border:0;width:100%}.interfaze-frame.fill{height:100%;position:absolute;inset:0}.interfaze-error{color:var(--ink-soft);padding:1rem 1.1rem;font-size:.88rem}.interfaze-error a,.interfaze-error button{margin-top:.7rem}.warn{color:var(--warn)}.meta{color:var(--muted);font-size:.9rem}ul{margin:.6rem 0 0;padding-left:1.1rem}
