@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:var(--font-sans);font-feature-settings:"cv05", "cv08";font-size:var(--font-size-13);background:var(--bg-database);color:var(--text);line-height:1.45}*{box-sizing:border-box}body{background:var(--bg-database);min-width:320px;min-height:100vh;color:var(--text);margin:0;scroll-padding-block-start:var(--a11y-focus-obscured-offset)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}:where(a,button,input,select,textarea,[tabindex]:not([tabindex="-1"])){scroll-margin-block-start:var(--a11y-focus-obscured-offset)}h1,h2,p{margin:0}h1{font-size:var(--font-size-24);letter-spacing:0;line-height:1.05}h2{font-size:var(--font-size-16);letter-spacing:0}code{overflow-wrap:anywhere;font-family:var(--font-mono);font-size:var(--font-size-12)}.skip-link{top:var(--space-3);left:var(--space-3);z-index:100;transform:translateY(calc(-100% - var(--space-6)));padding:var(--space-2) var(--space-3);border:1px solid var(--color-accent-primary);border-radius:var(--radius-sm);background:var(--color-bg-elevated);color:var(--color-text-primary);transition:transform var(--motion-fast) var(--ease-standard);font-weight:750;position:fixed}.skip-link:focus{outline:2px solid var(--color-accent-primary);outline-offset:2px;transform:translateY(0)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);background:var(--bg-database);height:100vh;display:grid;overflow:hidden}.fatal-error{min-height:100vh;padding:var(--space-6);place-items:center;display:grid}.fatal-error__panel{gap:var(--space-4);width:min(520px,100%);padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-surface);box-shadow:var(--shadow-lg);display:grid}.app-shell--collapsed{grid-template-columns:var(--sidebar-collapsed-width) minmax(0, 1fr)}.mobile-topbar,.mobile-menu-backdrop{display:none}.sidebar{border-right:1px solid var(--border);background:var(--surface-sidebar);min-width:0;height:100vh;transition:border-color var(--motion-fast) var(--ease-standard), transform var(--motion-base) var(--ease-emphasized);flex-direction:column;display:flex;position:relative;overflow:hidden}.sidebar:hover,.sidebar:focus-within{border-color:var(--color-border-strong)}.sidebar__brand{border-bottom:1px solid var(--border);align-items:center;gap:10px;min-height:64px;padding:14px 16px;display:flex}.brand-mark{border:1px solid color-mix(in srgb, var(--schema-accent) 25%, var(--border));border-radius:var(--radius);background:color-mix(in srgb, var(--schema-accent) 10%, transparent);width:30px;height:30px;box-shadow:var(--shadow-inset-highlight);flex:0 0 30px;place-items:center;display:grid;overflow:hidden}.brand-mark img{width:100%;height:100%;display:block}.brand-copy{min-width:0;display:grid}.brand-copy strong,.brand-copy span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.brand-copy span,.cell-subtle,.field-label,.eyebrow{color:var(--muted);font-size:var(--font-size-11)}.cell-subtle{font-family:var(--font-mono);display:block}.eyebrow{letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-weight:700;display:inline-flex}.sidebar__nav{align-content:start;gap:18px;padding:12px 8px;display:grid;overflow-y:auto}.nav-section{gap:4px;display:grid}.nav-section__label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;padding:0 8px;font-size:10px;font-weight:850}.nav-link{border-radius:var(--radius);min-height:34px;color:var(--muted);font-size:var(--font-size-13);outline-offset:3px;transition:background-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);align-items:center;gap:9px;padding:7px 8px;font-weight:650;display:flex;position:relative}.nav-link:before{content:none;position:absolute}.nav-link:hover,.nav-link.active,.nav-link[aria-current=page]{background:color-mix(in srgb, var(--primary) 12%, transparent);color:var(--schema-accent);text-decoration:none}.nav-link--disabled{cursor:not-allowed;opacity:.55}.nav-link--disabled:hover{color:var(--muted);background:0 0}.sidebar__selector{gap:var(--space-2);border-top:1px solid var(--border);padding:12px;display:grid}.role-badge{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:32px;padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font-size:var(--font-size-12);text-transform:uppercase;font-weight:800;display:flex}.role-badge strong{color:var(--text);font-size:var(--font-size-12);text-transform:none}.role-badge--admin{border-color:color-mix(in srgb, var(--success) 35%, var(--border));background:var(--success-soft);color:var(--success-text)}.role-badge--operator{border-color:color-mix(in srgb, var(--info) 35%, var(--border));background:var(--info-soft);color:var(--info-text)}.role-badge--viewer{border-color:color-mix(in srgb, var(--warning) 35%, var(--border));background:var(--warning-soft);color:var(--warning-text)}.sidebar__collapse{border-radius:var(--radius);color:var(--muted);transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);background:0 0;border:1px solid #0000;align-items:center;gap:8px;margin:auto 12px 12px;padding:7px 8px;display:flex}.sidebar__collapse:hover{background:color-mix(in srgb, var(--primary) 8%, transparent);color:var(--text);border-color:#0000;transform:translateY(-1px)}.app-shell--collapsed .brand-copy,.app-shell--collapsed .nav-section__label,.app-shell--collapsed .nav-link span,.app-shell--collapsed .target-selector span,.app-shell--collapsed .target-selector select,.app-shell--collapsed .sidebar__collapse span{display:none}.app-shell--collapsed .sidebar__brand,.app-shell--collapsed .nav-link,.app-shell--collapsed .sidebar__collapse{justify-content:center}.app-main{flex-direction:column;min-width:0;min-height:0;padding:0;display:flex}.app-topbar{justify-content:space-between;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--border);background:var(--bg-database);width:100%;min-height:44px;margin:0 auto;padding:0 24px;display:flex}.app-topbar__spacer{flex:1;min-width:0}.session-context{justify-content:flex-end;align-items:center;gap:var(--space-2);min-width:0;display:flex}.session-context__subject{max-width:260px;color:var(--muted);font-family:var(--font-mono);font-size:var(--font-size-11);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.session-context__logout{white-space:nowrap}.auth-shell{min-height:100vh;padding:var(--space-6);background:var(--bg-database);place-items:center;display:grid}.auth-panel{gap:var(--space-5);width:min(440px,100%);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-lg);display:grid}.auth-brand{align-items:center;gap:var(--space-3);min-width:0;display:flex}.auth-brand__mark{flex-basis:48px;width:48px;height:48px}.auth-copy{gap:var(--space-2);display:grid}.auth-copy p{color:var(--muted)}.auth-form{gap:var(--space-4);display:grid}.auth-button{width:100%}.main-scroll{min-height:0;scrollbar-gutter:stable;scroll-behavior:smooth;flex:1;scroll-padding-block-start:var(--a11y-focus-obscured-offset);overflow:auto}.app-breadcrumbs{width:min(1040px,100%);margin:0 auto;padding:18px 32px 0}.app-breadcrumbs ol{align-items:center;gap:6px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.app-breadcrumbs li{min-width:0;color:var(--muted);font-size:var(--font-size-12);align-items:center;gap:6px;font-weight:750;display:flex}.app-breadcrumbs a,.app-breadcrumbs span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-breadcrumbs a{color:var(--muted)}.app-breadcrumbs a:hover,.app-breadcrumbs a:focus-visible{color:var(--schema-accent);text-decoration:none}.app-breadcrumbs [aria-current=page]{color:var(--text)}.page{gap:24px;width:min(1040px,100%);margin:0 auto;padding:14px 32px 32px;display:grid}.page>*{animation:surface-enter var(--motion-slow) var(--ease-emphasized) both}.page>:nth-child(2){animation-delay:35ms}.page>:nth-child(3){animation-delay:70ms}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;min-width:0;display:flex}.page-header>div{min-width:min(100%,280px)}.page-header>.row-actions{justify-content:flex-end;max-width:100%}.toolbar,.row-actions,.form-actions,.table-toolbar{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.toolbar>*,.row-actions>*,.form-actions>*,.table-toolbar>*{min-width:0}.section-block{gap:12px;display:grid}.schema-upgrade-page{max-width:1180px}.upgrade-target-picker{gap:var(--space-1);min-width:220px;color:var(--muted);font-size:var(--font-size-12);font-weight:750;display:grid}.upgrade-progress{z-index:20;align-items:center;gap:var(--space-5);padding:10px var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb, var(--surface-strong) 94%, transparent);box-shadow:0 8px 24px color-mix(in srgb, var(--bg-database) 72%, transparent);-webkit-backdrop-filter:blur(var(--elevation-blur-md));backdrop-filter:blur(var(--elevation-blur-md));grid-template-columns:auto minmax(0,1fr);display:grid;position:sticky;top:0}.upgrade-progress__summary{gap:2px;min-width:168px;display:grid}.upgrade-progress__summary>span{color:var(--muted);font-size:var(--font-size-11);letter-spacing:.07em;text-transform:uppercase;font-weight:800}.upgrade-progress__summary>strong{font-size:var(--font-size-13);white-space:nowrap}.upgrade-stepper{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.upgrade-step{align-items:center;gap:var(--space-2);min-width:0;min-height:44px;padding:6px var(--space-3);color:var(--muted);display:flex;position:relative}.upgrade-step:not(:last-child):after{background:var(--border);content:"";width:1px;height:20px;position:absolute;top:50%;right:-1px;transform:translateY(-50%)}.upgrade-step__marker{border:1px solid var(--border);width:24px;height:24px;font-family:var(--font-mono);font-size:var(--font-size-12);border-radius:50%;flex:0 0 24px;place-items:center;font-weight:800;display:inline-grid}.upgrade-step__marker svg{width:14px;height:14px}.upgrade-step__copy{gap:0;min-width:0;display:grid}.upgrade-step__copy strong,.upgrade-step__copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upgrade-step__copy strong{font-size:var(--font-size-13)}.upgrade-step__copy small{color:var(--muted);font-size:var(--font-size-11)}.upgrade-step--active{color:var(--text)}.upgrade-step--active .upgrade-step__marker{border-color:var(--primary);background:var(--primary);color:var(--primary-contrast);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 14%, transparent)}.upgrade-step--done .upgrade-step__marker{border-color:var(--success);background:var(--success-soft);color:var(--success-text)}.upgrade-step--done .upgrade-step__copy strong{color:var(--text)}.upgrade-pane,.upgrade-summary{gap:var(--space-4);display:grid}.upgrade-pane{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-strong)}.upgrade-object__label{align-items:center;gap:var(--space-2);cursor:pointer;grid-template-columns:16px 16px minmax(0,1fr) max-content;width:100%;min-width:0;display:grid}.upgrade-object__checkbox{appearance:auto;width:16px;min-width:16px;height:16px;min-height:16px;accent-color:var(--primary);background:0 0;border:0;border-radius:3px;place-self:center;margin:0;padding:0}.upgrade-object__icon{width:16px;min-width:16px;height:16px;color:var(--muted);display:block}.upgrade-object__label code{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.upgrade-object__label>span{color:var(--muted);font-size:var(--font-size-12);text-transform:capitalize}.upgrade-object--invalid{box-shadow:inset 3px 0 var(--danger);background:var(--danger-soft)}.upgrade-actions{justify-content:flex-end;align-items:center;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border);display:flex}.upgrade-actions>span{color:var(--muted);font-size:var(--font-size-13);margin-right:auto}.upgrade-metrics{gap:var(--space-3);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.upgrade-metrics .summary-card>span:last-child{color:var(--muted);font-size:var(--font-size-12)}.section-block>h2{font-size:var(--font-size-16);font-weight:700}.section-block__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.section-block__header>div{gap:var(--space-1);min-width:min(100%,280px);display:grid}.section-block__header h2{font-size:var(--font-size-16);font-weight:750}.section-block__header p{max-width:72ch;color:var(--muted);font-size:var(--font-size-13);line-height:1.5}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.detail-grid>div,.metric-grid>div{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0;transition:border-color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);gap:4px;padding:16px;display:grid}.detail-grid>div:hover,.metric-grid>div:hover{border-color:var(--color-border-strong);transform:translateY(-1px)}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.metric-grid strong{font-family:var(--font-mono);font-size:var(--font-size-24)}.overview-summary{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.system-health-card,.active-target-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0}.system-health-card{grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px;display:grid}.system-health-card strong,.active-target-card>strong{color:var(--text);font-weight:750;display:block}.system-health-card p,.active-target-card p{color:var(--muted);font-size:var(--font-size-12);margin-top:3px;line-height:1.5}.system-health-card dl{border-left:1px solid var(--border);gap:18px;margin:0;padding-left:18px;display:flex}.system-health-card dl div{text-align:right;gap:2px;display:grid}.system-health-card dt{color:var(--muted);font-size:var(--font-size-11);letter-spacing:.04em;text-transform:uppercase;font-weight:750}.system-health-card dd{color:var(--text);font-family:var(--font-mono);font-size:var(--font-size-24);font-weight:750;line-height:1}.health-orb{border:1px solid;border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.health-orb--ok{background:var(--success-soft);color:var(--success-text)}.health-orb--warning{background:var(--warning-soft);color:var(--warning-text)}.health-orb--error{background:var(--danger-soft);color:var(--danger-text)}.active-target-card{align-content:start;gap:3px;padding:16px;display:grid}.active-target-card>strong{color:var(--schema-accent);font-family:var(--font-mono);font-size:var(--font-size-16)}.active-target-card>div{border-top:1px solid var(--border);color:var(--muted);font-size:var(--font-size-12);justify-content:space-between;gap:12px;margin-top:12px;padding-top:12px;font-weight:750;display:flex}.active-target-card code{color:var(--text)}.overview-runs{gap:var(--space-3)}.overview-runs__header{align-items:center}.overview-runs .data-table{min-width:980px}.overview-runs .data-table th:first-child,.overview-runs .data-table td:first-child{width:20%}.overview-runs .data-table th:nth-child(2),.overview-runs .data-table td:nth-child(2){width:14%}.overview-runs .data-table th:nth-child(3),.overview-runs .data-table td:nth-child(3){width:17%}.overview-runs .data-table th:nth-child(4),.overview-runs .data-table td:nth-child(4){width:13%}.overview-runs .data-table th:nth-child(5),.overview-runs .data-table td:nth-child(5){width:24%}.overview-runs .data-table th:nth-child(6),.overview-runs .data-table td:nth-child(6){width:12%}.run-source-cell{gap:2px;min-width:0;display:grid}.run-source-cell>a,.run-source-cell>small,.run-reason-link{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.run-source-cell>a{font-weight:750}.run-source-cell>small{color:var(--muted);font-size:var(--font-size-11)}.run-reason-link{color:var(--warning-text);font-size:var(--font-size-12);font-weight:700;display:block}.row--interrupted{background:color-mix(in srgb, var(--warning-soft) 38%, transparent)}.row--interrupted td:first-child{box-shadow:inset 3px 0 var(--warning)}.run-trend{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb, var(--surface-strong) 42%, var(--surface));display:grid}.run-trend__header,.run-trend__legend,.run-trend__legend>span{align-items:center;display:flex}.run-trend__header{justify-content:space-between;gap:var(--space-3);color:var(--muted);font-size:var(--font-size-11);letter-spacing:.04em;text-transform:uppercase;font-weight:800}.run-trend__legend{gap:var(--space-3);letter-spacing:0;text-transform:none}.run-trend__legend>span{gap:var(--space-1)}.run-trend__key{border-radius:2px;width:8px;height:8px;display:block}.run-trend__key--completed,.run-trend__segment--completed{background:var(--success)}.run-trend__key--interrupted,.run-trend__segment--interrupted{background:var(--warning)}.run-trend__plot{gap:var(--space-2);grid-template-columns:repeat(7,minmax(24px,1fr));min-height:72px;display:grid}.run-trend__day{min-width:0;color:var(--muted);font-size:var(--font-size-11);text-align:center;grid-template-rows:52px auto;gap:4px;display:grid}.run-trend__track{background:color-mix(in srgb, var(--border) 55%, transparent);border-radius:3px;align-items:flex-end;display:flex;overflow:hidden}.run-trend__bar{border-radius:3px 3px 0 0;flex-direction:column-reverse;width:100%;min-height:2px;display:flex;overflow:hidden}.run-trend__segment{flex-basis:0;min-height:3px}.overview-activity{border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.overview-activity>summary{align-items:center;gap:var(--space-3);min-height:48px;padding:var(--space-2) 0;color:var(--text);cursor:pointer;list-style:none;display:flex}.overview-activity>summary::-webkit-details-marker{display:none}.overview-activity>summary>span:first-child{gap:1px;display:grid}.overview-activity>summary strong{font-size:var(--font-size-14)}.overview-activity>summary small,.overview-activity__count{color:var(--muted);font-size:var(--font-size-11)}.overview-activity__count{margin-left:auto;font-weight:750}.overview-activity>summary:after{min-width:34px;color:var(--schema-accent);content:"Show";font-size:var(--font-size-11);text-align:right;font-weight:800}.overview-activity[open]>summary:after{content:"Hide"}.overview-activity__body{padding:0 0 var(--space-4)}.activity-table--compact .data-table{min-width:620px;font-size:var(--font-size-12)}.activity-table--compact .data-table th,.activity-table--compact .data-table td{padding:6px 12px}.run-failure{gap:var(--space-3);scroll-margin-top:var(--a11y-focus-obscured-offset);padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb, var(--warning) 35%, var(--border));border-radius:var(--radius);background:var(--warning-soft);color:var(--warning-text);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.run-failure--error{border-color:color-mix(in srgb, var(--danger) 35%, var(--border));background:var(--danger-soft);color:var(--danger-text)}.run-failure p{color:inherit;font-size:var(--font-size-12);margin-top:2px}.button,.icon-button,.link-button{border-radius:var(--radius-sm);transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;display:inline-flex}.button{min-height:max(38px, var(--a11y-target-min));padding:7px 13px;font-weight:700}.button--small{min-height:max(32px, var(--a11y-target-min));font-size:var(--font-size-12);padding:6px 10px}.button--primary{background:var(--primary);color:var(--primary-contrast);border-color:var(--primary)}.button--primary:hover{background:var(--primary-strong);text-decoration:none}.button:hover:not(:disabled),.icon-button:hover:not(:disabled){transform:translateY(-1px)}.button:active:not(:disabled),.icon-button:active:not(:disabled){transform:translateY(0)}.button--secondary{border-color:var(--border);background:var(--surface-strong);color:var(--text)}.button--secondary:hover,.icon-button:hover{border-color:var(--color-border-strong);background:color-mix(in srgb, var(--primary) 8%, var(--surface-strong))}.button--ghost{color:var(--muted);background:0 0}.button--ghost:hover{background:color-mix(in srgb, var(--primary) 10%, transparent);color:var(--text)}.button--danger{background:var(--danger);color:var(--danger-contrast)}.button--danger:hover{background:var(--danger-strong)}.button:disabled,.icon-button:disabled{opacity:.55}.icon-button{width:max(38px, var(--a11y-target-min));height:max(38px, var(--a11y-target-min));border-color:var(--border);background:var(--surface);color:var(--text);padding:0}.icon-button--danger{color:var(--danger-text)}.link-button{color:var(--primary);text-align:left;background:0 0;border:0;padding:0}.link-button--active{color:var(--schema-accent);font-weight:800}.button:focus-visible,.ui-button:focus-visible,.icon-button:focus-visible,.link-button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:var(--a11y-focus-ring-width) solid var(--color-accent-primary);outline-offset:var(--a11y-focus-ring-offset)}.ui-button{--button-bg:transparent;--button-bg-hover:transparent;--button-border:transparent;--button-color:var(--color-text-primary);justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--button-border);border-radius:var(--radius-sm);background:var(--button-bg);min-width:max-content;color:var(--button-color);font-family:var(--font-sans);font-size:var(--button-font-size,var(--font-size-13));transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);font-weight:650;line-height:1;text-decoration:none;display:inline-flex}.ui-button:hover:not(:disabled){background:var(--button-bg-hover);text-decoration:none;transform:translateY(-1px)}.ui-button:active:not(:disabled){transform:translateY(0)}.ui-button:disabled,.ui-button[aria-disabled=true]{cursor:not-allowed;opacity:.58}.ui-button--sm{min-height:max(32px, var(--a11y-target-min));padding:0 var(--space-3);--button-font-size:var(--font-size-12)}.ui-button--md{min-height:max(40px, var(--a11y-target-min));padding:0 var(--space-4)}.ui-button--lg{min-height:max(44px, var(--a11y-target-comfort));padding:0 var(--space-6);--button-font-size:var(--font-size-14)}.ui-button--primary{--button-bg:var(--color-accent-primary);--button-bg-hover:var(--color-accent-primary-hover);--button-border:var(--color-accent-primary);--button-color:var(--color-accent-contrast)}.ui-button--secondary{--button-bg:var(--color-bg-elevated);--button-bg-hover:color-mix(in srgb, var(--color-accent-primary) 8%, var(--color-bg-elevated));--button-border:var(--color-border);--button-color:var(--color-text-primary)}.ui-button--ghost{--button-bg:transparent;--button-bg-hover:color-mix(in srgb, var(--color-accent-primary) 10%, transparent);--button-border:transparent;--button-color:var(--color-text-secondary)}.ui-button--danger{--button-bg:var(--color-danger);--button-bg-hover:var(--color-danger-hover);--button-border:var(--color-danger);--button-color:var(--color-danger-contrast)}.ui-badge{--badge-bg:var(--color-bg-elevated);--badge-border:var(--color-border);--badge-color:var(--color-text-secondary);align-items:center;gap:var(--space-1);width:fit-content;min-height:24px;padding:0 var(--space-2);border:1px solid var(--badge-border);border-radius:var(--radius-sm);background:var(--badge-bg);color:var(--badge-color);font-family:var(--font-sans);font-size:var(--font-size-12);white-space:nowrap;font-weight:700;line-height:1;display:inline-flex}.ui-badge--success{--badge-bg:color-mix(in srgb, var(--color-success) 16%, transparent);--badge-border:color-mix(in srgb, var(--color-success) 42%, var(--color-border));--badge-color:var(--color-success-text)}.ui-badge--warning{--badge-bg:color-mix(in srgb, var(--color-warning) 16%, transparent);--badge-border:color-mix(in srgb, var(--color-warning) 42%, var(--color-border));--badge-color:var(--color-warning-text)}.ui-badge--danger{--badge-bg:color-mix(in srgb, var(--color-danger) 16%, transparent);--badge-border:color-mix(in srgb, var(--color-danger) 42%, var(--color-border));--badge-color:var(--color-danger-text)}.ui-badge--info{--badge-bg:color-mix(in srgb, var(--color-info) 16%, transparent);--badge-border:color-mix(in srgb, var(--color-info) 42%, var(--color-border));--badge-color:var(--color-info-text)}.ui-badge--mono{font-family:var(--font-mono);font-size:var(--font-size-11);letter-spacing:0;text-transform:uppercase}.ui-empty-state{justify-items:center;gap:var(--space-3);min-height:128px;padding:var(--space-6);border:1px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-text-secondary);text-align:center;display:grid}.ui-empty-state__icon{color:var(--empty-state-icon-color,var(--color-text-muted))}.ui-empty-state__title{color:var(--color-text-primary);font-size:var(--font-size-16);font-weight:700}.ui-empty-state__body{max-width:56ch;font-size:var(--font-size-13)}.ui-input-field{gap:var(--space-2);color:var(--color-text-primary);font-weight:650;display:grid}.ui-input-control{--input-bg:var(--color-bg-surface);--input-border:var(--color-border);--input-border-focus:var(--color-accent-primary);--input-color:var(--color-text-primary);border:1px solid var(--input-border);border-radius:var(--radius-sm);background:var(--input-bg);min-height:40px;color:var(--input-color);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.ui-input-control:focus-within{border-color:var(--input-border-focus);outline:2px solid color-mix(in srgb, var(--input-border-focus) 28%, transparent);outline-offset:2px}.ui-input{width:100%;min-width:0;min-height:38px;padding:0 var(--space-3);border-radius:var(--radius-sm);color:inherit;font:inherit;background:0 0;border:0}.ui-input:focus{outline:none}.ui-input-slot{padding-inline:var(--space-3);color:var(--color-text-secondary);align-items:center;display:inline-flex}.ui-input-clear{min-width:32px;height:32px;margin-right:var(--space-1);border-radius:var(--radius-sm);color:var(--color-text-secondary);background:0 0;border:0}.ui-input-clear:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.ui-input-error{color:var(--color-danger-text);font-size:var(--font-size-12)}.ui-progress{gap:var(--space-2);display:grid}.ui-progress__track{background:color-mix(in srgb, var(--color-bg-elevated) 82%, var(--color-border));border-radius:999px;height:12px;overflow:hidden}.ui-progress__bar{border-radius:inherit;background:var(--color-accent-primary);height:100%;transition:width var(--motion-base) var(--ease-standard)}.ui-progress__label{color:var(--color-text-secondary);font-size:var(--font-size-12);font-weight:650}.ui-spinner{width:var(--spinner-size,16px);height:var(--spinner-size,16px);border:2px solid color-mix(in srgb, currentcolor 24%, transparent);border-top-color:currentColor;border-radius:999px;animation:.76s linear infinite spin;display:inline-block}.glass-surface{border:1px solid var(--color-border);background:var(--surface-glass);-webkit-backdrop-filter:blur(var(--elevation-blur-md));backdrop-filter:blur(var(--elevation-blur-md))}input,select{width:100%;min-width:0;min-height:max(36px, var(--a11y-target-min));border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);color:var(--text);transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);padding:7px 10px}input:hover:not(:disabled),select:hover:not(:disabled){border-color:var(--color-border-strong)}input:disabled,select:disabled{opacity:.62}label{min-width:0;color:var(--text);gap:6px;font-weight:650;display:grid}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.form-field--wide{grid-column:1/-1}.form-hint{color:var(--color-text-secondary);font-size:var(--font-size-12)}.connection-form{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:16px;padding:18px;display:grid}.settings-form{gap:16px;max-width:720px;display:grid}.settings-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:16px;display:grid}.settings-nav{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:6px;padding:10px;display:grid;position:sticky;top:24px}.settings-nav__item{border-radius:var(--radius-sm);min-height:36px;color:var(--text);align-items:center;padding:8px 10px;font-weight:700;display:flex}.settings-nav__item:hover,.settings-nav__item:focus-visible{background:var(--primary-soft);color:var(--schema-accent);text-decoration:none}.settings-content,.settings-panel{gap:16px;min-width:0;display:grid}.settings-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:18px}.settings-panel__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.settings-target-summary{grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:12px;max-width:332px;display:grid}.settings-target-summary>div{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);gap:4px;padding:12px;display:grid}.settings-target-summary strong{font-family:var(--font-mono);font-size:var(--font-size-20)}.settings-target-list{gap:8px;display:grid}.settings-target-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);min-height:48px;color:var(--text);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.settings-target-row:hover{border-color:var(--color-border-strong);text-decoration:none}.settings-target-row>span:first-child{gap:2px;min-width:0;display:grid}.settings-target-row strong,.settings-target-row span span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.settings-target-row span span{color:var(--muted);font-size:var(--font-size-12)}.password-input{grid-template-columns:minmax(0,1fr) 38px;gap:6px;display:grid}.checkbox-row{align-items:center;gap:8px;font-weight:650;display:flex}.checkbox-row input{width:var(--a11y-target-min);min-height:var(--a11y-target-min)}.masked-secret{border:1px dashed var(--border);border-radius:var(--radius);color:var(--muted);background:var(--surface-strong);padding:12px}.field-error{color:var(--danger-text);font-size:var(--font-size-12)}.inline-result,.status-banner{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);align-items:center;gap:8px;padding:9px 11px;font-weight:650;line-height:1.35;display:inline-flex}.inline-result--ok,.status-banner--ok{border-color:color-mix(in srgb, var(--success) 35%, var(--border));background:var(--success-soft);color:var(--success-text)}.inline-result--error,.status-banner--error{border-color:color-mix(in srgb, var(--danger) 35%, var(--border));background:var(--danger-soft);color:var(--danger-text)}.error-gate{z-index:20;border-bottom:1px solid color-mix(in srgb, var(--danger) 38%, var(--border));background:var(--danger-soft);color:var(--danger-text);align-items:center;gap:12px;padding:10px 16px;display:flex;position:sticky;top:0}.error-gate div{flex:1;min-width:0;display:grid}.error-gate span{color:var(--text);font-size:var(--font-size-13)}.status-badge{white-space:nowrap;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);width:fit-content;min-width:0;color:var(--muted);font-size:var(--font-size-12);align-items:center;gap:7px;padding:4px 8px;font-weight:750;display:inline-flex}.status-badge svg{flex:none}.status-badge__label{text-overflow:ellipsis;min-width:0;overflow:hidden}.status-badge--running svg{animation:1.1s infinite pulse}.status-badge--completed,.status-badge--applied,.status-badge--clean,.status-badge--connected,.status-badge--in_sync,.status-badge--added{background:var(--success-soft);color:var(--success-text)}.status-badge--warning,.status-badge--warnings,.status-badge--partial,.status-badge--drift_detected,.status-badge--missing_actual,.status-badge--untracked_actual,.status-badge--definition_changed,.status-badge--pending_or_failed_control,.status-badge--changed{background:var(--warning-soft);color:var(--warning-text)}.status-badge--failed,.status-badge--error,.status-badge--errors,.status-badge--aborted,.status-badge--removed{background:var(--danger-soft);color:var(--danger-text)}.status-badge--running,.status-badge--pending,.status-badge--defined,.status-badge--pending_migration{background:var(--info-soft);color:var(--info-text)}.status-badge--unknown{background:var(--surface-strong);color:var(--muted)}.table-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:auto}.table-panel__scroller{scrollbar-gutter:stable;max-height:min(720px,100vh - 280px);overflow:auto}.table-panel__scroller--virtual{scrollbar-gutter:stable;max-height:min(640px,100vh - 320px);overflow:auto}.table-toolbar{border-bottom:1px solid var(--border);justify-content:space-between;padding:12px}.data-table{table-layout:fixed;border-collapse:collapse;width:100%;min-width:680px}.data-table tbody tr{transition:background-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard)}.data-table tbody tr:hover{background:color-mix(in srgb, var(--primary) 5%, transparent)}.data-table tbody tr[data-selected=true]{background:color-mix(in srgb, var(--schema-accent) 10%, var(--surface))}.data-table tbody tr[data-selected=true] td:first-child{box-shadow:inset 3px 0 0 var(--schema-accent)}.data-table th,.data-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;min-width:0;padding:8px 14px}.data-table thead th{z-index:2;background:color-mix(in srgb, var(--surface-strong) 70%, var(--surface));color:var(--muted);font-size:var(--font-size-11);letter-spacing:.04em;text-transform:uppercase;font-weight:800;position:sticky;top:0}.data-table td code{text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;max-width:100%;display:inline-block;overflow:hidden}.data-table td time{color:var(--muted);font-size:var(--font-size-12);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.data-table .link-button{justify-content:flex-start;min-width:0;max-width:100%}.data-table .link-button code{display:block}.data-table .status-badge{min-width:min(90px,100%);max-width:100%}.data-table thead th button{min-width:0;max-width:100%;color:inherit;font-weight:inherit;text-align:left;background:0 0;border:0;padding:0;overflow:hidden}.table-select{width:min(220px,100%);min-height:32px;font-size:var(--font-size-12);padding-block:5px}.data-table__sort{cursor:pointer;display:block}.data-table__sort-content{align-items:center;gap:var(--space-1);width:100%;min-width:0;max-width:100%;display:inline-flex}.data-table__sort-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.data-table__sort-icon{color:var(--schema-accent);flex:none}.data-table__group-row th{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface-strong) 72%, var(--surface));padding:0}.data-table__group-toggle{align-items:center;gap:var(--space-2);width:100%;min-height:38px;color:var(--text);text-align:left;background:0 0;border:0;padding:8px 12px;font-weight:800;display:flex}.data-table__group-toggle:hover{background:color-mix(in srgb, var(--primary) 6%, transparent)}.data-table__group-toggle span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.data-table__group-toggle strong{color:var(--muted);font-size:var(--font-size-12);white-space:nowrap;margin-left:auto}.data-table__spacer td{border-bottom:0;padding:0}.data-table__empty{box-shadow:none;margin:12px}.schema-workspace{gap:var(--space-6);grid-template-columns:minmax(190px,240px) minmax(0,1fr);align-items:start;display:grid}.schema-tree{top:var(--space-6);gap:var(--space-2);flex-direction:column;min-width:0;display:flex;position:sticky}.schema-tree__item{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:54px;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);color:var(--muted);font-size:var(--font-size-13);text-align:left;transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);font-weight:750;display:flex}.schema-tree__item:hover,.schema-tree__item--active{border-color:color-mix(in srgb, var(--schema-accent) 30%, var(--border));background:color-mix(in srgb, var(--schema-accent) 10%, var(--surface));color:var(--schema-accent)}.schema-tree__item--active{font-weight:800}.schema-tree__label{align-items:center;gap:var(--space-2);text-overflow:ellipsis;white-space:nowrap;min-width:0;display:inline-flex;overflow:hidden}.schema-tree__label svg{flex:none}.schema-tree__item strong{font-family:var(--font-mono);font-size:var(--font-size-14);color:var(--muted);flex:none}.schema-workspace__main,.drift-workspace{gap:var(--space-3);min-width:0;display:grid}.drift-workspace{container:drift-workspace/inline-size}.schema-workspace__main{container:schema-table/inline-size}.schema-table-toolbar{gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:minmax(260px,520px) minmax(190px,1fr);align-items:end;display:grid}.schema-table-toolbar__filter{max-width:none}.schema-table-toolbar__meta{align-items:center;gap:var(--space-2);min-width:0;min-height:38px;color:var(--muted);font-size:var(--font-size-12);flex-wrap:wrap;font-weight:800;display:flex}.schema-table-toolbar__meta strong{color:var(--text);font-family:var(--font-mono);font-size:var(--font-size-16)}.schema-table-toolbar__meta span{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);color:var(--muted);padding:3px 7px}.schema-workspace__main .data-table{min-width:900px}.schema-table__object{width:340px}.schema-table__type{width:150px}.schema-table__schema{width:130px}.schema-table__status{width:150px}.schema-table__checked{width:170px}@container schema-table (width<=620px){.schema-table-toolbar{grid-template-columns:1fr}}@container schema-table (width<=560px){.schema-table__checked{display:none}.schema-workspace__main .data-table{min-width:760px}}@container schema-table (width<=520px){.schema-table__schema{display:none}.schema-workspace__main .data-table{min-width:640px}}.drift-page-stack{gap:var(--space-4);min-width:0;display:grid}.control-summary{gap:var(--space-3);min-width:0;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);display:grid}.control-summary__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.control-summary h2{font-size:var(--font-size-16)}.control-summary__grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,120px),1fr));display:grid}.control-summary__metric{min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);gap:2px;display:grid}.control-summary__metric--success{border-color:color-mix(in srgb, var(--success) 22%, var(--border));background:color-mix(in srgb, var(--success-soft) 56%, var(--surface-strong))}.control-summary__metric--warning{border-color:color-mix(in srgb, var(--warning) 24%, var(--border));background:color-mix(in srgb, var(--warning-soft) 56%, var(--surface-strong))}.control-summary__metric--error{border-color:color-mix(in srgb, var(--danger) 24%, var(--border));background:color-mix(in srgb, var(--danger-soft) 56%, var(--surface-strong))}.control-summary__metric span,.control-summary__timestamps dt,.control-summary__failed span{color:var(--muted);font-size:var(--font-size-12);font-weight:800}.control-summary__metric strong{font-family:var(--font-mono);font-size:var(--font-size-18)}.control-summary__metric--success strong{color:var(--success-text)}.control-summary__metric--warning strong{color:var(--warning-text)}.control-summary__metric--error strong{color:var(--danger-text)}.control-summary__timestamps{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));margin:0;display:grid}.control-summary__timestamps div,.control-summary__failed{gap:var(--space-1);min-width:0;display:grid}.control-summary__failed div{gap:var(--space-2);flex-wrap:wrap;display:flex}.control-summary__failed code{padding:2px var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong)}.schema-workspace__detail{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.object-detail{gap:var(--space-4);min-width:0;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);flex-direction:column;display:flex;overflow:hidden;container:object-detail/inline-size}.object-detail__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);min-width:0;padding-bottom:var(--space-3);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.object-detail__header>div{flex:180px;min-width:0}.object-detail__header>.status-badge{flex:0 auto}.object-detail h2{font-size:var(--font-size-16)}.object-detail h2 code,.object-detail .detail-grid code{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.object-detail .detail-grid{grid-template-columns:1fr}.object-detail .detail-grid>div{min-width:0}dt,dd{margin:0}.object-type-chip{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);min-width:0;max-width:100%;min-height:24px;color:var(--muted);font-size:var(--font-size-12);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;padding:3px 7px;font-weight:800;display:inline-flex;overflow:hidden}.object-type-chip__icon{color:var(--schema-accent);opacity:.78;flex:none}.drift-table__type .object-type-chip,.drift-table__status .status-badge{justify-content:flex-start;width:100%;display:inline-flex}.drift-toolbar{justify-content:space-between;align-items:end;gap:var(--space-3);min-width:0;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);display:flex}.drift-filter{width:min(360px,100%);max-width:none}.drift-workspace .data-table{min-width:1130px}.drift-table__object{width:32%;min-width:280px}.drift-table__type{white-space:nowrap;width:120px}.drift-table__schema{white-space:nowrap;width:110px}.drift-table__status{white-space:nowrap;width:165px}.drift-table__detected{white-space:nowrap;width:180px}.drift-table__action{white-space:nowrap;width:112px}.drift-table__source{width:24%}.drift-table__source code{max-width:280px;display:block}.drift-object-button{width:100%;min-width:0;display:block}.drift-object-name{white-space:normal;line-height:1.45;display:block}.drift-run-button{width:84px}.sql-preview-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.object-detail .sql-preview-grid{grid-template-columns:1fr}.drift-detail .sql-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sql-preview{border:1px solid var(--border);border-radius:var(--radius);background:var(--color-bg-base);min-width:0;display:grid;overflow:hidden}.sql-preview__toolbar{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);background:var(--surface-strong);color:var(--muted);font-size:var(--font-size-12);font-weight:800;display:flex}.sql-preview__toolbar span{align-items:center;gap:var(--space-2);display:inline-flex}.sql-preview__code,.sql-preview__fallback{min-width:0;max-height:360px;margin:0;overflow:auto}.sql-preview__code pre,.sql-preview__fallback{padding:var(--space-3);font-family:var(--font-mono);font-size:var(--font-size-12);margin:0;line-height:1.55;background:var(--color-bg-base)!important}.migration-timeline{gap:var(--space-2);min-width:0;max-height:220px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.migration-timeline li{gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-strong);grid-template-columns:20px minmax(0,1fr);display:grid}.migration-timeline li>div{gap:2px;min-width:0;display:grid}.migration-timeline strong,.migration-timeline span,.migration-timeline time{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.migration-timeline span,.migration-timeline time{color:var(--muted);font-size:var(--font-size-12)}.drift-detail{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);min-width:0;box-shadow:var(--shadow-sm);transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);overflow:hidden;container:drift-detail/inline-size}.drift-detail:hover,.drift-detail:focus-within,.drift-detail[open]{border-color:var(--color-border-strong)}.drift-detail__summary{gap:var(--space-3);min-height:48px;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.drift-detail__title{align-items:center;gap:var(--space-2);min-width:0;display:inline-flex}.drift-detail__title strong{overflow-wrap:anywhere;white-space:normal;min-width:0}.drift-detail__meta{min-height:24px;padding:2px var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);color:var(--muted);font-size:var(--font-size-12);white-space:nowrap;align-items:center;font-weight:800;display:inline-flex}.drift-detail .sql-preview-grid{padding:0 var(--space-4) var(--space-4)}.drift-detail__control{margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);color:var(--muted);font-size:var(--font-size-13);font-weight:750}.drift-detail__control strong{color:var(--text);font-family:var(--font-mono)}.drift-chip-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.drift-chip{align-items:center;gap:var(--space-2);min-height:36px;padding:var(--space-1) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-size:var(--font-size-13);transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);font-weight:750;display:inline-flex}.drift-chip:hover,.drift-chip--active{border-color:var(--color-border-strong);background:var(--surface-strong)}.drift-section-header{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.drift-section-header__title{font-size:var(--font-size-16);letter-spacing:0;margin:0;font-weight:700}.drift-section-header__description{color:var(--muted);font-size:var(--font-size-12);margin-top:4px;margin-bottom:0}.drift-chip--active{color:var(--schema-accent)}.drift-chip strong{font-family:var(--font-mono)}.row--drift-missing_actual,.row--drift-untracked_actual,.row--drift-definition_changed,.row--drift-pending_or_failed_control{background:color-mix(in srgb, var(--warning-soft) 34%, transparent)}.row--drift-pending_or_failed_control{background:color-mix(in srgb, var(--danger-soft) 30%, transparent)}.snapshot-id-pair{align-items:center;gap:var(--space-2);color:var(--muted);font-size:var(--font-size-12);flex-wrap:wrap;display:flex}.snapshot-id-pair code{padding:2px var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);color:var(--text)}.snapshot-compare-controls{gap:var(--space-2);grid-template-columns:minmax(180px,260px) auto;align-items:start;display:grid}.snapshot-compare-controls .control-hint{grid-column:1/-1}.control-hint{color:var(--muted);font-size:var(--font-size-12);font-weight:650}.detail-secondary{max-width:100%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.snapshot-file-filter{gap:var(--space-1);width:min(420px,100%);display:grid}.snapshot-file-filter span{align-items:center;gap:var(--space-1);color:var(--muted);font-size:var(--font-size-12);font-weight:800;display:inline-flex}.snapshot-file-count{color:var(--muted);font-size:var(--font-size-12);white-space:nowrap;font-weight:800}.snapshot-file-path-cell{width:72%}.snapshot-file-hash-cell{width:210px}.hash-copy-button{align-items:center;gap:var(--space-2);max-width:100%;min-height:30px;padding:4px var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);display:inline-flex}.hash-copy-button:hover{border-color:var(--color-border-strong);background:var(--surface-strong)}.hash-copy-button code{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.hash-copy-button svg{color:var(--schema-accent);flex:none}.audit-filter-bar{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(180px,240px);align-items:end;display:grid}.target-overview{gap:var(--space-4);min-width:0;display:grid;container:target-overview/inline-size}.target-tabs{gap:var(--space-2);padding-bottom:var(--space-1);display:flex;overflow-x:auto}.target-tab{min-height:36px;padding:var(--space-1) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);align-items:center;font-weight:750;display:inline-flex}.target-tab:hover,.target-tab--active{border-color:var(--color-border-strong);background:var(--surface-strong);color:var(--schema-accent)}.target-overview-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.target-overview-grid>.section-block{min-width:0}a[aria-disabled=true]{opacity:.55;cursor:not-allowed}.list-filter{max-width:520px}.shortcut-dialog{width:min(520px, calc(100vw - var(--space-6)))}.shortcut-list{gap:var(--space-2);margin:0;display:grid}.shortcut-list div{gap:var(--space-3);grid-template-columns:150px minmax(0,1fr);align-items:center;display:grid}kbd{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);width:fit-content;color:var(--text);font-family:var(--font-mono);font-size:var(--font-size-12);padding:3px 7px;display:inline-flex}.skeleton{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);display:grid}.skeleton__row{border-radius:var(--radius-sm);background:linear-gradient(90deg, color-mix(in srgb, var(--surface-strong) 82%, transparent), color-mix(in srgb, var(--color-border-strong) 45%, transparent), color-mix(in srgb, var(--surface-strong) 82%, transparent));background-size:220% 100%;height:18px;animation:1.4s infinite skeleton-pulse;display:block}.data-table tr:last-child td{border-bottom:0}.row--failed{background:color-mix(in srgb, var(--danger-soft) 55%, transparent)}.row--added{background:color-mix(in srgb, var(--success-soft) 48%, transparent)}.row--changed{background:color-mix(in srgb, var(--warning-soft) 48%, transparent)}.row--removed{background:color-mix(in srgb, var(--danger-soft) 42%, transparent)}.empty-state{border:1px dashed var(--border);border-radius:var(--radius);min-height:118px;color:var(--muted);background:var(--surface);text-align:center;place-items:center;padding:22px;display:grid}.target-selector{align-items:center;gap:8px;min-width:min(240px,100%);max-width:100%;display:flex}.target-selector>span{min-width:0;color:var(--muted);align-items:center;gap:6px;font-weight:800;display:inline-flex}.target-selector--compact{min-width:0;display:grid}.target-selector--compact>span{letter-spacing:.1em;text-transform:uppercase;font-size:10px}.target-selector--compact select{min-height:32px;font-family:var(--font-mono);font-size:var(--font-size-12);padding-block:5px}.upload-zone{border:1px dashed var(--border);border-radius:var(--radius);background:var(--surface);transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;display:grid}.upload-zone:hover,.upload-zone:focus-within{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, var(--surface));transform:translateY(-1px)}.upload-zone span{color:var(--muted);display:block}.sql-files-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.sql-files-upload-area{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.repo-sync-summary{gap:var(--space-1);min-width:min(100%,360px);max-width:min(100%,680px);display:grid}.repo-sync-summary strong{overflow-wrap:anywhere}.repo-sync-meta{align-items:center;gap:var(--space-1);color:var(--muted);font-size:.875rem;display:inline-flex}.sql-files-summary{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));display:grid}.sql-files-tabs{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:fit-content;max-width:100%;padding:3px;display:inline-flex}.sql-files-tab{justify-content:center;align-items:center;gap:var(--space-1);border-radius:var(--radius-sm);min-width:104px;min-height:34px;color:var(--muted);background:0 0;border:0;padding:6px 12px;font-weight:750;display:inline-flex}.sql-files-tab--active{background:var(--surface-strong);color:var(--text);box-shadow:var(--shadow-inset-highlight)}.sql-files-validate-form{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(220px,1fr) minmax(150px,180px) minmax(160px,220px) auto;align-items:end;display:grid}.sql-files-validate-form label{gap:var(--space-1);min-width:0;color:var(--muted);font-size:var(--font-size-12);font-weight:750;display:grid}.summary-card{gap:var(--space-1);min-width:0;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);display:grid}.summary-card strong{font-family:var(--font-mono);font-size:var(--font-size-24)}.sql-files-search-row{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;display:grid}.sql-files-search-field{min-width:0;font-weight:400;display:block}.sql-files-filter-count,.sql-files-copy-status{width:fit-content;min-height:32px;color:var(--muted);font-size:var(--font-size-12);white-space:nowrap;align-items:center;font-weight:750;display:inline-flex}.sql-files-copy-status{padding:var(--space-2) var(--space-3);border:1px solid color-mix(in srgb, var(--success) 35%, var(--border));border-radius:var(--radius-sm);background:var(--success-soft);color:var(--success-text)}.sql-files-listing{gap:var(--space-3);flex-direction:column;display:flex}.sql-file-picker{gap:var(--space-3);display:grid}.sql-folder-group{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);overflow:hidden}.sql-folder-group:hover,.sql-folder-group:focus-within{border-color:var(--color-border-strong)}.sql-folder-summary{gap:var(--space-3);min-height:48px;padding:var(--space-3) var(--space-4);cursor:pointer;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;list-style:none;display:grid}.sql-folder-summary::-webkit-details-marker{display:none}.sql-folder-summary:before{border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);content:"";width:8px;height:8px;transition:transform var(--motion-fast) var(--ease-standard);transform:rotate(-45deg)}.sql-folder-group[open] .sql-folder-summary:before{transform:rotate(45deg)}.sql-folder-title,.sql-file-name,.sql-file-meta{align-items:center;gap:var(--space-2);min-width:0;display:inline-flex}.sql-folder-title{color:var(--muted)}.sql-folder-title strong{color:var(--text);font-family:var(--font-mono);font-size:var(--font-size-14);text-overflow:ellipsis;white-space:nowrap;font-weight:750;overflow:hidden}.folder-dialect,.file-count{min-height:24px;padding:2px var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-strong);color:var(--muted);font-size:var(--font-size-12);white-space:nowrap;align-items:center;font-weight:800;display:inline-flex}.folder-dialect--oracle{border-color:color-mix(in srgb, var(--warning) 35%, var(--border));background:var(--warning-soft);color:var(--warning-text)}.folder-dialect--postgres{border-color:color-mix(in srgb, var(--info) 35%, var(--border));background:var(--info-soft);color:var(--info-text)}.sql-file-list{border-top:1px solid var(--border);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.sql-file-item{gap:var(--space-3);min-height:44px;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);font-size:var(--font-size-13);transition:background-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.sql-file-item:last-child{border-bottom:0}.sql-file-item:hover{background:var(--surface-strong)}.sql-file-item--selectable{grid-template-columns:minmax(0,1fr)}.sql-file-checkbox{align-items:center;gap:var(--space-2);min-width:0;font-weight:650;display:inline-flex}.sql-file-checkbox input{width:18px;min-width:18px;height:18px}.sql-file-name{color:var(--muted)}.sql-file-name code{min-width:0;color:var(--text);font-size:var(--font-size-13);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hash-chip{align-items:center;gap:var(--space-1);max-width:100%;min-height:28px;padding:3px var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted);font-family:var(--font-mono);font-size:var(--font-size-11);transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);background:0 0;font-weight:750;display:inline-flex;overflow:hidden}.hash-chip:hover{border-color:var(--color-border-strong);background:var(--surface);color:var(--text)}.hash-chip:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.hash-chip--empty{cursor:default;opacity:.7}.ordered-files{gap:8px;margin:0;padding:12px 12px 12px 34px;display:grid}.ordered-files li{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:border-color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);padding:8px}.ordered-files li:hover{border-color:var(--color-border-strong);transform:translate(2px)}.ordered-files li,.script-row{align-items:center;gap:10px}.ordered-files li{justify-content:space-between;display:flex}.live-run{border:1px solid color-mix(in srgb, var(--info) 32%, var(--border));border-radius:var(--radius);background:var(--info-soft);gap:12px;padding:16px;display:grid}.live-run__header{justify-content:space-between;gap:14px;display:flex}.progress-meter{background:color-mix(in srgb, var(--surface) 70%, var(--border));border-radius:999px;height:12px;overflow:hidden}.progress-meter>div{border-radius:inherit;background:var(--primary);height:100%;transition:width .22s}.live-run__meta{color:var(--muted);flex-wrap:wrap;gap:14px;font-weight:650;display:flex}.script-list{gap:8px;display:grid}.script-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);grid-template-columns:34px 42px minmax(0,1fr) auto 96px;padding:10px;display:grid}.script-row:hover{border-color:var(--color-border-strong);transform:translateY(-1px)}.script-row__order{color:var(--muted);font-weight:800}.script-row__file{min-width:0;display:grid}.script-row__file strong,.script-row__file span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.script-row__file span{color:var(--danger-text);font-size:var(--font-size-12)}.script-row__duration{text-align:right;color:var(--muted)}.script-row__detail{grid-column:2/-1}.error-detail{border-radius:var(--radius);background:var(--danger-soft);padding:12px}.error-detail dl{gap:8px;margin:0;display:grid}.error-detail dl>div{grid-template-columns:96px minmax(0,1fr);gap:10px;display:grid}.error-detail dt{color:var(--danger-text);font-weight:800}.error-detail dd{overflow-wrap:anywhere;margin:0}.log-viewer{border:1px solid var(--border);border-radius:var(--radius);background:var(--color-black);color:var(--color-stone-100);overflow:hidden}.log-viewer__toolbar{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.log-viewer__body{height:340px;font-family:var(--font-mono);font-size:var(--font-size-12);overflow:auto}.log-viewer__line{white-space:pre;width:100%;padding:2px 10px;position:absolute;left:0}.expanded-error{border-radius:var(--radius-sm);background:var(--surface-strong);white-space:pre-wrap;max-width:700px;margin:8px 0 0;padding:10px;overflow:auto}.slide-over{z-index:40;background:var(--color-overlay);animation:fade-in var(--motion-base) var(--ease-standard) both;justify-content:flex-end;display:flex;position:fixed;inset:0}.slide-over__panel{border-left:1px solid var(--border);background:var(--bg);width:min(720px,100%);height:100%;box-shadow:var(--shadow);animation:panel-enter var(--motion-slow) var(--ease-emphasized) both;align-content:start;gap:16px;padding:20px;display:grid;overflow:auto}.slide-over__header{justify-content:space-between;align-items:center;gap:10px;display:flex}.modal-backdrop{z-index:50;background:var(--color-overlay);-webkit-backdrop-filter:blur(var(--elevation-blur-sm));backdrop-filter:blur(var(--elevation-blur-sm));animation:fade-in var(--motion-base) var(--ease-standard) both;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-glass);width:min(440px,100%);box-shadow:var(--shadow);animation:dialog-enter var(--motion-base) var(--ease-emphasized) both;gap:14px;padding:20px;display:grid}.modal-body{gap:14px;display:grid}.dialog-icon{border-radius:var(--radius);background:var(--warning-soft);width:38px;height:38px;color:var(--warning-text);place-items:center;display:grid}.dialog-icon--danger{background:var(--danger-soft);color:var(--danger-text)}@keyframes surface-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes panel-enter{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes dialog-enter{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes pulse{0%,to{opacity:.45;transform:scale(.88)}50%{opacity:1;transform:scale(1)}}@keyframes skeleton-pulse{0%{background-position:120% 0}to{background-position:-120% 0}}@media (width<=720px){.sql-files-toolbar,.sql-files-upload-area{flex-direction:column;align-items:stretch}.sql-files-search-row{grid-template-columns:1fr}.sql-files-tabs,.sql-files-validate-form{width:100%}.sql-files-tab{flex:1 1 0;min-width:0}.sql-files-validate-form{grid-template-columns:1fr}.sql-files-toolbar,.sql-files-upload-area,.sql-files-search-row,.sql-files-validate-form .button,.audit-filter-bar,.sql-files-search-row .button,.sql-files-toolbar .button{width:100%}.audit-filter-bar{grid-template-columns:1fr}.sql-files-filter-count,.sql-files-copy-status{width:100%}.sql-folder-summary{grid-template-columns:12px minmax(0,1fr)}.sql-folder-summary .file-count{grid-column:2;justify-self:start}.drift-toolbar{display:grid}.drift-filter{width:100%}.drift-detail__summary{grid-template-columns:minmax(0,1fr)}.drift-detail__meta{justify-self:start}.sql-file-item{grid-template-columns:1fr;align-items:start}.sql-file-meta{justify-content:flex-start}}@media (prefers-reduced-motion:reduce){.ui-button,.ui-progress__bar{transition:none}.ui-button:hover:not(:disabled),.ui-button:active:not(:disabled){transform:none}.ui-spinner{animation:none}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.page>*,.slide-over,.slide-over__panel,.modal-backdrop,.confirm-dialog,.mobile-menu-backdrop{animation:none!important}.nav-link:hover,.sidebar__collapse:hover,.detail-grid>div:hover,.metric-grid>div:hover,.button:hover:not(:disabled),.button:active:not(:disabled),.icon-button:hover:not(:disabled),.icon-button:active:not(:disabled),.upload-zone:hover,.upload-zone:focus-within,.ordered-files li:hover,.script-row:hover,.mobile-menu-toggle:hover{transform:none!important}}@media (width<=1280px){.schema-workspace{grid-template-columns:minmax(168px,220px) minmax(0,1fr)}}@media (width<=1200px){.metric-grid,.overview-summary,.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-header>.row-actions,.toolbar,.table-toolbar{justify-content:flex-start}.target-overview-grid{grid-template-columns:1fr}.drift-table__object{min-width:220px}.drift-table__source code{max-width:220px}}@media (width<=1100px){.schema-workspace{grid-template-columns:minmax(0,1fr)}.schema-tree{gap:var(--space-2);padding-bottom:var(--space-1);flex-direction:row;display:flex;position:static;overflow-x:auto}.schema-tree__item{flex:none;min-width:164px}.schema-workspace__detail{position:static}}@media (width<=960px){.detail-grid,.form-grid,.metric-grid,.overview-summary,.sql-preview-grid{grid-template-columns:1fr}.system-health-card{grid-template-columns:40px minmax(0,1fr)}.system-health-card dl{border-top:1px solid var(--border);border-left:0;grid-column:1/-1;justify-content:space-between;padding:12px 0 0}.upload-zone{grid-template-columns:30px minmax(0,1fr)}.upload-zone input{grid-column:1/-1}.snapshot-compare-controls,.audit-filter-bar{grid-template-columns:1fr}}@container drift-detail (width<=760px){.drift-detail .sql-preview-grid{grid-template-columns:1fr}}@container drift-workspace (width<=780px){.drift-toolbar{display:grid}.drift-filter{width:100%}}@container target-overview (width<=760px){.target-overview-grid{grid-template-columns:1fr}}@media (width<=920px){.app-shell,.app-shell--collapsed{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;height:100dvh}.mobile-topbar{z-index:35;justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-3);border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(var(--elevation-blur-lg));backdrop-filter:blur(var(--elevation-blur-lg));display:flex;position:sticky;top:0}.mobile-topbar__brand{align-items:center;gap:var(--space-3);min-width:0;display:flex}.mobile-menu-toggle{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:44px;height:44px;color:var(--text);transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);justify-content:center;align-items:center;display:inline-flex}.mobile-menu-toggle:hover{border-color:var(--color-border-strong);background:var(--surface-strong);transform:translateY(-1px)}.mobile-menu-backdrop{z-index:29;background:var(--color-overlay);cursor:default;animation:fade-in var(--motion-base) var(--ease-standard) both;border:0;padding:0;display:block;position:fixed;inset:0}.sidebar{inset:var(--space-3) auto var(--space-3) var(--space-3);z-index:40;width:min(328px, calc(100vw - var(--space-6)));opacity:0;pointer-events:none;height:auto;transform:translateX(calc(-100% - var(--space-6)));visibility:hidden;margin:0;position:fixed;overflow-y:auto}.sidebar--open{opacity:1;pointer-events:auto;visibility:visible;transform:translate(0)}.sidebar__brand{border-bottom:1px solid var(--border)}.sidebar__nav{display:grid;overflow:visible}.nav-link{min-height:44px}.sidebar__selector{display:block}.sidebar__collapse{display:none}.app-shell--collapsed .brand-copy{display:grid}.app-shell--collapsed .nav-link span{display:inline}.app-shell--collapsed .target-selector span{display:inline-flex}.app-shell--collapsed .target-selector select{display:block}.brand-copy{display:grid}.app-main{padding:0}.app-topbar{min-height:36px;padding:10px 16px 0}.session-context__subject{max-width:160px}.session-context__logout{width:34px;min-height:34px;padding:0}.session-context__logout span{display:none}.main-scroll{min-height:0}.app-breadcrumbs{padding:14px 16px 0}.page{padding:12px 16px 16px}.auth-shell{padding:var(--space-3);align-items:stretch}.auth-panel{padding:var(--space-5);align-self:center}.page-header,.live-run__header{display:grid}.schema-workspace{grid-template-columns:1fr}.schema-tree{gap:var(--space-2);padding-bottom:var(--space-1);flex-direction:row;display:flex;position:static;overflow-x:auto}.schema-workspace__detail{position:static}.form-grid,.settings-layout,.detail-grid,.metric-grid,.overview-summary,.target-overview-grid,.sql-preview-grid{grid-template-columns:1fr}.settings-nav{position:static}.settings-target-summary{max-width:none}.target-selector,.toolbar,.snapshot-file-filter{width:100%}.target-selector{min-width:0}.snapshot-compare-controls{grid-template-columns:1fr;width:100%}.table-toolbar{align-items:stretch;display:grid}.snapshot-file-count{white-space:normal}.upload-zone{grid-template-columns:1fr}.script-row{grid-template-columns:34px minmax(0,1fr)}.script-row__order,.script-row .status-badge,.script-row__duration{grid-column:2}.script-row__detail{grid-column:1/-1}}@media (width<=760px){.upgrade-progress{gap:var(--space-2);border-radius:var(--radius-sm);grid-template-columns:1fr;padding:10px}.upgrade-progress__summary{justify-content:space-between;align-items:baseline;gap:var(--space-2);min-width:0;padding-inline:2px;display:flex}.upgrade-progress__summary>strong{text-overflow:ellipsis;overflow:hidden}.upgrade-step{justify-content:center;gap:5px;min-height:36px;padding:3px 4px}.upgrade-step__copy strong{font-size:var(--font-size-11)}.upgrade-step__copy small{display:none}.upgrade-metrics{grid-template-columns:1fr}.upgrade-object,.upgrade-actions{grid-template-columns:1fr;align-items:stretch}.upgrade-actions{display:grid}.upgrade-actions>span{margin-right:0}}@media (width<=480px){.upgrade-step{justify-items:center;display:grid}.upgrade-step__copy{max-width:100%}.upgrade-step__copy strong{max-width:70px}}
