*{box-sizing:border-box}
body{margin:0;font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);font-size:15px;line-height:1.6}
a{color:inherit;text-decoration:none;touch-action:manipulation}
button{font:inherit;touch-action:manipulation;cursor:pointer}
input{font:inherit;touch-action:manipulation}
select{font:inherit;touch-action:manipulation;color:var(--text);background:var(--input);border:1px solid var(--border);border-radius:var(--radius);padding:8px 10px;width:100%;min-width:0;font-size:14px;cursor:pointer;line-height:1.5;min-height:var(--control-height)}
textarea{font:inherit;touch-action:manipulation;color:var(--text);background:var(--input);border:1px solid var(--border);border-radius:6px;padding:9px 11px;width:100%;min-width:0;font-size:14px;resize:vertical;line-height:1.55;max-width:100%}
button:disabled{cursor:default;opacity:.45}
svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
h1{margin:0;font-size:32px;line-height:1.25;letter-spacing:-.7px;font-weight:640}
h2{margin:0;font-size:17px;font-weight:600;letter-spacing:-.2px}
h3{margin:0;font-size:17px;font-weight:600}
p{margin:0;color:var(--muted)}
small{font-size:13px}
.small-text{font-size:13px}
.muted{color:var(--muted);line-height:1.6}
.mono{font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace}
code{font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace}
pre{font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace}
.numeric{font-variant-numeric:tabular-nums}
.block{display:block}
.align-right{text-align:right}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.skip-link{position:fixed;top:-60px;left:250px;padding:10px 16px;background:var(--accent);color:var(--button-text);z-index:100}
.skip-link:focus{top:8px}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);border-right:1px solid var(--border);background:var(--sidebar);padding:25px 14px;display:flex;flex-direction:column;z-index:30}
.brand{display:flex;align-items:center;gap:9px;font-size:19px;font-weight:650;letter-spacing:-.4px;padding:0 8px}
.badge{border:1px solid var(--border);border-radius:4px;padding:2px 6px;font:12px/1.4 ui-monospace,monospace;letter-spacing:.4px;color:var(--muted)}
.workspace{margin:25px 0;display:flex;align-items:center;gap:9px;font-size:13px;padding:12px 10px;background:var(--panel-raised);border:1px solid var(--border);border-radius:10px}
.workspace-icon{width:29px;height:29px;display:grid;place-items:center;background:var(--blue-bg);border:1px solid var(--border);border-radius:7px;color:var(--blue);font-weight:600}
.workspace small{display:block;color:var(--faint);font-size:12px}
.workspace>.status-dot{margin-left:auto}
.nav-label{font-size:12px;letter-spacing:.8px;color:var(--muted);font-weight:600;padding:0 13px;margin-bottom:10px}
.sidebar nav{display:grid;gap:6px}
.sidebar nav a{display:flex;align-items:center;gap:12px;color:var(--muted);padding:11px 12px;border-radius:6px;font-size:13px;font-weight:550}
.sidebar nav a:hover{background:var(--panel-raised);color:var(--text)}
.sidebar nav a[aria-current=page]{color:var(--accent);background:var(--accent-bg);box-shadow:inset 3px 0 var(--accent)}
.sidebar-bottom{margin-top:auto;padding:20px 10px 0;border-top:1px solid var(--border);font-size:12px}
.sidebar-bottom .subtle-link{display:inline-block;margin-top:12px}
.app-shell{margin-left:var(--sidebar-width);min-height:100vh;display:flex;flex-direction:column}
.topbar{height:64px;padding:0 34px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:15px;background:var(--sidebar)}
.breadcrumbs{display:flex;align-items:center;gap:13px;font-size:13px}
.breadcrumbs>span{color:var(--muted)}
.breadcrumbs strong{font-weight:600;max-width:350px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.divider{color:var(--faint)!important}
.topbar-actions{display:flex;align-items:center;gap:15px}
main{padding:36px 34px 50px;max-width:1800px;width:100%;margin:0 auto;flex:1}
.footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 34px;border-top:1px solid var(--border);font-size:13px;color:var(--muted)}
.mobile-menu{display:none!important}
.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--control-border);background:var(--control-bg);color:var(--control-text);border-radius:var(--radius);font-size:14px;font-weight:600;white-space:normal;min-height:var(--control-height);transition:none;border-color:var(--control-border);text-align:center}
.button:hover{filter:none;border-color:var(--accent);background:var(--control-hover);color:var(--control-text)}
.button.primary{background:var(--primary-bg);border-color:var(--primary-bg);color:var(--primary-text);font-weight:600}
.button.small{padding:6px 10px;font-size:13px;min-height:34px}
.button.ghost{background:transparent;border-color:transparent;color:var(--blue)}
.button.ghost:hover{background:var(--accent-bg);color:var(--blue)}
.icon-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;background:var(--control-bg);color:var(--control-text);width:36px;height:36px;border-radius:6px;border-color:var(--control-border);transition:none}
.icon-button:hover{background:var(--control-hover);color:var(--control-text);filter:none;border-color:var(--accent)}
.icon-button.danger:hover{color:var(--red)}
.subtle-link{color:var(--accent);font-size:13px}
.subtle-link:hover{text-decoration:underline}
.status-dot{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;flex-shrink:0}
.status-dot.off{background:var(--faint)}
.status{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--green)}
.status.error{color:var(--red)}
.error{color:var(--red)}
.format-tag{display:inline-block;font:12px/1.4 ui-monospace,monospace;letter-spacing:.4px;background:var(--panel-raised);border:1px solid var(--border);color:var(--muted);padding:4px 9px;border-radius:6px;font-size:12px;font-weight:600}
.format-list{display:flex;gap:6px;flex-wrap:wrap}
.panel{border:1px solid var(--border);background:var(--panel);border-radius:var(--radius);overflow:visible;box-shadow:none}
.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:20px 22px;border-bottom:1px solid var(--border)}
.panel-heading p{font-size:13px;margin-top:4px}
.panel-body{padding:22px}
.heading-actions{display:flex;align-items:center;gap:9px}
.two-column{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.lower-grid{margin-top:24px}
.page-heading{display:flex;justify-content:space-between;align-items:start;gap:24px;margin-bottom:26px}
.eyebrow{font-size:12px;letter-spacing:1.2px;color:var(--faint);font-weight:600;margin-bottom:9px}
.page-heading p{margin-top:8px;font-size:15px;line-height:1.6;max-width:75ch}
.empty-state{display:flex;align-items:center;flex-direction:column;text-align:center;padding:55px 24px;gap:14px}
.empty-state p{font-size:13.5px;line-height:1.7}
.empty-icon{width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--border);background:var(--panel-raised);border-radius:12px;color:var(--accent);margin-bottom:7px}
.empty-icon svg{width:23px;height:23px}
.compact{padding:40px}
.large-icon{width:26px;height:26px;color:var(--faint)}
.notice{padding:14px 18px;border:1px solid var(--border);border-radius:6px;background:var(--blue-bg);margin:0 0 16px;font-size:13px;overflow-wrap:anywhere;line-height:1.6;color:var(--blue);border-left:4px solid var(--blue)}
.notice.success{color:var(--green);background:var(--green-bg);border-left-color:var(--green)}
.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--panel-raised);border:1px solid var(--border);padding:10px 18px;border-radius:7px;box-shadow:var(--shadow);opacity:0;pointer-events:none;z-index:60}
.toast.visible{opacity:1}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:25px}
.stat-card{border:1px solid var(--border);background:var(--panel);padding:19px 20px;border-radius:var(--radius)}
.stat-label{font-size:13px;color:var(--muted);display:flex;align-items:center;justify-content:space-between;gap:8px}
.stat-label svg{color:var(--faint);width:16px;height:16px}
.stat-value{font-size:30px;letter-spacing:-1px;font-weight:550;margin:10px 0 7px;display:flex;align-items:center;gap:12px}
.stat-card small{font-size:12px;color:var(--faint)}
.live-pill{font-size:12px;color:var(--green);background:var(--panel-raised);border:1px solid var(--border);border-radius:4px;padding:2px 6px;letter-spacing:.4px}
.quick-start{padding:24px}
.system-panel{padding:24px}
.steps{list-style:none;padding:0;margin:23px 0 0;display:grid;gap:20px}
.steps li{display:flex;gap:16px;align-items:flex-start}
.steps li>span{color:var(--faint);font:12px ui-monospace,monospace;padding-top:3px}
.steps strong{font-size:13px;font-weight:550}
.steps p{font-size:12px;margin-top:4px;line-height:1.7}
.watch-status{margin-top:25px;font-size:13px;display:flex;align-items:center;gap:8px}
.folder-path{display:block;font-size:12px;color:var(--muted);background:var(--code);border:1px solid var(--border);border-radius:5px;padding:10px;margin:12px 0;overflow-wrap:anywhere}
.system-panel p{font-size:12px;line-height:1.8;margin-bottom:16px}
.system-panel>.subtle-link{display:inline-block;margin-top:22px}
.table-scroll{overflow:auto;max-width:100%}
table{border-collapse:collapse;width:100%;text-align:left;font-size:14px}
th{font-size:13px;font-weight:600;color:var(--text);padding:14px 20px;border-bottom:1px solid var(--border);background:var(--blue-bg);white-space:nowrap}
td{padding:16px 20px;border-bottom:1px solid var(--border);white-space:nowrap}
tbody tr:last-child td{border-bottom:0}
tbody tr:hover{background:var(--hover)}
td:first-child{max-width:360px}
td .block{max-width:320px;overflow:hidden;text-overflow:ellipsis;font-size:12px;margin-top:4px}
.file-name{display:flex;align-items:center;gap:10px;max-width:230px;overflow:hidden;text-overflow:ellipsis;font-weight:600}
.file-name svg{color:var(--teal);width:16px;height:16px}
.file-name:hover{color:var(--accent)}
.status-button{display:flex;align-items:center;gap:7px;background:transparent;border:0;color:var(--green);font-size:13px;padding:4px 0;font-weight:600}
.status-button:hover{color:var(--text)}
.inline-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.panel-toolbar{display:flex;align-items:end;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--border);gap:12px;flex-wrap:wrap}
.search-field{display:flex!important;align-items:center;gap:9px;border:1px solid var(--border);background:var(--input);border-radius:6px;padding:0 11px;width:300px;margin:0!important;color:var(--faint)}
.search-field input{border:0;padding:8px 0;min-height:35px;background:transparent;outline:none}
.search-field:focus-within{outline:2px solid var(--accent);outline-offset:2px}
.search-field svg{width:15px;height:15px}
.pagination{padding:13px 20px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:13px;gap:12px;background:var(--panel-raised)}
.pagination>div{display:flex;align-items:center;gap:13px}
.import-panel{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:24px;padding:25px}
.import-panel p{font-size:13px;margin:7px 0 18px}
.form-actions{display:flex;align-items:center;gap:12px;margin-top:15px}
progress{width:100%;height:7px;margin-top:12px;accent-color:var(--accent)}
label{display:grid;font-size:14px;margin-bottom:7px;line-height:1.5;gap:6px;margin:0;min-width:0}
input:not([type=checkbox]){color:var(--text);background:var(--input);border:1px solid var(--border);border-radius:6px;padding:9px 11px;width:100%;min-width:0;font-size:14px;line-height:1.5}
input::placeholder{color:var(--faint)}
textarea::placeholder{color:var(--faint)}
input[type=file]{font-size:12px}
input::file-selector-button{border:0;background:var(--panel-raised);color:var(--muted);padding:6px 9px;border-radius:4px;margin-right:8px;font-size:12px}
.detail-title{margin-top:15px;font-size:25px;overflow-wrap:anywhere}
.metadata-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px;padding:0;gap:0}
.metadata-grid small{display:block;font-size:12px;letter-spacing:.5px;color:var(--muted);margin-bottom:8px}
.metadata-grid strong{font-size:24px;font-weight:650;font-variant-numeric:tabular-nums}
.metadata-grid .small-text{font-size:12px}
.endpoint-bar{display:flex;align-items:center;gap:12px;margin-bottom:23px;background:var(--teal-bg);border:1px solid var(--border);border-radius:7px;padding:10px 14px;flex-wrap:wrap}
.method{font:12px ui-monospace,monospace;color:var(--green);font-weight:600;background:var(--green-bg);border-radius:5px;padding:4px 8px}
.endpoint-bar code{font-size:13px;flex:1;overflow-wrap:anywhere}
.tabs{display:flex;gap:23px;border-bottom:1px solid var(--border);padding:0 22px}
.tabs a{display:block;font-size:14px;color:var(--muted);padding:16px 0;border-bottom:2px solid transparent;font-weight:550}
.tabs a.selected{border-color:var(--accent);color:var(--blue)}
.detail-body{padding:23px}
.section-caption{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:15px;align-items:center;flex-wrap:wrap}
.code-block{white-space:pre-wrap;overflow-wrap:anywhere;tab-size:2;font-size:13px;line-height:1.8;margin:0;background:var(--code);color:var(--text);padding:20px;border:1px solid var(--border);border-radius:6px;max-height:560px;overflow:auto;max-width:100%}
.detail-body>.small-text{margin-top:15px;overflow-wrap:anywhere;font-size:12px;line-height:1.7}
.export-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:17px}
.checkbox-setting{display:flex;gap:10px;align-items:start;margin-bottom:23px}
.checkbox-setting input{margin-top:4px;accent-color:var(--accent);width:15px;height:15px;flex-shrink:0}
.checkbox-setting strong{font-size:13px;font-weight:550;display:block}
.checkbox-setting small{display:block;color:var(--muted);font-size:12px;margin-top:4px;line-height:1.7}
.config-form{max-width:720px}
.config-form>p{margin:9px 0 20px}
.settings-panel{max-width:100%}
.settings-list{margin:20px 0}
.settings-list>div{display:flex;justify-content:space-between;gap:20px;font-size:14px;padding:13px 0;border-bottom:1px solid var(--border)}
.settings-list dt{color:var(--muted)}
.settings-list dd{margin:0;text-align:right;font-weight:550}
.settings-panel .panel-body>p{margin:10px 0 23px}
.login-panel{max-width:440px;margin:35px auto;padding:35px}
.login-panel .eyebrow{margin-top:20px}
.login-panel h1{font-size:24px}
.login-panel p{font-size:13px;margin:10px 0 25px}
.login-panel form .button{width:100%;margin-top:18px}
.converter-toolbar{display:flex;align-items:center;gap:13px;margin-bottom:18px;padding:14px 16px;background:var(--panel);border:1px solid var(--border);border-radius:10px}
.converter-toolbar label{display:flex;align-items:center;gap:10px;color:var(--text);margin:0;font-size:13px;font-weight:600}
.converter-toolbar select{min-width:110px;font-size:13px}
.convert-arrow{color:var(--faint);font-size:16px}
.toolbar-spacer{flex:1}
.converter-grid{grid-template-columns:1.1fr .9fr}
.editor-heading{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border);min-height:51px;background:var(--blue-bg)}
.editor-heading h2{font-size:17px;letter-spacing:-.2px;color:var(--blue)}
.editor-heading .muted{font-size:12px}
.data-textarea{border:0!important;border-radius:0!important;background:var(--code)!important;width:100%;min-height:400px;display:block;resize:vertical;font:13px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace!important;padding:21px!important;tab-size:2;font-size:14px!important;line-height:1.8!important}
.editor-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-top:1px solid var(--border);min-height:50px;flex-wrap:wrap;background:var(--panel)}
.editor-footer .button.small{font-size:12px}
.file-picker{display:flex;align-items:center;gap:9px;margin:0;font-size:12px;color:var(--muted);min-width:0}
.file-picker input{max-width:210px;padding:0!important;border:0!important;background:transparent!important;font-size:12px}
.converter-note{margin-top:17px;line-height:1.8;max-width:90ch}
.explorer-request{padding:20px}
.request-line{display:flex;gap:10px;margin-bottom:20px}
.request-line label{margin:0}
.request-line select{width:95px;color:var(--green);font-family:ui-monospace,monospace;font-size:13px}
.request-line input{height:36px;font-family:ui-monospace,monospace;font-size:13px}
.endpoint-input{flex:1}
.explorer-options{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:16px}
.explorer-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.explorer-options input{margin-top:6px}
.explorer-options select{margin-top:6px}
.explorer-fields label textarea{margin-top:7px;font-size:13px}
.request-body-label textarea{margin-top:7px;font-size:13px}
.request-body-label{margin-top:16px}
.response-panel{margin-top:22px}
.response-panel h2{display:flex;align-items:center;gap:10px}
.response-body{border:0;border-radius:0;min-height:230px}
.response-panel+.small-text{margin-top:15px}
.htmx-indicator{display:none}
.htmx-request .htmx-indicator{display:inline-block}
.htmx-request.htmx-indicator{display:inline-block}
.mobile-close{display:none;position:absolute;right:12px;top:22px;font-size:22px}
@media(min-width:1500px){main{padding-top:45px}}
@media(max-width:1100px){main{padding:28px 24px}}
@media(max-width:1100px){.topbar{padding:0 24px}}
@media(max-width:1100px){.stats-grid{gap:10px}}
@media(max-width:1100px){.stat-card{padding:16px}}
@media(max-width:1100px){.stat-value{font-size:26px}}
@media(max-width:1100px){.two-column{gap:15px}}
@media(max-width:1100px){.brand{font-size:17px}}
.converter-toolbar .small-text{display:none}
@media(max-width:800px){.sidebar{width:224px;transform:translateX(-100%);visibility:hidden}}
@media(max-width:800px){.sidebar.is-open{transform:translateX(0);visibility:visible;box-shadow:15px 0 40px #0005}}
@media(max-width:800px){.mobile-menu{display:inline-flex!important}}
@media(max-width:800px){.mobile-close{display:inline-flex}}
@media(max-width:800px){.sidebar .brand{padding-right:27px}}
@media(max-width:800px){.topbar{padding:0 18px;height:57px}}
@media(max-width:800px){main{padding:25px 18px 40px}}
@media(max-width:800px){.two-column{grid-template-columns:1fr}}
@media(max-width:800px){.import-panel{grid-template-columns:1fr}}
@media(max-width:800px){.stats-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.page-heading{align-items:flex-start;gap:15px;flex-wrap:wrap}}
@media(max-width:800px){h1{font-size:28px}}
@media(max-width:800px){.page-heading p{font-size:14px}}
@media(max-width:800px){.footer{padding:15px 18px;flex-wrap:wrap}}
@media(max-width:800px){.footer span:last-child{display:none}}
@media(max-width:800px){.panel-toolbar{align-items:flex-start}}
@media(max-width:800px){.panel-toolbar>.small-text{display:none}}
@media(max-width:800px){.search-field{width:min(300px,65vw)}}
@media(max-width:800px){.converter-toolbar{gap:9px;flex-wrap:wrap;padding:12px}}
@media(max-width:800px){.converter-toolbar label{gap:6px}}
@media(max-width:800px){.converter-toolbar select{min-width:88px}}
@media(max-width:800px){.converter-toolbar .button{margin-left:auto}}
@media(max-width:800px){.toolbar-spacer{display:none}}
@media(max-width:800px){.data-textarea{min-height:300px}}
@media(max-width:800px){.editor-footer{flex-wrap:wrap}}
@media(max-width:800px){.explorer-options{grid-template-columns:1fr}}
@media(max-width:800px){.explorer-fields{grid-template-columns:1fr}}
@media(max-width:800px){.request-line{flex-wrap:wrap}}
@media(max-width:800px){.request-line .endpoint-input{min-width:calc(100% - 110px)}}
@media(max-width:800px){.request-line>.button{width:100%}}
@media(max-width:800px){.response-panel .panel-heading{flex-wrap:wrap}}
@media(max-width:800px){.metadata-grid{gap:20px}}
@media(max-width:800px){.tabs{gap:16px;padding:0 17px;overflow-x:auto}}
@media(max-width:800px){.tabs a{font-size:12px;white-space:nowrap}}
@media(max-width:800px){.endpoint-bar code{flex-basis:80%}}
@media(max-width:800px){.panel-heading{padding:17px}}
@media(max-width:800px){.section-caption{flex-wrap:wrap}}
@media(max-width:800px){.topbar-actions{gap:5px}}
@media(max-width:800px){.breadcrumbs{gap:9px}}
@media(max-width:800px){.breadcrumbs strong{max-width:180px}}
@media(max-width:800px){.lower-grid{margin-top:18px}}
@media(max-width:800px){.settings-list>div{flex-wrap:wrap;gap:4px}}
@media(max-width:800px){.notice{font-size:12px}}
@media(prefers-reduced-motion:no-preference){.button{transition:none}}
@media(prefers-reduced-motion:no-preference){.icon-button{transition:none}}
@media(prefers-reduced-motion:no-preference){.sidebar nav a{transition:none}}
@media(prefers-reduced-motion:no-preference){.toast{transition:opacity .12s ease}}
.job-row{display:flex;justify-content:space-between;gap:1rem;padding:1rem;border-bottom:1px solid var(--border);align-items:center}
.job-row>div:first-child{min-width:0;overflow-wrap:anywhere}
.job-row progress{width:min(24rem,100%)}
.job-list{max-height:28rem;overflow:auto}
.preview-cell{max-width:360px;white-space:pre-wrap;overflow-wrap:anywhere;min-width:140px;font-variant-numeric:tabular-nums}
.drop-zone{padding-top:1rem}
.drag-active{outline:2px dashed var(--accent)}
details.import-panel{display:block}
summary{cursor:pointer}
details>summary{margin-bottom:.75rem}
.delete-source{margin-top:1.5rem}
.job-row .heading-actions{flex-shrink:0}
@media(max-width:650px){.job-row{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){.panel-toolbar{gap:.75rem;flex-wrap:wrap}}
.preview-table{min-width:100%;border-collapse:separate;border-spacing:0}
.preview-table th{white-space:nowrap;position:sticky;top:0;background:var(--blue-bg);z-index:1;font-size:13px;color:var(--blue);padding:13px 16px}
.collection-tools{padding:1.5rem}
.activity-panel{padding:1.5rem}
.collection-tools .panel-toolbar{padding:0 0 1rem}
.collection-tools .inline-form{display:flex;align-items:center;gap:.75rem}
.collection-tools .inline-form label{margin:0}
.collection-tools input:not([type=checkbox]){width:min(100%,20rem)}
.collection-tools select{width:min(100%,20rem)}
.collection-tools p{overflow-wrap:anywhere}
.collection-tools .delete-source{padding-top:1rem;border-top:1px solid var(--border)}
.collection-tools .checkbox-setting span{min-width:0;overflow-wrap:anywhere}
.preview-table td:first-child{min-width:4rem}
.conversion-options{margin:0 0 1rem;padding:12px 16px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}
.conversion-option-fields{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-start;padding-top:.75rem}
.conversion-option-fields>label{flex:1;min-width:14rem}
.conversion-option-fields .checkbox-setting{margin:0}
.conversion-notes{padding:.75rem 1rem;border-bottom:1px solid var(--border);color:var(--muted);font-size:11px;line-height:1.6}
.conversion-notes p{margin:.3rem 0}
.export-safety{margin:0!important}
.export-safety span{font-size:11px}
.tree-preview{padding:14px 18px;border-bottom:1px solid var(--border);font-size:.85rem;overflow-wrap:anywhere;max-height:320px;overflow:auto;background:var(--panel-raised)}
.conversion-report{padding:14px 18px;border-bottom:1px solid var(--border);font-size:13px;overflow-wrap:anywhere;line-height:1.6;background:var(--teal-bg);color:var(--teal)}
.tree-preview summary{cursor:pointer}
.conversion-report summary{cursor:pointer}
.tree-node{padding:4px 0}
.tree-children{margin-left:16px;border-left:1px solid var(--border);padding-left:10px}
.tree-node code{white-space:pre-wrap;overflow-wrap:anywhere}
.conversion-report p{margin:8px 0;color:var(--teal)}
.conversion-report ul{padding-left:18px}
.column-rules textarea{width:100%;font-family:monospace;min-height:80px}
.column-rules small{display:block;margin-top:6px;font-size:13px;line-height:1.6}
.converter-error{white-space:pre-wrap}
#feedback{white-space:pre-wrap}
.conversion-option-fields>*{min-width:0}
[hidden]{display:none!important}
.quick-actions{padding:22px;margin-bottom:20px;display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:linear-gradient(110deg,var(--panel),var(--blue-bg));border-top:3px solid var(--blue)}
.workflow-source{padding:22px;margin-bottom:20px}
.converter-source{padding:22px;margin-bottom:20px;display:grid;grid-template-columns:minmax(220px,1fr) minmax(300px,2fr);gap:22px;border-top:3px solid var(--blue)}
.quick-actions p{margin:6px 0 0}
.converter-source label{margin-bottom:12px}
.converter-source select{margin-top:8px}
.converter-source input{margin-top:8px}
.converter-grid.collection-mode{grid-template-columns:1fr}
.converter-grid.collection-mode .data-textarea{min-height:360px}
.conversion-options summary{font-weight:550}
.browse-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin:0 0 20px}
.browse-controls label{margin:0;flex:1;min-width:180px}
.browse-controls label:has(#page-size){flex:0 0 145px;min-width:145px}
.browse-controls input{margin-top:7px}
.browse-controls select{margin-top:7px}
.column-controls{padding:12px 14px;background:var(--input);border:1px solid var(--border);border-radius:7px;margin:0 0 16px}
.column-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:9px;margin:12px 0;max-height:240px;overflow:auto}
.column-options label{display:flex;gap:8px;align-items:center;margin:0;overflow-wrap:anywhere}
.column-options input{accent-color:var(--accent)}
.record-scroll{max-height:600px;border:1px solid var(--border);border-radius:7px}
.preview-table td{padding:12px 16px;font-size:14px;line-height:1.7;vertical-align:top;border-bottom:1px solid var(--border)}
.preview-table tbody tr:nth-child(even){background:var(--stripe)}
.preview-table tbody tr:hover{background:var(--hover)}
.preview-help{font-size:13px;color:var(--muted);margin:14px 0}
.preview-help p{line-height:1.7;margin:10px 0}
.page-jump{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.page-jump label{margin:0}
.page-jump input{width:76px;min-width:60px;padding:7px}
.workflow-links{display:flex;flex-wrap:wrap;gap:10px;font-size:13px;margin:0 0 20px;align-items:center;color:var(--muted);padding:12px 16px;background:var(--blue-bg);border:1px solid var(--border);border-radius:9px}
.workflow-links a{color:var(--accent)}
.workflow-grid{list-style:none;padding:0;margin:0 0 22px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.workflow-step{padding:22px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;border-top:4px solid var(--blue)}
.workflow-step p{font-size:15px;line-height:1.7;margin:0;flex:1;color:var(--muted)}
.step-number{display:grid;place-items:center;width:32px;height:32px;background:var(--blue-bg);border:0;border-radius:50%;font-weight:600;color:var(--blue)}
.workflow-source p{line-height:1.7;margin:12px 0;font-size:15px}
@media(max-width:1100px){.workflow-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.converter-source{grid-template-columns:1fr;padding:18px}}
@media(max-width:800px){.workflow-grid{grid-template-columns:1fr}}
@media(max-width:800px){.browse-controls label{flex:1 1 100%}}
@media(max-width:800px){.pagination{align-items:flex-start;flex-direction:column}}
@media(max-width:800px){.quick-actions{padding:18px}}
@media(max-width:800px){.workflow-source{padding:18px}}
@media(max-width:800px){.workflow-step{padding:18px}}
@media(max-width:800px){.heading-actions{flex-wrap:wrap}}
@media(max-width:800px){.metadata-grid strong{font-size:20px}}
.sidebar nav a:nth-child(1) svg{color:var(--blue)}
.sidebar nav a:nth-child(2) svg{color:var(--teal)}
.sidebar nav a:nth-child(3) svg{color:var(--violet)}
.sidebar nav a:nth-child(4) svg{color:var(--amber)}
.sidebar nav a:nth-child(5) svg{color:var(--blue)}
.button.primary:hover{background:var(--primary-bg);box-shadow:0 0 0 3px var(--accent-bg);color:var(--primary-text);border-color:var(--primary-bg);filter:brightness(.96)}
.button.danger{background:var(--red-bg);color:var(--red);border-color:var(--red)}
.button:disabled{opacity:1;background:var(--panel-raised);color:var(--control-disabled);border-color:var(--border);box-shadow:none;cursor:default}
.converter-source:has(#collection-input[hidden]){grid-template-columns:1fr}
.converter-source:has(#collection-input[hidden])>label{max-width:520px}
.converter-toolbar .convert-arrow{color:var(--blue);font-weight:600}
.conversion-option-fields .checkbox-setting small{font-size:13px;line-height:1.6}
.conversion-report:has(li){background:var(--amber-bg);color:var(--amber)}
.conversion-report:has(li) p{color:var(--amber)}
.tree-node strong{color:var(--blue)}
.format-tag[data-format=json]{background:var(--blue-bg);color:var(--blue);border-color:var(--blue-bg)}
.format-tag[data-format=csv]{background:var(--green-bg);color:var(--green);border-color:var(--green-bg)}
.format-tag[data-format=yaml]{background:var(--violet-bg);color:var(--violet);border-color:var(--violet-bg)}
.format-tag[data-format=xml]{background:var(--amber-bg);color:var(--amber);border-color:var(--amber-bg)}
.format-tag[data-format=ndjson]{background:var(--teal-bg);color:var(--teal);border-color:var(--teal-bg)}
.format-tag[data-format=toml]{background:var(--red-bg);color:var(--red);border-color:var(--red-bg)}
.state-label{display:inline-block;border-radius:6px;padding:2px 8px;font-size:12px;font-weight:600;background:var(--blue-bg);color:var(--blue)}
.state-label[data-state=ready]{color:var(--green);background:var(--green-bg)}
.state-label[data-state=failed]{color:var(--red);background:var(--red-bg)}
.state-label[data-state=rejected]{color:var(--red);background:var(--red-bg)}
.state-label[data-state=cancelled]{color:var(--amber);background:var(--amber-bg)}
.state-label[data-state=interrupted]{color:var(--amber);background:var(--amber-bg)}
.notice.error{color:var(--red);background:var(--red-bg);border-left-color:var(--red)}
.metadata-grid>div{padding:20px;border-right:1px solid var(--border);border-top:3px solid var(--blue);background:var(--blue-bg)}
.metadata-grid>div:nth-child(2){border-top-color:var(--teal);background:var(--teal-bg)}
.metadata-grid>div:nth-child(3){border-top-color:var(--violet);background:var(--violet-bg)}
.metadata-grid>div:nth-child(4){border-top-color:var(--amber);background:var(--amber-bg);border-right:0}
.metadata-grid strong.small-text{font-size:13px;overflow-wrap:anywhere}
tbody tr:nth-child(even){background:var(--stripe)}
.status-button:has(.off){color:var(--muted)}
main>.panel+.panel{margin-top:20px}
.workflow-step:nth-child(2){border-top-color:var(--teal)}
.workflow-step:nth-child(3){border-top-color:var(--violet)}
.workflow-step:nth-child(4){border-top-color:var(--amber)}
.workflow-step:nth-child(2) .step-number{background:var(--teal-bg);color:var(--teal)}
.workflow-step:nth-child(3) .step-number{background:var(--violet-bg);color:var(--violet)}
.workflow-step:nth-child(4) .step-number{background:var(--amber-bg);color:var(--amber)}
.job-row strong{font-size:14px}
.job-row:nth-child(even){background:var(--stripe)}
.job-row small{line-height:1.7}
.format-help{padding:14px 18px;margin:18px 0;font-size:13px;color:var(--muted)}
.format-help p{margin-top:10px;line-height:1.7}
@media(max-width:1100px){.metadata-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.metadata-grid>div{padding:16px}}
@media(max-width:800px){.workspace{margin-top:22px}}
@media(max-width:800px){.preview-table td{font-size:14px}}
.sheet-query form{display:grid;gap:12px}
.sheet-query details>summary{cursor:pointer;font-weight:600;padding:10px 0;font-size:13px;margin-bottom:0}
.filter-row{display:flex;gap:12px;align-items:end;margin:12px 0;flex-wrap:wrap}
.sort-row{display:flex;gap:12px;align-items:end;margin:12px 0;flex-wrap:wrap}
.filter-row label{flex:1;min-width:0;display:grid;gap:6px;margin-bottom:0}
.sort-row label{flex:1;min-width:0;display:grid;gap:6px;margin-bottom:0}
.filter-row select{width:100%}
.sort-row select{width:100%}
.sheet-table{table-layout:fixed;min-width:800px;width:max-content}
.sheet-table th{width:190px;max-width:600px;min-width:48px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:relative;padding:10px 12px}
.sheet-table td{width:190px;max-width:600px;min-width:48px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:10px 12px}
.sheet-table th:first-child{width:48px}
.sheet-table td:first-child{width:48px}
.sheet-table th:nth-child(2){width:85px}
.sheet-table td:nth-child(2){width:85px}
.column-resizer{position:absolute;right:0;top:0;bottom:0;width:8px;cursor:col-resize;border-right:2px solid var(--border)}
.column-resizer:focus-visible{outline:3px solid var(--accent)}
.sheet-edit-controls{display:grid;gap:12px;padding:20px;background:var(--panel-raised);border-radius:12px;margin-top:16px}
.sheet-edit-controls textarea{width:100%}
.sheet-data .panel-toolbar{flex-wrap:wrap}
dialog{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:16px;max-width:920px;width:min(920px,calc(100vw - 32px));padding:24px;max-height:calc(100dvh - 32px);overflow:auto}
dialog::backdrop{background:#0008}
dialog textarea{width:100%;margin:12px 0;min-height:220px}
dialog form{display:flex;justify-content:end}
.sheet-query>form>label{max-width:600px}
.sql-form{display:grid;gap:16px}
.sql-form textarea{width:100%;min-height:220px}
.sql-keyword{color:var(--violet);font-weight:700}
#sql-highlight{max-height:160px;overflow:auto}
.sql-form[aria-busy=true]{opacity:.75}
.sql-form summary{cursor:pointer;font-weight:600;padding:10px 0}
@media(max-width:600px){.filter-row{display:grid;grid-template-columns:1fr}}
@media(max-width:600px){.sort-row{display:grid;grid-template-columns:1fr}}
@media(max-width:600px){.sheet-query{padding:16px}}
@media(max-width:600px){.sheet-data{padding:16px}}
@media(max-width:600px){.sheet-data .pagination{flex-wrap:wrap}}
.sheet-tools{padding:22px}
.sql-panel{padding:22px;max-width:none}
.sheet-tools .panel-toolbar{padding:0 0 14px}
.sheet-tools>.inline-form{flex-wrap:wrap}
.sheet-table td:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.sheet-table td input{width:100%;min-width:60px}
.sheet-tools form label{min-width:160px}
@media(max-width:600px){.sheet-tools{padding:16px}}
@media(max-width:600px){.sql-panel{padding:16px}}
.sheet-query{padding:22px}
.sheet-query-bar{display:grid;grid-template-columns:minmax(180px,1fr) 120px auto;gap:14px;align-items:end}
.sheet-query-bar label{display:grid;gap:6px;min-width:0}
.sheet-query-bar input{width:100%}
.sheet-query-bar select{width:100%}
.sheet-query textarea{width:100%}
.sheet-query details{border-top:1px solid var(--border);margin:0}
.sheet-query details[open]>summary{margin-bottom:10px}
.sheet-query details>summary:hover{color:var(--accent)}
.tools-disclosure>summary:hover{color:var(--accent)}
.sheet-query-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:13px}
.tools-disclosure>summary{cursor:pointer;font-weight:600;padding:0;font-size:14px;margin-bottom:0}
.tools-disclosure[open]>summary{margin-bottom:18px}
.tool-section+.tool-section{border-top:1px solid var(--border);padding-top:18px;margin-top:18px}
.tool-section .inline-form{display:flex;gap:12px;flex-wrap:wrap;align-items:end}
.sql-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:end}
.tool-section .inline-form label{display:grid;gap:6px;min-width:140px}
.sql-actions label{display:grid;gap:6px;min-width:140px;margin-bottom:0}
.tool-section h2{font-size:15px;margin-bottom:12px}
.tools-disclosure .table-wrap{overflow-x:auto;max-width:100%}
.sql-panel>h2{font-size:16px}
.sql-form>details>summary{font-size:13px}
.sql-form>details[open]>summary{margin-bottom:8px}
.sql-form>details:not([open])>summary{margin-bottom:0}
.sql-form .column-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}
.sql-form .column-options label{display:flex;align-items:center;gap:8px;margin:0;padding:8px 10px;background:var(--input);border:1px solid var(--border);border-radius:8px;min-width:0}
.sql-form .column-options .format-tag{white-space:nowrap;flex-shrink:0;margin-left:auto}
.sql-actions .button.primary{min-width:120px}
.sql-panel>.quality-notes{margin-top:16px}
.sheet-data>form>p{padding:12px 22px;margin:0;font-size:13px}
@media(max-width:600px){.sheet-query-bar{grid-template-columns:minmax(0,1fr) auto;gap:12px}}
@media(max-width:600px){.sheet-query-bar>label:first-child{grid-column:1/-1}}
@media(max-width:600px){.sheet-query-bar>.button{width:100%}}
@media(max-width:600px){.sheet-query-footer{align-items:start;flex-wrap:wrap}}
@media(max-width:600px){.tool-section .inline-form{align-items:stretch}}
@media(max-width:600px){.tool-section .inline-form>label{flex:1}}
.pipeline-panel{padding:22px;max-width:none}
.pipeline-panel form{display:grid;gap:16px}
.pipeline-panel summary{cursor:pointer;font-weight:600;padding:10px 0}
.pipeline-source{display:grid;grid-template-columns:1fr 2fr;gap:18px}
.pipeline-source select{width:100%}
.pipeline-source input{width:100%}
.pipeline-step textarea{width:100%;background:var(--input);min-height:130px}
.pipeline-step select{width:100%}
.pipeline-import textarea{width:100%}
.pipeline-steps{display:grid;gap:16px;counter-reset:pipeline}
.pipeline-step{background:var(--panel-raised);border:1px solid var(--border);border-left:4px solid var(--teal);border-radius:10px;padding:18px;display:grid;gap:12px}
.pipeline-step-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.pipeline-step-heading>div{display:flex;gap:6px}
.pipeline-panel .panel-toolbar{padding:0;flex-wrap:wrap;justify-content:flex-start;align-items:end;border-bottom:0}
.pipeline-panel [aria-busy=true]{opacity:.75}
.pipeline-panel pre{max-height:480px;overflow:auto}
.pipeline-panel .inline-form{display:flex;flex-wrap:wrap}
@media(max-width:600px){.pipeline-panel{padding:16px}}
@media(max-width:600px){.pipeline-source{grid-template-columns:1fr}}
@media(max-width:600px){.pipeline-step{padding:14px}}
@media(max-width:600px){.pipeline-panel .panel-toolbar>label{width:100%}}
.pipeline-panel h2{font-size:16px}
.pipeline-panel label{display:grid;gap:6px;min-width:0}
.pipeline-panel details{border-top:1px solid var(--border);padding-top:4px}
.pipeline-panel.tools-disclosure{border-top:1px solid var(--border)}
.pipeline-panel.tools-disclosure>summary{padding:0;font-size:14px}
.pipeline-panel textarea{max-width:100%;width:100%}
.pipeline-panel input:not([type=checkbox]){max-width:100%;width:100%}
.pipeline-panel select{max-width:100%;width:100%}
.pipeline-panel .checkbox-setting{display:flex;align-items:center;gap:8px}
.pipeline-panel.tools-disclosure form{max-width:700px}
.pipeline-panel details:not([open])>summary{margin-bottom:0}
.pipeline-steps:empty{display:none}
.quality-layout .panel{padding:22px}
.quality-layout form{display:grid;gap:12px}
.quality-layout label{font-weight:600}
.quality-layout .table-wrap{overflow-x:auto;max-width:100%;border:1px solid var(--border);border-radius:8px}
.quality-layout th{white-space:nowrap}
.quality-layout td{max-width:300px;overflow-wrap:anywhere}
.quality-layout code{overflow-wrap:anywhere;white-space:pre-wrap}
.quality-layout .toolbar{display:flex;gap:10px;flex-wrap:wrap}
.quality-layout .badge{display:inline-block;padding:2px 7px;border-radius:4px;background:var(--panel-raised);color:var(--teal)}
.quality-layout textarea{width:100%}
.quality-layout input[type=number]{width:100%;max-width:240px}
.quality-layout details>summary{cursor:pointer;font-weight:600}
.quality-layout details[open]>summary{margin-bottom:16px}
.quality-layout .quality-notes{margin-top:16px;font-size:13px}
@media(max-width:600px){.quality-layout .panel{padding:16px}}
@media(max-width:600px){.quality-layout .toolbar .button{flex:1}}
@media(max-width:600px){.quality-layout .table-wrap table{min-width:620px}}
.collection-heading{align-items:flex-start;margin-bottom:12px}
.collection-heading>div:first-child{min-width:0}
.collection-heading .detail-title{overflow-wrap:anywhere;margin-bottom:0}
.collection-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.collection-heading .format-tag{vertical-align:middle;font-size:12px;white-space:nowrap}
.collection-actions{display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap;flex-shrink:0}
.collection-actions>details{position:relative}
.collection-actions>details>summary{margin:0;list-style:none}
.collection-actions>details>summary::-webkit-details-marker{display:none}
.download-chooser{position:absolute;right:0;top:calc(100% + 8px);z-index:15;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:18px;width:340px;max-width:calc(100vw - 36px);max-height:calc(100dvh - 120px);overflow:auto}
.collection-more nav{position:absolute;right:0;top:calc(100% + 8px);z-index:15;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:6px;width:230px;max-width:calc(100vw - 36px);max-height:calc(100dvh - 120px);overflow:auto}
.download-chooser form{display:grid;gap:10px}
.download-chooser label{margin:0;font-weight:600;display:grid;gap:6px}
.download-chooser select{width:100%;min-width:0}
.download-chooser .download-format-note{margin:0;padding:10px 12px;border-radius:8px;background:var(--panel-raised);color:var(--muted)}
.download-chooser .download-notes{border-top:1px solid var(--border);margin-top:16px;padding-top:12px;font-size:12px;padding:12px 0 0}
.download-chooser .download-notes>summary{margin:0}
.download-chooser .download-notes p{margin:10px 0 0;line-height:1.5;color:var(--muted)}
.download-job{display:grid;gap:10px;border-top:1px solid var(--border);margin-top:16px;padding-top:16px;font-size:14px}
.download-job p{margin:0;overflow-wrap:anywhere}
.download-job progress{width:100%}
.collection-more nav a{display:block;padding:10px 12px;border-radius:6px;color:var(--text)}
.collection-more nav a:hover{background:var(--panel-raised)}
.collection-meta{display:flex;gap:8px 18px;align-items:center;flex-wrap:wrap;margin:0 0 20px;color:var(--muted);font-size:13px}
.collection-page .collection-tools{padding:18px 22px}
.collection-page .collection-tools>summary{margin-bottom:0}
.collection-page .collection-tools[open]>summary{margin-bottom:16px}
.collection-page .collection-tools .delete-source{border-top:1px solid var(--border);margin-top:18px;padding-top:18px}
.collection-page .collection-preview .tabs{overflow-x:auto;flex-wrap:nowrap}
.collection-page .collection-preview .tabs>*{white-space:nowrap}
.collection-page .endpoint-bar{flex-wrap:wrap;margin:16px 20px;overflow-wrap:anywhere}
.collection-page .endpoint-bar code{min-width:0;overflow-wrap:anywhere;white-space:normal}
.export-format-note{flex-basis:100%;font-size:13px;color:var(--muted);margin:0}
@media(max-width:600px){.collection-heading{display:block}}
@media(max-width:600px){.collection-actions{margin-top:16px;gap:8px;display:grid;grid-template-columns:1fr 1fr 1fr}}
@media(max-width:600px){.collection-actions>.button{width:100%;padding:8px;font-size:13px}}
@media(max-width:600px){.collection-actions>details>summary{width:100%;padding:8px;font-size:13px}}
@media(max-width:600px){.collection-actions>.download-control[open]{grid-column:1/-1;grid-row:2}}
@media(max-width:600px){.collection-actions>.download-control[open]>summary{width:auto}}
@media(max-width:600px){.download-chooser{position:static;width:100%;max-width:none;max-height:none;margin-top:10px}}
@media(max-width:600px){.collection-more nav{right:0;width:230px}}
@media(max-width:600px){.collection-page .collection-tools{padding:16px}}
.advanced-navigation{margin:24px 12px;color:var(--muted)}
.advanced-navigation>summary{cursor:pointer;padding:10px 0;font-size:.85rem}
.advanced-navigation nav a{font-size:.85rem}
.dataset-tabs{display:flex;gap:6px;margin:18px 0 22px;border-bottom:1px solid var(--border);overflow-x:auto}
.dataset-tabs>a{padding:12px 18px;text-decoration:none;color:var(--muted);white-space:nowrap;border-bottom:3px solid transparent}
.dataset-tabs>a.selected{color:var(--text);border-color:var(--accent);font-weight:650}
.dataset-content>.detail-body>.sheet-query{margin-bottom:18px}
.dataset-content>.detail-body>.sheet-tools{margin-bottom:18px}
.dataset-content.panel{padding:22px}
.source-editing>summary{cursor:pointer}
.dataset-downloads{padding:24px}
.dataset-downloads>h2{margin-bottom:20px}
.cleanup-form{display:grid;gap:18px}
.cleanup-form>.panel{padding:22px}
.saved-changes{padding:22px}
.saved-step-library{padding:22px}
.cleanup-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end;margin:18px 0 12px}
.cleanup-controls label{display:grid;gap:7px;margin-bottom:0}
.cleanup-save label{display:grid;gap:7px;flex:1;min-width:200px;margin-bottom:0}
.cleanup-download label{display:grid;gap:7px;margin-bottom:0}
.cleanup-controls .cleanup-control{display:grid;gap:7px;min-width:0}
.cleanup-download .cleanup-control{display:grid;gap:7px;min-width:0}
.cleanup-controls [hidden]{display:none}
.cleanup-controls input{width:100%;min-width:0;min-height:40px;height:40px}
.cleanup-controls select{width:100%;min-width:0;min-height:40px;height:40px}
.cleanup-save input{width:100%;min-width:0}
.cleanup-download select{width:100%;min-width:0}
.cleanup-steps ol{list-style-position:inside;margin:12px 0 20px;padding:0}
.cleanup-steps li{padding:12px 0;border-bottom:1px solid var(--border)}
.cleanup-steps li>.button{float:right;margin-left:10px}
.cleanup-steps .empty-changes{list-style:none}
.cleanup-save{display:flex;gap:12px;align-items:end;flex-wrap:wrap}
.change-comparison{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin-top:18px}
.change-comparison h3{font-size:.95rem;margin-bottom:10px}
.change-comparison .record-scroll{max-height:380px}
.change-comparison td{max-width:260px;overflow:hidden;text-overflow:ellipsis}
.dataset-advanced{margin:22px 0;color:var(--muted);font-size:.85rem}
.dataset-advanced summary{cursor:pointer}
.saved-step-library article{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:18px 0;border-bottom:1px solid var(--border)}
.saved-step-library article>div{flex:1;min-width:160px}
.saved-step-library h2{font-size:1rem;margin:0 0 6px}
.saved-step-library article>details{width:100%}
.import-help{font-size:.85rem;color:var(--muted)}
.dataset-library-tools>summary{cursor:pointer}
.sheet-toolbar .sheet-search{flex:1;min-width:200px}
.sheet-toolbar .sheet-limit{width:100px}
.sheet-toolbar .sheet-density{width:130px}
.sheet-toolbar .toolbar-disclosure{position:relative;border:0;margin:0!important}
.sheet-toolbar .toolbar-disclosure>summary{margin:0!important;padding:9px 12px;white-space:nowrap;font-weight:500}
.sheet-toolbar .toolbar-popover{position:absolute;z-index:12;right:0;top:calc(100% + 8px);width:min(650px,calc(100vw - 40px));padding:18px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);max-height:65vh;overflow:auto}
.sheet-toolbar .column-controls .toolbar-popover{width:320px}
.sheet-toolbar .column-controls{padding:0;border:0;background:transparent}
.sheet-toolbar .column-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.toolbar-count{border-radius:12px;padding:0 6px;background:var(--accent-bg);color:var(--accent)}
.sheet-column-heading{display:flex;flex-direction:column;gap:2px;align-items:start}
.sheet-sort{display:flex;gap:8px;max-width:100%;align-items:center;font-weight:650}
.sort-indicator{color:var(--accent);font-size:12px}
.sort-indicator small{margin-left:2px}
.column-type{font-size:10px;line-height:14px;font-weight:500;color:var(--muted)}
.column-type[data-type=Number]{color:var(--accent)}
.sheet-cell-content{display:flex;gap:6px;align-items:center;min-width:0}
.cell-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}
td[data-display-kind=number] .cell-value{text-align:right;font-variant-numeric:tabular-nums}
td[data-display-kind=null] .cell-value{color:var(--muted);font-size:12px;font-style:italic}
td[data-display-kind=missing] .cell-value{color:var(--muted);font-size:12px;font-style:italic}
td[data-display-kind=empty] .cell-value{color:var(--muted);font-size:12px;font-style:italic}
.cell-json{border:1px solid var(--border);border-radius:4px;color:var(--accent);background:var(--accent-bg);padding:1px 6px;font-size:11px;line-height:20px}
.cell-copy{flex:none;opacity:0;min-width:24px;height:24px;border:0;background:transparent;color:var(--muted);padding:0}
td:hover .cell-copy{opacity:1}
td:focus-within .cell-copy{opacity:1}
.cell-copy:focus-visible{opacity:1;color:var(--accent)}
.inspector-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}
.cleanup-form [data-cleanup-field]:focus-within{color:var(--accent)}
@media(max-width:700px){.sheet-toolbar .sheet-search{min-width:100%;flex:1}}
@media(max-width:700px){.sheet-toolbar .toolbar-disclosure{position:static}}
@media(max-width:700px){.sheet-toolbar .sheet-query-bar{position:relative}}
@media(max-width:700px){.sheet-toolbar .toolbar-disclosure[open]{width:100%;order:10}}
@media(max-width:700px){.sheet-toolbar .toolbar-popover{position:static;width:100%!important;margin-top:8px;max-height:none}}
@media(max-width:700px){.sheet-toolbar .sheet-density{flex:1}}
@media(max-width:700px){.sheet-toolbar .column-options{grid-template-columns:1fr}}
@media(max-width:700px){.cell-copy{opacity:1;min-width:32px;height:32px}}
@media(pointer:coarse){.cell-copy{opacity:1;min-width:32px;height:32px}}
@media(max-width:700px){.cleanup-controls{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){.change-comparison{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){.cleanup-save{align-items:stretch}}
@media(max-width:700px){.cleanup-save>*{width:100%}}
@media(max-width:700px){.dataset-tabs>a{padding:12px 16px}}
@media(max-width:700px){.cleanup-form>.panel{padding:18px}}
@media(max-width:700px){.dataset-downloads{padding:18px}}
.button.danger:hover{background:var(--red-bg);color:var(--red);border-color:var(--red)}
.button:disabled:hover{opacity:1;background:var(--panel-raised);color:var(--control-disabled);border-color:var(--border);box-shadow:none;cursor:default}
.button.primary:disabled{opacity:1;background:var(--panel-raised);color:var(--control-disabled);border-color:var(--border);box-shadow:none;cursor:default}
.button.primary:disabled:hover{opacity:1;background:var(--panel-raised);color:var(--control-disabled);border-color:var(--border);box-shadow:none;cursor:default}
.button.disabled{opacity:1;background:var(--panel-raised);color:var(--control-disabled);border-color:var(--border);box-shadow:none;cursor:default}
.inline-form>label{margin-bottom:0;flex:1 1 180px;min-width:0}
.cleanup-controls>.button{min-height:40px;height:40px}
.sql-actions select{min-height:40px;height:40px}
.sql-actions>.button{min-height:40px;height:40px}
.inline-form>input{min-height:40px;height:40px}
.inline-form>select{min-height:40px;height:40px}
.inline-form>.button{min-height:40px;height:40px}
.inline-form:has(>label){align-items:end}
.workspace-source-label{display:flex;align-items:center;gap:12px;font-weight:650;padding:16px 0 10px}
.workspace-source-label span{font-size:12px;color:var(--muted);font-weight:400}
.cleanup-result-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.cleanup-preview{min-width:0;max-width:100%}
.cleanup-result-heading h2{font-size:17px;margin:0}
.cleanup-preview>.muted{font-size:12px;margin:8px 0 14px}
.cleanup-preview .record-scroll{max-height:560px;border:1px solid var(--border);border-radius:10px}
.cleanup-result-table{width:100%;border-collapse:collapse}
.cleanup-result-table th{position:sticky;top:0;z-index:2;background:var(--panel-raised);white-space:nowrap;text-align:left;padding:9px 12px;border-bottom:1px solid var(--border);font-size:13px;max-width:360px;overflow:hidden;text-overflow:ellipsis}
.cleanup-result-table td{padding:9px 12px;border-bottom:1px solid var(--border);font-size:13px;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cleanup-result-table tbody tr:nth-child(even){background:var(--panel-raised)}
.cleanup-result-table tbody tr:hover{background:var(--accent-bg)}
.cleanup-result-table .sheet-index{width:42px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}
.cleanup-result-table [data-preview-kind=number]{text-align:right;font-variant-numeric:tabular-nums}
.cleanup-result-table [data-preview-kind=missing]{color:var(--muted);font-style:italic}
.cleanup-result-table [data-preview-kind=null]{color:var(--muted);font-style:italic}
.cleanup-result-table [data-preview-kind=empty]{color:var(--muted);font-style:italic}
.cleanup-complete-sample{margin:12px 0;font-size:12px}
.cleanup-complete-sample>summary{cursor:pointer;color:var(--muted)}
.cleanup-complete-sample .code-block{max-height:300px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}
.cleanup-original-sample{margin:14px 0}
.workspace-edit-clean{display:none}
.workspace-download-clean{width:100%}
.download-chooser form[data-collection-download]{display:grid;gap:12px}
.download-chooser form[data-collection-download][hidden]{display:none!important}
.download-chooser [hidden]{display:none!important}
.download-chooser .download-submit{width:100%;margin:4px 0 0}
.download-chooser .download-scope{font-size:12px;margin:0}
.download-chooser #collection-download-status:empty{display:none}
.download-chooser .download-job{padding:0;background:transparent;border:0;margin:0}
.download-chooser .download-job>strong{font-size:18px}
.download-chooser .download-job progress{display:block;width:100%;margin:14px 0}
.download-chooser .download-job a.button.primary{display:block;text-align:center;margin-top:12px}
.download-chooser [data-download-options]{margin-top:10px}
@media(max-width:1000px){.cleanup-preview .record-scroll{max-height:360px}}
@media(max-width:600px){.workspace-source-label span{display:none}}
.prepared-status{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;padding:.5rem 0;font-size:.82rem}
.prepared-status form{margin:0}
.prepared-status small{color:var(--muted)}
.cleaned-context{margin:.2rem 0 .6rem}
.download-row-scope{display:block;margin:.7rem 0 0}
.download-row-scope select{margin:0}
.download-chooser [data-download-count]{margin:.5rem 0;color:var(--muted);font-size:.8rem}
.table-preferences{display:grid;gap:10px;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--border)}
.table-preferences label{display:flex;gap:8px;align-items:center;font-size:13px}
.table-preferences select{width:100%}
.download-source-options{font-size:13px}
.download-source-options>summary{cursor:pointer;color:var(--muted)}
.download-source-options[open]>label{margin-top:12px}
.download-notes>details{margin:12px 0}
.download-filename{font-size:14px;overflow-wrap:anywhere;margin:12px 0 4px}
.workspace-value-dialog{width:min(600px,calc(100vw - 24px));max-height:calc(100dvh - 24px)}
.workspace-value-dialog textarea{width:100%;height:auto!important;max-height:50dvh}
.workspace-value-dialog [role=status]{margin-left:12px;font-size:13px}
.workspace-action-icon{width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
input:not([type=checkbox]):not([type=radio]){min-height:var(--control-height);width:100%;padding:8px 10px;border-radius:var(--radius)}
.sql-actions>label{flex:1 1 180px;min-width:0}
.inline-form>button{flex:0 0 auto}
.sql-actions>button{flex:0 0 auto}
.page-heading h1{font-size:26px}
.page-heading>div{min-width:0}
.button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.quality-layout{max-width:none}
@media(max-width:767px){.button{min-height:44px}}
@media(max-width:767px){.button.small{min-height:40px}}
@media(max-width:767px){.inline-form{align-items:stretch}}
@media(max-width:767px){.sql-actions{align-items:stretch}}
@media(max-width:767px){.inline-form>label{flex-basis:100%}}
@media(max-width:767px){.sql-actions>label{flex-basis:100%}}
@media(max-width:767px){.page-heading{flex-wrap:wrap;gap:12px}}
@media(max-width:767px){.code-block{white-space:pre;overflow:auto}}


