{"id":7275,"date":"2026-04-02T07:31:11","date_gmt":"2026-04-02T14:31:11","guid":{"rendered":"https:\/\/gabroverse.com\/"},"modified":"2026-04-02T09:18:31","modified_gmt":"2026-04-02T16:18:31","slug":"transmission-v1-9-0-toolbox-teases-trace-the-drawers","status":"publish","type":"post","link":"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/","title":{"rendered":"TRANSMISSION v1.9.0 \/\/ ADELANTOS DE TOOLBOX: SIGUE EL RASTRO DE LOS CAJONES"},"content":{"rendered":"\n<div id=\"gv-app-core\">\n<style>\n#gv-app-core {\n    --bg-base: #07090f;\n    --bg-panel: #11141d;\n    --bg-hover: #191e2b;\n    --border: rgba(255, 255, 255, 0.08);\n    --text-main: #f4f5f8;\n    --text-muted: #8b94a5;\n    --gv-orange: #ff6a00;\n    --gv-gold: #ffb800;\n    --gv-mint: #00ffd5;\n    font-family: system-ui, -apple-system, sans-serif;\n    background: var(--bg-base);\n    color: var(--text-main);\n    border-radius: 28px;\n    padding: 1px;\n    box-shadow: 0 40px 100px rgba(0,0,0,0.9), inset 0 1px 0 rgba(255,255,255,0.05);\n    max-width: 1100px;\n    margin: 40px auto;\n    position: relative;\n    overflow: hidden;\n    line-height: 1.6;\n}\n#gv-app-core * { box-sizing: border-box; }\n.gv-inner-wrap {\n    background: radial-gradient(circle at 50% 0%, rgba(255,106,0,0.08), transparent 60%),\n                radial-gradient(circle at 100% 100%, rgba(0,255,213,0.06), transparent 50%),\n                var(--bg-base);\n    border-radius: 27px;\n    padding: 40px;\n}\n.gv-top-pills {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 10px;\n    margin-bottom: 36px;\n    align-items: center;\n}\n.gv-tag {\n    background: rgba(255,255,255,0.03);\n    border: 1px solid var(--border);\n    padding: 8px 16px;\n    border-radius: 50px;\n    font-size: 0.75rem;\n    text-transform: uppercase;\n    letter-spacing: 0.15em;\n    font-weight: 700;\n    color: var(--text-muted);\n    display: flex;\n    align-items: center;\n    gap: 8px;\n}\n.gv-tag.active {\n    color: var(--gv-gold);\n    border-color: rgba(255, 184, 0, 0.25);\n    background: rgba(255, 184, 0, 0.05);\n}\n.gv-pulse-dot {\n    width: 6px;\n    height: 6px;\n    background: var(--gv-gold);\n    border-radius: 50%;\n    box-shadow: 0 0 12px var(--gv-gold);\n    animation: gvDotFlash 2.5s infinite;\n}\n.gv-spacer { flex-grow: 1; }\n.gv-purge-btn {\n    position: relative;\n    background: rgba(255,255,255,0.03);\n    border: 1px solid rgba(255, 106, 0, 0.3);\n    border-radius: 50px;\n    padding: 8px 16px;\n    cursor: pointer;\n    overflow: hidden;\n    color: var(--gv-orange);\n    font-size: 0.75rem;\n    text-transform: uppercase;\n    letter-spacing: 0.15em;\n    font-weight: 800;\n    touch-action: none;\n    user-select: none;\n    -webkit-user-select: none;\n    -webkit-touch-callout: none;\n}\n.gv-purge-fill {\n    position: absolute;\n    left: 0;\n    top: 0;\n    bottom: 0;\n    background: rgba(255, 106, 0, 0.2);\n    width: 0%;\n    pointer-events: none;\n}\n.gv-purge-txt {\n    position: relative;\n    z-index: 2;\n    pointer-events: none;\n}\n.gv-main-grid {\n    display: grid;\n    grid-template-columns: 320px 1fr;\n    gap: 30px;\n}\n.gv-menu {\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n    -ms-overflow-style: none;\n    scrollbar-width: none;\n    scroll-behavior: smooth;\n}\n.gv-menu::-webkit-scrollbar {\n    display: none;\n}\n.gv-drawer-item {\n    --theme: rgb(var(--theme-rgb, 255, 255, 255));\n    background: var(--bg-panel);\n    border: 1px solid var(--border);\n    padding: 20px;\n    border-radius: 18px;\n    cursor: pointer;\n    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);\n    position: relative;\n    overflow: hidden;\n}\n.gv-drawer-item::before {\n    content: '';\n    position: absolute;\n    left: 0;\n    top: 0;\n    bottom: 0;\n    width: 3px;\n    background: var(--theme);\n    opacity: 0;\n    transition: opacity 0.3s;\n}\n.gv-drawer-item:hover {\n    background: var(--bg-hover);\n    transform: translateX(4px);\n    border-color: rgba(255,255,255,0.15);\n}\n.gv-drawer-item.selected {\n    background: linear-gradient(135deg, rgba(var(--theme-rgb), 0.12), rgba(var(--theme-rgb), 0.02));\n    border-color: rgba(var(--theme-rgb), 0.3);\n    box-shadow: 0 10px 30px rgba(0,0,0,0.2);\n}\n.gv-drawer-item.selected::before { opacity: 1; }\n.gv-drawer-item.unlocked { border-color: rgba(var(--theme-rgb), 0.2); }\n.gv-drawer-item.unlocked::before {\n    background: var(--theme);\n    opacity: 1;\n}\n.gv-drawer-head {\n    display: flex;\n    justify-content: space-between;\n    align-items: center;\n    margin-bottom: 6px;\n}\n.gv-drawer-name {\n    font-size: 1.05rem;\n    font-weight: 800;\n    color: var(--text-main);\n    font-variant-numeric: tabular-nums;\n    white-space: nowrap;\n}\n.gv-drawer-badge {\n    font-size: 0.65rem;\n    text-transform: uppercase;\n    letter-spacing: 0.1em;\n    color: var(--text-muted);\n    background: rgba(255,255,255,0.06);\n    padding: 4px 8px;\n    border-radius: 50px;\n    font-weight: 700;\n}\n.gv-drawer-item.unlocked .gv-drawer-badge {\n    color: #000;\n    background: var(--theme);\n    box-shadow: 0 0 12px rgba(var(--theme-rgb), 0.4);\n}\n.gv-drawer-desc {\n    font-size: 0.8rem;\n    color: var(--text-muted);\n}\n.gv-arena {\n    background: var(--bg-panel);\n    border: 1px solid var(--border);\n    border-radius: 20px;\n    display: flex;\n    flex-direction: column;\n    position: relative;\n    overflow: hidden;\n    scroll-margin-top: 20px;\n    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), filter 0.4s;\n}\n.gv-arena.flash {\n    animation: gvPurgeFlash 0.6s cubic-bezier(0.16, 1, 0.3, 1);\n}\n.gv-arena::after {\n    content: '';\n    position: absolute;\n    inset: 0;\n    background: radial-gradient(circle at 50% 50%, rgba(255,255,255,0.02) 1px, transparent 1px);\n    background-size: 24px 24px;\n    pointer-events: none;\n    z-index: 0;\n}\n.gv-arena-top {\n    padding: 24px;\n    border-bottom: 1px solid var(--border);\n    display: flex;\n    justify-content: space-between;\n    align-items: center;\n    position: relative;\n    z-index: 2;\n    background: rgba(17, 20, 29, 0.85);\n    backdrop-filter: blur(12px);\n}\n.gv-arena-title {\n    font-size: 1.3rem;\n    font-weight: 900;\n    margin: 0;\n    font-family: monospace;\n    letter-spacing: -0.02em;\n}\n.gv-arena-sub {\n    margin: 4px 0 0;\n    font-size: 0.75rem;\n    color: var(--gv-gold);\n    text-transform: uppercase;\n    letter-spacing: 0.15em;\n    font-weight: 700;\n}\n.gv-pct-display {\n    font-size: 1.4rem;\n    font-weight: 900;\n    color: var(--text-main);\n    font-variant-numeric: tabular-nums;\n    text-shadow: 0 0 20px rgba(255,255,255,0.1);\n}\n.gv-canvas-box {\n    position: relative;\n    height: 480px;\n    width: 100%;\n    z-index: 1;\n    touch-action: none;\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    background: radial-gradient(circle at center, rgba(255,106,0,0.03) 0%, transparent 70%);\n}\n.gv-trace-canvas {\n    position: absolute;\n    top: 0;\n    left: 0;\n    width: 100%;\n    height: 100%;\n}\n.gv-overlay {\n    position: absolute;\n    inset: 0;\n    background: rgba(7, 9, 15, 0.85);\n    backdrop-filter: blur(12px);\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    justify-content: center;\n    opacity: 0;\n    pointer-events: none;\n    transition: opacity 0.5s ease;\n    z-index: 10;\n    text-align: center;\n    padding: 40px;\n}\n.gv-overlay.visible {\n    opacity: 1;\n    pointer-events: auto;\n}\n.gv-overlay-content {\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    transform: translateY(20px) scale(0.95);\n    opacity: 0;\n    transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);\n    width: 100%;\n}\n.gv-overlay.visible .gv-overlay-content {\n    transform: translateY(0) scale(1);\n    opacity: 1;\n    transition-delay: 0.1s;\n}\n.gv-overlay-icon {\n    font-size: 4rem;\n    margin-bottom: 16px;\n    filter: drop-shadow(0 0 30px rgba(255, 255, 255, 0.4));\n    animation: gvFloat 4s ease-in-out infinite;\n}\n.gv-overlay-title {\n    font-size: 2rem;\n    font-weight: 900;\n    margin: 0 0 12px;\n    background: linear-gradient(90deg, #fff, var(--gv-mint));\n    -webkit-background-clip: text;\n    -webkit-text-fill-color: transparent;\n    letter-spacing: -0.02em;\n}\n.gv-overlay-text {\n    color: var(--text-muted);\n    max-width: 420px;\n    font-size: 1rem;\n    line-height: 1.7;\n}\n.gv-cta-container {\n    display: flex;\n    flex-direction: column;\n    gap: 16px;\n    width: 100%;\n    max-width: 280px;\n    margin-top: 32px;\n}\n.gv-bottom {\n    margin-top: 40px;\n    padding-top: 40px;\n    border-top: 1px solid var(--border);\n    display: grid;\n    grid-template-columns: 1fr auto;\n    gap: 40px;\n}\n.gv-notes h3 {\n    color: var(--gv-gold);\n    font-size: 0.85rem;\n    text-transform: uppercase;\n    letter-spacing: 0.2em;\n    margin: 0 0 20px;\n}\n.gv-notes ul {\n    list-style: none;\n    padding: 0;\n    margin: 0;\n    display: grid;\n    gap: 16px;\n}\n.gv-notes li {\n    position: relative;\n    padding-left: 24px;\n    font-size: 0.95rem;\n    color: var(--text-muted);\n}\n.gv-notes li::before {\n    content: '';\n    position: absolute;\n    left: 0;\n    top: 10px;\n    width: 6px;\n    height: 6px;\n    background: linear-gradient(135deg, var(--gv-orange), var(--gv-gold));\n    border-radius: 50%;\n    box-shadow: 0 0 8px var(--gv-orange);\n}\n.gv-links {\n    display: flex;\n    flex-direction: column;\n    gap: 16px;\n    min-width: 240px;\n}\n.gv-btn {\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    padding: 18px 24px;\n    border-radius: 14px;\n    font-weight: 800;\n    text-decoration: none;\n    font-size: 0.9rem;\n    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);\n    border: none;\n    cursor: pointer;\n    font-family: inherit;\n    width: 100%;\n}\n.gv-btn-pri {\n    color: #000;\n    background: linear-gradient(135deg, #ffd199, #ff8c42, #ff5e00);\n    box-shadow: 0 12px 30px rgba(255, 106, 0, 0.25);\n}\n.gv-btn-pri:hover {\n    transform: translateY(-3px);\n    box-shadow: 0 16px 40px rgba(255, 106, 0, 0.45);\n}\n.gv-btn-sec {\n    color: var(--text-main);\n    background: rgba(255,255,255,0.04);\n    border: 1px solid rgba(255,255,255,0.12);\n}\n.gv-btn-sec:hover {\n    background: rgba(255,255,255,0.08);\n    transform: translateY(-3px);\n    border-color: rgba(255,255,255,0.25);\n}\n.gv-btn-toolbox {\n    color: #000;\n    background: linear-gradient(135deg, #ffea00, #ff6a00, #ff0055);\n    background-size: 200% 200%;\n    animation: gvGlowPulse 2s infinite, gvGradientShift 4s ease infinite;\n    box-shadow: 0 0 20px rgba(255, 106, 0, 0.4);\n    border-radius: 16px;\n    padding: 20px 24px;\n    font-size: 1.05rem;\n    letter-spacing: 0.05em;\n    text-transform: uppercase;\n}\n.gv-btn-toolbox:hover {\n    transform: translateY(-4px) scale(1.02);\n}\n.gv-tb-icon {\n    display: inline-block;\n    margin-right: 12px;\n    font-size: 1.5rem;\n    animation: gvToolboxDance 1.5s infinite ease-in-out;\n    filter: drop-shadow(0 0 8px rgba(255,255,255,0.8));\n}\n.gv-btn-startover {\n    background: transparent;\n    color: var(--text-muted);\n    border: 1px solid rgba(255,255,255,0.1);\n    border-radius: 12px;\n    padding: 14px 24px;\n    font-size: 0.85rem;\n    letter-spacing: 0.1em;\n    text-transform: uppercase;\n}\n.gv-btn-startover:hover {\n    color: #fff;\n    background: rgba(255,255,255,0.05);\n    border-color: rgba(255,255,255,0.2);\n}\n.gv-out {\n    grid-column: 1 \/ -1;\n    text-align: center;\n    margin-top: 20px;\n}\n.gv-out p {\n    margin: 0 0 8px;\n    color: var(--text-muted);\n    font-size: 0.9rem;\n}\n.gv-out strong { color: var(--text-main); }\n.gv-out .gv-italic {\n    color: var(--gv-gold);\n    font-style: italic;\n    opacity: 0.9;\n    margin-top: 16px;\n}\n@keyframes gvDotFlash {\n    0%, 100% { opacity: 1; transform: scale(1); }\n    50% { opacity: 0.4; transform: scale(0.8); }\n}\n@keyframes gvFloat {\n    0%, 100% { transform: translateY(0); }\n    50% { transform: translateY(-10px); }\n}\n@keyframes gvPurgeFlash {\n    0% { transform: scale(1); filter: brightness(1) contrast(1) sepia(0); }\n    20% { transform: scale(0.97); filter: brightness(2) contrast(1.5) sepia(1) hue-rotate(-50deg); }\n    100% { transform: scale(1); filter: brightness(1) contrast(1) sepia(0); }\n}\n@keyframes gvGradientShift {\n    0% { background-position: 0% 50%; }\n    50% { background-position: 100% 50%; }\n    100% { background-position: 0% 50%; }\n}\n@keyframes gvGlowPulse {\n    0%, 100% { box-shadow: 0 0 20px rgba(255, 106, 0, 0.4); transform: scale(1); }\n    50% { box-shadow: 0 0 40px rgba(255, 0, 85, 0.6); transform: scale(1.02); }\n}\n@keyframes gvToolboxDance {\n    0%, 100% { transform: rotate(0deg) translateY(0); }\n    25% { transform: rotate(-12deg) translateY(-4px); }\n    75% { transform: rotate(12deg) translateY(-4px); }\n}\n@media (max-width: 900px) {\n    .gv-main-grid { \n        grid-template-columns: 1fr; \n        gap: 12px; \n    }\n    .gv-menu {\n        flex-direction: row;\n        overflow-x: auto;\n        scroll-snap-type: x mandatory;\n        padding-bottom: 8px;\n        gap: 8px;\n    }\n    .gv-drawer-item {\n        min-width: 220px;\n        flex-shrink: 0;\n        scroll-snap-align: start;\n        padding: 14px 16px;\n    }\n    .gv-drawer-item:hover {\n        transform: none;\n    }\n    .gv-inner-wrap { padding: 20px 12px; }\n    .gv-top-pills { margin-bottom: 20px; }\n    .gv-bottom { \n        grid-template-columns: 1fr; \n        gap: 20px; \n        margin-top: 24px; \n        padding-top: 24px; \n    }\n    .gv-canvas-box { height: 320px; }\n    .gv-purge-btn { margin-left: auto; }\n    .gv-arena-top { padding: 16px; }\n    .gv-overlay { padding: 16px; }\n    .gv-overlay-icon { font-size: 2.8rem; margin-bottom: 8px; }\n    .gv-overlay-title { font-size: 1.6rem; margin-bottom: 8px; }\n    .gv-overlay-text { font-size: 0.9rem; line-height: 1.5; }\n    #gv-o-next { margin-top: 20px !important; padding: 14px 24px; }\n    .gv-cta-container { margin-top: 20px; }\n}\n<\/style>\n\n<div class=\"gv-inner-wrap\">\n    <div class=\"gv-top-pills\">\n        <div class=\"gv-tag active\"><span class=\"gv-pulse-dot\"><\/span>TRANSMISSIONS<\/div>\n        <div class=\"gv-tag\">v1.9.0<\/div>\n        <div class=\"gv-tag\">Toolbox Teases<\/div>\n        <div class=\"gv-spacer\"><\/div>\n        <div class=\"gv-purge-btn\" id=\"gv-purge\">\n            <span class=\"gv-purge-fill\" id=\"gv-p-fill\"><\/span>\n            <span class=\"gv-purge-txt\">Hold To Reset<\/span>\n        <\/div>\n    <\/div>\n\n    <div class=\"gv-main-grid\">\n        <div class=\"gv-menu\" id=\"gv-menu\"><\/div>\n\n        <div class=\"gv-arena\" id=\"gv-arena\">\n            <div class=\"gv-arena-top\">\n                <div>\n                    <h2 class=\"gv-arena-title\" id=\"gv-h2\">SELECT A DRAWER<\/h2>\n                    <p class=\"gv-arena-sub\" id=\"gv-sub\">Trace the path<\/p>\n                <\/div>\n                <div class=\"gv-pct-display\" id=\"gv-pct\">0%<\/div>\n            <\/div>\n\n            <div class=\"gv-canvas-box\" id=\"gv-cbox\">\n                <canvas class=\"gv-trace-canvas\" id=\"gv-canvas\"><\/canvas>\n                \n                <div class=\"gv-overlay\" id=\"gv-overlay\">\n                    <div class=\"gv-overlay-content\">\n                        <div class=\"gv-overlay-icon\" id=\"gv-o-icon\">\ud83e\uddf0<\/div>\n                        <h3 class=\"gv-overlay-title\" id=\"gv-o-title\">Unlocked<\/h3>\n                        <p class=\"gv-overlay-text\" id=\"gv-o-text\">Details<\/p>\n                        \n                        <button class=\"gv-btn gv-btn-pri\" id=\"gv-o-next\" style=\"margin-top: 32px; max-width: 240px;\">Next Sequence<\/button>\n                        <div id=\"gv-cta-container\" class=\"gv-cta-container\" style=\"display: none;\"><\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <div class=\"gv-bottom\">\n        <div class=\"gv-notes\">\n            <h3>Patch Notes \/\/ v1.9.0<\/h3>\n            <ul>\n                <li>We\u2019re moving past the placeholder phase. The toolbox is becoming a living, breathing system.<\/li>\n                <li>The first wave covers casino games, creative sprints, tumbling, printable templates, and sound tracking. There&#8217;s plenty more on the way.<\/li>\n                <li>Everything you trace here saves right to your device. Feel free to wander off and come back later to finish cracking the rest of the drawers.<\/li>\n            <\/ul>\n        <\/div>\n        <div class=\"gv-links\">\n            <a href=\"https:\/\/gabroverse.com\/toolbox\/\" class=\"gv-btn gv-btn-pri\">Open Toolbox<\/a>\n            <a href=\"https:\/\/gabroverse.com\/subscribe\/\" class=\"gv-btn gv-btn-sec\">Join The Orbit List<\/a>\n        <\/div>\n        <div class=\"gv-out\">\n            <p>Useful can still be gorgeous. Organized can still be dangerous.<\/p>\n            <p>End of transmission. <strong>\ud83d\udd27<\/strong><\/p>\n            <p class=\"gv-italic\"><strong>\ud83d\udee0\ufe0f<\/strong> A good tool does not beg for attention. It just quietly changes your week.<\/p>\n        <\/div>\n    <\/div>\n<\/div>\n<\/div>\n\n<script>\n(function() {\n    const models = [\n        {\n            id: 'casino', name: 'Casino Corner', desc: 'Party kits & dealing drills', icon: '\ud83c\udfb2',\n            rtitle: 'Casino Corner Sharpened',\n            rtext: 'Cheat sheets, host kits, practice aids, and everything needed to make game night look incredibly expensive.',\n            pts: [{x:200, y:60}, {x:320, y:180}, {x:200, y:300}, {x:80, y:180}, {x:200, y:60}],\n            color: '255, 0, 85'\n        },\n        {\n            id: 'creative', name: 'Creative Studio', desc: 'Shot lists & structure', icon: '\ud83d\udcdd',\n            rtitle: 'Creative Studio Awake',\n            rtext: 'Planning tools, shot lists, and anti-chaos structure for people with too many ideas and zero follow-through.',\n            pts: [{x:100, y:300}, {x:260, y:140}, {x:300, y:180}, {x:140, y:340}, {x:100, y:300}],\n            color: '188, 19, 254'\n        },\n        {\n            id: 'tumbling', name: 'Tumbling Tutorials', desc: 'Warm-ups & flexibility', icon: '\ud83e\udd38',\n            rtitle: 'Tumbling Engaged',\n            rtext: 'Warm-up flow cards, flexibility trackers, and recovery guides so your body stops keeping such mean receipts.',\n            pts: [{x:100, y:200}, {x:180, y:100}, {x:300, y:100}, {x:300, y:300}, {x:180, y:300}, {x:100, y:200}],\n            color: '0, 255, 213'\n        },\n        {\n            id: 'templates', name: 'Templates', desc: 'Printables & trackers', icon: '\ud83d\udcc1',\n            rtitle: 'Templates Ready',\n            rtext: 'Fast one-page helpers, checklists, and things you can save before life starts acting tacky again.',\n            pts: [{x:80, y:280}, {x:80, y:120}, {x:160, y:120}, {x:200, y:160}, {x:320, y:160}, {x:320, y:280}, {x:80, y:280}],\n            color: '255, 234, 0'\n        },\n        {\n            id: 'sound', name: 'Sound Lab', desc: 'Lyric catchers & notes', icon: '\ud83c\udfa4',\n            rtitle: 'Sound Lab Humming',\n            rtext: 'Session prep sheets, vocal rest cards, and spaces to steal lyrics back from the void before you forget them.',\n            pts: [{x:160, y:280}, {x:240, y:280}, {x:200, y:240}, {x:200, y:180}, {x:260, y:120}, {x:200, y:60}, {x:140, y:120}, {x:200, y:180}],\n            color: '0, 204, 255'\n        }\n    ];\n\n    const sys = {\n        unlocked: JSON.parse(localStorage.getItem('gv_v190')) || {},\n        active: null, nodeIdx: 0, progress: 0,\n        isDown: false, ptr: {x:0, y:0}, w: 400, h: 400,\n        scaleX: 1, scaleY: 1, offsetX: 0, offsetY: 0,\n        particles: [], ambient: [], trail: [],\n        frame: 0, pulse: 0, sparkT: 0,\n        purging: false, purgeAmt: 0, scrambleIdx: 0\n    };\n\n    const dom = {\n        menu: document.getElementById('gv-menu'),\n        arena: document.getElementById('gv-arena'),\n        h2: document.getElementById('gv-h2'),\n        sub: document.getElementById('gv-sub'),\n        pct: document.getElementById('gv-pct'),\n        cbox: document.getElementById('gv-cbox'),\n        canvas: document.getElementById('gv-canvas'),\n        ctx: document.getElementById('gv-canvas').getContext('2d'),\n        overlay: document.getElementById('gv-overlay'),\n        oIcon: document.getElementById('gv-o-icon'),\n        oTitle: document.getElementById('gv-o-title'),\n        oText: document.getElementById('gv-o-text'),\n        oNext: document.getElementById('gv-o-next'),\n        ctaContainer: document.getElementById('gv-cta-container'),\n        purgeBtn: document.getElementById('gv-purge'),\n        purgeFill: document.getElementById('gv-p-fill')\n    };\n\n    const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#$%&*';\n\n    function boot() {\n        for(let i=0; i<30; i++) {\n            sys.ambient.push({\n                x: Math.random(), y: Math.random(),\n                vx: (Math.random()-0.5)*0.002, vy: (Math.random()-0.5)*0.002,\n                s: Math.random()*2 + 0.5, a: Math.random()*0.5\n            });\n        }\n        buildMenu();\n        load(models[0].id);\n        window.addEventListener('resize', size);\n        size();\n        \n        dom.canvas.addEventListener('pointerdown', down);\n        dom.canvas.addEventListener('pointermove', move);\n        window.addEventListener('pointerup', up);\n        window.addEventListener('pointercancel', up);\n        \n        dom.oNext.addEventListener('click', nextLevel);\n        \n        dom.purgeBtn.addEventListener('pointerdown', () => sys.purging = true);\n        window.addEventListener('pointerup', () => sys.purging = false);\n        dom.purgeBtn.addEventListener('contextmenu', e => e.preventDefault());\n        \n        tick();\n    }\n\n    function scrambleText(el, final, dur) {\n        clearInterval(sys.scrambleIdx);\n        let start = Date.now();\n        sys.scrambleIdx = setInterval(() => {\n            let now = Date.now();\n            if(now - start >= dur) {\n                clearInterval(sys.scrambleIdx);\n                el.textContent = final.toUpperCase();\n            } else {\n                el.textContent = final.split('').map(c => c === ' ' ? ' ' : chars[Math.floor(Math.random() * chars.length)]).join('');\n            }\n        }, 30);\n    }\n\n    function buildMenu() {\n        dom.menu.innerHTML = models.map(m => `\n            <div class=\"gv-drawer-item ${sys.active === m.id ? 'selected' : ''} ${sys.unlocked[m.id] ? 'unlocked' : ''}\" data-id=\"${m.id}\" style=\"--theme-rgb: ${m.color}\">\n                <div class=\"gv-drawer-head\">\n                    <span class=\"gv-drawer-name\">${m.name}<\/span>\n                    <span class=\"gv-drawer-badge\">${sys.unlocked[m.id] ? 'Open' : 'Locked'}<\/span>\n                <\/div>\n                <div class=\"gv-drawer-desc\">${m.desc}<\/div>\n            <\/div>\n        `).join('');\n        document.querySelectorAll('.gv-drawer-item').forEach(el => {\n            el.addEventListener('click', () => load(el.dataset.id));\n        });\n    }\n\n    function load(id) {\n        if(sys.active === id && sys.active !== null) return;\n        sys.active = id;\n        sys.nodeIdx = 0;\n        sys.progress = 0;\n        sys.particles = [];\n        sys.trail = [];\n        \n        const m = models.find(x => x.id === id);\n        scrambleText(dom.h2, m.name, 400);\n        dom.sub.textContent = sys.unlocked[id] ? 'Schematic Revealed' : 'Trace the path';\n        dom.sub.style.color = `rgb(${m.color})`;\n        \n        if(sys.unlocked[id]) {\n            sys.nodeIdx = m.pts.length - 1;\n            sys.progress = 1;\n            dom.pct.textContent = '100%';\n            dom.pct.style.color = `rgb(${m.color})`;\n            dom.pct.style.textShadow = `0 0 20px rgba(${m.color}, 0.4)`;\n            showRev(m);\n        } else {\n            dom.pct.textContent = '0%';\n            dom.pct.style.color = 'var(--text-main)';\n            dom.pct.style.textShadow = '0 0 20px rgba(255,255,255,0.1)';\n            hideRev();\n        }\n        \n        buildMenu();\n        const activeEl = dom.menu.querySelector(`[data-id=\"${id}\"]`);\n        if(activeEl && window.innerWidth <= 900) {\n            activeEl.scrollIntoView({ behavior: 'smooth', inline: 'center', block: 'nearest' });\n        }\n    }\n\n    function nextLevel() {\n        const nextId = models.find(m => !sys.unlocked[m.id]);\n        if(nextId) load(nextId.id);\n    }\n\n    function triggerPurge() {\n        sys.unlocked = {};\n        localStorage.removeItem('gv_v190');\n        dom.arena.classList.add('flash');\n        setTimeout(() => dom.arena.classList.remove('flash'), 600);\n        sys.active = null;\n        load(models[0].id);\n    }\n\n    function size() {\n        const rect = dom.cbox.getBoundingClientRect();\n        dom.canvas.width = rect.width * window.devicePixelRatio;\n        dom.canvas.height = rect.height * window.devicePixelRatio;\n        sys.w = rect.width;\n        sys.h = rect.height;\n        \n        let logicalW = 400, logicalH = 400;\n        let scale = Math.min(sys.w \/ logicalW, sys.h \/ logicalH) * 0.85;\n        sys.scaleX = scale;\n        sys.scaleY = scale;\n        sys.offsetX = (sys.w - logicalW * scale) \/ 2;\n        sys.offsetY = (sys.h - logicalH * scale) \/ 2;\n    }\n\n    function mapPt(p) {\n        return {\n            x: p.x * sys.scaleX + sys.offsetX,\n            y: p.y * sys.scaleY + sys.offsetY\n        };\n    }\n\n    function getLocal(e) {\n        const rect = dom.canvas.getBoundingClientRect();\n        return {\n            x: e.clientX - rect.left,\n            y: e.clientY - rect.top\n        };\n    }\n\n    function distSq(a, b) {\n        return (a.x - b.x)**2 + (a.y - b.y)**2;\n    }\n\n    function proj(p, a, b) {\n        let ab = {x: b.x - a.x, y: b.y - a.y};\n        let ap = {x: p.x - a.x, y: p.y - a.y};\n        let lenSq = ab.x*ab.x + ab.y*ab.y;\n        if(lenSq === 0) return {x:a.x, y:a.y, t:0};\n        let t = Math.max(0, Math.min(1, (ap.x*ab.x + ap.y*ab.y) \/ lenSq));\n        return {x: a.x + t*ab.x, y: a.y + t*ab.y, t: t};\n    }\n\n    function spawn(x, y, burst, rgbStr) {\n        if(!burst && Math.random() > 0.3) return;\n        let count = burst ? 80 : 1;\n        for(let i=0; i<count; i++) {\n            sys.particles.push({\n                x: x, y: y,\n                vx: (Math.random()-0.5)*(burst ? 16 : 4),\n                vy: (Math.random()-0.5)*(burst ? 16 : 4),\n                life: burst ? 1 + Math.random()*0.5 : 1,\n                c: burst ? (Math.random() > 0.5 ? `rgb(${rgbStr})` : '#fff') : `rgb(${rgbStr})`\n            });\n        }\n    }\n\n    function down(e) {\n        if(sys.unlocked[sys.active]) return;\n        dom.canvas.setPointerCapture(e.pointerId);\n        sys.isDown = true;\n        sys.ptr = getLocal(e);\n        sys.trail = [];\n        check();\n    }\n\n    function move(e) {\n        if(!sys.isDown || sys.unlocked[sys.active]) return;\n        sys.ptr = getLocal(e);\n        sys.trail.push({x: sys.ptr.x, y: sys.ptr.y, life: 1});\n        if(sys.trail.length > 20) sys.trail.shift();\n        check();\n    }\n\n    function up() {\n        sys.isDown = false;\n    }\n\n    function check() {\n        const m = models.find(x => x.id === sys.active);\n        if(sys.nodeIdx >= m.pts.length - 1) return;\n        \n        let p1 = mapPt(m.pts[sys.nodeIdx]);\n        let p2 = mapPt(m.pts[sys.nodeIdx + 1]);\n        \n        let pr = proj(sys.ptr, p1, p2);\n        let dSq = distSq(sys.ptr, pr);\n        \n        if(dSq < 3000) {\n            if(pr.t > sys.progress) {\n                sys.progress = pr.t;\n                spawn(pr.x, pr.y, false, m.color);\n            }\n            if(sys.progress >= 0.98) {\n                sys.nodeIdx++;\n                sys.progress = 0;\n                spawn(p2.x, p2.y, true, m.color);\n                if(sys.nodeIdx >= m.pts.length - 1) {\n                    win(m);\n                }\n            }\n            updatePct(m);\n        }\n    }\n\n    function updatePct(m) {\n        let totalSegs = m.pts.length - 1;\n        let p = ((sys.nodeIdx + sys.progress) \/ totalSegs) * 100;\n        dom.pct.textContent = Math.min(100, Math.floor(p)) + '%';\n    }\n\n    function win(m) {\n        sys.unlocked[m.id] = true;\n        localStorage.setItem('gv_v190', JSON.stringify(sys.unlocked));\n        dom.pct.textContent = '100%';\n        dom.pct.style.color = `rgb(${m.color})`;\n        dom.pct.style.textShadow = `0 0 20px rgba(${m.color}, 0.4)`;\n        dom.sub.textContent = 'Schematic Revealed';\n        buildMenu();\n        const activeEl = dom.menu.querySelector(`[data-id=\"${m.id}\"]`);\n        if(activeEl && window.innerWidth <= 900) {\n            activeEl.scrollIntoView({ behavior: 'smooth', inline: 'center', block: 'nearest' });\n        }\n        setTimeout(() => showRev(m), 600);\n    }\n\n    function showRev(m) {\n        dom.oIcon.textContent = m.icon;\n        dom.oIcon.style.filter = `drop-shadow(0 0 30px rgba(${m.color}, 0.6))`;\n        dom.oTitle.textContent = m.rtitle;\n        dom.oTitle.style.background = `linear-gradient(90deg, #fff, rgb(${m.color}))`;\n        dom.oTitle.style.webkitBackgroundClip = 'text';\n        dom.oText.textContent = m.rtext;\n        \n        const hasNext = models.some(x => !sys.unlocked[x.id]);\n        \n        if(hasNext) {\n            dom.oNext.style.display = 'inline-flex';\n            dom.oNext.style.background = `linear-gradient(135deg, rgba(${m.color}, 0.2), rgb(${m.color}))`;\n            dom.oNext.style.boxShadow = `0 0 30px rgba(${m.color}, 0.3)`;\n            dom.ctaContainer.style.display = 'none';\n        } else {\n            dom.oNext.style.display = 'none';\n            dom.ctaContainer.style.display = 'flex';\n            dom.ctaContainer.innerHTML = `\n                <a href=\"https:\/\/gabroverse.com\/toolbox\/\" class=\"gv-btn gv-btn-toolbox\">\n                    <span class=\"gv-tb-icon\">\ud83e\uddf0<\/span> Access The Toolbox\n                <\/a>\n                <button class=\"gv-btn gv-btn-startover\" id=\"gv-start-over\">Start Over<\/button>\n            `;\n            document.getElementById('gv-start-over').addEventListener('click', triggerPurge);\n        }\n        \n        dom.overlay.classList.add('visible');\n    }\n\n    function hideRev() {\n        dom.overlay.classList.remove('visible');\n    }\n\n    function drawLine(p1, p2, color, w, blur) {\n        const c = dom.ctx;\n        c.beginPath();\n        c.moveTo(p1.x, p1.y);\n        c.lineTo(p2.x, p2.y);\n        c.strokeStyle = color;\n        c.lineWidth = w;\n        c.shadowColor = blur ? color : 'transparent';\n        c.shadowBlur = blur || 0;\n        c.stroke();\n    }\n\n    function tick() {\n        sys.frame++;\n        const c = dom.ctx;\n        c.save();\n        c.scale(window.devicePixelRatio, window.devicePixelRatio);\n        c.clearRect(0, 0, sys.w, sys.h);\n        c.lineCap = 'round';\n        c.lineJoin = 'round';\n        \n        if(sys.purging) {\n            sys.purgeAmt += 1.5;\n            if(sys.purgeAmt >= 100) {\n                sys.purgeAmt = 0;\n                sys.purging = false;\n                triggerPurge();\n            }\n        } else {\n            sys.purgeAmt = Math.max(0, sys.purgeAmt - 3);\n        }\n        dom.purgeFill.style.width = sys.purgeAmt + '%';\n\n        for(let a of sys.ambient) {\n            a.x += a.vx; a.y += a.vy;\n            if(a.x < 0) a.x = 1; if(a.x > 1) a.x = 0;\n            if(a.y < 0) a.y = 1; if(a.y > 1) a.y = 0;\n            c.beginPath();\n            c.arc(a.x * sys.w, a.y * sys.h, a.s, 0, Math.PI*2);\n            c.fillStyle = `rgba(255,255,255,${a.a * 0.3})`;\n            c.fill();\n        }\n        \n        const m = models.find(x => x.id === sys.active);\n        let tColor = `rgb(${m.color})`;\n        let tGlow = `rgba(${m.color}, 0.5)`;\n        \n        for(let i=0; i<m.pts.length-1; i++) {\n            let a = mapPt(m.pts[i]);\n            let b = mapPt(m.pts[i+1]);\n            drawLine(a, b, 'rgba(255,255,255,0.04)', 18, 0);\n            drawLine(a, b, 'rgba(255,255,255,0.08)', 2, 0);\n        }\n        \n        if(sys.unlocked[sys.active]) {\n            sys.sparkT += 0.005;\n            if(sys.sparkT > 1) sys.sparkT = 0;\n            \n            for(let i=0; i<m.pts.length-1; i++) {\n                let a = mapPt(m.pts[i]);\n                let b = mapPt(m.pts[i+1]);\n                drawLine(a, b, tColor, 6, 0);\n                drawLine(a, b, tGlow, 2, 10);\n            }\n            \n            let totalSegs = m.pts.length - 1;\n            let sparkSeg = Math.floor(sys.sparkT * totalSegs);\n            let sparkProg = (sys.sparkT * totalSegs) - sparkSeg;\n            let sa = mapPt(m.pts[sparkSeg]);\n            let sb = mapPt(m.pts[sparkSeg+1]);\n            let sx = sa.x + (sb.x - sa.x)*sparkProg;\n            let sy = sa.y + (sb.y - sa.y)*sparkProg;\n            \n            c.beginPath();\n            c.arc(sx, sy, 6, 0, Math.PI*2);\n            c.fillStyle = '#fff';\n            c.shadowColor = tColor;\n            c.shadowBlur = 20;\n            c.fill();\n\n        } else {\n            for(let i=0; i<sys.nodeIdx; i++) {\n                let a = mapPt(m.pts[i]);\n                let b = mapPt(m.pts[i+1]);\n                drawLine(a, b, tColor, 6, 15);\n            }\n            if(sys.nodeIdx < m.pts.length - 1) {\n                let a = mapPt(m.pts[sys.nodeIdx]);\n                let b = mapPt(m.pts[sys.nodeIdx+1]);\n                let cur = {\n                    x: a.x + (b.x - a.x)*sys.progress,\n                    y: a.y + (b.y - a.y)*sys.progress\n                };\n                if(sys.progress > 0) drawLine(a, cur, tColor, 6, 15);\n                \n                if(sys.nodeIdx === 0 && sys.progress === 0) {\n                    sys.pulse += 0.03;\n                    let r = 12 + Math.sin(sys.pulse)*5;\n                    c.beginPath();\n                    c.arc(a.x, a.y, r, 0, Math.PI*2);\n                    c.strokeStyle = `rgba(${m.color}, 0.8)`;\n                    c.lineWidth = 3;\n                    c.shadowColor = tColor;\n                    c.shadowBlur = 15;\n                    c.stroke();\n                } else if (sys.isDown) {\n                    c.beginPath();\n                    c.arc(cur.x, cur.y, 8, 0, Math.PI*2);\n                    c.fillStyle = '#fff';\n                    c.shadowColor = tColor;\n                    c.shadowBlur = 25;\n                    c.fill();\n                }\n            }\n        }\n        \n        if(sys.trail.length > 1 && sys.isDown && !sys.unlocked[sys.active]) {\n            c.beginPath();\n            c.moveTo(sys.trail[0].x, sys.trail[0].y);\n            for(let i=1; i<sys.trail.length; i++) {\n                c.lineTo(sys.trail[i].x, sys.trail[i].y);\n                sys.trail[i].life -= 0.05;\n            }\n            c.strokeStyle = `rgba(${m.color}, 0.5)`;\n            c.lineWidth = 4;\n            c.shadowColor = tColor;\n            c.shadowBlur = 10;\n            c.stroke();\n            sys.trail = sys.trail.filter(t => t.life > 0);\n        }\n        \n        for(let i=sys.particles.length-1; i>=0; i--) {\n            let p = sys.particles[i];\n            p.x += p.vx; \n            p.y += p.vy; \n            p.vy += 0.2; \n            p.life -= 0.03;\n            if(p.life <= 0) { sys.particles.splice(i,1); continue; }\n            c.beginPath();\n            c.arc(p.x, p.y, p.life*3.5, 0, Math.PI*2);\n            c.fillStyle = p.c;\n            c.shadowColor = p.c;\n            c.shadowBlur = 10;\n            c.fill();\n        }\n        \n        c.restore();\n        requestAnimationFrame(tick);\n    }\n\n    boot();\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>The gabroverse toolbox has soft-launched. The drawers are waking up. In this game, trace glowing tool shapes, uncover upcoming tools, and save your progress.<\/p>","protected":false},"author":1,"featured_media":7276,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"pmpro_default_level":"","sync_status":"","episode_type":"","audio_file":"","podmotor_file_id":"","podmotor_episode_id":"","castos_file_data":"","cover_image":"","cover_image_id":"","duration":"","filesize":"","filesize_raw":"","date_recorded":"","explicit":"","block":"","itunes_episode_number":"","itunes_title":"","itunes_season_number":"","itunes_episode_type":"","footnotes":""},"categories":[637],"tags":[648,649,638,654,653,652,650,639,647,651],"class_list":["post-7275","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-vault-teases","tag-casino-corner","tag-creative-studio","tag-gabroverse-toolbox","tag-games","tag-signal-safety","tag-sound-lab","tag-templates-downloads","tag-toolbox-teases","tag-trace-game","tag-tumbling-tutorials","pmpro-has-access"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>TRANSMISSION v1.9.0 \/\/ TOOLBOX TEASES: TRACE THE DRAWERS | gabroverse<\/title>\n<meta name=\"description\" content=\"The gabroverse toolbox has soft-launched. The drawers are waking up. In this game, trace glowing tool shapes, uncover upcoming tools, and save your progress.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"TRANSMISSION v1.9.0 \/\/ TOOLBOX TEASES: TRACE THE DRAWERS | gabroverse\" \/>\n<meta property=\"og:description\" content=\"The gabroverse toolbox has soft-launched. The drawers are waking up. In this game, trace glowing tool shapes, uncover upcoming tools, and save your progress.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/\" \/>\n<meta property=\"og:site_name\" content=\"gabroverse\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/gabroverse\" \/>\n<meta property=\"article:published_time\" content=\"2026-04-02T14:31:11+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-02T16:18:31+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/gabroverse.com\/wp-content\/uploads\/transmission-1.9.0-toolbox-teases-traces-the-drawers.webp?wsr\" \/>\n\t<meta property=\"og:image:width\" content=\"1536\" \/>\n\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"gabro\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@gabroverse\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"gabro\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minuto\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/universo\\\/transmissions\\\/adelantos-de-toolbox\\\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/universo\\\/transmissions\\\/adelantos-de-toolbox\\\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\\\/\"},\"author\":{\"name\":\"gabro\",\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/#\\\/schema\\\/person\\\/b0157138bf911c1d0ced70fc0077b16a\"},\"headline\":\"TRANSMISSION v1.9.0 \\\/\\\/ TOOLBOX TEASES: TRACE THE DRAWERS\",\"datePublished\":\"2026-04-02T14:31:11+00:00\",\"dateModified\":\"2026-04-02T16:18:31+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/universo\\\/transmissions\\\/adelantos-de-toolbox\\\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\\\/\"},\"wordCount\":122,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/universo\\\/transmissions\\\/adelantos-de-toolbox\\\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/gabroverse.com\\\/wp-content\\\/uploads\\\/transmission-1.9.0-toolbox-teases-traces-the-drawers.webp\",\"keywords\":[\"casino corner\",\"creative studio\",\"gabroverse toolbox\",\"games\",\"signal safety\",\"sound lab\",\"templates downloads\",\"Toolbox Teases\",\"trace game\",\"tumbling tutorials\"],\"articleSection\":[\"VAULT Teases\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/gabroverse.com\\\/es\\\/universo\\\/transmissions\\\/adelantos-de-toolbox\\\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/universo\\\/transmissions\\\/adelantos-de-toolbox\\\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\\\/\",\"url\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/universo\\\/transmissions\\\/adelantos-de-toolbox\\\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\\\/\",\"name\":\"TRANSMISSION v1.9.0 \\\/\\\/ TOOLBOX TEASES: TRACE THE DRAWERS | gabroverse\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/universo\\\/transmissions\\\/adelantos-de-toolbox\\\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/universo\\\/transmissions\\\/adelantos-de-toolbox\\\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/gabroverse.com\\\/wp-content\\\/uploads\\\/transmission-1.9.0-toolbox-teases-traces-the-drawers.webp\",\"datePublished\":\"2026-04-02T14:31:11+00:00\",\"dateModified\":\"2026-04-02T16:18:31+00:00\",\"description\":\"The gabroverse toolbox has soft-launched. The drawers are waking up. In this game, trace glowing tool shapes, uncover upcoming tools, and save your progress.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/universo\\\/transmissions\\\/adelantos-de-toolbox\\\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/gabroverse.com\\\/es\\\/universo\\\/transmissions\\\/adelantos-de-toolbox\\\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/universo\\\/transmissions\\\/adelantos-de-toolbox\\\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\\\/#primaryimage\",\"url\":\"https:\\\/\\\/gabroverse.com\\\/wp-content\\\/uploads\\\/transmission-1.9.0-toolbox-teases-traces-the-drawers.webp\",\"contentUrl\":\"https:\\\/\\\/gabroverse.com\\\/wp-content\\\/uploads\\\/transmission-1.9.0-toolbox-teases-traces-the-drawers.webp\",\"width\":1536,\"height\":1024,\"caption\":\"Cinematic neon-style artwork of a silhouetted person reaching toward a glowing toolbox display in a dark workshop. Text at the top reads \u201cTRANSMISSION v1.9.0,\u201d \u201cTOOLBOX \ud83e\uddf0 TEASES,\u201d and \u201cTRACE THE DRAWERS.\u201d The open toolbox screen shows bright outlined icons like a hammer, folder, microphone, shield, ring, and cube, surrounded by hanging tools, a warm lightbulb, and a small gabro logo in the bottom right.\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/universo\\\/transmissions\\\/adelantos-de-toolbox\\\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/gabroverse.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"VAULT Teases\",\"item\":\"https:\\\/\\\/gabroverse.com\\\/universe\\\/transmissions\\\/vault-teases\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"TRANSMISSION v1.9.0 \\\/\\\/ TOOLBOX TEASES: TRACE THE DRAWERS\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/#website\",\"url\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/\",\"name\":\"gabroverse\",\"description\":\"the world of gabro\",\"publisher\":{\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/#organization\",\"name\":\"gabroverse\",\"url\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/gabroverse.com\\\/wp-content\\\/uploads\\\/logo-gabro-nu1-sq.webp\",\"contentUrl\":\"https:\\\/\\\/gabroverse.com\\\/wp-content\\\/uploads\\\/logo-gabro-nu1-sq.webp\",\"width\":1024,\"height\":1024,\"caption\":\"gabroverse\"},\"image\":{\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/gabroverse.com\\\/es\\\/#\\\/schema\\\/person\\\/b0157138bf911c1d0ced70fc0077b16a\",\"name\":\"gabro\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/gabroverse.com\\\/wp-content\\\/uploads\\\/cropped-gabro-yt-00-96x96.webp\",\"url\":\"https:\\\/\\\/gabroverse.com\\\/wp-content\\\/uploads\\\/cropped-gabro-yt-00-96x96.webp\",\"contentUrl\":\"https:\\\/\\\/gabroverse.com\\\/wp-content\\\/uploads\\\/cropped-gabro-yt-00-96x96.webp\",\"caption\":\"gabro\"},\"sameAs\":[\"https:\\\/\\\/gabroverse.com\",\"https:\\\/\\\/www.facebook.com\\\/gabroverse\",\"https:\\\/\\\/www.instagram.com\\\/gabroverse\",\"https:\\\/\\\/x.com\\\/gabroverse\",\"https:\\\/\\\/www.youtube.com\\\/@gabroverse\",\"https:\\\/\\\/soundcloud.com\\\/gabroverse\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"TRANSMISSION v1.9.0 \/\/ TOOLBOX TEASES: TRACE THE DRAWERS | gabroverse","description":"The gabroverse toolbox has soft-launched. The drawers are waking up. In this game, trace glowing tool shapes, uncover upcoming tools, and save your progress.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/","og_locale":"es_ES","og_type":"article","og_title":"TRANSMISSION v1.9.0 \/\/ TOOLBOX TEASES: TRACE THE DRAWERS | gabroverse","og_description":"The gabroverse toolbox has soft-launched. The drawers are waking up. In this game, trace glowing tool shapes, uncover upcoming tools, and save your progress.","og_url":"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/","og_site_name":"gabroverse","article_author":"https:\/\/www.facebook.com\/gabroverse","article_published_time":"2026-04-02T14:31:11+00:00","article_modified_time":"2026-04-02T16:18:31+00:00","og_image":[{"width":1536,"height":1024,"url":"https:\/\/gabroverse.com\/wp-content\/uploads\/transmission-1.9.0-toolbox-teases-traces-the-drawers.webp?wsr","type":"image\/webp"}],"author":"gabro","twitter_card":"summary_large_image","twitter_creator":"@gabroverse","twitter_misc":{"Escrito por":"gabro","Tiempo de lectura":"1 minuto"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/#article","isPartOf":{"@id":"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/"},"author":{"name":"gabro","@id":"https:\/\/gabroverse.com\/es\/#\/schema\/person\/b0157138bf911c1d0ced70fc0077b16a"},"headline":"TRANSMISSION v1.9.0 \/\/ TOOLBOX TEASES: TRACE THE DRAWERS","datePublished":"2026-04-02T14:31:11+00:00","dateModified":"2026-04-02T16:18:31+00:00","mainEntityOfPage":{"@id":"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/"},"wordCount":122,"commentCount":0,"publisher":{"@id":"https:\/\/gabroverse.com\/es\/#organization"},"image":{"@id":"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/#primaryimage"},"thumbnailUrl":"https:\/\/gabroverse.com\/wp-content\/uploads\/transmission-1.9.0-toolbox-teases-traces-the-drawers.webp","keywords":["casino corner","creative studio","gabroverse toolbox","games","signal safety","sound lab","templates downloads","Toolbox Teases","trace game","tumbling tutorials"],"articleSection":["VAULT Teases"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/","url":"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/","name":"TRANSMISSION v1.9.0 \/\/ TOOLBOX TEASES: TRACE THE DRAWERS | gabroverse","isPartOf":{"@id":"https:\/\/gabroverse.com\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/#primaryimage"},"image":{"@id":"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/#primaryimage"},"thumbnailUrl":"https:\/\/gabroverse.com\/wp-content\/uploads\/transmission-1.9.0-toolbox-teases-traces-the-drawers.webp","datePublished":"2026-04-02T14:31:11+00:00","dateModified":"2026-04-02T16:18:31+00:00","description":"The gabroverse toolbox has soft-launched. The drawers are waking up. In this game, trace glowing tool shapes, uncover upcoming tools, and save your progress.","breadcrumb":{"@id":"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/#primaryimage","url":"https:\/\/gabroverse.com\/wp-content\/uploads\/transmission-1.9.0-toolbox-teases-traces-the-drawers.webp","contentUrl":"https:\/\/gabroverse.com\/wp-content\/uploads\/transmission-1.9.0-toolbox-teases-traces-the-drawers.webp","width":1536,"height":1024,"caption":"Cinematic neon-style artwork of a silhouetted person reaching toward a glowing toolbox display in a dark workshop. Text at the top reads \u201cTRANSMISSION v1.9.0,\u201d \u201cTOOLBOX \ud83e\uddf0 TEASES,\u201d and \u201cTRACE THE DRAWERS.\u201d The open toolbox screen shows bright outlined icons like a hammer, folder, microphone, shield, ring, and cube, surrounded by hanging tools, a warm lightbulb, and a small gabro logo in the bottom right."},{"@type":"BreadcrumbList","@id":"https:\/\/gabroverse.com\/es\/universo\/transmissions\/adelantos-de-toolbox\/transmission-v1-9-0-toolbox-teases-trace-the-drawers\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/gabroverse.com\/"},{"@type":"ListItem","position":2,"name":"VAULT Teases","item":"https:\/\/gabroverse.com\/universe\/transmissions\/vault-teases\/"},{"@type":"ListItem","position":3,"name":"TRANSMISSION v1.9.0 \/\/ TOOLBOX TEASES: TRACE THE DRAWERS"}]},{"@type":"WebSite","@id":"https:\/\/gabroverse.com\/es\/#website","url":"https:\/\/gabroverse.com\/es\/","name":"gabroverse","description":"el mundo de gabro","publisher":{"@id":"https:\/\/gabroverse.com\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/gabroverse.com\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/gabroverse.com\/es\/#organization","name":"gabroverse","url":"https:\/\/gabroverse.com\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/gabroverse.com\/es\/#\/schema\/logo\/image\/","url":"https:\/\/gabroverse.com\/wp-content\/uploads\/logo-gabro-nu1-sq.webp","contentUrl":"https:\/\/gabroverse.com\/wp-content\/uploads\/logo-gabro-nu1-sq.webp","width":1024,"height":1024,"caption":"gabroverse"},"image":{"@id":"https:\/\/gabroverse.com\/es\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/gabroverse.com\/es\/#\/schema\/person\/b0157138bf911c1d0ced70fc0077b16a","name":"gabro","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/gabroverse.com\/wp-content\/uploads\/cropped-gabro-yt-00-96x96.webp","url":"https:\/\/gabroverse.com\/wp-content\/uploads\/cropped-gabro-yt-00-96x96.webp","contentUrl":"https:\/\/gabroverse.com\/wp-content\/uploads\/cropped-gabro-yt-00-96x96.webp","caption":"gabro"},"sameAs":["https:\/\/gabroverse.com","https:\/\/www.facebook.com\/gabroverse","https:\/\/www.instagram.com\/gabroverse","https:\/\/x.com\/gabroverse","https:\/\/www.youtube.com\/@gabroverse","https:\/\/soundcloud.com\/gabroverse"]}]}},"_links":{"self":[{"href":"https:\/\/gabroverse.com\/es\/wp-json\/wp\/v2\/posts\/7275","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gabroverse.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gabroverse.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gabroverse.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gabroverse.com\/es\/wp-json\/wp\/v2\/comments?post=7275"}],"version-history":[{"count":25,"href":"https:\/\/gabroverse.com\/es\/wp-json\/wp\/v2\/posts\/7275\/revisions"}],"predecessor-version":[{"id":7307,"href":"https:\/\/gabroverse.com\/es\/wp-json\/wp\/v2\/posts\/7275\/revisions\/7307"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/gabroverse.com\/es\/wp-json\/wp\/v2\/media\/7276"}],"wp:attachment":[{"href":"https:\/\/gabroverse.com\/es\/wp-json\/wp\/v2\/media?parent=7275"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gabroverse.com\/es\/wp-json\/wp\/v2\/categories?post=7275"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gabroverse.com\/es\/wp-json\/wp\/v2\/tags?post=7275"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}