{
    "$schema": "https://ui.shadcn.com/schema/registry-item.json",
    "name": "workspace",
    "type": "registry:block",
    "title": "Dataset workspace",
    "description": "The shared product workspace used by Search Engine, Reverse DNS, SSL Catalog, Universe and Traffic: a toolbar, a filter builder, view tabs, a data sheet and a record toolbar.",
    "registryDependencies": [
        "tokens",
        "tokens-console",
        "sidebar",
        "button",
        "input",
        "select",
        "avatar"
    ],
    "meta": {
        "category": "Blocks",
        "layout": "screen",
        "theme": "console"
    },
    "files": [
        {
            "path": "blocks/workspace.html",
            "type": "registry:file",
            "target": "blocks/workspace.html",
            "content": "<!-- Dataset workspace block\n     The shared product workspace (Search Engine, Reverse DNS, SSL Catalog,\n     Universe, Traffic): toolbar, filter builder, view tabs, data sheet and a\n     record toolbar. Composed under the console theme. -->\n\n<div class=\"dp-shell\">\n  <nav class=\"dp-sidebar\">\n    <div class=\"dp-sidebar-head\">\n      <span class=\"dp-sidebar-logo\">\n        <svg viewBox=\"0 0 294 82\" role=\"img\" aria-label=\"Dataprovider.com\"><g fill=\"currentColor\"><path d=\"M121.52.73h7.79c2.98.04 7.48.1 10.6 2.88 2.53 2.29 3.5 5.72 3.5 9.14 0 2.11-.31 3.67-.62 4.71-2.25 7.55-9.08 7.69-11.64 7.72h-9.63zm6.17 5.16v14.37h1.87c3.26-.07 7.76-.24 7.76-7.27 0-1.7-.17-3.39-1.28-4.92-1.66-2.22-4.02-2.18-5.89-2.18zM157.17.73l9.01 24.45h-6.51l-1.21-3.91h-9.01l-1.21 3.91h-6.51L150.8.73zm-3.29 5.82c-.31 1.25-.66 2.53-1 3.78-.52 1.84-1.45 4.71-2.01 6.55h6.2zM162.08.7h18.84v4.85h-6.34v19.64h-6.13V5.55h-6.37zM192.16.73l9.01 24.45h-6.51l-1.21-3.91h-9.01l-1.21 3.91h-6.51L185.79.73zm-3.29 5.82c-.31 1.25-.66 2.53-1 3.78-.52 1.84-1.45 4.71-2.01 6.55h6.2zM121.52 28.82h9.84c4.02 0 7.59 0 9.73 3.08.94 1.39 1.39 3.36 1.39 5.02 0 1.35-.28 2.67-.83 3.81-2.11 4.36-6.62 4.47-9.94 4.54h-4.05v8h-6.13V28.82zm6.13 4.51v7.41h3.67c2.29 0 5.06-.07 5.06-3.84 0-3.57-3.08-3.57-4.85-3.57zM143.84 28.82h11.01c2.56.04 5.75.07 8 2.49 1.14 1.28 1.94 3.22 1.94 5.44 0 4.92-3.36 6.13-5.02 6.75l5.65 9.77h-6.75l-4.85-8.73h-3.84v8.73h-6.13V28.82zm6.13 4.57v6.62h5.06c.87-.03 3.67-.1 3.67-3.36 0-3.12-2.25-3.22-3.53-3.26zM177.79 53.97c-7.76 0-12.16-5.96-12.16-13.02 0-6.62 4.19-12.88 12.05-12.88 1.45 0 2.98.21 4.47.73 7.48 2.6 7.97 10.74 7.97 12.4 0 4.23-1.94 8.04-4.64 10.22-2.39 1.96-5.17 2.55-7.69 2.55m4.22-19.02c-1.04-1.11-2.63-1.8-4.3-1.8-3.71 0-6.06 3.26-6.06 7.69 0 5.82 3.26 7.97 6.13 7.97 2.91 0 6.03-2.08 6.2-7.2.11-2.57-.58-5.17-1.97-6.66M204.9 28.82h6.51l-8.49 24.45h-6.23l-8.38-24.45h6.51l5.06 17.39zM218.22 28.82v24.45h-6.1V28.82zM220.82 28.82h7.79c2.98.04 7.48.1 10.6 2.88 2.53 2.29 3.5 5.72 3.5 9.14 0 2.11-.31 3.67-.62 4.71-2.25 7.55-9.08 7.69-11.64 7.72h-9.63zm6.17 5.16v14.37h1.87c3.26-.07 7.76-.24 7.76-7.27 0-1.7-.17-3.4-1.28-4.92-1.66-2.22-4.02-2.18-5.89-2.18zM244.28 28.82h18.08v4.75h-11.98V38h11.19v4.64h-11.19v5.82h13.06v4.81h-19.15zM265.05 28.82h11.01c2.56.04 5.75.07 8 2.49 1.14 1.28 1.94 3.22 1.94 5.44 0 4.92-3.36 6.13-5.02 6.75l5.65 9.77h-6.75l-4.85-8.73h-3.84v8.73h-6.13V28.82zm6.13 4.57v6.62h5.06c.87-.03 3.67-.1 3.67-3.36 0-3.12-2.25-3.22-3.53-3.26zM287.75 47.49h5.47v5.78h-5.47zM142.79 75.21c-.9 1.42-1.77 2.81-3.71 4.16-1.04.73-3.43 2.15-6.82 2.15-6.48 0-11.71-4.71-11.71-12.99 0-7.24 4.92-12.95 11.85-12.95 2.81 0 5.3.97 7.14 2.42 1.7 1.35 2.49 2.7 3.19 3.91l-4.85 2.42c-.35-.8-.76-1.63-1.84-2.53-1.18-.94-2.36-1.21-3.36-1.21-3.95 0-6.03 3.67-6.03 7.76 0 5.37 2.74 8.04 6.03 8.04 3.19 0 4.47-2.22 5.3-3.64z\"></path><path d=\"M154.48 81.48c-7.76 0-12.16-5.96-12.16-13.02 0-6.62 4.19-12.88 12.05-12.88 1.45 0 2.98.21 4.47.73 7.48 2.6 7.97 10.74 7.97 12.4 0 4.23-1.94 8.04-4.64 10.22-2.39 1.97-5.16 2.55-7.69 2.55m4.22-19.01c-1.04-1.11-2.63-1.8-4.3-1.8-3.71 0-6.06 3.26-6.06 7.69 0 5.82 3.26 7.97 6.13 7.97 2.91 0 6.03-2.08 6.2-7.2.11-2.57-.58-5.17-1.97-6.66M195.27 56.34v24.45h-5.85l.38-17.42.07-2.46-.21.87c-.31 1.39-.35 1.56-.62 2.6l-4.61 16.42h-5.26l-4.43-15.73-1.07-4.36c.1 1.94.1 2.36.21 4.68l.31 15.41h-5.92V56.35h8.94l3.74 13.72.87 3.91c.35-1.7.38-1.87.66-3.01l3.91-14.62h8.88z\"></path><circle cx=\"77.71\" cy=\"71.82\" r=\"9.55\"></circle><path d=\"M34.86.72c5.16 0 9.96.82 14.41 2.47s8.3 4.11 11.55 7.4 5.79 7.4 7.62 12.33 2.75 10.73 2.75 17.38c0 5.83-.75 11.21-2.24 16.15q-2.25 7.395-6.78 12.78c-3.03 3.59-6.8 6.41-11.33 8.46-4.52 2.06-9.85 3.08-15.98 3.08H.33V.72z\"></path></g></svg>\n      </span>\n      <button class=\"dp-sidebar-collapse\" type=\"button\" aria-label=\"Collapse sidebar\">\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"m11 17-5-5 5-5\"></path><path d=\"m18 17-5-5 5-5\"></path></svg>\n      </button>\n    </div>\n    <div class=\"dp-sidebar-nav\">\n      <a class=\"dp-nav-item\" href=\"#\">\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"m3 9 9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z\"></path><path d=\"M9 22V12h6v10\"></path></svg>\n        Home\n      </a>\n      <a class=\"dp-nav-item\" href=\"#\">\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"10\"></circle><path d=\"m16 8-6 2-2 6 6-2z\"></path></svg>\n        AI Navigator <span class=\"dp-nav-beta\">Beta</span>\n      </a>\n      <div class=\"dp-nav-group\">\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"m6 9 6 6 6-6\"></path></svg>\n        Library\n      </div>\n      <a class=\"dp-nav-item\" href=\"#\">\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z\"></path></svg>\n        Files\n      </a>\n      <a class=\"dp-nav-item\" href=\"#\">\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><rect width=\"18\" height=\"14\" x=\"3\" y=\"4\" rx=\"2\"></rect><path d=\"M3 10h18\"></path><path d=\"M12 18v3\"></path></svg>\n        Dashboards\n      </a>\n      <div class=\"dp-nav-group\">\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"m6 9 6 6 6-6\"></path></svg>\n        Products\n      </div>\n      <a class=\"dp-nav-item\" data-active href=\"#\">\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><circle cx=\"11\" cy=\"11\" r=\"7\"></circle><path d=\"m21 21-4.3-4.3\"></path></svg>\n        Search Engine\n      </a>\n      <a class=\"dp-nav-item\" href=\"#\">\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"10\"></circle><path d=\"M2 12h20\"></path><path d=\"M12 2a15 15 0 0 1 0 20 15 15 0 0 1 0-20\"></path></svg>\n        Reverse DNS\n      </a>\n    </div>\n    <div class=\"dp-sidebar-foot\">\n      <span class=\"dp-avatar\" data-size=\"sm\" style=\"background: var(--dp-accent-yellow, #ffd200); color: var(--dp-brand-purple, #2d145f);\">CB</span>\n      <span class=\"dp-sidebar-user\">\n        <span class=\"dp-sidebar-user-name\">Christian Branbergen</span>\n        <span class=\"dp-sidebar-user-org\">Dataprovider BV</span>\n      </span>\n      <button class=\"dp-btn\" type=\"button\" data-variant=\"outline\" data-size=\"sm\">Log out</button>\n    </div>\n  </nav>\n\n  <main class=\"dp-shell-main\" style=\"padding: 0;\">\n    <div class=\"dp-ws\">\n      <!-- Toolbar + filters -->\n      <section class=\"dp-ws-card\">\n        <div class=\"dp-ws-bar\">\n          <div class=\"dp-ws-title\">\n            <span class=\"dp-ws-title-icon\">\n              <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z\"></path></svg>\n            </span>\n            Untitled dataset\n          </div>\n          <div class=\"dp-ws-actions\">\n            <span class=\"dp-ws-product\">Search Engine</span>\n            <a class=\"dp-ws-link\" href=\"#\">Monitor</a>\n            <a class=\"dp-ws-link\" href=\"#\">Send</a>\n            <span class=\"dp-ws-sep\"></span>\n            <button class=\"dp-ws-textbtn\" type=\"button\">New</button>\n            <button class=\"dp-ws-textbtn\" type=\"button\">Save</button>\n            <button class=\"dp-btn\" type=\"button\" data-variant=\"secondary\">Export</button>\n          </div>\n        </div>\n\n        <div class=\"dp-ws-filters\">\n          <div class=\"dp-ws-filters-head\">\n            <span class=\"dp-ws-filters-title\">Filters</span>\n            <span class=\"dp-ws-sep\"></span>\n            <span class=\"dp-ws-records\">416,128,812 Records</span>\n            <button class=\"dp-ws-iconbtn\" type=\"button\" aria-label=\"Undo\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M3 7v6h6\"></path><path d=\"M21 17a9 9 0 0 0-9-9 9 9 0 0 0-6 2.3L3 13\"></path></svg></button>\n            <button class=\"dp-ws-iconbtn\" type=\"button\" aria-label=\"Redo\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M21 7v6h-6\"></path><path d=\"M3 17a9 9 0 0 1 9-9 9 9 0 0 1 6 2.3L21 13\"></path></svg></button>\n            <span class=\"dp-ws-spacer\"></span>\n            <button class=\"dp-ws-datepill\" type=\"button\">\n              <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><rect width=\"18\" height=\"18\" x=\"3\" y=\"4\" rx=\"2\"></rect><path d=\"M3 10h18M8 2v4M16 2v4\"></path></svg>\n              May 2026\n            </button>\n            <button class=\"dp-btn\" type=\"button\" data-variant=\"ai\">\n              Create dataset with AI\n              <svg viewBox=\"0 0 24 24\" fill=\"currentColor\" aria-hidden=\"true\"><path d=\"M12 3l1.9 4.6L18.5 9l-4.6 1.9L12 15l-1.9-4.1L5.5 9l4.6-1.4z\"></path></svg>\n            </button>\n          </div>\n\n          <div class=\"dp-ws-filter-row\">\n            <select class=\"dp-select\" aria-label=\"Field\"><option>Field</option></select>\n            <select class=\"dp-select\" aria-label=\"Operator\"><option>Select...</option></select>\n            <input class=\"dp-input\" type=\"text\" placeholder=\"Value\" />\n          </div>\n\n          <div class=\"dp-ws-filter-actions\">\n            <button class=\"dp-btn\" type=\"button\" data-variant=\"secondary\" data-size=\"sm\">Add filter</button>\n            <button class=\"dp-ws-action\" type=\"button\">\n              <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"m3 16 4 4 4-4\"></path><path d=\"M7 20V4\"></path><path d=\"m21 8-4-4-4 4\"></path><path d=\"M17 4v16\"></path></svg>\n              Rearrange\n            </button>\n            <button class=\"dp-ws-action\" type=\"button\">\n              <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M3 6h18\"></path><path d=\"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6\"></path><path d=\"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\"></path></svg>\n              Clear All\n            </button>\n            <button class=\"dp-ws-action\" type=\"button\" style=\"margin-left: auto;\">\n              <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><rect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\"></rect><path d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"></path></svg>\n              Copy Query\n            </button>\n          </div>\n        </div>\n      </section>\n\n      <!-- View tabs + sheet -->\n      <section class=\"dp-ws-card\">\n        <div class=\"dp-ws-tabs\" role=\"tablist\">\n          <button class=\"dp-ws-tab\" type=\"button\" data-active>\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><ellipse cx=\"12\" cy=\"5\" rx=\"9\" ry=\"3\"></ellipse><path d=\"M3 5v14a9 3 0 0 0 18 0V5\"></path><path d=\"M3 12a9 3 0 0 0 18 0\"></path></svg>\n            Sheet\n          </button>\n          <button class=\"dp-ws-tab\" type=\"button\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M21 12A9 9 0 1 1 12 3v9z\"></path><path d=\"M12 3a9 9 0 0 1 9 9h-9z\" opacity=\"0\"></path><path d=\"M16 8a5 5 0 0 0-4-4\"></path></svg>\n            Statistics\n          </button>\n          <button class=\"dp-ws-tab\" type=\"button\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M3 3v18h18\"></path><path d=\"m19 9-5 5-4-4-3 3\"></path></svg>\n            Trends\n          </button>\n          <button class=\"dp-ws-tab\" type=\"button\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M3 3v18h18\"></path><rect width=\"3\" height=\"7\" x=\"7\" y=\"11\"></rect><rect width=\"3\" height=\"11\" x=\"13\" y=\"7\"></rect></svg>\n            Migration insights\n          </button>\n          <button class=\"dp-ws-tab\" type=\"button\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M9 3 3 5v16l6-2 6 2 6-2V3l-6 2-6-2z\"></path><path d=\"M9 3v16M15 5v16\"></path></svg>\n            Maps\n          </button>\n        </div>\n\n        <table class=\"dp-ws-sheet\">\n          <thead>\n            <tr>\n              <th class=\"dp-ws-rownum\"></th>\n              <th class=\"dp-ws-colhost\">\n                <span class=\"dp-ws-colhost-head\">\n                  Hostname\n                  <span class=\"dp-ws-colicons\">\n                    <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M12 17v5\"></path><path d=\"M9 10.76V5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v5.76l1.5 2.4A1 1 0 0 1 17.6 15H6.4a1 1 0 0 1-.9-1.84z\"></path></svg>\n                    <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"m7 15 5 5 5-5\"></path><path d=\"m7 9 5-5 5 5\"></path></svg>\n                  </span>\n                </span>\n              </th>\n            </tr>\n          </thead>\n          <tbody>\n            <tr><td class=\"dp-ws-rownum\">1</td><td>www.virginiemahe.fr</td></tr>\n            <tr><td class=\"dp-ws-rownum\">2</td><td>www.cavallin.ch</td></tr>\n            <tr><td class=\"dp-ws-rownum\">3</td><td>9ofanessence.co.uk</td></tr>\n            <tr><td class=\"dp-ws-rownum\">4</td><td>www.nudecakes.co.uk</td></tr>\n            <tr><td class=\"dp-ws-rownum\">5</td><td>yasminstore.it</td></tr>\n            <tr><td class=\"dp-ws-rownum\">6</td><td>www.charlesjacobs.co.uk</td></tr>\n            <tr><td class=\"dp-ws-rownum\">7</td><td>barista-corner.ch</td></tr>\n            <tr><td class=\"dp-ws-rownum\">8</td><td>www.getquipus.com</td></tr>\n          </tbody>\n        </table>\n\n        <div class=\"dp-ws-foot\">\n          <button class=\"dp-ws-foot-ctrl\" type=\"button\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><line x1=\"8\" x2=\"21\" y1=\"6\" y2=\"6\"></line><line x1=\"8\" x2=\"21\" y1=\"12\" y2=\"12\"></line><line x1=\"8\" x2=\"21\" y1=\"18\" y2=\"18\"></line><line x1=\"3\" x2=\"3.01\" y1=\"6\" y2=\"6\"></line><line x1=\"3\" x2=\"3.01\" y1=\"12\" y2=\"12\"></line><line x1=\"3\" x2=\"3.01\" y1=\"18\" y2=\"18\"></line></svg>\n            50 Records\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"m6 9 6 6 6-6\"></path></svg>\n          </button>\n          <button class=\"dp-ws-foot-ctrl\" type=\"button\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"9\"></circle></svg>\n            Uniform\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"m6 9 6 6 6-6\"></path></svg>\n          </button>\n          <button class=\"dp-ws-foot-ctrl\" type=\"button\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"m8 18 4 4 4-4\"></path><path d=\"m8 6 4-4 4 4\"></path></svg>\n            Comfortable\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"m6 9 6 6 6-6\"></path></svg>\n          </button>\n          <button class=\"dp-ws-foot-ctrl\" type=\"button\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><line x1=\"4\" x2=\"20\" y1=\"6\" y2=\"6\"></line><line x1=\"4\" x2=\"14\" y1=\"12\" y2=\"12\"></line><line x1=\"4\" x2=\"18\" y1=\"18\" y2=\"18\"></line></svg>\n            Rich text\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"m6 9 6 6 6-6\"></path></svg>\n          </button>\n          <div class=\"dp-ws-pager\">\n            <a href=\"#\" aria-disabled=\"true\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"m15 18-6-6 6-6\"></path></svg> Prev</a>\n            <input class=\"dp-ws-pagebox\" type=\"text\" value=\"1\" aria-label=\"Page\" />\n            <span>of 8,322,577</span>\n            <a href=\"#\">Next <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"m9 18 6-6-6-6\"></path></svg></a>\n          </div>\n        </div>\n      </section>\n    </div>\n  </main>\n</div>\n"
        },
        {
            "path": "blocks/workspace.css",
            "type": "registry:file",
            "target": "blocks/workspace.css",
            "content": "/* Dataset workspace block\n   The shared product workspace used by Search Engine, Reverse DNS, SSL Catalog,\n   Universe and Traffic: a toolbar, a filter builder, view tabs, a data sheet\n   and a record toolbar. Composed under the console theme. */\n\n.dp-ws {\n  display: flex;\n  flex-direction: column;\n  gap: var(--dp-space-6);\n  padding: var(--dp-space-6);\n}\n\n.dp-ws-card {\n  background: var(--dp-surface);\n  border: 1px solid var(--dp-border);\n  border-radius: var(--dp-radius-xl);\n  overflow: hidden;\n}\n\n/* ---- Toolbar -------------------------------------------------------- */\n.dp-ws-bar {\n  display: flex;\n  align-items: center;\n  gap: var(--dp-space-4);\n  padding: var(--dp-space-4) var(--dp-space-5);\n  border-bottom: 1px solid var(--dp-border);\n}\n\n.dp-ws-title {\n  display: flex;\n  align-items: center;\n  gap: var(--dp-space-3);\n  font-size: var(--dp-text-2xl);\n  font-weight: var(--dp-weight-bold);\n  color: var(--dp-navy);\n}\n\n.dp-ws-title-icon {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  width: 2.25rem;\n  height: 2.25rem;\n  border: 1px solid var(--dp-border);\n  border-radius: var(--dp-radius-md);\n  color: var(--dp-text-muted);\n}\n\n.dp-ws-title-icon svg { width: 1.25rem; height: 1.25rem; }\n\n.dp-ws-actions {\n  display: flex;\n  align-items: center;\n  gap: var(--dp-space-4);\n  margin-left: auto;\n}\n\n.dp-ws-product {\n  color: var(--dp-text-muted);\n  font-weight: var(--dp-weight-semibold);\n  font-size: var(--dp-text-sm);\n}\n\n.dp-ws-link {\n  color: var(--dp-text-muted);\n  font-weight: var(--dp-weight-semibold);\n  font-size: var(--dp-text-sm);\n  text-decoration: none;\n  cursor: pointer;\n}\n\n.dp-ws-actions .dp-btn { font-size: var(--dp-text-sm); }\n\n.dp-ws-link:hover { color: var(--dp-navy); }\n\n.dp-ws-sep {\n  width: 1px;\n  height: 1.5rem;\n  background: var(--dp-border);\n}\n\n.dp-ws-textbtn {\n  appearance: none;\n  border: 0;\n  background: transparent;\n  font-family: var(--dp-font-sans);\n  font-size: var(--dp-text-sm);\n  font-weight: var(--dp-weight-bold);\n  color: var(--dp-navy);\n  padding: var(--dp-space-2) var(--dp-space-2);\n  border-radius: var(--dp-radius-xs);\n  cursor: pointer;\n}\n\n.dp-ws-textbtn:hover { background: var(--dp-surface-soft); }\n\n/* ---- Filters -------------------------------------------------------- */\n.dp-ws-filters { padding: var(--dp-space-5); }\n\n.dp-ws-filters-head {\n  display: flex;\n  align-items: center;\n  gap: var(--dp-space-3);\n  margin-bottom: var(--dp-space-4);\n}\n\n.dp-ws-filters-title {\n  font-size: var(--dp-text-base);\n  font-weight: var(--dp-weight-bold);\n  color: var(--dp-navy);\n}\n\n.dp-ws-records {\n  color: var(--dp-text-muted);\n  font-weight: var(--dp-weight-bold);\n  font-size: var(--dp-text-sm);\n}\n\n.dp-ws-iconbtn {\n  appearance: none;\n  border: 0;\n  background: transparent;\n  color: var(--dp-text-subtle);\n  cursor: pointer;\n  padding: 2px;\n  line-height: 0;\n}\n\n.dp-ws-iconbtn:hover { color: var(--dp-navy); }\n.dp-ws-iconbtn svg { width: 1.1rem; height: 1.1rem; }\n\n.dp-ws-spacer { margin-left: auto; }\n\n.dp-ws-datepill {\n  display: inline-flex;\n  align-items: center;\n  gap: var(--dp-space-2);\n  padding: var(--dp-space-2) var(--dp-space-3);\n  border: 1px solid var(--dp-border-neutral);\n  border-radius: var(--dp-radius-xs);\n  background: var(--dp-surface);\n  font-family: var(--dp-font-sans);\n  font-size: var(--dp-text-sm);\n  font-weight: var(--dp-weight-semibold);\n  color: var(--dp-navy);\n  cursor: pointer;\n}\n\n.dp-ws-datepill svg { width: 1rem; height: 1rem; color: var(--dp-text-muted); }\n\n.dp-ws-filter-row {\n  display: flex;\n  gap: var(--dp-space-3);\n}\n\n.dp-ws-filter-row .dp-select { flex: 0 0 14rem; }\n.dp-ws-filter-row .dp-input { flex: 1; }\n\n.dp-ws-filter-actions {\n  display: flex;\n  align-items: center;\n  gap: var(--dp-space-4);\n  margin-top: var(--dp-space-4);\n}\n\n.dp-ws-action {\n  display: inline-flex;\n  align-items: center;\n  gap: var(--dp-space-2);\n  appearance: none;\n  border: 0;\n  background: transparent;\n  font-family: var(--dp-font-sans);\n  font-size: var(--dp-text-sm);\n  font-weight: var(--dp-weight-semibold);\n  color: var(--dp-text-muted);\n  cursor: pointer;\n}\n\n.dp-ws-action:hover { color: var(--dp-navy); }\n.dp-ws-action svg { width: 1.1rem; height: 1.1rem; }\n\n/* ---- View tabs ------------------------------------------------------ */\n.dp-ws-tabs {\n  display: flex;\n  gap: var(--dp-space-5);\n  padding: 0 var(--dp-space-5);\n  border-bottom: 1px solid var(--dp-border);\n}\n\n.dp-ws-tab {\n  display: inline-flex;\n  align-items: center;\n  gap: var(--dp-space-2);\n  appearance: none;\n  border: 0;\n  background: transparent;\n  padding: var(--dp-space-4) 0;\n  font-family: var(--dp-font-sans);\n  font-size: var(--dp-text-sm);\n  font-weight: var(--dp-weight-bold);\n  color: var(--dp-text-muted);\n  border-bottom: 2px solid transparent;\n  margin-bottom: -1px;\n  cursor: pointer;\n}\n\n.dp-ws-tab svg { width: 1.15rem; height: 1.15rem; }\n.dp-ws-tab:hover { color: var(--dp-navy); }\n\n.dp-ws-tab[data-active] {\n  color: var(--dp-navy);\n  border-bottom-color: var(--dp-blue-700);\n}\n\n.dp-ws-tab[data-active] svg { color: var(--dp-blue-700); }\n\n/* ---- Sheet ---------------------------------------------------------- */\n.dp-ws-sheet {\n  border-collapse: collapse;\n  font-size: var(--dp-text-sm);\n  color: var(--dp-navy);\n}\n\n.dp-ws-sheet th,\n.dp-ws-sheet td {\n  border-bottom: 1px solid var(--dp-border);\n  padding: var(--dp-space-4);\n  text-align: left;\n}\n\n.dp-ws-sheet thead th {\n  font-weight: var(--dp-weight-bold);\n  color: var(--dp-navy);\n}\n\n.dp-ws-rownum {\n  width: 64px;\n  min-width: 64px;\n  text-align: center;\n  color: var(--dp-text-subtle);\n  font-size: var(--dp-text-sm);\n  border-right: 1px solid var(--dp-border);\n}\n\n.dp-ws-colhost {\n  min-width: 24rem;\n  border-right: 1px solid var(--dp-border);\n}\n\n.dp-ws-colhost-head {\n  display: flex;\n  align-items: center;\n  gap: var(--dp-space-2);\n}\n\n.dp-ws-colicons {\n  margin-left: auto;\n  display: inline-flex;\n  gap: var(--dp-space-2);\n  color: var(--dp-text-subtle);\n}\n\n.dp-ws-colicons svg { width: 1rem; height: 1rem; }\n\n.dp-ws-sheet tbody tr:hover { background: var(--dp-surface-subtle); }\n\n/* ---- Record toolbar ------------------------------------------------- */\n.dp-ws-foot {\n  display: flex;\n  align-items: center;\n  gap: var(--dp-space-4);\n  padding: var(--dp-space-3) var(--dp-space-5);\n  border-top: 1px solid var(--dp-border);\n}\n\n.dp-ws-foot-ctrl {\n  display: inline-flex;\n  align-items: center;\n  gap: var(--dp-space-2);\n  appearance: none;\n  background: var(--dp-surface);\n  border: 1px solid var(--dp-border);\n  border-radius: var(--dp-radius-xs);\n  padding: var(--dp-space-2) var(--dp-space-3);\n  font-family: var(--dp-font-sans);\n  font-size: var(--dp-text-sm);\n  font-weight: var(--dp-weight-semibold);\n  color: var(--dp-navy);\n  cursor: pointer;\n}\n\n.dp-ws-foot-ctrl svg { width: 1rem; height: 1rem; color: var(--dp-text-muted); }\n\n.dp-ws-pager {\n  margin-left: auto;\n  display: inline-flex;\n  align-items: center;\n  gap: var(--dp-space-3);\n  font-size: var(--dp-text-sm);\n  color: var(--dp-text-muted);\n}\n\n.dp-ws-pager a {\n  display: inline-flex;\n  align-items: center;\n  gap: 4px;\n  color: var(--dp-link);\n  font-weight: var(--dp-weight-semibold);\n  text-decoration: none;\n}\n\n.dp-ws-pager a[aria-disabled=\"true\"] {\n  color: var(--dp-text-subtle);\n  pointer-events: none;\n}\n\n.dp-ws-pager svg { width: 1rem; height: 1rem; }\n\n.dp-ws-pagebox {\n  width: 3rem;\n  height: 2rem;\n  text-align: center;\n  border: 1px solid var(--dp-border-neutral);\n  border-radius: var(--dp-radius-xs);\n  font-family: var(--dp-font-sans);\n  font-size: var(--dp-text-sm);\n  color: var(--dp-navy);\n}\n"
        }
    ]
}
