/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-semibold:600;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.order-1{order:1}.block{display:block}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-border{border-color:var(--border)}.bg-background{background-color:var(--background)}.bg-destructive{background-color:var(--destructive)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-white{color:var(--color-white)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, var(--primary) 90%, transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--ring)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:var(--background)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:oklch(97.5% .004 260);--foreground:oklch(19% .018 258);--card:oklch(100% 0 0);--card-foreground:oklch(19% .018 258);--popover:oklch(100% 0 0);--popover-foreground:oklch(19% .018 258);--primary:oklch(51% .195 25);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(95.5% .008 258);--secondary-foreground:oklch(28% .02 258);--muted:oklch(95.5% .008 258);--muted-foreground:oklch(52% .025 258);--accent:oklch(95.5% .018 25);--accent-foreground:oklch(42% .17 25);--destructive:oklch(58% .22 27);--border:oklch(90% .012 258);--input:oklch(90% .012 258);--ring:oklch(56% .19 25);--radius:.75rem;--topbar-height:68px;--workspace-height:44px;--sidebar-width:236px;--sidebar-collapsed-width:72px}.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:oklch(15.5% .015 258);--foreground:oklch(94% .01 258);--card:oklch(19.5% .018 258);--card-foreground:oklch(94% .01 258);--popover:oklch(20.5% .018 258);--popover-foreground:oklch(94% .01 258);--primary:oklch(62% .205 25);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(24.5% .018 258);--secondary-foreground:oklch(94% .01 258);--muted:oklch(23.5% .018 258);--muted-foreground:oklch(69% .025 258);--accent:oklch(27% .055 25);--accent-foreground:oklch(90% .07 25);--destructive:oklch(65% .2 27);--border:oklch(30% .02 258);--input:oklch(30% .02 258);--ring:oklch(65% .19 25)}*{box-sizing:border-box;border-color:var(--border)}html{background:var(--background);text-rendering:optimizelegibility;min-width:320px;font-family:Inter,Noto Sans TC,PingFang TC,Microsoft JhengHei,system-ui,sans-serif}body{background:var(--background);min-width:320px;min-height:100vh;color:var(--foreground);margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{min-height:100vh}.topbar{z-index:40;grid-template-columns:var(--sidebar-width) minmax(420px, 1fr) auto;height:var(--topbar-height);border-bottom:1px solid var(--border);background:var(--card);align-items:center;padding:0 18px 0 16px;display:grid;position:fixed;top:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.topbar{background:color-mix(in oklch, var(--card) 94%, transparent)}}.topbar{box-shadow:0 1px 12px var(--foreground)}@supports (color:color-mix(in lab, red, red)){.topbar{box-shadow:0 1px 12px color-mix(in oklch, var(--foreground) 5%, transparent)}}.topbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.topbar-brand{align-items:center;min-width:0;display:flex}.brand{align-items:center;gap:10px;min-width:0;display:inline-flex}.brand-mark{background:linear-gradient(145deg, var(--primary), var(--primary));border-radius:11px 5px;flex:none;place-items:center;width:38px;height:38px;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.brand-mark{background:linear-gradient(145deg, color-mix(in oklch, var(--primary) 72%, white), var(--primary))}}.brand-mark{box-shadow:0 7px 18px var(--primary)}@supports (color:color-mix(in lab, red, red)){.brand-mark{box-shadow:0 7px 18px color-mix(in oklch, var(--primary) 28%, transparent)}}.brand-mark{color:#fff;transform:rotate(-4deg)}.brand-mark:after{content:"";border:6px solid #ffffff47;border-radius:50%;width:27px;height:27px;position:absolute;bottom:-11px;right:-8px}.brand-mark span{z-index:1;letter-spacing:-.04em;font-size:14px;font-weight:900;position:relative;transform:rotate(4deg)}.brand-copy{flex-direction:column;min-width:0;display:flex}.brand-copy strong{color:var(--foreground);letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:800;line-height:1.2;overflow:hidden}.brand-copy small{color:var(--muted-foreground);letter-spacing:.04em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:14px;font-weight:600;line-height:1.3;overflow:hidden}.workspace-links{justify-content:flex-end;align-items:center;gap:4px;min-width:0;height:100%;display:flex;overflow:hidden}.workspace-soft-link{min-height:34px;color:var(--muted-foreground);white-space:nowrap;border-radius:8px;align-items:center;gap:7px;padding:0 10px;font-size:14px;font-weight:680;transition:color .15s,background-color .15s;display:inline-flex}.workspace-soft-link:hover{background:var(--secondary);color:var(--foreground)}.workspace-soft-link.active{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.workspace-soft-link.active{background:color-mix(in oklch, var(--primary) 9%, var(--card))}}.workspace-soft-link.active{color:var(--primary)}.workspace-soft-link.disabled{cursor:not-allowed;opacity:.4}.workspace-soft-link.disabled:hover{color:var(--muted-foreground);background:0 0}.workspace-soft-link svg{flex:none;width:16px;height:16px}.primary-nav{align-items:center;gap:2px;min-width:0;height:100%;display:flex;overflow:hidden}.primary-nav-link{height:100%;color:var(--muted-foreground);white-space:nowrap;align-items:center;gap:7px;padding:0 11px;font-size:14px;font-weight:650;transition:color .16s,background-color .16s;display:inline-flex;position:relative}.primary-nav-link:after{background:var(--primary);content:"";opacity:0;border-radius:4px 4px 0 0;height:3px;transition:opacity .16s,transform .16s;position:absolute;bottom:-1px;left:11px;right:11px;transform:scaleX(.4)}.primary-nav-link:hover{color:var(--foreground)}.primary-nav-link.active{color:var(--primary)}.primary-nav-link.active:after{opacity:1;transform:scaleX(1)}.primary-nav-link svg{width:17px;height:17px}.topbar-actions{justify-content:flex-end;align-items:center;gap:3px;display:flex}.search-box{border:1px solid var(--border);background:var(--background);width:min(230px,18vw);height:38px;color:var(--muted-foreground);border-radius:10px;align-items:center;gap:8px;margin-right:5px;padding:0 11px;transition:border-color .16s,box-shadow .16s;display:flex}.search-box:focus-within{border-color:var(--ring);box-shadow:0 0 0 3px var(--ring)}@supports (color:color-mix(in lab, red, red)){.search-box:focus-within{box-shadow:0 0 0 3px color-mix(in oklch, var(--ring) 15%, transparent)}}.search-box svg{flex:none;width:17px;height:17px}.search-box input{width:100%;min-width:0;color:var(--foreground);background:0 0;border:0;outline:0;font-size:14px}.search-box input::placeholder{color:var(--muted-foreground)}.language-label{letter-spacing:.02em;font-size:14px;font-weight:800}.notification-button{position:relative}.notification-dot{border:2px solid var(--card);background:var(--primary);border-radius:50%;width:7px;height:7px;position:absolute;top:8px;right:8px}.user-menu-wrap{position:relative}.user-menu{min-width:0;color:var(--foreground);background:0 0;border:0;border-radius:10px;align-items:center;gap:8px;margin-left:5px;padding:5px 6px;transition:background-color .16s;display:flex}.user-menu:hover{background:var(--accent)}.user-menu>svg{width:14px;height:14px;color:var(--muted-foreground)}.avatar{background:var(--primary);width:34px;height:34px;color:var(--primary-foreground);border-radius:10px;flex:none;place-items:center;font-size:14px;font-weight:800;display:grid}.user-copy{text-align:left;flex-direction:column;min-width:0;display:flex}.user-copy strong{font-size:14px;line-height:1.25}.user-copy small{color:var(--muted-foreground);font-size:14px;line-height:1.25}.user-dropdown{z-index:80;border:1px solid var(--border);background:var(--popover);border-radius:12px;width:245px;padding:7px;animation:.14s ease-out menu-in;position:absolute;top:calc(100% + 9px);right:0;box-shadow:0 18px 48px oklch(0% none none/.2)}.user-dropdown-identity{border-bottom:1px solid var(--border);flex-direction:column;gap:3px;margin:0 3px 6px;padding:10px;display:flex}.user-dropdown-identity strong,.user-dropdown-identity span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-dropdown-identity strong{font-size:14px}.user-dropdown-identity span{color:var(--muted-foreground);font-size:14px}.user-dropdown-item{width:100%;min-height:42px;color:var(--foreground);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:0 10px;font-size:14px;font-weight:650;display:flex}.user-dropdown-item:hover,.user-dropdown-item:focus-visible{background:var(--accent);outline:0}.user-dropdown-item svg{width:17px;height:17px;color:var(--muted-foreground)}.user-dropdown-item.danger{color:var(--destructive)}.user-dropdown-item.danger svg{color:currentColor}.workspace-bar{z-index:35;top:var(--topbar-height);grid-template-columns:var(--sidebar-width) minmax(0, 1fr) auto;height:var(--workspace-height);border-bottom:1px solid var(--border);background:var(--card);align-items:center;padding:0 18px 0 0;display:grid;position:fixed;left:0;right:0}.nav-row-spacer{border-right:1px solid var(--border);align-self:stretch}.lowered-nav{align-items:center;padding-left:10px}.workspace-context{color:var(--muted-foreground);align-items:center;gap:7px;font-size:14px;display:flex}.workspace-context strong{color:var(--foreground);font-weight:700}.workspace-context time{min-width:68px;color:var(--primary);font-variant-numeric:tabular-nums;font-weight:750}.status-pulse{background:oklch(66% .17 146);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px oklch(66% .17 146/.14)}.shell-body{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100vh;padding-top:calc(var(--topbar-height) + var(--workspace-height));transition:grid-template-columns .18s;display:grid}.shell-body.sidebar-is-collapsed{grid-template-columns:var(--sidebar-collapsed-width) minmax(0, 1fr)}.sidebar{top:calc(var(--topbar-height) + var(--workspace-height));height:calc(100vh - var(--topbar-height) - var(--workspace-height));border-right:1px solid var(--border);background:var(--card);flex-direction:column;justify-content:space-between;padding:14px 10px 12px;display:flex;position:sticky;overflow:hidden}.sidebar nav{flex-direction:column;gap:4px;display:flex}.sidebar-link{min-height:42px;color:var(--muted-foreground);white-space:nowrap;border-radius:9px;align-items:center;gap:11px;padding:0 12px;font-size:14px;font-weight:650;transition:color .15s,background-color .15s;display:flex;overflow:hidden}.sidebar-link:hover{background:var(--secondary);color:var(--foreground)}.sidebar-link.active{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.sidebar-link.active{background:color-mix(in oklch, var(--primary) 10%, var(--card))}}.sidebar-link.active{color:var(--primary)}.sidebar-link>svg{flex:none;width:18px;height:18px}.sidebar-link .link-chevron{opacity:0;width:14px;margin-left:auto;transition:opacity .15s,transform .15s;transform:translate(-4px)}.sidebar-link:hover .link-chevron,.sidebar-link.active .link-chevron{opacity:.7;transform:translate(0)}.sidebar-collapse{width:100%;min-height:38px;color:var(--muted-foreground);white-space:nowrap;background:0 0;border:0;border-radius:9px;align-items:center;gap:11px;padding:0 12px;font-size:14px;font-weight:650;display:flex;overflow:hidden}.sidebar-collapse:hover{background:var(--secondary);color:var(--foreground)}.sidebar-collapse svg{flex:none;width:17px}.sidebar-is-collapsed .sidebar-link,.sidebar-is-collapsed .sidebar-collapse{justify-content:center;padding:0}.sidebar-is-collapsed .sidebar-link span,.sidebar-is-collapsed .sidebar-link .link-chevron{display:none}.main-content{width:100%;min-width:0;padding:28px clamp(18px,2.4vw,38px) 48px;overflow:hidden}.page-transition{width:100%;max-width:1600px;margin:0 auto;animation:.22s cubic-bezier(.22,1,.36,1) page-enter}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.eyebrow{color:var(--primary);letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px;font-size:14px;font-weight:800;display:block}.page-heading h1,.placeholder-page h1{color:var(--foreground);letter-spacing:-.035em;margin:0;font-size:clamp(25px,2.3vw,34px);font-weight:790;line-height:1.2}.page-heading p,.placeholder-page p{color:var(--muted-foreground);margin:7px 0 0;font-size:14px}.heading-actions{gap:9px;display:flex}.plus{margin-top:-1px;font-size:20px;font-weight:400;line-height:0}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.metric-card{border:1px solid var(--border);background:var(--card);min-width:0;box-shadow:0 5px 22px var(--foreground);border-radius:14px;align-items:center;gap:14px;padding:18px;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.metric-card{box-shadow:0 5px 22px color-mix(in oklch, var(--foreground) 3%, transparent)}}.metric-card{transition:border-color .15s,box-shadow .15s,transform .15s}.metric-card:hover{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.metric-card:hover{border-color:color-mix(in oklch, var(--primary) 32%, var(--border))}}.metric-card:hover{box-shadow:0 8px 26px var(--foreground)}@supports (color:color-mix(in lab, red, red)){.metric-card:hover{box-shadow:0 8px 26px color-mix(in oklch, var(--foreground) 6%, transparent)}}.metric-card:hover{transform:translateY(-2px)}.metric-card:focus-visible,.queue-item:focus-visible,.progress-row:focus-visible,.order-link:focus-visible{outline:2px solid var(--ring);outline-offset:3px}.metric-icon{border-radius:12px;flex:none;place-items:center;width:44px;height:44px;display:grid}.metric-icon svg{width:21px}.metric-icon.red{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.metric-icon.red{background:color-mix(in oklch, var(--primary) 12%, var(--card))}}.metric-icon.red{color:var(--primary)}.metric-icon.green{color:oklch(49% .145 148);background:oklch(91% .055 148)}.dark .metric-icon.green{color:oklch(75% .12 148);background:oklch(30% .065 148)}.metric-icon.blue{color:oklch(53% .17 250);background:oklch(93% .04 250)}.dark .metric-icon.blue{color:oklch(75% .11 250);background:oklch(29% .07 250)}.metric-icon.amber{color:oklch(57% .14 70);background:oklch(94% .065 86)}.dark .metric-icon.amber{color:oklch(79% .12 78);background:oklch(31% .065 70)}.metric-card>div:nth-child(2){min-width:0;display:grid}.metric-chevron{width:16px;height:16px;color:var(--muted-foreground);opacity:0;transition:opacity .15s,transform .15s;position:absolute;top:14px;right:12px;transform:translate(-4px)}.metric-card:hover .metric-chevron,.metric-card:focus-visible .metric-chevron{opacity:1;transform:translate(0)}.metric-card p{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;margin:0 0 5px;font-size:14px;font-weight:650;overflow:hidden}.metric-card strong{color:var(--foreground);letter-spacing:-.03em;font-size:22px;font-weight:780;line-height:1.15}.metric-card small{color:var(--muted-foreground);margin-top:4px;font-size:14px}.animated-number{font-variant-numeric:tabular-nums}.dashboard-loading,.dashboard-state{border:1px solid var(--border);background:var(--card);color:var(--muted-foreground);border-radius:10px;align-items:center;gap:10px;margin:-10px 0 14px;padding:11px 14px;font-size:14px;display:flex}.dashboard-loading svg,.dashboard-state svg{width:17px}.dashboard-state{justify-content:space-between}.dashboard-state>div{gap:2px;display:grid}.dashboard-state strong{color:var(--foreground)}.dashboard-state-error{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dashboard-state-error{border-color:color-mix(in oklch, var(--destructive) 25%, var(--border))}}.dashboard-state-error{background:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dashboard-state-error{background:color-mix(in oklch, var(--destructive) 4%, var(--card))}}.dashboard-empty-row{height:92px;color:var(--muted-foreground);text-align:center}.dashboard-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:14px;margin-bottom:14px;display:grid}.panel{border:1px solid var(--border);background:var(--card);min-width:0;box-shadow:0 5px 22px var(--foreground);border-radius:14px}@supports (color:color-mix(in lab, red, red)){.panel{box-shadow:0 5px 22px color-mix(in oklch, var(--foreground) 3%, transparent)}}.panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:20px;padding:18px 20px 15px;display:flex}.panel-header h2{letter-spacing:-.01em;margin:0;font-size:14px;font-weight:760}.panel-header p{color:var(--muted-foreground);margin:4px 0 0;font-size:14px}.queue-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:14px;display:grid}.queue-item{border:1px solid var(--border);background:var(--background);min-width:0;min-height:48px;color:var(--foreground);text-align:left;border-radius:10px;grid-template-columns:8px minmax(0,1fr) auto 16px;align-items:center;gap:9px;padding:0 11px;transition:border-color .15s,transform .15s,background-color .15s;display:grid}.queue-item:hover{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.queue-item:hover{border-color:color-mix(in oklch, var(--primary) 38%, var(--border))}}.queue-item:hover{background:var(--card);transform:translateY(-1px)}.queue-item span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:650;overflow:hidden}.queue-item strong{font-size:15px}.queue-item svg{width:14px;color:var(--muted-foreground)}.queue-dot{background:var(--primary);border-radius:50%;width:7px;height:7px}.queue-dot.amber{background:oklch(72% .16 75)}.queue-dot.blue{background:oklch(62% .17 250)}.queue-dot.purple{background:oklch(62% .18 305)}.queue-dot.green{background:oklch(61% .16 148)}.progress-list{flex-direction:column;gap:15px;padding:18px 20px 20px;display:flex}.progress-row{border-radius:7px;padding:2px;display:block}.progress-row:hover>div:first-child span{color:var(--primary)}.progress-row>div:first-child{justify-content:space-between;gap:16px;margin-bottom:7px;font-size:14px;display:flex}.progress-row span{color:var(--muted-foreground);font-weight:650}.progress-row strong{font-size:14px}.progress-track{background:var(--secondary);border-radius:99px;height:6px;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg, var(--primary), var(--primary));height:100%;display:block}@supports (color:color-mix(in lab, red, red)){.progress-track span{background:linear-gradient(90deg, color-mix(in oklch, var(--primary) 74%, white), var(--primary))}}.progress-track span{transition:width .7s cubic-bezier(.22,1,.36,1)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{border-bottom:1px solid var(--border);background:var(--background);padding:11px 18px}@supports (color:color-mix(in lab, red, red)){th{background:color-mix(in oklch, var(--background) 65%, var(--card))}}th{color:var(--muted-foreground);letter-spacing:.045em;text-align:left;text-transform:uppercase;white-space:nowrap;font-size:14px;font-weight:750}td{border-bottom:1px solid var(--border);color:var(--muted-foreground);white-space:nowrap;padding:13px 18px}tbody tr:last-child td{border-bottom:0}tbody tr{transition:background-color .13s}tbody tr:hover{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){tbody tr:hover{background:color-mix(in oklch, var(--accent) 45%, transparent)}}td strong,.order-link{color:var(--foreground);font-weight:720}.order-link:hover{color:var(--primary);text-underline-offset:3px;text-decoration:underline}td:last-child{width:54px;padding-right:12px}.status-badge{border-radius:99px;align-items:center;min-height:25px;padding:0 9px;font-size:14px;font-weight:720;display:inline-flex}.status-badge.amber{color:oklch(50% .13 70);background:oklch(94% .06 82)}.status-badge.green{color:oklch(44% .13 148);background:oklch(92% .055 148)}.status-badge.red{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.status-badge.red{background:color-mix(in oklch, var(--primary) 12%, var(--card))}}.status-badge.red{color:var(--primary)}.status-badge.blue{color:oklch(48% .15 250);background:oklch(93% .04 250)}.dark .status-badge.amber{color:oklch(80% .11 80);background:oklch(31% .06 70)}.dark .status-badge.green{color:oklch(75% .11 148);background:oklch(29% .06 148)}.dark .status-badge.blue{color:oklch(75% .11 250);background:oklch(29% .06 250)}.quotes-page,.orders-page{height:calc(100dvh - var(--topbar-height) - var(--workspace-height) - 76px);grid-template-rows:auto minmax(0,1fr);gap:20px;min-height:560px;display:grid;overflow:hidden}.quotes-page .page-heading,.orders-page .page-heading{margin-bottom:0}.quotes-heading,.orders-heading{align-items:flex-end}.quotes-panel,.orders-panel{grid-template-rows:auto minmax(0,1fr) auto;min-height:0;display:grid;overflow:hidden}.quotes-toolbar,.orders-toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-end;gap:16px;padding:16px 18px;display:flex}.quotes-search,.orders-search{align-items:center;gap:8px;width:min(620px,100%);display:flex}.quotes-search>svg,.orders-search>svg{width:18px;color:var(--muted-foreground);flex:none}.quotes-search input,.quotes-status-filter select,.orders-search input,.orders-status-filter select{border:1px solid var(--border);background:var(--background);height:40px;color:var(--foreground);border-radius:9px;outline:0;font-size:14px}.quotes-search input,.orders-search input{width:100%;min-width:180px;padding:0 12px}.quotes-search input:focus,.quotes-status-filter select:focus,.orders-search input:focus,.orders-status-filter select:focus{border-color:var(--ring);box-shadow:0 0 0 3px var(--ring)}@supports (color:color-mix(in lab, red, red)){.quotes-search input:focus,.quotes-status-filter select:focus,.orders-search input:focus,.orders-status-filter select:focus{box-shadow:0 0 0 3px color-mix(in oklch, var(--ring) 13%, transparent)}}.quotes-status-filter,.orders-status-filter{min-width:180px;color:var(--muted-foreground);gap:6px;font-size:14px;font-weight:700;display:grid}.quotes-status-filter select,.orders-status-filter select{padding:0 34px 0 11px}.quotes-table-wrap,.orders-table-wrap{min-height:0;overflow:auto}.quotes-table-wrap th,.orders-table-wrap th{z-index:1;position:sticky;top:0}.quote-company,.order-customer-name{color:var(--muted-foreground);margin-top:3px;font-size:14px;display:block}.quote-date,.order-date{align-items:center;gap:7px;display:inline-flex}.quote-date svg,.order-date svg{width:16px;color:var(--muted-foreground)}.order-outstanding{color:var(--destructive);font-weight:750}.settings-cell-detail{max-width:260px;color:var(--muted-foreground);text-overflow:ellipsis;margin-top:3px;font-size:14px;display:block;overflow:hidden}.settings-permissions-page{height:calc(100dvh - var(--topbar-height) - var(--workspace-height) - 76px);grid-template-rows:auto minmax(0,1fr);gap:20px;min-height:560px;display:grid;overflow:hidden}.settings-permissions-page .page-heading{margin-bottom:0}.settings-role-picker{min-width:220px;color:var(--muted-foreground);gap:6px;font-size:14px;font-weight:700;display:grid}.settings-role-picker select{border:1px solid var(--border);background:var(--background);height:40px;color:var(--foreground);border-radius:9px;outline:0;padding:0 34px 0 11px;font-size:14px}.settings-role-picker select:focus{border-color:var(--ring);box-shadow:0 0 0 3px var(--ring)}@supports (color:color-mix(in lab, red, red)){.settings-role-picker select:focus{box-shadow:0 0 0 3px color-mix(in oklch, var(--ring) 13%, transparent)}}.settings-permissions-panel{grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.settings-permissions-summary{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:16px 18px;display:flex}.settings-permissions-summary>svg{width:24px;color:var(--primary)}.settings-permissions-summary>div{gap:3px;display:grid}.settings-permissions-summary span{color:var(--muted-foreground);font-size:14px}.settings-permissions-table{min-height:0;overflow:auto}.settings-permissions-table th{z-index:1;position:sticky;top:0}.settings-permissions-table input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary)}.quotes-state,.orders-state{min-height:280px;color:var(--muted-foreground);text-align:left;justify-content:center;align-items:center;gap:12px;padding:32px;display:flex}.quotes-state>svg,.orders-state>svg{width:30px;height:30px;color:var(--primary)}.quotes-state>div,.orders-state>div{gap:4px;display:grid}.quotes-state strong,.orders-state strong{color:var(--foreground);font-size:16px}.quotes-state span,.orders-state span{font-size:14px}.quotes-state-error,.orders-state-error{background:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.quotes-state-error,.orders-state-error{background:color-mix(in oklch, var(--destructive) 4%, transparent)}}.quotes-state-error>svg,.orders-state-error>svg{color:var(--destructive)}.quotes-state-error .button{margin-left:10px}.quotes-pagination,.orders-pagination,.operational-list-pagination{border-top:1px solid var(--border);min-height:62px;color:var(--muted-foreground);justify-content:space-between;align-items:center;gap:16px;padding:10px 18px;font-size:14px;display:flex}.operational-list-pagination{z-index:2;background:var(--card);position:sticky;bottom:0}.quotes-pagination>div,.orders-pagination>div,.operational-list-pagination>div{align-items:center;gap:10px;display:flex}.quotes-pagination strong,.orders-pagination strong,.operational-list-pagination strong{min-width:74px;color:var(--foreground);text-align:center}.table-pagination-jump{color:var(--foreground);align-items:center;gap:6px;font-weight:700;display:inline-flex}.table-pagination-jump input{border:1px solid var(--border);background:var(--background);width:58px;height:34px;color:var(--foreground);font:inherit;text-align:center;border-radius:7px;outline:0;padding:0 6px}.table-pagination-jump input:focus{border-color:var(--ring);box-shadow:0 0 0 3px var(--ring)}@supports (color:color-mix(in lab, red, red)){.table-pagination-jump input:focus{box-shadow:0 0 0 3px color-mix(in oklch, var(--ring) 13%, transparent)}}@media (width<=760px){.quotes-page,.orders-page,.settings-permissions-page{height:calc(100dvh - var(--topbar-height) - 62px);min-height:520px}.settings-permissions-page .page-heading{align-items:stretch}.settings-role-picker{width:100%}.quotes-heading,.orders-heading{align-items:stretch}.quotes-toolbar,.quotes-search,.orders-toolbar,.orders-search{flex-direction:column;align-items:stretch}.quotes-status-filter,.orders-status-filter{width:100%}.quotes-pagination,.orders-pagination,.operational-list-pagination{flex-direction:column;align-items:flex-start}}.migration-page{gap:16px;display:grid}.public-migration-shell{background:var(--background);min-height:100vh;padding:28px clamp(18px,2.4vw,38px) 48px;overflow:hidden}.public-migration-shell .migration-page,.migration-workspace{width:100%;max-width:1600px;margin:0 auto}.migration-workspace-header{justify-content:space-between;align-items:center;gap:18px;margin:-12px 0 16px;display:flex}.migration-workspace-header>div,.migration-workspace-header>div>div{align-items:center;gap:10px;display:flex}.migration-workspace-header>div>div{flex-direction:column;align-items:flex-start;gap:2px}.migration-workspace-header strong{font-size:16px}.migration-workspace-header small{color:var(--muted-foreground);font-size:14px}.migration-tabs{border:1px solid var(--border);background:var(--card);border-radius:12px;gap:5px;margin-bottom:28px;padding:5px;display:flex}.migration-tab{min-height:40px;color:var(--muted-foreground);border-radius:8px;align-items:center;gap:8px;padding:0 15px;font-size:14px;font-weight:720;display:inline-flex}.migration-tab:hover{color:var(--foreground)}.migration-tab.active{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.migration-tab.active{background:color-mix(in oklch, var(--primary) 10%, var(--card))}}.migration-tab.active{color:var(--primary)}.migration-tab svg,.migration-workspace-header button svg{width:17px}.migration-warning{color:#fff;background:oklch(53% .21 25);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin:-28px calc(-1*clamp(18px,2.4vw,38px)) 2px;padding:13px clamp(18px,2.4vw,38px);display:grid}.migration-source-chip{border:1px solid var(--border);background:var(--card);color:var(--muted-foreground);border-radius:99px;align-items:center;gap:7px;padding:8px 11px;font-size:14px;font-weight:700;display:inline-flex}.migration-source-chip svg{width:15px}.control-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.control-policy-card{align-items:flex-start;gap:12px;padding:16px;display:flex}.control-policy-card>svg{width:20px;color:var(--primary);flex:none}.control-policy-card>div{gap:5px;min-width:0;display:grid}.control-policy-card span,.control-policy-card small{color:var(--muted-foreground);font-size:14px}.control-policy-card strong{overflow-wrap:anywhere;font-size:15px}.control-policy-card code{overflow-wrap:anywhere;white-space:normal}.control-section{overflow:hidden}.control-section>header{border-bottom:1px solid var(--border);padding:16px 18px}.control-section h2{margin:0;font-size:15px}.control-section header p{color:var(--muted-foreground);margin:4px 0 0;font-size:14px}.phase-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px;display:grid}.phase-grid article{border:1px solid var(--border);background:var(--background);border-radius:10px;gap:9px;padding:14px;display:grid}.phase-grid article>div{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.phase-grid article>div>strong{font-size:14px}.phase-grid b{font-size:24px}.phase-grid small{color:var(--muted-foreground);font-size:14px}.control-status,.evidence-badge{border-radius:99px;align-items:center;width:fit-content;padding:3px 7px;font-size:14px;font-weight:750;display:inline-flex}.control-status.ready,.evidence-badge.verified{color:oklch(44% .13 148);background:oklch(92% .055 148)}.control-status.partial,.evidence-badge.inferred{color:oklch(50% .13 70);background:oklch(94% .06 82)}.control-status.blocked{background:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.control-status.blocked{background:color-mix(in oklch, var(--destructive) 11%, var(--card))}}.control-status.blocked{color:var(--destructive)}.control-two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.readiness-list{padding:8px 14px;display:grid}.readiness-list>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:10px 4px;font-size:14px;font-weight:650;display:flex}.readiness-list>div:last-child{border-bottom:0}.blocker-list{gap:9px;margin:0;padding:14px 18px 18px;list-style:none;display:grid}.blocker-list li{color:var(--muted-foreground);align-items:flex-start;gap:8px;font-size:14px;line-height:1.45;display:flex}.blocker-list svg{color:oklch(65% .15 70);flex:none;width:15px;margin-top:2px}.migration-action-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px;display:grid}.migration-action-grid article{border:1px solid var(--border);background:var(--background);border-radius:10px;padding:12px}.migration-action-grid button{width:100%}.migration-action-grid p{color:var(--muted-foreground);align-items:flex-start;gap:6px;margin:9px 0 0;font-size:14px;line-height:1.4;display:flex}.migration-action-grid p svg{flex:none;width:13px;margin-top:2px}.control-source-note{border:1px solid var(--border);background:var(--card);border-radius:12px;align-items:flex-start;gap:11px;padding:15px 17px;display:flex}.control-source-note>svg{width:18px;color:var(--primary)}.control-source-note>div{gap:4px;min-width:0;font-size:14px;display:grid}.control-source-note code{overflow-wrap:anywhere}.control-source-note span{color:var(--muted-foreground)}.fk-verification-summary{overflow:hidden}.fk-verification-summary>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:15px;padding:17px 18px;display:flex}.fk-verification-summary>header>div{align-items:flex-start;gap:10px;display:flex}.fk-verification-summary>header svg{color:oklch(53% .15 148);width:19px}.fk-verification-summary h2{margin:0;font-size:15px}.fk-verification-summary header p{color:var(--muted-foreground);margin:4px 0 0;font-size:14px}.fk-summary-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px 18px;display:grid}.fk-summary-metrics article{border:1px solid var(--border);background:var(--background);border-radius:9px;gap:3px;padding:12px;display:grid}.fk-summary-metrics span,.fk-summary-metrics small{color:var(--muted-foreground);font-size:14px}.fk-summary-metrics strong{font-size:21px}.fk-summary-metrics .success strong{color:oklch(53% .15 148)}.fk-summary-metrics .warning strong{color:oklch(58% .14 70)}.fk-summary-metrics .danger strong{color:var(--destructive)}.fk-verified-mappings{border-top:1px solid var(--border);display:grid}.fk-verified-mappings>div{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:11px 18px;display:grid}.fk-verified-mappings>div>span:first-child{overflow-wrap:anywhere;align-items:center;gap:7px;min-width:0;display:flex}.fk-verified-mappings code{white-space:normal}.fk-summary-note{background:var(--destructive);align-items:flex-start;gap:8px;margin:0;padding:12px 18px;display:flex}@supports (color:color-mix(in lab, red, red)){.fk-summary-note{background:color-mix(in oklch, var(--destructive) 5%, var(--card))}}.fk-summary-note{color:var(--muted-foreground);font-size:14px;line-height:1.5}.fk-summary-note svg{width:16px;color:var(--destructive);flex:none}.relationship-analysis-header .evidence-badge{margin-top:8px}.relationship-field-mapping .evidence-badge{margin:2px 0 5px}.migration-warning>svg{width:20px}.migration-warning strong{font-size:15px}.migration-warning p{color:#ffffffc7;margin:2px 0 0;font-size:14px}.migration-warning>span{letter-spacing:.06em;text-transform:uppercase;border:1px solid #ffffff59;border-radius:99px;padding:5px 10px;font-size:14px;font-weight:800}.migration-hero{justify-content:space-between;align-items:flex-end;gap:20px;padding:10px 0 3px;display:flex}.migration-hero h1{letter-spacing:-.035em;margin:0;font-size:clamp(25px,2.3vw,34px);font-weight:790}.migration-hero p{color:var(--muted-foreground);margin:7px 0 0;font-size:14px}.migration-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.migration-metrics article{border:1px solid var(--border);background:var(--card);border-radius:12px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:1px 11px;padding:14px 16px;display:grid}.migration-metrics svg{color:oklch(61% .16 250);grid-row:1/3;width:18px}.migration-metrics .success svg{color:oklch(58% .16 148)}.migration-metrics .danger svg{color:var(--destructive)}.migration-metrics span{color:var(--muted-foreground);font-size:14px;font-weight:700}.migration-metrics strong{font-size:21px;line-height:1.1}.migration-progress{gap:7px;display:grid}.migration-progress>div:first-child{color:var(--muted-foreground);justify-content:space-between;font-size:14px;font-weight:700;display:flex}.migration-progress>div:first-child strong{color:var(--foreground)}.migration-progress-track{background:var(--secondary);border-radius:99px;height:7px;overflow:hidden}.migration-progress-track span{border-radius:inherit;background:linear-gradient(90deg,oklch(70% .16 158),oklch(62% .17 148));height:100%;transition:width .2s;display:block}.migration-source{padding:17px 18px}.migration-source>header>div{align-items:flex-start;gap:10px;display:flex}.migration-source>header svg{width:18px;color:var(--primary)}.migration-source h2,.migration-table-controls h2{margin:0;font-size:15px}.migration-source header p,.migration-table-header p{color:var(--muted-foreground);margin:3px 0 0;font-size:14px}.migration-source-fields{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:14px;display:grid}.migration-source-fields label{gap:6px;display:grid}.migration-source-fields label>span{color:var(--muted-foreground);text-transform:uppercase;align-items:center;gap:5px;font-size:14px;font-weight:750;display:flex}.migration-source-fields label>span svg{width:12px}.migration-source-fields input,.migration-search{border:1px solid var(--border);background:var(--background);border-radius:9px;height:40px}.migration-source-fields input{width:100%;color:var(--foreground);outline:0;padding:0 11px;font-size:14px}.migration-source-fields input:focus,.migration-search:focus-within{border-color:var(--ring);box-shadow:0 0 0 3px var(--ring)}@supports (color:color-mix(in lab, red, red)){.migration-source-fields input:focus,.migration-search:focus-within{box-shadow:0 0 0 3px color-mix(in oklch, var(--ring) 13%, transparent)}}.migration-url-preview{min-width:0;color:var(--muted-foreground);gap:8px;margin:10px 0 0;font-size:14px;display:flex}.migration-url-preview span{flex:none;font-weight:750}.migration-url-preview code{color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.migration-table-controls{overflow:hidden}.migration-table-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding:15px 18px;display:flex}.migration-search{align-items:center;gap:7px;width:min(260px,36vw);padding:0 10px;display:flex}.migration-search svg{width:15px;color:var(--muted-foreground)}.migration-search input{width:100%;min-width:0;color:var(--foreground);background:0 0;border:0;outline:0;font-size:14px}.migration-groups{gap:13px;display:grid}.migration-group{--group-tone:oklch(62% .18 255);overflow:hidden}.migration-group.tone-2{--group-tone:oklch(68% .17 75)}.migration-group.tone-3{--group-tone:oklch(62% .17 148)}.migration-group.tone-4{--group-tone:oklch(63% .19 325)}.migration-group.tone-5{--group-tone:oklch(62% .16 200)}.migration-group-toggle{background:var(--card);width:100%;min-height:68px;color:var(--foreground);text-align:left;border:0;justify-content:space-between;align-items:center;gap:18px;padding:11px 16px;display:flex}.migration-group-toggle:hover{background:var(--group-tone)}@supports (color:color-mix(in lab, red, red)){.migration-group-toggle:hover{background:color-mix(in oklch, var(--group-tone) 4%, var(--card))}}.migration-group-toggle>div{align-items:center;gap:10px;min-width:0;display:flex}.migration-group-icon{background:var(--group-tone);border-radius:9px;flex:none;place-items:center;width:34px;height:34px;display:grid}@supports (color:color-mix(in lab, red, red)){.migration-group-icon{background:color-mix(in oklch, var(--group-tone) 12%, var(--card))}}.migration-group-icon{color:var(--group-tone)}.migration-group-icon svg{width:17px}.migration-group-toggle>div>span:last-child{gap:4px;min-width:0;display:grid}.migration-group-toggle strong{font-size:14px;font-weight:770}.migration-group-toggle small{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:620;overflow:hidden}.migration-group-percentage{flex:none;align-items:center;gap:8px;display:flex}.migration-group-percentage strong{font-size:14px}.migration-group-percentage svg{width:15px;color:var(--muted-foreground);transition:transform .16s}.migration-group-toggle[aria-expanded=true] .migration-group-percentage svg{transform:rotate(180deg)}.migration-group-progress{background:var(--secondary);border-radius:99px;height:5px;margin:0 14px 9px;overflow:hidden}.migration-group-progress span{border-radius:inherit;background:var(--group-tone);height:100%;transition:width .2s;display:block}.migration-group .migration-object-list{border-top:1px solid var(--border)}.migration-object-list{max-height:630px;overflow-y:auto}.migration-list-head,.migration-object-row{grid-template-columns:minmax(260px,1fr) 120px 150px 230px;align-items:center;gap:12px;padding:0 18px;display:grid}.migration-list-head{z-index:2;border-bottom:1px solid var(--border);background:var(--background);min-height:34px;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.migration-list-head{background:color-mix(in oklch, var(--background) 80%, var(--card))}}.migration-list-head{color:var(--muted-foreground);letter-spacing:.04em;text-transform:uppercase;font-size:14px;font-weight:750}.migration-object-row{border-bottom:1px solid var(--border);min-height:68px}.migration-object-row:last-child{border-bottom:0}.migration-object-row>div:first-child{gap:2px;min-width:0;display:grid}.migration-object-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.migration-object-row code{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.migration-entity-meta{align-items:center;gap:6px;margin-top:3px;display:flex}.migration-entity-role{background:var(--secondary);width:fit-content;color:var(--muted-foreground);border-radius:99px;padding:2px 6px;font-size:14px;font-weight:750;display:inline-flex}.migration-entity-role.core{color:oklch(49% .15 250);background:oklch(92% .04 250)}.migration-schema-relations{color:var(--muted-foreground);align-items:center;gap:4px;font-size:14px;font-weight:700;display:inline-flex}.migration-schema-relations svg{width:11px}.dark .migration-entity-role.core{color:oklch(75% .11 250);background:oklch(29% .06 250)}.migration-record-count{font-size:14px;font-weight:750}.migration-status{color:var(--muted-foreground);align-items:center;gap:5px;font-size:14px;font-weight:700;display:inline-flex}.migration-status svg{width:13px}.migration-status.success{color:oklch(53% .15 148)}.migration-status.error{color:var(--destructive)}.migration-row-actions{justify-content:flex-end;align-items:center;gap:4px;display:flex}.relationship-analysis{overflow:hidden}.relationship-analysis-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:18px;padding:17px 18px;display:flex}.relationship-analysis-header>div{align-items:flex-start;gap:10px;display:flex}.relationship-analysis-icon{color:oklch(53% .17 250);background:oklch(92% .04 250);border-radius:9px;flex:none;place-items:center;width:34px;height:34px;display:grid}.dark .relationship-analysis-icon{color:oklch(75% .11 250);background:oklch(29% .065 250)}.relationship-analysis-icon svg{width:17px}.relationship-analysis-header h2{margin:0;font-size:15px}.relationship-analysis-header p{max-width:850px;color:var(--muted-foreground);margin:4px 0 0;font-size:14px;line-height:1.55}.relationship-analyzed-at{color:var(--muted-foreground);flex:none;font-size:14px}.relationship-analysis-loading,.relationship-analysis-error{min-height:180px;color:var(--muted-foreground);justify-content:center;align-items:center;gap:9px;padding:24px;font-size:14px;font-weight:650;display:flex}.relationship-analysis-loading svg,.relationship-analysis-error svg{width:18px}.relationship-analysis-error{color:var(--destructive)}.relationship-analysis-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:215px;padding:30px 20px;display:flex}.relationship-analysis-empty.compact{border-top:1px solid var(--border);min-height:170px}.relationship-analysis-empty>svg{width:30px;height:30px;color:var(--muted-foreground);opacity:.65;margin-bottom:10px}.relationship-analysis-empty h3{margin:0;font-size:14px}.relationship-analysis-empty p{max-width:620px;color:var(--muted-foreground);margin:7px 0 0;font-size:14px;line-height:1.55}.relationship-report-title{justify-content:space-between;align-items:flex-end;gap:16px;padding:16px 18px 10px;display:flex}.relationship-report-title span{color:var(--muted-foreground);text-transform:uppercase;font-size:14px;font-weight:700}.relationship-report-title h3{margin:3px 0 0;font-size:19px}.relationship-report-title code{color:var(--muted-foreground);font-size:14px}.relationship-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:0 18px 16px;display:grid}.relationship-metrics article{border:1px solid var(--border);background:var(--background);border-radius:9px;gap:3px;padding:11px 12px;display:grid}.relationship-metrics span{color:var(--muted-foreground);font-size:14px;font-weight:650}.relationship-metrics strong{font-size:18px}.relationship-metrics article.danger strong{color:var(--destructive)}.relationship-graph-wrap{border:1px solid var(--border);background:radial-gradient(circle at center, var(--primary), transparent 52%), var(--background);border-radius:12px;margin:0 18px 16px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.relationship-graph-wrap{background:radial-gradient(circle at center, color-mix(in oklch, var(--primary) 4%, transparent), transparent 52%), var(--background)}}.relationship-graph{width:100%;min-width:680px;height:auto;display:block}.relationship-graph line{stroke:oklch(62% .16 250);stroke-width:1.6px;opacity:.68}.relationship-graph line.array{stroke:oklch(64% .17 325);stroke-dasharray:6 4}.relationship-graph line.incoming{stroke:oklch(61% .16 148)}.relationship-graph marker path{fill:oklch(62% .16 250)}.relationship-edge-label{paint-order:stroke;stroke:var(--background);stroke-width:4px;fill:var(--muted-foreground);font-size:14px}.relationship-node rect{stroke:var(--border);stroke-width:1.2px;fill:var(--card)}.relationship-node text{fill:var(--foreground);font-size:14px;font-weight:720}.relationship-node .relationship-node-type{fill:var(--muted-foreground);font-size:14px;font-weight:600}.relationship-source-node rect{stroke:var(--primary)}@supports (color:color-mix(in lab, red, red)){.relationship-source-node rect{stroke:color-mix(in oklch, var(--primary) 45%, var(--border))}}.relationship-source-node rect{fill:var(--primary)}@supports (color:color-mix(in lab, red, red)){.relationship-source-node rect{fill:color-mix(in oklch, var(--primary) 7%, var(--card))}}.relationship-graph-legend{border-top:1px solid var(--border);color:var(--muted-foreground);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 20px;padding:9px 14px;font-size:14px;display:flex}.relationship-graph-legend span{align-items:center;gap:6px;display:inline-flex}.relationship-graph-legend i{background:oklch(62% .16 250);width:22px;height:2px}.relationship-graph-legend i.array{background:repeating-linear-gradient(90deg,oklch(64% .17 325) 0 5px,#0000 5px 8px)}.relationship-graph-legend i.incoming{background:oklch(61% .16 148)}.relationship-table-wrap{border-top:1px solid var(--border);overflow-x:auto}.relationship-table{min-width:980px}.relationship-table code{font-size:14px}.relationship-field-mapping{gap:2px;display:grid}.relationship-field-mapping code+small{margin-bottom:4px}.relationship-field-mapping small{color:var(--muted-foreground);font-size:14px;font-weight:650}.relationship-cardinality{color:oklch(50% .15 250);background:oklch(92% .04 250);border-radius:99px;padding:4px 7px;font-size:14px;font-weight:720;display:inline-flex}.relationship-cardinality.array{color:oklch(52% .16 325);background:oklch(93% .04 325)}.dark .relationship-cardinality{color:oklch(75% .11 250);background:oklch(29% .065 250)}.dark .relationship-cardinality.array{color:oklch(76% .1 325);background:oklch(29% .06 325)}.relationship-confidence{background:var(--secondary);border-radius:99px;align-items:center;width:82px;height:20px;display:inline-flex;position:relative;overflow:hidden}.relationship-confidence i{background:oklch(72% .11 148);position:absolute;inset:0 auto 0 0}.relationship-confidence strong{z-index:1;width:100%;color:var(--foreground);text-align:center;font-size:14px;position:relative}.relationship-orphan-count{font-weight:750}.relationship-orphan-count.danger{color:var(--destructive)}.relationship-privacy-note{border-top:1px solid var(--border);color:var(--muted-foreground);margin:0;padding:11px 18px 14px;font-size:14px;line-height:1.5}.entity-matrix-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:16px 18px;display:grid}.entity-matrix-metrics article{border:1px solid var(--border);background:var(--background);border-radius:10px;gap:3px;padding:12px;display:grid}.entity-matrix-metrics span,.entity-matrix-metrics small{color:var(--muted-foreground);font-size:14px}.entity-matrix-metrics strong{font-size:20px}.entity-matrix-metrics .warning strong{color:oklch(58% .15 65)}.entity-matrix-toolbar{justify-content:space-between;align-items:center;gap:12px;padding:0 18px 14px;display:flex}.entity-filter-buttons{flex-wrap:wrap;gap:5px;display:flex}.entity-filter-buttons button{border:1px solid var(--border);background:var(--card);color:var(--muted-foreground);border-radius:99px;padding:6px 10px;font-size:14px;font-weight:700}.entity-filter-buttons button.active{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.entity-filter-buttons button.active{border-color:color-mix(in oklch, var(--primary) 45%, var(--border))}}.entity-filter-buttons button.active{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.entity-filter-buttons button.active{background:color-mix(in oklch, var(--primary) 9%, var(--card))}}.entity-filter-buttons button.active{color:var(--primary)}.entity-matrix-toolbar>label{border:1px solid var(--border);background:var(--background);border-radius:8px;align-items:center;gap:7px;width:min(280px,40%);height:36px;padding:0 10px;display:flex}.entity-matrix-toolbar svg{width:14px;color:var(--muted-foreground)}.entity-matrix-toolbar input{width:100%;color:var(--foreground);background:0 0;border:0;outline:0;font-size:14px}.entity-matrix-table-wrap{border-top:1px solid var(--border);max-height:620px;overflow:auto}.entity-matrix-table{min-width:1050px}.entity-matrix-table thead{z-index:2;position:sticky;top:0}.entity-rate{background:var(--secondary);border-radius:99px;align-items:center;width:78px;height:24px;display:inline-flex;position:relative;overflow:hidden}.entity-rate i{background:oklch(72% .12 148);position:absolute;inset:0 auto 0 0}.entity-rate strong{text-align:center;width:100%;font-size:14px;position:relative}.entity-migration-status{align-items:center;gap:5px;font-size:14px;font-weight:700;display:inline-flex}.entity-migration-status svg{width:13px}.entity-migration-status.complete{color:oklch(52% .15 148)}.entity-migration-status.complete_with_issues,.entity-migration-status.reconciliation_required{color:oklch(57% .14 65)}.entity-migration-status.not_started{color:var(--muted-foreground)}.coverage-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.coverage-card{align-items:center;gap:12px;padding:16px;display:flex}.coverage-card>svg{width:24px;color:var(--primary)}.coverage-card.warning>svg{color:oklch(58% .15 65)}.coverage-card>div{gap:4px;display:grid}.coverage-card span,.coverage-card small{color:var(--muted-foreground);font-size:14px}.coverage-card strong{font-size:20px}.migrated-fk-list{overflow:hidden}.migrated-fk-list>header,.file-incremental-policy>header,.file-field-breakdown>header{border-bottom:1px solid var(--border);padding:16px 18px}.migrated-fk-list>header>div,.file-incremental-policy>header>div{align-items:center;gap:10px;display:flex}.migrated-fk-list>header svg,.file-incremental-policy>header svg{width:20px;color:var(--primary)}.migrated-fk-list h2,.file-incremental-policy h2,.file-field-breakdown h2{margin:0;font-size:16px}.migrated-fk-list header p,.file-incremental-policy header p{color:var(--muted-foreground);margin:4px 0 0;font-size:14px}.migrated-fk-list>div{max-height:620px;overflow:auto}.migrated-fk-list article{border-bottom:1px solid var(--border);grid-template-columns:minmax(340px,1fr) 140px 160px;align-items:center;gap:12px;padding:12px 18px;display:grid}.migrated-fk-list article>span:first-child{align-items:center;gap:8px;min-width:0;display:flex}.migrated-fk-list footer{color:var(--muted-foreground);align-items:center;gap:8px;padding:13px 18px;font-size:14px;display:flex}.migrated-fk-list footer svg{color:oklch(58% .15 65);width:17px}.file-migration-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.file-migration-metrics article{gap:4px;padding:15px;display:grid;position:relative}.file-migration-metrics span,.file-migration-metrics small{color:var(--muted-foreground);font-size:14px}.file-migration-metrics strong{font-size:22px}.file-migration-metrics svg{color:oklch(54% .15 148);width:18px;position:absolute;top:14px;right:14px}.file-inventory-gate{border:1px solid var(--destructive);align-items:center;gap:12px;padding:15px 16px;display:flex}@supports (color:color-mix(in lab, red, red)){.file-inventory-gate{border:1px solid color-mix(in oklch, var(--destructive) 30%, var(--border))}}.file-inventory-gate{background:var(--destructive);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.file-inventory-gate{background:color-mix(in oklch, var(--destructive) 5%, var(--card))}}.file-inventory-gate>svg{width:20px;color:var(--destructive);flex:none}.file-inventory-gate>div{flex:1}.file-inventory-gate strong{color:var(--foreground)}.file-inventory-gate p{color:var(--muted-foreground);margin:4px 0 0;font-size:14px}.file-manager-panel{overflow:hidden}.file-manager-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:17px 18px;display:flex}.file-manager-heading h2,.file-manager-heading p{margin:0}.file-manager-heading h2{font-size:16px}.file-manager-heading p{color:var(--muted-foreground);margin-top:4px;font-size:14px}.file-manager-heading code{color:var(--muted-foreground);font-size:14px}.file-manager-toolbar{border-bottom:1px solid var(--border);align-items:flex-end;gap:14px;padding:14px 18px;display:flex}.file-manager-toolbar>label{color:var(--muted-foreground);gap:6px;font-size:14px;font-weight:700;display:grid}.file-manager-search{width:min(520px,100%)}.file-manager-search>div{position:relative}.file-manager-search svg{pointer-events:none;width:17px;position:absolute;top:11px;left:11px}.file-manager-toolbar input[type=text],.file-manager-toolbar input:not([type]),.file-manager-toolbar select{border:1px solid var(--border);background:var(--background);height:40px;color:var(--foreground);border-radius:9px;outline:0}.file-manager-search input{width:100%;padding:0 12px 0 36px}.file-manager-toolbar select{min-width:150px;padding:0 32px 0 11px}.file-manager-toolbar .file-private-filter{min-height:40px;color:var(--foreground);align-items:center;gap:8px;padding:0 4px;font-size:14px;display:flex}.file-manager-panel table{min-width:1020px}.file-manager-empty{text-align:center;height:100px}.file-manager-pagination{border-top:1px solid var(--border);min-height:62px;color:var(--muted-foreground);justify-content:space-between;align-items:center;gap:16px;padding:10px 18px;font-size:14px;display:flex}.file-manager-pagination>div{align-items:center;gap:9px;display:flex}.file-manager-pagination svg{width:17px}.file-manager-pagination strong{min-width:60px;color:var(--foreground);text-align:center}.migration-issue-table-wrap{border-top:1px solid var(--border);overflow-x:auto}.migration-issue-table-wrap table{min-width:900px}.issue-status{align-items:center;gap:6px;font-size:14px;font-weight:700;display:inline-flex}.issue-status svg{width:15px}.issue-status.accepted{color:oklch(58% .15 65)}.reconciliation-warning-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:16px 18px;display:grid}.reconciliation-warning-grid article{border:1px solid var(--border);background:var(--background);border-radius:10px;gap:9px;padding:12px;display:flex}.reconciliation-warning-grid article>svg{color:oklch(58% .15 65);width:18px}.reconciliation-warning-grid article.blocking>svg{color:var(--destructive)}.reconciliation-warning-grid article>div{gap:3px;display:grid}.reconciliation-warning-grid span,.reconciliation-warning-grid small{color:var(--muted-foreground);font-size:14px}.reconciliation-warning-grid strong{font-size:17px}.migration-issue-note{border-top:1px solid var(--border);color:var(--muted-foreground);align-items:center;gap:7px;margin:0;padding:12px 18px;font-size:14px;display:flex}.migration-issue-note svg{color:oklch(58% .15 65);width:16px}.reports-page{gap:14px;display:grid}.report-tabs,.report-shop-filter{flex-wrap:wrap;gap:7px;display:flex}.report-tabs button,.report-shop-filter button{border:1px solid var(--border);background:var(--card);color:var(--muted-foreground);border-radius:99px;padding:7px 12px;font-size:14px;font-weight:700}.report-tabs button.active,.report-shop-filter button.active{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.report-tabs button.active,.report-shop-filter button.active{border-color:color-mix(in oklch, var(--primary) 45%, var(--border))}}.report-tabs button.active,.report-shop-filter button.active{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.report-tabs button.active,.report-shop-filter button.active{background:color-mix(in oklch, var(--primary) 10%, var(--card))}}.report-tabs button.active,.report-shop-filter button.active{color:var(--primary)}.report-tabs button:disabled:not(.active){opacity:.58}.report-filter-panel{gap:15px;padding:16px 18px;display:grid}.report-date-controls{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:8px;display:flex}.report-date-controls label{gap:5px;display:grid}.report-date-controls label span{color:var(--muted-foreground);font-size:14px;font-weight:700}.report-date-controls input{border:1px solid var(--border);background:var(--background);height:38px;color:var(--foreground);border-radius:8px;padding:0 10px;font-size:14px}.shop-order-report{overflow:hidden}.shop-order-report>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;display:flex}.shop-order-report h2{margin:0;font-size:18px}.shop-order-report header p{color:var(--muted-foreground);margin:4px 0 0;font-size:14px}.report-table-wrap{max-height:680px;overflow:auto}.report-table-wrap table{min-width:760px}.report-table-wrap thead{z-index:2;position:sticky;top:0}.report-table-wrap td:last-child,.report-table-wrap th:last-child{text-align:right}.report-product-list,.report-quantity-list{padding-top:0;padding-bottom:0}.report-product-list span,.report-quantity-list span,.report-product-list strong,.report-quantity-list strong{border-bottom:1px dotted var(--border);min-height:34px;padding:8px 0;display:block}.report-product-list strong,.report-quantity-list strong{color:var(--foreground);border-bottom:0}.report-table-wrap tfoot td{border-top:2px solid var(--border);background:var(--secondary);color:var(--foreground);font-weight:800}.report-state{min-height:220px;color:var(--muted-foreground);text-align:center;place-items:center;padding:24px;font-size:14px;display:grid}.report-state p{color:var(--destructive);margin:0;font-weight:700}.report-state small{margin-top:6px;font-size:14px}.editor-only-mappings{border-top:1px solid var(--border);padding:16px 18px 18px}.editor-only-mappings h3{margin:0;font-size:16px}.editor-only-mappings header p{color:var(--muted-foreground);margin:5px 0 14px;font-size:14px}.editor-only-mappings>div{gap:7px;display:grid}.editor-only-mappings article{border:1px solid var(--border);background:var(--background);border-radius:9px;grid-template-columns:minmax(150px,.8fr) auto minmax(220px,1.2fr) auto minmax(180px,1fr);align-items:center;gap:10px;min-height:44px;padding:8px 10px;display:grid}.editor-only-mappings article code,.editor-only-mappings article small{font-size:14px}.editor-only-mappings article small{color:var(--muted-foreground)}.editor-mapping-status{font-size:14px}.editor-mapping-status.approved{color:oklch(52% .15 148)}.editor-mapping-status.pending{color:oklch(57% .14 65)}.migration-execution-log{color:oklch(91% .015 255);background:oklch(18% .025 260);border:1px solid oklch(28% .03 260);border-radius:14px;overflow:hidden;box-shadow:0 8px 28px #0f172a24}.migration-execution-log>header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:16px;min-height:48px;padding:0 17px;display:flex}.migration-execution-log h2{align-items:center;gap:8px;margin:0;font-size:14px;font-weight:760;display:flex}.migration-execution-log h2 svg{color:oklch(72% .13 250);width:16px}.migration-execution-log header button{color:oklch(70% .02 255);background:0 0;border:0;border-radius:6px;padding:5px 7px;font-size:14px;font-weight:650}.migration-execution-log header button:hover:not(:disabled){color:#fff;background:#ffffff12}.migration-execution-log header button:disabled{opacity:.4}.migration-log-content{scrollbar-color:oklch(70% .02 255) transparent;min-height:170px;max-height:330px;padding:14px 17px 18px;overflow-y:auto}.migration-log-content p{color:oklch(78% .025 255);gap:9px;margin:0 0 7px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:14px;line-height:1.55;display:flex}.migration-log-content p:last-child{margin-bottom:0}.migration-log-content time{color:oklch(70% .05 250);flex:none}.migration-log-content p.success span{color:oklch(76% .13 152)}.migration-log-content p.error span{color:oklch(73% .16 25)}.spin{animation:.8s linear infinite migration-spin}@keyframes migration-spin{to{transform:rotate(360deg)}}.placeholder-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - 220px);display:flex}.placeholder-page p{max-width:480px;margin-bottom:20px}.placeholder-icon{background:var(--primary);border-radius:18px;place-items:center;width:64px;height:64px;margin-bottom:18px;display:grid}@supports (color:color-mix(in lab, red, red)){.placeholder-icon{background:color-mix(in oklch, var(--primary) 10%, var(--card))}}.placeholder-icon{color:var(--primary)}.placeholder-icon svg{width:28px;height:28px}.profile-page{width:100%}.profile-heading{align-items:center}.profile-heading .spin{animation:.9s linear infinite profile-spin}.profile-summary{border:1px solid var(--border);background:var(--card);box-shadow:0 5px 22px var(--foreground);border-radius:14px;align-items:center;gap:16px;margin-bottom:16px;padding:20px;display:flex}@supports (color:color-mix(in lab, red, red)){.profile-summary{box-shadow:0 5px 22px color-mix(in oklch, var(--foreground) 3%, transparent)}}.profile-avatar{background:var(--primary);width:54px;height:54px;box-shadow:0 8px 22px var(--primary);border-radius:15px;flex:none;place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.profile-avatar{box-shadow:0 8px 22px color-mix(in oklch, var(--primary) 22%, transparent)}}.profile-avatar{color:var(--primary-foreground);font-size:16px;font-weight:850}.profile-summary>div{min-width:0}.profile-summary h2{letter-spacing:-.02em;margin:0;font-size:20px;font-weight:780}.profile-summary p{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:14px;overflow:hidden}.profile-role{background:var(--primary);border-radius:99px;align-items:center;gap:7px;min-height:32px;margin-left:auto;padding:0 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.profile-role{background:color-mix(in oklch, var(--primary) 10%, var(--card))}}.profile-role{color:var(--primary);font-size:14px;font-weight:720}.profile-role svg{width:16px}.profile-state{border:1px solid var(--border);background:var(--card);color:var(--muted-foreground);border-radius:12px;align-items:center;gap:10px;padding:18px;font-size:14px;display:flex}.profile-state svg{width:18px}.profile-state-error{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.profile-state-error{border-color:color-mix(in oklch, var(--destructive) 30%, var(--border))}}.profile-state-error{color:var(--destructive)}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.profile-card{border:1px solid var(--border);background:var(--card);min-width:0;box-shadow:0 5px 22px var(--foreground);border-radius:14px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.profile-card{box-shadow:0 5px 22px color-mix(in oklch, var(--foreground) 3%, transparent)}}.profile-card-wide{grid-column:1/-1}.profile-card>header{border-bottom:1px solid var(--border);align-items:center;gap:9px;padding:16px 18px;display:flex}.profile-card>header svg{width:18px;color:var(--primary)}.profile-card>header h2{margin:0;font-size:15px;font-weight:760}.profile-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:6px;display:grid}.profile-fields-wide{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-field{border-radius:9px;align-items:flex-start;gap:10px;min-width:0;padding:13px 12px;display:flex}.profile-field:hover{background:var(--secondary)}.profile-field-icon{background:var(--primary);border-radius:8px;flex:none;place-items:center;width:30px;height:30px;display:grid}@supports (color:color-mix(in lab, red, red)){.profile-field-icon{background:color-mix(in oklch, var(--primary) 8%, var(--card))}}.profile-field-icon{color:var(--primary)}.profile-field-icon svg{width:15px;height:15px}.profile-field>div{flex-direction:column;gap:3px;min-width:0;display:flex}.profile-field>div>span{color:var(--muted-foreground);font-size:14px}.profile-field strong{overflow-wrap:anywhere;font-size:14px;font-weight:680;line-height:1.5}.profile-field code{white-space:pre-wrap;max-height:130px;display:block;overflow:auto}.mobile-account-actions{border-top:1px solid var(--border);flex-direction:column;gap:3px;margin-top:auto;padding-top:12px;display:flex}.mobile-account-actions button.sidebar-link{text-align:left;background:0 0;border:0}.mobile-account-actions .danger{color:var(--destructive)}.login-page{background:var(--background);grid-template-columns:minmax(420px,.92fr) minmax(480px,1.08fr);min-height:100vh;display:grid}.login-brand-panel{color:#fff;background:linear-gradient(155deg,oklch(31% .125 24),oklch(20% .075 18));min-height:100vh;position:relative;overflow:hidden}.login-brand-panel:before{content:"";background-color:#0000;background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:52px 52px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 88%);mask-image:linear-gradient(#000,#0000 88%)}.login-brand-glow{filter:blur(3px);opacity:.52;border-radius:50%;position:absolute}.login-brand-glow-one{background:oklch(62% .22 26/.52);width:520px;height:520px;top:-16%;left:-18%}.login-brand-glow-two{background:oklch(49% .17 8/.32);border:1px solid #ffffff21;width:600px;height:600px;bottom:-20%;right:-28%}.login-brand-content{z-index:1;flex-direction:column;min-height:100%;padding:clamp(28px,5.5vw,72px);display:flex;position:relative}.login-brand{color:#fff;align-self:flex-start;align-items:center;gap:12px;display:inline-flex}.login-brand-mark{letter-spacing:-.04em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff21;border:1px solid #ffffff3d;border-radius:13px 6px;place-items:center;width:44px;height:44px;font-size:14px;font-weight:900;display:grid;box-shadow:inset 0 1px #ffffff2e}.login-brand>span:last-child{flex-direction:column;display:flex}.login-brand strong{font-size:16px;line-height:1.2}.login-brand small{color:#ffffff9e;letter-spacing:.14em;text-transform:uppercase;font-size:14px;font-weight:700}.login-message{max-width:590px;margin:auto 0;padding:70px 0}.login-kicker{color:#ffffffb8;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:22px;font-size:14px;font-weight:750;display:inline-flex}.login-kicker svg{width:17px}.login-message h1{letter-spacing:-.055em;max-width:560px;margin:0;font-size:clamp(38px,5.2vw,68px);font-weight:760;line-height:1.03}.login-message p{color:#ffffffad;max-width:500px;margin:25px 0 0;font-size:clamp(14px,1.3vw,17px);line-height:1.75}.login-proof{color:#ffffffad;flex-wrap:wrap;gap:10px 20px;font-size:14px;font-weight:650;display:flex}.login-proof span{align-items:center;gap:7px;display:inline-flex}.login-proof svg{color:oklch(81% .11 145);width:15px}.login-form-panel{justify-content:center;align-items:center;min-height:100vh;padding:70px clamp(24px,7vw,110px);display:flex;position:relative}.login-toolbar{gap:3px;display:flex;position:absolute;top:22px;right:25px}.login-card{width:min(100%,430px)}.login-card h2{letter-spacing:-.045em;margin:0;font-size:clamp(30px,3.2vw,42px);font-weight:780;line-height:1.15}.login-card>p{color:var(--muted-foreground);margin:13px 0 0;font-size:14px;line-height:1.7}.login-form{flex-direction:column;gap:18px;margin-top:34px;display:flex}.form-field{flex-direction:column;gap:8px;display:flex}.form-field>span:first-child{color:var(--foreground);font-size:14px;font-weight:720}.form-field>input,.password-input{border:1px solid var(--border);background:var(--card);width:100%;height:48px;color:var(--foreground);box-shadow:0 1px 2px var(--foreground);border-radius:11px}@supports (color:color-mix(in lab, red, red)){.form-field>input,.password-input{box-shadow:0 1px 2px color-mix(in oklch, var(--foreground) 3%, transparent)}}.form-field>input,.password-input{transition:border-color .15s,box-shadow .15s,background-color .15s}.form-field>input{outline:0;padding:0 14px}.password-input{align-items:center;display:flex}.password-input input{width:100%;height:100%;color:var(--foreground);background:0 0;border:0;outline:0;padding:0 5px 0 14px}.password-input button{width:42px;height:42px;color:var(--muted-foreground);background:0 0;border:0;border-radius:8px;flex:none;place-items:center;display:grid}.password-input button:hover{background:var(--secondary);color:var(--foreground)}.password-input svg{width:17px}.form-field>input:focus,.password-input:focus-within{border-color:var(--ring);box-shadow:0 0 0 3px var(--ring)}@supports (color:color-mix(in lab, red, red)){.form-field>input:focus,.password-input:focus-within{box-shadow:0 0 0 3px color-mix(in oklch, var(--ring) 15%, transparent)}}.form-field input::placeholder{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.form-field input::placeholder{color:color-mix(in oklch, var(--muted-foreground) 72%, transparent)}}.auth-message{border:1px solid;border-radius:9px;align-items:flex-start;gap:9px;padding:11px 12px;font-size:14px;font-weight:620;line-height:1.5;display:flex}.auth-message svg{flex:none;width:16px;height:16px;margin-top:1px}.auth-error{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.auth-error{border-color:color-mix(in oklch, var(--destructive) 28%, var(--border))}}.auth-error{background:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.auth-error{background:color-mix(in oklch, var(--destructive) 8%, var(--card))}}.auth-error{color:var(--destructive)}.auth-success{color:oklch(48% .14 148);background:oklch(80% .06 148/.1);border-color:oklch(65% .13 148/.32)}.dark .auth-success{color:oklch(74% .12 148)}.login-submit{width:100%;height:48px;box-shadow:0 10px 24px var(--primary);margin-top:2px}@supports (color:color-mix(in lab, red, red)){.login-submit{box-shadow:0 10px 24px color-mix(in oklch, var(--primary) 23%, transparent)}}.login-submit svg{margin-left:auto}.login-text-button{color:var(--primary);background:0 0;border:0;justify-content:center;align-self:center;align-items:center;gap:7px;padding:3px 6px;font-size:14px;font-weight:700;display:inline-flex}.login-text-button:hover{text-underline-offset:3px;text-decoration:underline}.login-text-button svg{width:14px}.login-security-note{color:var(--muted-foreground);text-align:center;justify-content:center;align-items:center;gap:7px;margin:0;font-size:14px;display:flex;position:absolute;bottom:18px;left:24px;right:24px}.login-security-note svg{flex:none;width:14px}.auth-loading{background:var(--background);min-height:100vh;color:var(--muted-foreground);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.auth-loading-mark{background:var(--primary);width:52px;height:52px;box-shadow:0 10px 28px var(--primary);border-radius:15px 7px;place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.auth-loading-mark{box-shadow:0 10px 28px color-mix(in oklch, var(--primary) 25%, transparent)}}.auth-loading-mark{color:var(--primary-foreground);font-size:14px;font-weight:900}.auth-loading-bar{background:var(--secondary);border-radius:99px;width:112px;height:3px;overflow:hidden}.auth-loading-bar span{border-radius:inherit;background:var(--primary);width:45%;height:100%;animation:1.1s ease-in-out infinite alternate auth-loading;display:block}.auth-loading p{margin:0;font-size:14px}.mobile-only,.mobile-menu-layer{display:none}@keyframes page-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes auth-loading{0%{transform:translate(-5%)}to{transform:translate(130%)}}@keyframes profile-spin{to{transform:rotate(360deg)}}@media (width<=1260px){.primary-nav-link{padding:0 9px}.primary-nav-link span{display:none}.primary-nav-link:after{left:8px;right:8px}.search-box{width:180px}.user-copy{display:none}}@media (width<=900px){:root{--topbar-height:60px;--workspace-height:42px}.topbar{grid-template-columns:minmax(0,1fr) auto;padding:0 10px}.topbar-brand{gap:5px}.mobile-only{display:inline-flex}.primary-nav,.workspace-links,.search-box,.user-menu{display:none}.topbar-actions{gap:0}.workspace-bar{display:none}.shell-body,.shell-body.sidebar-is-collapsed{padding-top:var(--topbar-height);display:block}.sidebar{display:none}.main-content,.public-migration-shell{padding:22px 14px 40px}.migration-warning{margin:-22px -14px 2px;padding:12px 14px}.control-overview-grid,.phase-grid,.migration-action-grid,.fk-summary-metrics,.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.mobile-menu-layer{z-index:100;display:block;position:fixed;inset:0}.login-page{grid-template-columns:1fr}.login-brand-panel{display:none}.login-form-panel{min-height:100svh;padding:75px 24px 62px}.login-card{max-width:460px}.mobile-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000007a;border:0;width:100%;position:absolute;inset:0}.mobile-drawer{border-right:1px solid var(--border);background:var(--card);flex-direction:column;width:min(86vw,340px);height:100%;padding:10px;animation:.19s cubic-bezier(.22,1,.36,1) drawer-in;display:flex;position:relative;box-shadow:22px 0 60px #00000040}.mobile-drawer-header{justify-content:space-between;align-items:center;min-height:54px;margin-bottom:10px;padding:0 3px 0 7px;display:flex}.mobile-drawer nav{flex-direction:column;gap:3px;display:flex}.profile-grid,.profile-fields-wide{grid-template-columns:1fr}.profile-card-wide{grid-column:auto}@keyframes drawer-in{0%{transform:translate(-100%)}to{transform:translate(0)}}}@media (width<=620px){.brand-copy small,.workspace-context span{display:none}.workspace-context{gap:4px}.page-heading{flex-direction:column;align-items:flex-start}.migration-warning>span,.migration-warning p{display:none}.migration-workspace-header{align-items:flex-start}.migration-workspace-header small,.migration-workspace-header button svg{display:none}.migration-tabs{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.migration-tab{justify-content:center;padding:0 8px}.control-overview-grid,.phase-grid,.migration-action-grid,.fk-summary-metrics,.control-two-column{grid-template-columns:1fr}.fk-verification-summary>header{flex-direction:column}.fk-verified-mappings>div{grid-template-columns:minmax(0,1fr) auto}.fk-verified-mappings>div>.evidence-badge{grid-column:1/-1}.migration-hero{flex-direction:column;align-items:stretch}.migration-metrics,.migration-source-fields{grid-template-columns:1fr}.migration-table-header{flex-direction:column;align-items:stretch}.migration-search{width:100%}.migration-group-toggle{align-items:flex-start;min-height:76px;padding:12px}.migration-group-toggle small{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.migration-group-icon,.migration-list-head{display:none}.migration-object-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:11px 14px}.migration-record-count{grid-area:1/2}.migration-status{grid-area:2/1}.migration-row-actions{grid-area:3/1/auto/3;justify-content:stretch}.migration-row-actions button{flex:1}.relationship-analysis-header{flex-direction:column}.relationship-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.relationship-graph-wrap{overflow-x:auto}.heading-actions{width:100%}.heading-actions button{flex:1}.profile-heading{align-items:flex-start}.profile-heading button{width:100%}.profile-summary{flex-wrap:wrap;align-items:flex-start}.profile-role{width:100%;margin-left:70px}.profile-fields{grid-template-columns:1fr}.metrics-grid{gap:10px}.metric-card{flex-direction:column;align-items:flex-start;gap:10px;padding:14px}.metric-icon{width:36px;height:36px}.metric-icon svg{width:18px}.metric-card strong{font-size:18px}.queue-list{grid-template-columns:1fr}.panel-header{padding:16px}}@media (width<=390px){.topbar .brand-copy{display:none}.metrics-grid{grid-template-columns:1fr}.metric-card{flex-direction:row;align-items:center}}@media (width<=620px){.coverage-grid{grid-template-columns:1fr}.file-migration-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.file-incremental-policy dl,.reconciliation-warning-grid{grid-template-columns:1fr}.report-date-controls{flex-direction:column;align-items:stretch}.report-date-controls>span{display:none}.shop-order-report>header{flex-direction:column;align-items:flex-start}.migrated-fk-list article{grid-template-columns:1fr}.entity-matrix-metrics{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.entity-matrix-toolbar{flex-direction:column;align-items:stretch;padding:0 12px 12px}.entity-matrix-toolbar>label{width:100%}.editor-only-mappings{padding:12px}.editor-only-mappings article{grid-template-columns:1fr auto}.editor-only-mappings article>span,.editor-only-mappings article>code:nth-of-type(2),.editor-only-mappings article>small{grid-column:1/3}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
