@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-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;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, 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;--spacing:.25rem;--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,ui-sans-serif, system-ui, 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{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{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.w-0{width:calc(var(--spacing) * 0)}.w-100{width:calc(var(--spacing) * 100)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + 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)}.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,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}}:root{--bg:#f2f2f7;--surface:#fff;--surface-2:#f0f0f4;--surface-3:#e9e9ef;--ink:#1d1d1f;--ink-2:#3a3a3c;--ink-3:#6e6e73;--ink-4:#8e8e93;--rule:#d8d8de;--rule-soft:#ececf1;--accent:#0071e3;--accent-hover:#0a84ff;--accent-soft:#0071e31a;--accent-ring:#0071e329;--danger:#ff3b30;--danger-soft:#ff3b301a;--ok:#30b14a;--m-radius-lg:26px;--m-radius:20px;--m-radius-sm:14px;--m-radius-xs:12px;--m-radius-pill:980px;--radius-lg:var(--m-radius-lg);--radius:var(--m-radius);--radius-sm:var(--m-radius-sm);--radius-xs:var(--m-radius-xs);--shadow-soft:0 1px 1px #00000008, 0 6px 16px #0000000d;--shadow-card:0 1px 2px #0000000a, 0 8px 22px #0000000f, 0 22px 50px #0000000d;--shadow-pop:0 6px 18px #0000001a, 0 18px 44px #00000029;--shadow-control:0 1px 2px #0000000f, 0 .5px 0 #fff9 inset;--shadow-raised:0 1px 3px #00000024, 0 1px 1px #0000000a;--mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--sans:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}.modue-logo{aspect-ratio:166/29;background-color:currentColor;width:76px;display:inline-block;-webkit-mask:url(/logo.svg) 50%/contain no-repeat;mask:url(/logo.svg) 50%/contain no-repeat}.modue-logo.is-md{width:96px}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);margin:0;font-size:11px;font-weight:600}.auth{place-items:center;min-height:100dvh;padding:32px;display:grid;position:relative;overflow:hidden}.auth:before{content:"";pointer-events:none;background:radial-gradient(60% 48% at 50% -14%,#0071e314,#0000 70%),radial-gradient(50% 42% at 104% 114%,#af52de0f,#0000 70%);position:absolute;inset:0}.auth-card{background:linear-gradient(180deg, var(--surface) 0%, var(--surface-2) 150%);width:100%;max-width:392px;position:relative}@supports (color:color-mix(in lab, red, red)){.auth-card{background:linear-gradient(180deg, var(--surface) 0%, color-mix(in srgb, var(--surface-2) 70%, var(--surface)) 150%)}}.auth-card{border:1px solid var(--rule-soft);border-radius:var(--m-radius-lg);box-shadow:var(--shadow-card);padding:42px 38px 32px;animation:.55s cubic-bezier(.2,.7,.2,1) both rise}.auth-head{flex-direction:column;gap:14px;margin-bottom:26px;display:flex}.auth-head .modue-logo{color:var(--ink)}.auth-title{letter-spacing:-.021em;margin:0;font-size:27px;font-weight:700;line-height:1.1}.auth-sub{color:var(--ink-3);margin:-4px 0 0;font-size:14px;line-height:1.5}.auth-form{flex-direction:column;gap:16px;display:flex}.field{flex-direction:column;gap:7px;display:flex}.field-label{letter-spacing:.01em;color:var(--ink-2);font-size:12px;font-weight:600}.input{font:inherit;width:100%;color:var(--ink);background:var(--surface-2);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-control);border:1px solid #0000;padding:12px 15px;font-size:15px;transition:background .18s,border-color .18s,box-shadow .18s}.input::placeholder{color:var(--ink-4)}.input:hover{background:var(--surface-3)}.input:focus{background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring), var(--shadow-control);outline:none}.alert{color:var(--danger);background:var(--danger-soft);border-radius:var(--m-radius-xs);align-items:flex-start;gap:8px;margin:0;padding:10px 12px;font-size:13px;line-height:1.45;display:flex}.alert:before{content:"";background:currentColor;flex:none;width:14px;height:14px;margin-top:1px;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M8 1a7 7 0 100 14A7 7 0 008 1zm0 3.4a.9.9 0 01.9.95l-.2 3.8a.7.7 0 01-1.4 0l-.2-3.8A.9.9 0 018 4.4zm0 6.1a1 1 0 110 2 1 1 0 010-2z'/></svg>") 50%/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M8 1a7 7 0 100 14A7 7 0 008 1zm0 3.4a.9.9 0 01.9.95l-.2 3.8a.7.7 0 01-1.4 0l-.2-3.8A.9.9 0 018 4.4zm0 6.1a1 1 0 110 2 1 1 0 010-2z'/></svg>") 50%/contain no-repeat}.auth-foot{color:var(--ink-4);text-align:center;margin:22px 0 0;font-size:12px}.app-shell{--topbar-h:56px;--sidebar-w:244px;grid-template-columns:var(--sidebar-w) minmax(0, 1fr);grid-template-rows:var(--topbar-h) minmax(0, 1fr);grid-template-areas:"topbar topbar""sidebar main";min-height:100vh;display:grid}.app-topbar{z-index:30;height:var(--topbar-h);border-bottom:1px solid var(--rule-soft);background:var(--surface);grid-area:topbar;justify-content:space-between;align-items:center;gap:16px;padding:0 20px 0 24px;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.app-topbar{background:color-mix(in srgb, var(--surface) 82%, transparent)}}.app-topbar{-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px)}.app-brand{width:calc(var(--sidebar-w) - 24px);min-width:0;color:var(--ink);align-items:center;gap:10px;display:flex}.app-brand .modue-logo{color:var(--ink)}.app-brand-name{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-4);border-left:1px solid var(--rule);padding-left:10px;font-size:11px;font-weight:600;line-height:1}.app-topbar-tools{align-items:center;gap:14px;min-width:0;display:flex}.app-user{font-family:var(--mono);color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:12px;overflow:hidden}.app-sidebar{top:var(--topbar-h);height:calc(100vh - var(--topbar-h));overscroll-behavior:contain;border-right:1px solid var(--rule-soft);background:var(--surface);flex-direction:column;grid-area:sidebar;justify-content:space-between;align-self:start;gap:12px;padding:14px 12px 12px;display:flex;position:sticky;overflow-y:auto}.app-sidebar-foot{border-top:1px solid var(--rule-soft);letter-spacing:.04em;color:var(--ink-3);flex-direction:column;gap:2px;margin:0;padding:10px 12px 0;font-size:11px;font-weight:600;display:flex}.app-sidebar-foot span{letter-spacing:0;color:var(--ink-4);font-weight:400}.app-main{grid-area:main;max-width:1360px;padding:34px 32px 88px}.dash-title{letter-spacing:-.022em;margin:12px 0 0;font-size:40px;font-weight:700;line-height:1.08}.dash-sub{color:var(--ink-2);max-width:620px;margin:14px 0 0;font-size:17px;line-height:1.5}.module-grid{grid-template-columns:repeat(auto-fill,minmax(228px,1fr));gap:16px;margin-top:44px;display:grid}.module-card{background:var(--surface);border:1px solid var(--rule-soft);border-radius:var(--m-radius);box-shadow:var(--shadow-soft);padding:24px 22px 20px;transition:transform .22s,box-shadow .22s,border-color .22s;position:relative;overflow:hidden}.module-card:before{content:"";background:var(--c,var(--rule));opacity:.9;height:3px;position:absolute;top:0;left:0;right:0}.module-card:hover{box-shadow:var(--shadow-card);border-color:var(--rule);transform:translateY(-3px)}.module-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.module-idx{font-family:var(--mono);color:var(--ink-4);font-size:11px}.module-name{letter-spacing:-.005em;margin:12px 0 0;font-size:16px;font-weight:600}.module-desc{color:var(--ink-3);margin:6px 0 0;font-size:13px;line-height:1.45}.pill{letter-spacing:.03em;text-transform:uppercase;border-radius:var(--m-radius-pill);white-space:nowrap;align-items:center;padding:4px 10px;font-size:10.5px;font-weight:600;display:inline-flex}.pill-done{color:#1f7a37;background:#30b14a29}.pill-soon,.pill-off{color:var(--ink-3);background:var(--surface-2)}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.auth-card{animation:none}}@media (max-width:640px){.auth-card{padding:34px 24px 28px}.app-main{padding:40px 18px 72px}.dash-title{font-size:32px}}.side-nav{flex-direction:column;gap:13px;display:flex}.side-group{flex-direction:column;gap:1px;display:flex}.side-group-label{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-4);margin:0 0 4px;padding:0 10px;font-size:10.5px;font-weight:600}.side-group--lead{margin-bottom:2px}.side-link{color:var(--ink-2);border-radius:9px;align-items:center;gap:10px;padding:6.5px 10px;font-size:13px;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:flex;position:relative}.side-link-icon{color:var(--ink-4);flex:none;transition:color .12s}.side-link-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.side-link:hover{background:var(--surface-2);color:var(--ink)}.side-link:hover .side-link-icon{color:var(--ink-3)}.side-link.is-active{background:var(--accent-soft);color:var(--accent);font-weight:600}.side-link.is-active .side-link-icon{color:var(--accent)}.side-link.is-active:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;height:20px;position:absolute;top:50%;left:-12px;transform:translateY(-50%)}@media (max-width:1080px){.app-shell{grid-template-columns:minmax(0,1fr);grid-template-areas:"topbar""sidebar""main"}.app-sidebar{border-right:none;border-bottom:1px solid var(--rule-soft);flex-direction:row;justify-content:flex-start;align-items:center;gap:18px;height:auto;padding:10px 16px;position:static;overflow-x:auto}.side-nav{flex-direction:row;gap:18px}.side-group{flex-direction:row;align-items:center;gap:2px}.side-group-label{display:none}.side-link{white-space:nowrap;padding:7px 10px}.side-link.is-active:before,.app-sidebar-foot{display:none}.app-brand{width:auto}.app-main{padding:26px 18px 72px}}.page-head{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-head-actions{align-items:center;gap:10px;display:flex}.table{border-collapse:separate;border-spacing:0;background:var(--surface);border:1px solid var(--rule-soft);border-radius:var(--m-radius);width:100%;box-shadow:var(--shadow-soft);margin-top:28px;font-size:13px;overflow:hidden}.table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);background:var(--surface-2);padding:15px 18px 12px;font-size:11px;font-weight:600}@supports (color:color-mix(in lab, red, red)){.table th{background:color-mix(in srgb, var(--surface-2) 55%, var(--surface))}}.table th{border-bottom:1px solid var(--rule-soft)}.table td{border-bottom:1px solid var(--rule-soft);color:var(--ink-2);vertical-align:middle;padding:15px 18px}.table tbody tr:last-child td{border-bottom:none}.table tbody tr{transition:background .14s}.table tbody tr:hover{background:var(--surface-2)}@supports (color:color-mix(in lab, red, red)){.table tbody tr:hover{background:color-mix(in srgb, var(--surface-2) 45%, transparent)}}.table .mono{font-family:var(--mono);color:var(--ink);font-size:12px}.table .muted{color:var(--ink-4)}.col-actions{text-align:right}.row-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.table:not(.tree-table) tbody tr:has(>td:first-child a[href]){cursor:pointer;position:relative}.table:not(.tree-table) tbody tr:has(>td:first-child a[href]):hover{background:var(--surface-2)}@supports (color:color-mix(in lab, red, red)){.table:not(.tree-table) tbody tr:has(>td:first-child a[href]):hover{background:color-mix(in srgb, var(--surface-2) 70%, transparent)}}.table:not(.tree-table) tbody tr>td:first-child>a[href]:first-of-type:after{content:"";position:absolute;inset:0}.table:not(.tree-table) tbody td a[href],.table:not(.tree-table) tbody td button,.table:not(.tree-table) tbody td input,.table:not(.tree-table) tbody td label,.table:not(.tree-table) tbody td .row-actions{z-index:1;position:relative}.table:not(.tree-table) tbody tr>td:first-child>a[href]:first-of-type{position:static}.table:not(.tree-table) tbody tr:has(>td:first-child a[href]:focus-visible){outline:2px solid var(--accent);outline-offset:-2px;border-radius:8px}.btn{font:inherit;border-radius:var(--m-radius-pill);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:7px;padding:11px 20px;font-size:14px;font-weight:590;line-height:1;transition:background .16s,border-color .16s,color .16s,opacity .16s,box-shadow .16s,transform 80ms;display:inline-flex}.btn:disabled{opacity:.45;cursor:default;box-shadow:none}.btn:focus-visible{box-shadow:0 0 0 4px var(--accent-ring);outline:none}.btn svg{flex:none}.btn--sm{padding:8px 15px;font-size:13px}.btn--block{width:100%}.btn--primary{background:var(--accent);color:#fff;box-shadow:0 1px 2px #0071e34d,0 6px 16px #0071e338}.btn--primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 1px 2px #0071e352,0 8px 22px #0071e347}.btn--primary:active:not(:disabled){transform:translateY(.5px)scale(.985)}.btn--primary:focus-visible{box-shadow:0 0 0 4px var(--accent-ring), 0 6px 16px #0071e338}.btn--secondary{background:var(--surface-2);color:var(--ink);box-shadow:var(--shadow-control)}.btn--secondary:hover:not(:disabled){background:var(--surface-3)}.btn--secondary:active:not(:disabled){transform:translateY(.5px)scale(.985)}.btn--ghost{color:var(--ink-2);border-color:var(--rule);background:0 0}.btn--ghost:hover:not(:disabled){background:var(--surface-2);color:var(--ink);border-color:var(--rule)}.btn--danger{background:var(--danger);color:#fff;box-shadow:0 1px 2px #ff3b3047,0 6px 16px #ff3b3033}.btn--danger:hover:not(:disabled){background:#000}@supports (color:color-mix(in lab, red, red)){.btn--danger:hover:not(:disabled){background:color-mix(in srgb, #000 8%, var(--danger))}}.btn--danger:active:not(:disabled){transform:translateY(.5px)scale(.985)}.btn--danger-soft{background:var(--danger-soft);color:var(--danger);border-color:#0000}.btn--danger-soft:hover:not(:disabled){background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.btn--danger-soft:hover:not(:disabled){background:color-mix(in srgb, var(--danger) 16%, transparent)}}.btn-primary{font:inherit;color:#fff;background:var(--accent);border-radius:var(--m-radius-pill);cursor:pointer;border:none;width:100%;margin-top:4px;padding:13px 16px;font-size:15px;font-weight:600;transition:background .15s,box-shadow .15s,transform 80ms;box-shadow:0 1px 2px #0071e34d,0 6px 16px #0071e338}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:active{transform:translateY(.5px)scale(.99)}.btn-primary:disabled{opacity:.45;cursor:default}.btn-ghost{font:inherit;color:var(--ink-2);border:1px solid var(--rule);border-radius:var(--m-radius-pill);cursor:pointer;background:0 0;padding:7px 15px;font-size:13px;font-weight:500;transition:background .15s,color .15s,border-color .15s}.btn-ghost:hover{background:var(--surface-2);color:var(--ink)}.btn-ghost:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.icon-btn{border-radius:var(--m-radius-pill);width:34px;height:34px;color:var(--ink-3);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.icon-btn:hover{background:var(--surface-2);color:var(--ink)}.icon-btn:focus-visible{box-shadow:0 0 0 4px var(--accent-ring);outline:none}.kebab{display:inline-flex;position:relative}.kebab-btn{border-radius:var(--m-radius-pill);width:34px;height:34px;color:var(--ink-3);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.kebab-btn:hover,.kebab-btn[aria-expanded=true]{background:var(--surface-2);color:var(--ink)}.kebab-btn:focus-visible{box-shadow:0 0 0 4px var(--accent-ring);outline:none}.kebab-menu{z-index:50;background:var(--surface);min-width:176px;padding:6px;position:absolute;top:calc(100% + 6px);right:0}@supports (color:color-mix(in lab, red, red)){.kebab-menu{background:color-mix(in srgb, var(--surface) 92%, transparent)}}.kebab-menu{-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);border:1px solid var(--rule-soft);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-pop);animation:.16s cubic-bezier(.2,.8,.2,1) both kebab-in}@keyframes kebab-in{0%{opacity:0;transform:translateY(-4px)scale(.97)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.kebab-menu{animation:none}}.kebab-item{width:100%;font:inherit;text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;padding:9px 11px;font-size:14px;font-weight:500;transition:background .12s,color .12s;display:flex}.kebab-item svg{color:var(--ink-3);flex:none;transition:color .12s}.kebab-item:hover:not(:disabled),.kebab-item:focus-visible{background:var(--accent);color:#fff;outline:none}.kebab-item:hover:not(:disabled) svg,.kebab-item:focus-visible svg{color:#fff}.kebab-item:disabled{opacity:.4;cursor:default}.kebab-item--danger,.kebab-item--danger svg{color:var(--danger)}.kebab-item--danger:hover:not(:disabled),.kebab-item--danger:focus-visible{background:var(--danger);color:#fff}.kebab-item--danger:hover:not(:disabled) svg,.kebab-item--danger:focus-visible svg{color:#fff}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(12px)saturate(120%);backdrop-filter:blur(12px)saturate(120%);background:#0000004d;place-items:center;padding:24px;animation:.18s both fade;display:grid;position:fixed;inset:0}.modal-card{background:var(--surface);border:1px solid var(--rule-soft);border-radius:var(--m-radius-lg);width:100%;max-width:440px;box-shadow:var(--shadow-pop);padding:24px 28px 26px;animation:.22s cubic-bezier(.2,.8,.2,1) both pop}.modal-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.modal-title{letter-spacing:-.01em;margin:0;font-size:19px;font-weight:600}.modal-form{flex-direction:column;gap:14px;display:flex}.modal-text{color:var(--ink-2);margin:0;font-size:14px;line-height:1.5}.modal-foot{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.field-check{color:var(--ink-2);cursor:pointer;align-items:center;gap:9px;font-size:14px;display:flex}.field-check input{width:16px;height:16px;accent-color:var(--accent)}.field-hint{color:var(--ink-4);margin:0;font-size:13px;line-height:1.5}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.modal-backdrop,.modal-card{animation:none}}.segmented{background:var(--surface-2);border-radius:var(--m-radius-xs);box-shadow:var(--shadow-control);gap:3px;padding:4px;display:flex}.seg{flex:1;position:relative}.seg input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.seg span{text-align:center;color:var(--ink-3);border-radius:9px;padding:9px 16px;font-size:13px;font-weight:590;transition:background .2s cubic-bezier(.2,.8,.2,1),color .18s,box-shadow .18s,transform .12s;display:block}.seg input:hover:not(:checked)+span{color:var(--ink-2)}.seg input:checked+span{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-raised)}.seg input:active+span{transform:scale(.97)}.seg input:focus-visible+span{box-shadow:0 0 0 3px var(--accent-ring), var(--shadow-raised);outline:none}.switch-row{background:var(--surface-2);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-control);cursor:pointer;border:1px solid #0000;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;transition:background .15s;display:flex}.switch-row:hover{background:var(--surface-3)}.switch-input{appearance:none;background:var(--ink);border-radius:999px;flex:none;width:50px;height:30px;position:relative}@supports (color:color-mix(in lab, red, red)){.switch-input{background:color-mix(in srgb, var(--ink) 18%, var(--surface-3))}}.switch-input{cursor:pointer;transition:background .25s cubic-bezier(.2,.8,.2,1)}.switch-input:after{content:"";background:#fff;border-radius:50%;width:26px;height:26px;transition:transform .25s cubic-bezier(.2,.8,.2,1);position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #00000040,0 0 0 .5px #0000000a}.switch-input:checked{background:var(--ok)}.switch-input:checked:after{transform:translate(20px)}.switch-input:focus-visible{box-shadow:0 0 0 4px var(--accent-ring);outline:none}.switch-input:disabled{opacity:.5;cursor:default}.key-reveal{font-family:var(--mono);word-break:break-all;background:var(--surface-2);border:1px solid var(--rule-soft);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-control);color:var(--ink);padding:14px 16px;font-size:13px;line-height:1.5;display:block}.sn-page{flex-direction:column;gap:28px;display:flex}.sn-console{background:linear-gradient(180deg, var(--surface) 0%, var(--surface-2) 140%)}@supports (color:color-mix(in lab, red, red)){.sn-console{background:linear-gradient(180deg, var(--surface) 0%, color-mix(in srgb, var(--surface-2) 60%, var(--surface)) 140%)}}.sn-console{border:1px solid var(--rule-soft);border-radius:var(--m-radius-lg);box-shadow:var(--shadow-soft);padding:26px 26px 24px}.sn-console-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px;display:flex}.sn-console-head .dash-title{margin-top:6px;font-size:30px}.sn-controls{grid-template-columns:repeat(auto-fit,minmax(156px,1fr));gap:14px 16px;margin-bottom:26px;display:grid}.sn-control{gap:6px}.sn-control .field-label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-4);font-size:10.5px}.sn-viz{margin-top:4px}.sn-viz-endian{font-family:var(--mono);color:var(--ink-4);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;margin-bottom:8px;padding:0 2px;font-size:10px;display:flex}.sn-byte-grid{grid-template-columns:repeat(20,1fr);gap:5px;margin-bottom:10px;display:grid}.sn-byte{background:var(--c-bg);aspect-ratio:1/1.18;border:1px solid #0000;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;min-width:0;transition:background .18s;display:flex;position:relative}.sn-byte.is-placeholder{background:var(--surface-2)}.sn-byte-idx{font-family:var(--mono);color:var(--ink-4);font-size:8px;font-weight:500;position:absolute;top:3px;left:4px}.sn-byte-ch{font-family:var(--mono);color:var(--c);margin-top:6px;font-size:16px;font-weight:600;line-height:1}.sn-byte.is-placeholder .sn-byte-ch{color:var(--ink-4)}.sn-bracket-row{grid-template-columns:repeat(20,1fr);gap:5px;display:grid}.sn-bracket{grid-column:span var(--span);border-top:2px solid var(--c);height:28px;position:relative}.sn-bracket:before,.sn-bracket:after{content:"";background:var(--c);width:2px;height:7px;position:absolute;top:-2px}.sn-bracket:before{left:0}.sn-bracket:after{right:0}.sn-bracket-label{letter-spacing:.04em;color:var(--c);white-space:nowrap;font-size:9px;font-weight:600;position:absolute;top:9px;left:50%;transform:translate(-50%)}.sn-range-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.sn-preview{background:var(--surface-2);border:1px solid var(--rule-soft);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-control);flex-direction:column;gap:6px;padding:14px 16px;display:flex}.sn-preview-line{align-items:center;gap:10px;display:flex}.sn-preview-key{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-4);width:18px;font-size:10.5px;font-weight:600}.sn-preview code{font-family:var(--mono);letter-spacing:.06em;color:var(--ink);font-size:13px}.sn-preview .field-hint{margin-top:2px}.sn-list-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.sn-count{color:var(--ink-3);margin:0;font-size:13px}.sn-count strong{color:var(--ink);font-weight:600}.sn-search{max-width:280px;padding:10px 14px;font-size:14px}.sn-list .table{margin-top:18px}.sn-pagination{justify-content:center;align-items:center;gap:14px;margin-top:20px;display:flex}.sn-page-info{color:var(--ink-3);font-size:13px}@media (max-width:760px){.sn-byte-ch{margin-top:4px;font-size:11px}.sn-byte-idx{font-size:6.5px}.sn-bracket-label{font-size:7px}.sn-search{width:100%;max-width:none}}.ui-select{width:100%;position:relative}.ui-select-trigger{width:100%;font:inherit;text-align:left;color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-control);cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;font-size:13px;transition:background .18s,border-color .18s,box-shadow .18s;display:flex}.ui-select-trigger:hover:not(:disabled){border-color:var(--ink-4)}.ui-select-trigger:focus-visible,.ui-select-trigger[aria-expanded=true]{background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring), var(--shadow-control);outline:none}.ui-select-trigger:disabled{opacity:.5;cursor:default;box-shadow:none}.ui-select-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ui-select-value.is-placeholder{color:var(--ink-4)}.ui-select-chevron{color:var(--ink-4);flex:none;transition:transform .18s,color .18s}.ui-select-trigger[aria-expanded=true] .ui-select-chevron{color:var(--accent);transform:rotate(180deg)}.ui-select-list{z-index:60;background:var(--surface);max-height:280px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}@supports (color:color-mix(in lab, red, red)){.ui-select-list{background:color-mix(in srgb, var(--surface) 94%, transparent)}}.ui-select-list{-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);border:1px solid var(--rule-soft);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-pop);animation:.16s cubic-bezier(.2,.8,.2,1) both kebab-in}@media (prefers-reduced-motion:reduce){.ui-select-list{animation:none}}.ui-select-option{width:100%;font:inherit;text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:13px;font-weight:500;transition:background .12s,color .12s;display:flex}.ui-select-option-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ui-select-option:hover,.ui-select-option:focus-visible{background:var(--accent);color:#fff;outline:none}.ui-select-option.is-selected{color:var(--accent);font-weight:600}.ui-select-option.is-selected:hover,.ui-select-option.is-selected:focus-visible{color:#fff}.ui-select-check{color:currentColor;flex:none}:is(.modal-card:has(.wizard),.modal-card:has(.wizard-result)){max-width:580px}.modal-card:has(.wizard){flex-direction:column;max-height:calc(100vh - 32px);display:flex;overflow:hidden}.modal-card:has(.wizard) .modal-head{flex:none}.wizard{flex-direction:column;flex:auto;gap:16px;min-height:0;display:flex}.wizard .sn-viz{margin-top:0}.wizard>.sn-viz,.wizard>.stepper,.wizard>.alert,.wizard>.modal-foot{flex:none}.stepper{align-items:flex-start;margin:2px 0 0;padding:0;list-style:none;display:flex}.stepper-item{color:var(--ink-4);text-align:center;flex-direction:column;flex:1;align-items:center;gap:7px;font-size:11px;line-height:1.2;display:flex;position:relative}.stepper-item:not(:first-child):before{content:"";background:var(--rule);z-index:0;width:100%;height:2px;position:absolute;top:13px;right:50%}.stepper-item.is-active:before,.stepper-item.is-done:before{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.stepper-item.is-active:before,.stepper-item.is-done:before{background:color-mix(in srgb, var(--accent) 55%, var(--rule))}}.stepper-num{z-index:1;background:var(--surface);border:1.5px solid var(--rule);width:26px;height:26px;color:var(--ink-4);border-radius:999px;place-items:center;font-size:12px;font-weight:600;transition:background .18s,border-color .18s,color .18s,box-shadow .18s;display:grid;position:relative}.stepper-item.is-done .stepper-num{background:var(--accent-soft);border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.stepper-item.is-done .stepper-num{border-color:color-mix(in srgb, var(--accent) 45%, var(--rule))}}.stepper-item.is-done .stepper-num{color:var(--accent)}.stepper-item.is-active .stepper-num{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 0 0 4px var(--accent-ring)}.stepper-label{max-width:9ch}.stepper-item.is-active .stepper-label{color:var(--ink);font-weight:600}.stepper-item.is-done .stepper-label{color:var(--ink-3)}.wizard-body{flex-direction:column;flex:auto;min-height:0;display:flex;overflow-y:auto}.wizard-fieldset{border:none;flex-direction:column;gap:10px;margin:0;padding:0;display:flex}.wizard-fieldset legend{padding:0}.wizard-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.wizard-stack{flex-direction:column;gap:14px;display:flex}.segmented--wrap{flex-wrap:wrap}.segmented--wrap .seg{flex:52px}.wizard-foot{justify-content:space-between}.wizard-result{background:var(--surface-2);border:1px solid var(--rule-soft);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-control);padding:16px 18px}.wizard-result-main{color:var(--ink);margin:0 0 4px;font-size:15px}.wizard-result-main strong{font-weight:700}.card-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;display:grid}.option-card{font:inherit;text-align:left;background:var(--surface-2);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-control);cursor:pointer;border:1.5px solid #0000;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;transition:background .16s,border-color .16s,box-shadow .16s,transform 80ms;display:flex}.option-card:hover{background:var(--surface-3)}.option-card:focus-visible{box-shadow:0 0 0 4px var(--accent-ring);outline:none}.option-card:active{transform:scale(.985)}.option-card.is-active{background:var(--accent-soft);border-color:var(--accent)}.option-card-code{font-family:var(--mono);color:var(--ink);font-size:15px;font-weight:700}.option-card.is-active .option-card-code{color:var(--accent)}.option-card-label{color:var(--ink-3);font-size:12px}.region-group{flex-direction:column;gap:8px;display:flex}.region-continent{align-items:center;gap:12px;display:flex}.region-continent-label{letter-spacing:.04em;text-transform:uppercase;width:62px;color:var(--ink-4);flex:none;font-size:10px}.region-chips{flex-wrap:wrap;flex:1;gap:7px;display:flex}.region-chip{font:inherit;background:var(--surface-2);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-control);cursor:pointer;border:1.5px solid #0000;align-items:center;gap:7px;padding:6px 11px;font-size:12.5px;transition:background .16s,border-color .16s,box-shadow .16s,transform 80ms;display:inline-flex}.region-chip:hover{background:var(--surface-3)}.region-chip:focus-visible{box-shadow:0 0 0 4px var(--accent-ring);outline:none}.region-chip:active{transform:scale(.97)}.region-chip.is-active{background:var(--accent-soft);border-color:var(--accent)}.region-chip .flag{font-size:15px;line-height:1}.region-chip .code{font-family:var(--mono);color:var(--ink);font-weight:700}.region-chip.is-active .code{color:var(--accent)}.region-chip .name{color:var(--ink-3)}.yw-picker{flex-wrap:wrap;align-items:flex-end;gap:18px 26px;display:flex}.field-hint-inline{color:var(--ink-4);text-transform:none;letter-spacing:0;font-weight:400}.year-stepper,.num-stepper{background:var(--surface-2);border:1px solid var(--rule);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-control);align-items:stretch;width:fit-content;display:inline-flex;overflow:hidden}.year-stepper-btn,.num-stepper-btn{width:40px;height:38px;color:var(--accent);cursor:pointer;background:0 0;border:none;place-items:center;font-size:19px;line-height:1;transition:background .14s;display:grid}.year-stepper-btn:hover:not(:disabled),.num-stepper-btn:hover:not(:disabled){background:var(--accent-soft)}.year-stepper-btn:disabled,.num-stepper-btn:disabled{color:var(--ink-4);opacity:.45;cursor:default}.year-stepper-value,.num-stepper-value{text-align:center;font-variant-numeric:tabular-nums;min-width:60px;color:var(--ink);background:var(--surface);border-left:1px solid var(--rule);border-right:1px solid var(--rule);align-self:stretch;place-items:center;padding:0 8px;font-weight:600;display:grid}.num-stepper-value{font-family:var(--mono);min-width:52px}.seg input:disabled+span{opacity:.4;cursor:default}.week-grid{grid-template-columns:repeat(13,1fr);gap:6px;display:grid}.week-cell{font-variant-numeric:tabular-nums;height:30px;color:var(--ink-2);background:var(--surface-2);cursor:pointer;box-shadow:var(--shadow-control);border:1px solid #0000;border-radius:8px;place-items:center;font-size:12px;transition:background .12s,border-color .12s,color .12s;display:grid}.week-cell:hover{background:var(--surface-3);color:var(--ink)}.week-cell:focus-visible{box-shadow:0 0 0 3px var(--accent-ring);outline:none}.week-cell.is-active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}@media (max-width:540px){.wizard-row{grid-template-columns:1fr}.week-grid{grid-template-columns:repeat(7,1fr)}}.modal-card:has(.gen-dialog){max-height:calc(100vh - 32px);overflow-y:auto}.sn-console-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px;display:flex}.view-toggle,.view-toggle .seg,.origin-toggle,.origin-toggle .seg{flex:none}.origin-pill{white-space:nowrap;border-radius:999px;align-items:center;padding:2px 10px;font-size:11px;font-weight:600;display:inline-flex}.origin-pill.is-panel{background:var(--surface-2);color:var(--ink-3)}.origin-pill.is-production{background:var(--accent-soft);color:var(--accent)}.kreator-panel{flex-direction:column;margin-bottom:24px;display:flex}.kreator-section{border-top:1px solid var(--rule-soft);flex-direction:column;gap:14px;padding:22px 0;display:flex}.kreator-section:first-child{border-top:none;padding-top:4px}.kreator-label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);align-items:center;gap:8px;font-size:11.5px;font-weight:700;display:inline-flex}.kreator-dot{border-radius:999px;flex:none;width:8px;height:8px}.kreator-attrs{flex-wrap:wrap;align-items:flex-end;gap:18px 26px;display:flex}.kreator-attrs .field{gap:8px}.kreator-field-wide{flex-basis:100%}.kreator-static{height:38px;color:var(--ink-2);background:var(--surface-2);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-control);align-items:center;width:fit-content;padding:0 14px;font-size:13px;display:inline-flex}.swatch-row{flex-wrap:wrap;gap:8px;display:flex}.swatch{font:inherit;color:var(--ink-2);background:var(--surface-2);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-control);cursor:pointer;border:1.5px solid #0000;align-items:center;gap:9px;padding:7px 13px 7px 9px;font-size:13px;transition:background .16s,border-color .16s,transform 80ms;display:inline-flex}.swatch:hover{background:var(--surface-3)}.swatch:focus-visible{box-shadow:0 0 0 4px var(--accent-ring);outline:none}.swatch:active{transform:scale(.97)}.swatch.is-active{background:var(--accent-soft);border-color:var(--accent)}.swatch.is-active .swatch-name{color:var(--ink);font-weight:600}.swatch-dot{border-radius:999px;flex:none;width:18px;height:18px;box-shadow:inset 0 0 0 1px #0000001f}.swatch-dot[data-variant=B]{background:#1d1d1f}.swatch-dot[data-variant=W]{box-shadow:inset 0 0 0 1px var(--rule);background:#fff}.swatch-dot[data-variant=G]{background:linear-gradient(135deg,#e8c66a,#b8860b)}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.mini-chip{font:inherit;color:var(--ink-2);background:var(--surface-2);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-control);cursor:pointer;border:1.5px solid #0000;align-items:baseline;gap:6px;padding:7px 13px;font-size:13px;transition:background .16s,border-color .16s,transform 80ms;display:inline-flex}.mini-chip:hover{background:var(--surface-3)}.mini-chip:focus-visible{box-shadow:0 0 0 4px var(--accent-ring);outline:none}.mini-chip:active{transform:scale(.97)}.mini-chip.is-active{background:var(--accent-soft);border-color:var(--accent)}.mini-chip-code{font-family:var(--mono);color:var(--ink);font-weight:700}.mini-chip.is-active .mini-chip-code{color:var(--accent)}.mini-chip-name{color:var(--ink-3)}.sn-colored{font-family:var(--mono);letter-spacing:.08em;white-space:nowrap;font-size:15px;font-weight:600;line-height:1}.sn-seg{transition:opacity .12s}.sn-seg.is-counter{color:#af52de;font-weight:800;position:relative}.sn-seg.is-counter:after{content:"";opacity:.5;background:currentColor;border-radius:2px;height:2px;position:absolute;bottom:-3px;left:0;right:0}.sn-spec{background:var(--surface-2);border:1px solid var(--rule-soft);border-radius:var(--m-radius-sm);box-shadow:var(--shadow-control);flex-direction:column;gap:10px;padding:16px 18px;display:flex}.sn-spec-line{align-items:center;gap:12px;display:flex}.sn-spec-key{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-4);flex:none;width:20px;font-size:10.5px;font-weight:600}.sn-spec-count{color:var(--ink-3);margin:4px 0 0;font-size:13px}.docs-page{flex-direction:column;gap:8px;display:flex}.api-docs{background:var(--surface);border:1px solid var(--rule-soft);border-radius:var(--m-radius-lg);box-shadow:var(--shadow-soft);margin-top:4px;overflow:hidden}.api-docs .scalar-app{background:var(--surface)}.log-filters{background:var(--surface);border:1px solid var(--rule-soft);border-radius:var(--m-radius-lg);box-shadow:var(--shadow-soft);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;padding:14px 16px;display:flex}.log-filter-input{background:var(--surface);border:1px solid var(--rule);border-radius:var(--m-radius-sm);min-width:180px;box-shadow:var(--shadow-control);flex:220px;padding:9px 12px;font-size:13px}.log-filter-input:hover{background:var(--surface);border-color:var(--ink-4)}.log-filter-input:focus{background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring), var(--shadow-control)}.log-filter-input.is-narrow{flex:0 150px;min-width:110px}.log-filter-select{flex:none;width:210px}.log-filters .btn--secondary{flex:none;margin-left:auto}.nowrap{white-space:nowrap}.log-row{cursor:pointer}.log-row:hover td{background:var(--surface-2)}.flag-pills{flex-wrap:wrap;gap:6px;display:inline-flex}.flag-pill{background:var(--surface-2);color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.flag-pill.is-conflict{color:#d70015;background:#ff3b301f}.flag-pill.is-unknown{color:#a85400;background:#ff950029}.flag-pill.is-duplicate{background:var(--surface-3);color:var(--ink-3)}.modal-card:has(.log-detail){max-width:640px;max-height:calc(100vh - 32px);overflow-y:auto}.log-detail{gap:16px}.log-detail-grid{grid-template-columns:120px 1fr;gap:7px 14px;margin:0;font-size:13px;display:grid}.log-detail-grid dt{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-4);align-self:center;font-size:10.5px}.log-detail-grid dd{color:var(--ink);margin:0}.log-json{flex-direction:column;gap:6px;display:flex}.json-block{background:var(--surface-2);border:1px solid var(--rule-soft);border-radius:var(--m-radius-sm);font-family:var(--mono);color:var(--ink-2);white-space:pre-wrap;word-break:break-word;max-height:240px;margin:0;padding:12px 14px;font-size:12px;line-height:1.5;overflow:auto}.sn-link{color:var(--accent);text-decoration:none}.sn-link:hover{text-decoration:underline}.log-page{flex-direction:column;gap:18px;display:flex}.log-scope{background:var(--accent-soft);border:1px solid var(--accent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:13px;display:flex}@supports (color:color-mix(in lab, red, red)){.log-scope{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--rule))}}.log-scope{border-radius:var(--m-radius-sm)}.log-scope-text code{color:var(--ink);font-size:13px}.opts-intro{max-width:72ch;margin:4px 0 18px;font-size:14px;line-height:1.55}.opts-editor{flex-direction:column;gap:12px;display:flex}.opts-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.opts-toolbar-left{gap:8px;display:flex}.opts-textarea{width:100%;min-height:460px;font-family:var(--mono);color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-radius:var(--m-radius);box-shadow:var(--shadow-soft);resize:vertical;tab-size:2;white-space:pre;padding:16px 18px;font-size:12.5px;line-height:1.6;overflow:auto}.opts-textarea:focus-visible{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring), var(--shadow-soft);outline:none}.opts-ok{color:#1c7c3a;margin:0;font-size:13px;font-weight:500}.report-lookup{max-width:460px;margin:4px 0 18px}.report-lookup .sn-search{width:100%;max-width:460px}.report-hint{margin:0;font-size:14px}.report-card{flex-direction:column;gap:18px;display:flex}.report-card-head{background:var(--surface);border:1px solid var(--rule-soft);border-radius:var(--m-radius-lg);box-shadow:var(--shadow-soft);flex-direction:column;gap:14px;padding:20px 22px;display:flex}.report-sn{letter-spacing:.06em;font-size:18px;font-weight:700}.report-meta{flex-wrap:wrap;align-items:center;gap:10px 14px;font-size:13px;display:flex}.snd{flex-direction:column;align-items:center;gap:12px;display:flex}.snd-row{align-items:stretch;gap:6px;width:100%;display:flex}.snd-col{flex-direction:column;flex-shrink:1;flex-basis:54px;align-items:center;min-width:50px;display:flex}.snd-seg{text-align:center;width:100%;font-family:var(--mono);color:var(--c);letter-spacing:.08em;background:var(--c);font-size:16px;font-weight:600}@supports (color:color-mix(in lab, red, red)){.snd-seg{background:color-mix(in srgb, var(--c) 11%, var(--surface))}}.snd-seg{border:1px solid var(--c)}@supports (color:color-mix(in lab, red, red)){.snd-seg{border:1px solid color-mix(in srgb, var(--c) 22%, transparent)}}.snd-seg{border-radius:9px;padding:8px 4px;line-height:1}.snd-leader{background:var(--c);opacity:.4;width:2px;height:22px;margin:4px 0 0;position:relative}.snd-leader:before{content:"";background:var(--c);border-radius:50%;width:5px;height:5px;position:absolute;top:-3px;left:50%;transform:translate(-50%)}.snd-card{text-align:center;border-top:2px solid var(--c);flex-direction:column;align-items:center;gap:3px;width:100%;padding-top:6px;display:flex}@supports (color:color-mix(in lab, red, red)){.snd-card{border-top:2px solid color-mix(in srgb, var(--c) 45%, transparent)}}.snd-card.is-unknown{border-top-color:var(--rule-soft)}.snd-field{letter-spacing:.05em;text-transform:uppercase;color:var(--c);font-size:9px;font-weight:700}.snd-card.is-unknown .snd-field{color:var(--ink-4)}.snd-val{color:var(--ink-1);flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;font-size:11.5px;font-weight:600;line-height:1.25;display:inline-flex}.snd-swatch{border:1px solid var(--rule-soft);border-radius:3px;width:10px;height:10px;display:inline-block}.report-page{flex-direction:column;gap:26px;display:flex}.report-head-titles{flex-direction:column;gap:2px;display:flex}.report-head-sn{letter-spacing:.16em;color:var(--ink-4);font-size:14px;font-weight:600}.result-pill{letter-spacing:.04em;vertical-align:middle;border-radius:999px;margin-left:8px;padding:1px 7px;font-size:9.5px;font-weight:700;display:inline-block}.result-pill.is-ok{background:#30b14a}@supports (color:color-mix(in lab, red, red)){.result-pill.is-ok{background:color-mix(in srgb, #30b14a 16%, var(--surface))}}.result-pill.is-ok{color:#1f8a39}.result-pill.is-bad{background:#ff3b30}@supports (color:color-mix(in lab, red, red)){.result-pill.is-bad{background:color-mix(in srgb, #ff3b30 16%, var(--surface))}}.result-pill.is-bad{color:#c92a20}.result-pill.is-warn{background:#ff9500}@supports (color:color-mix(in lab, red, red)){.result-pill.is-warn{background:color-mix(in srgb, #ff9500 18%, var(--surface))}}.result-pill.is-warn{color:#a85e00}.result-pill.is-muted{background:var(--surface-2);color:var(--ink-4)}.report-summary{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.report-tile{background:var(--surface);border:1px solid var(--rule-soft);border-radius:var(--m-radius);box-shadow:var(--shadow-soft);flex-direction:column;gap:6px;padding:16px 18px;display:flex}.report-tile-num{letter-spacing:-.02em;font-size:26px;font-weight:700;line-height:1}.report-tile-label{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-4);font-size:11px}.report-tile-flags{flex-wrap:wrap;align-items:center;gap:6px;min-height:26px;display:flex}.report-cols{grid-template-columns:1fr 1fr;align-items:start;gap:18px;display:grid}.report-block{flex-direction:column;gap:10px;display:flex}.report-block-title{margin:0;font-size:14px;font-weight:600}.report-block .table{margin-top:0}.report-transients{flex-direction:column;gap:7px;margin-top:6px;display:flex}.bind-pill{white-space:nowrap;border-radius:999px;align-items:center;padding:2px 10px;font-size:11px;font-weight:600;display:inline-flex}.bind-pill.is-direct{background:var(--accent-soft);color:var(--accent)}.bind-pill.is-transient{background:var(--surface-2);color:var(--ink-3)}@media (max-width:760px){.report-cols{grid-template-columns:1fr}}.report-timeline-card{background:var(--surface);border:1px solid var(--rule-soft);border-radius:var(--m-radius);box-shadow:var(--shadow-soft);padding:6px 16px;overflow-x:auto}.tl{align-items:flex-start;gap:6px;min-width:0;display:flex}.tl-graph{flex:none}.tl-rows{flex:1;min-width:0;margin:0;padding:0 0 0 8px;list-style:none}.tl-row{border-bottom:1px solid var(--rule-soft);flex-direction:row;justify-content:space-between;align-items:center;gap:12px;display:flex}.tl-row:last-child{border-bottom:none}.tl-row-main{flex-direction:column;gap:3px;min-width:0;display:flex}.tl-title{color:var(--ink);font-size:13.5px;font-weight:600}.tl-meta{color:var(--ink-4);word-break:break-word;font-size:12px}.tl-dot{vertical-align:middle;font-size:9px}.tl-data-btn{color:var(--accent);background:var(--accent);flex:none;font-size:12px;font-weight:600}@supports (color:color-mix(in lab, red, red)){.tl-data-btn{background:color-mix(in srgb, var(--accent) 9%, var(--surface))}}.tl-data-btn{border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.tl-data-btn{border:1px solid color-mix(in srgb, var(--accent) 22%, transparent)}}.tl-data-btn{cursor:pointer;border-radius:999px;padding:4px 12px;transition:background .14s}.tl-data-btn:hover{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.tl-data-btn:hover{background:color-mix(in srgb, var(--accent) 16%, var(--surface))}}.tl-pop{flex-direction:column;gap:14px;padding:4px 2px 2px;display:flex}.tl-pop-meta{color:var(--ink-4);margin:0;font-size:13px}.tl-pop-group{flex-direction:column;gap:6px;display:flex}.tl-pop-table th{text-align:left;color:var(--ink-3);white-space:nowrap;width:45%;font-weight:500}.tl-pop-table td{text-align:right}.disc-page{flex-direction:column;gap:20px;display:flex}.disc-filters{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.disc-filters .segmented{flex:none}.disc-filters .sn-search{margin-left:auto}.seg-link{text-align:center;color:var(--ink-3);white-space:nowrap;border-radius:9px;flex:1;padding:9px 16px;font-size:13px;font-weight:590;text-decoration:none;transition:background .18s,color .18s,box-shadow .18s;display:block}.seg-link:hover{color:var(--ink-2)}.seg-link.is-active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-raised)}.disc-type-chips{flex-wrap:wrap;gap:8px}.type-chip{color:var(--ink-3);background:var(--surface-2);border:1px solid var(--rule-soft);border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:12.5px;font-weight:600;text-decoration:none;transition:background .14s,border-color .14s,color .14s;display:inline-flex}.type-chip:hover{color:var(--ink);border-color:var(--rule)}.type-chip.is-active{background:var(--ink);color:#fff;border-color:var(--ink)}.type-chip-count{background:var(--ink);border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.type-chip-count{background:color-mix(in srgb, var(--ink) 8%, var(--surface))}}.type-chip-count{color:var(--ink-2)}.type-chip.is-active .type-chip-count{color:#fff;background:#ffffff38}.type-chip[class*=is-sev-]:before{content:"";border-radius:50%;width:7px;height:7px;display:inline-block}.type-chip.is-sev-critical:before{background:#ff3b30}.type-chip.is-sev-high:before{background:#ff9500}.type-chip.is-sev-medium:before{background:#d6a700}.type-chip.is-sev-low:before{background:var(--ink-4)}.sev-pill{white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.sev-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.sev-pill.is-crit{color:#c92a20}.sev-pill.is-crit .sev-dot{background:#ff3b30}.sev-pill.is-bad{color:#a85e00}.sev-pill.is-bad .sev-dot{background:#ff9500}.sev-pill.is-warn{color:#8a7400}.sev-pill.is-warn .sev-dot{background:#d6a700}.sev-pill.is-muted{color:var(--ink-4)}.sev-pill.is-muted .sev-dot{background:var(--ink-4)}.status-pill{white-space:nowrap;border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:600;display:inline-block}.status-pill.is-open{background:#0071e3}@supports (color:color-mix(in lab, red, red)){.status-pill.is-open{background:color-mix(in srgb, #0071e3 12%, var(--surface))}}.status-pill.is-open{color:#0a5fc0}.status-pill.is-resolved{background:#30b14a}@supports (color:color-mix(in lab, red, red)){.status-pill.is-resolved{background:color-mix(in srgb, #30b14a 16%, var(--surface))}}.status-pill.is-resolved{color:#1f8a39}.status-pill.is-ignored{background:var(--surface-2);color:var(--ink-4)}.disc-table td{vertical-align:middle}.disc-summary-btn{text-align:left;cursor:pointer;font:inherit;color:var(--ink-2);text-underline-offset:3px;background:0 0;border:none;padding:0;font-size:12.5px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.disc-summary-btn:hover{color:var(--accent)}.disc-actions{white-space:nowrap;justify-content:flex-end;gap:6px;display:flex}.disc-actions form{display:inline}.disc-pop{flex-direction:column;align-items:flex-start;gap:14px;padding:4px 2px 2px;display:flex}.report-tile-num.is-crit{color:#c92a20}.report-tile-link{text-decoration:none;transition:box-shadow .16s,transform .12s}.report-tile-link:hover{box-shadow:var(--shadow-raised);transform:translateY(-1px)}.flag-pill.is-sev-critical{color:#c92a20;background:#ff3b301f}.flag-pill.is-sev-high{color:#a85e00;background:#ff950029}.flag-pill.is-sev-medium{background:#d6a700}@supports (color:color-mix(in lab, red, red)){.flag-pill.is-sev-medium{background:color-mix(in srgb, #d6a700 18%, var(--surface))}}.flag-pill.is-sev-medium{color:#8a7400}.flag-pill.is-sev-low{background:var(--surface-2);color:var(--ink-4)}.state-pill{white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:11.5px;font-weight:600;text-decoration:none;display:inline-block}.state-pill.is-ok{background:#30b14a}@supports (color:color-mix(in lab, red, red)){.state-pill.is-ok{background:color-mix(in srgb, #30b14a 14%, var(--surface))}}.state-pill.is-ok{color:#1f8a39}.state-pill.is-problem{background:#ff3b30}@supports (color:color-mix(in lab, red, red)){.state-pill.is-problem{background:color-mix(in srgb, #ff3b30 14%, var(--surface))}}.state-pill.is-problem{color:#c92a20}.state-pill.is-problem:hover{background:#ff3b30}@supports (color:color-mix(in lab, red, red)){.state-pill.is-problem:hover{background:color-mix(in srgb, #ff3b30 22%, var(--surface))}}.json-editor{border:1px solid var(--rule);border-radius:var(--m-radius);background:var(--surface);height:60vh;min-height:460px;box-shadow:var(--shadow-soft);display:flex;overflow:hidden}.json-editor:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring), var(--shadow-soft)}.json-editor.has-error{border-color:#ff3b30}@supports (color:color-mix(in lab, red, red)){.json-editor.has-error{border-color:color-mix(in srgb, #ff3b30 55%, var(--rule))}}.json-gutter{background:var(--surface-2);border-right:1px solid var(--rule-soft);width:52px;font-family:var(--mono);color:var(--ink-4);text-align:right;-webkit-user-select:none;user-select:none;flex:none;padding:14px 0;font-size:12.5px;line-height:1.6;overflow:hidden}.json-ln{padding:0 10px 0 6px}.json-ln.is-error{color:#c92a20;background:#ff3b301f;font-weight:700}.json-input{resize:none;min-width:0;color:var(--ink);font-family:var(--mono);white-space:pre;tab-size:2;background:0 0;border:none;outline:none;flex:1;padding:14px 16px;font-size:12.5px;line-height:1.6;overflow:auto}.modal-card:has(.manual-form){max-width:600px;max-height:calc(100vh - 32px);overflow-y:auto}.manual-form{max-width:560px}.manual-hint{margin:-4px 0 2px;font-size:13px}.manual-group{border:1px solid var(--rule-soft);border-radius:var(--m-radius-sm);flex-direction:column;gap:12px;margin:0;padding:14px 16px;display:flex}.manual-group>legend{padding:0 6px}.manual-row{grid-template-columns:2fr 1fr;gap:12px;display:grid}.manual-json{resize:vertical;white-space:pre;min-height:120px;line-height:1.55}.pill-bad{color:#c92a20;background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.pill-bad{background:color-mix(in srgb, var(--danger) 14%, var(--surface))}}.pill-warn{color:#a85e00;background:#ff9500}@supports (color:color-mix(in lab, red, red)){.pill-warn{background:color-mix(in srgb, #ff9500 18%, var(--surface))}}.plm-num{font-variant-numeric:tabular-nums;white-space:nowrap}.plm-num.is-empty{color:var(--ink-4)}.table th.col-num,.table td.col-num{text-align:right}.table td.table-empty{padding:20px 18px}.plm-page{flex-direction:column;gap:26px;display:flex}.plm-stack{flex-direction:column;gap:16px;display:flex}.plm-toolbar{background:var(--surface);border:1px solid var(--rule-soft);border-radius:var(--m-radius-lg);box-shadow:var(--shadow-soft);flex-wrap:wrap;align-items:flex-end;gap:12px 14px;padding:14px 16px;display:flex}.plm-toolbar-field{flex-direction:column;flex:0 176px;gap:6px;min-width:132px;display:flex}.plm-toolbar-field.is-narrow{flex-basis:130px;min-width:120px}.plm-toolbar-label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-4);font-size:10.5px;font-weight:600}.plm-toolbar-search{flex:340px;align-items:flex-end;min-width:200px;display:flex}.plm-toolbar-search .sn-search{background:var(--surface);border:1px solid var(--rule);width:100%;max-width:none;padding:9px 12px;font-size:13px}.plm-toolbar-clear{flex:none;margin-left:auto}.card-section{background:var(--surface);border:1px solid var(--rule-soft);border-radius:var(--m-radius);box-shadow:var(--shadow-soft);flex-direction:column;gap:14px;padding:20px 22px 22px;display:flex}.card-section-head{justify-content:space-between;align-items:flex-end;gap:14px;display:flex}.card-section-titles{flex-direction:column;gap:3px;min-width:0;display:flex}.card-section-title{letter-spacing:-.005em;margin:0;font-size:15px;font-weight:600}.card-section-desc{color:var(--ink-3);margin:0;font-size:13px;line-height:1.45}.card-section-actions{flex:none;align-items:center;gap:8px;display:flex}.card-section-body{flex-direction:column;gap:12px;min-width:0;display:flex}.card-section .table{box-shadow:none;border:none;border-radius:0;margin-top:0}.card-section .empty-state{background:0 0;border:none;padding:20px 0}.card-section--flush{padding:20px 0 0;overflow:hidden}.card-section--flush .card-section-head{padding:0 22px}.detail-tabs{background:var(--surface-2);border-radius:var(--m-radius-xs);box-shadow:var(--shadow-control);scrollbar-width:none;gap:3px;padding:4px;display:flex;overflow-x:auto}.detail-tabs::-webkit-scrollbar{display:none}.detail-tab{color:var(--ink-3);white-space:nowrap;border-radius:9px;flex:none;align-items:center;gap:7px;padding:8px 14px;font-size:13px;font-weight:590;text-decoration:none;transition:background .18s,color .18s,box-shadow .18s;display:inline-flex}.detail-tab:hover{color:var(--ink-2)}.detail-tab:focus-visible{box-shadow:0 0 0 3px var(--accent-ring);outline:none}.detail-tab.is-active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-raised)}.detail-tab-count{background:var(--ink);border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.detail-tab-count{background:color-mix(in srgb, var(--ink) 8%, var(--surface))}}.detail-tab-count{color:var(--ink-3)}.detail-tab.is-active .detail-tab-count{background:var(--accent-soft);color:var(--accent)}.tree-cell-inner{align-items:center;min-width:0;display:flex}.tree-toggle{width:20px;height:20px;color:var(--ink-4);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;justify-content:center;align-items:center;margin-right:6px;padding:0;transition:background .12s,color .12s;display:inline-flex}.tree-toggle:hover{background:var(--surface-2);color:var(--ink)}.tree-toggle:focus-visible{box-shadow:0 0 0 3px var(--accent-ring);outline:none}.tree-toggle svg{transition:transform .16s}.tree-toggle.is-collapsed svg{transform:rotate(-90deg)}.tree-spacer{flex:none;width:20px;margin-right:6px;display:inline-block}.tree-pos{width:5ch;font-family:var(--mono);color:var(--ink-4);text-align:right;flex:none;margin-right:10px;font-size:11.5px}.tree-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tree-row.is-parent .tree-label{color:var(--ink);font-weight:600}@media (prefers-reduced-motion:reduce){.tree-toggle svg{transition:none}}.plm-summary td{color:var(--ink);background:var(--surface-2);padding:14px 18px;font-weight:600}@supports (color:color-mix(in lab, red, red)){.plm-summary td{background:color-mix(in srgb, var(--surface-2) 55%, var(--surface))}}.plm-summary td{border-top:1px solid var(--rule)}.col-check{width:44px}.sel-check{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.sel-check:disabled{cursor:default;opacity:.4}.table tbody tr.is-selected{background:var(--accent-soft)}.sel-bar{background:var(--accent-soft);border:1px solid var(--accent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding:10px 16px;display:flex}@supports (color:color-mix(in lab, red, red)){.sel-bar{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--rule))}}.sel-bar{border-radius:var(--m-radius-sm);animation:.16s cubic-bezier(.2,.8,.2,1) both kebab-in}@media (prefers-reduced-motion:reduce){.sel-bar{animation:none}}.sel-bar-count{color:var(--ink);margin:0;font-size:13px;font-weight:600}.sel-bar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sel-bar+.table{margin-top:12px}.empty-state{text-align:center;background:var(--surface);border:1px dashed var(--rule);border-radius:var(--m-radius);flex-direction:column;align-items:center;gap:14px;padding:40px 24px;display:flex}.empty-state-text{max-width:48ch;color:var(--ink-3);margin:0;font-size:14px;line-height:1.5}.empty-state-action{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.modal-card:has(.quote-lines){max-width:760px;max-height:calc(100vh - 32px);overflow-y:auto}.table tbody tr.quote-line-unmatched{background:#ff9500}@supports (color:color-mix(in lab, red, red)){.table tbody tr.quote-line-unmatched{background:color-mix(in srgb, #ff9500 8%, var(--surface))}}@media (max-width:640px){.plm-toolbar-field{flex-basis:100%}.plm-toolbar-clear{margin-left:0}}.search-trigger{gap:7px}.search-trigger-kbd{font-family:var(--mono);letter-spacing:.02em;color:var(--ink-4);background:var(--surface-2);border:1px solid var(--rule-soft);border-radius:6px;padding:1px 5px;font-size:10.5px}@media (max-width:900px){.search-trigger-label,.search-trigger-kbd{display:none}}.modal-card:has(.search-palette){max-width:620px;max-height:calc(100vh - 32px)}.search-palette{flex-direction:column;gap:12px;min-height:0;display:flex}.search-palette-input{width:100%}.search-palette-results{flex-direction:column;gap:12px;max-height:52vh;margin:0 -6px;padding:0 6px;display:flex;overflow-y:auto}.search-group{flex-direction:column;gap:2px;display:flex}.search-group-label{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-4);margin:0 0 4px;font-size:10.5px;font-weight:600}.search-item{width:100%;font:inherit;text-align:left;color:var(--ink);border-radius:var(--m-radius-sm);cursor:pointer;background:0 0;border:none;align-items:baseline;gap:12px;padding:8px 10px;transition:background .12s;display:flex}.search-item:focus-visible{box-shadow:0 0 0 3px var(--accent-ring);outline:none}.search-item.is-active{background:var(--accent-soft)}.search-item-code{text-overflow:ellipsis;white-space:nowrap;max-width:14ch;color:var(--ink-2);flex:none;font-size:12px;overflow:hidden}.search-item.is-active .search-item-code{color:var(--accent)}.search-item-body{flex-direction:column;gap:2px;min-width:0;display:flex}.search-item-title{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:590;overflow:hidden}.search-item-detail{color:var(--ink-4);font-size:12px}.search-note{color:var(--ink-4);margin:0;padding:8px 2px;font-size:13px}.search-note--foot{border-top:1px solid var(--rule-soft);padding:10px 2px 0;font-size:11.5px}.dash-tile-zero .report-tile-num{color:var(--ink-4)}.dash-feed{flex-direction:column;display:flex}.dash-feed-row{border-bottom:1px solid var(--rule-soft);justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;display:flex}.dash-feed-row:last-child{border-bottom:none}.dash-feed-main{flex-direction:column;gap:3px;min-width:0;display:flex}.dash-feed-title{color:var(--ink);font-size:13.5px;font-weight:590}.dash-feed-meta{color:var(--ink-4);word-break:break-word;font-size:12px}.dash-feed-when{color:var(--ink-4);white-space:nowrap;flex:none;font-size:12px}.plm-notice{color:var(--ink-2);background:var(--surface-2);border:1px solid var(--rule-soft);border-radius:var(--m-radius-sm);align-items:flex-start;gap:10px;padding:12px 16px;font-size:13px;line-height:1.5;display:flex}.plm-notice.is-locked{background:var(--accent-soft);border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.plm-notice.is-locked{border-color:color-mix(in srgb, var(--accent) 28%, var(--rule))}}.plm-notice strong{color:var(--ink);font-weight:600}.plm-bar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.plm-bar-spacer{margin-left:auto}.plm-qty-field{align-items:center;gap:8px;display:flex}.plm-qty-field .input{text-align:right;font-variant-numeric:tabular-nums;width:92px}.plm-qty-label{color:var(--ink-3);white-space:nowrap;font-size:12px}.diff-balance{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.diff-count{background:var(--surface-2);color:var(--ink-3);border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.diff-count.is-added{background:var(--ok)}@supports (color:color-mix(in lab, red, red)){.diff-count.is-added{background:color-mix(in srgb, var(--ok) 14%, var(--surface))}}.diff-count.is-added{color:#1f8a39}.diff-count.is-removed{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.diff-count.is-removed{background:color-mix(in srgb, var(--danger) 14%, var(--surface))}}.diff-count.is-removed{color:#c92a20}.diff-count.is-changed{background:#ff9500}@supports (color:color-mix(in lab, red, red)){.diff-count.is-changed{background:color-mix(in srgb, #ff9500 18%, var(--surface))}}.diff-count.is-changed{color:#a85e00}.table tr.diff-row>td:first-child{box-shadow:inset 3px 0 #0000}.table tr.diff-row.is-added>td:first-child{box-shadow:inset 3px 0 0 var(--ok)}.table tr.diff-row.is-removed>td:first-child{box-shadow:inset 3px 0 0 var(--danger)}.table tr.diff-row.is-changed>td:first-child{box-shadow:inset 3px 0 #ff9500}.table tr.diff-row.is-removed td{color:var(--ink-3)}.diff-changes{flex-direction:column;gap:2px;font-size:12.5px;display:flex}.diff-change{white-space:nowrap}.diff-was{color:var(--ink-4);text-decoration:line-through}.diff-arrow{color:var(--ink-4);padding:0 4px}.diff-now{color:var(--ink);font-weight:600}.diff-delta.is-up{color:#c92a20}.diff-delta.is-down{color:#1f8a39}.matrix-scroll{overflow-x:auto}.matrix-scroll .table{min-width:720px}.table td.matrix-cell.is-zero{color:var(--ink-4)}.table td.matrix-total,.table th.matrix-total{background:var(--surface-2);font-weight:600}.plm-head-note{text-align:right;max-width:46ch;margin:0;font-size:13px}.plm-inline-link{color:var(--ink);text-decoration:none}.plm-inline-link:hover{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.plm-inline-link:focus-visible{box-shadow:0 0 0 3px var(--accent-ring);border-radius:4px;outline:none}.plm-pill-row{flex-wrap:wrap;align-items:center;gap:5px;display:inline-flex}.plm-target-list{flex-direction:column;gap:2px;display:inline-flex}.plm-bulk-hint{font-size:12.5px}.plm-toolbar-field.is-wide{flex:0 340px;min-width:260px}.gap-tile.is-active{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.gap-tile.is-active{border-color:color-mix(in srgb, var(--accent) 45%, var(--rule))}}.gap-tile.is-active{background:var(--accent-soft)}.gap-tile.is-active:hover{transform:none}.btn.is-disabled{opacity:.4;pointer-events:none}.doc-view{flex-direction:column;gap:12px;display:flex}.doc-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;display:flex}.doc-bar-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.doc-bar-info{color:var(--ink-3);white-space:nowrap;font-size:12.5px}.doc-stage{background:var(--surface-2);border:1px solid var(--rule-soft);border-radius:var(--m-radius-sm);justify-content:center;align-items:flex-start;max-height:78vh;padding:12px;display:flex;position:relative;overflow:auto}.doc-stage--dxf{align-items:stretch;padding:0;overflow:hidden}.doc-stage-note{margin:0;font-size:13px;position:absolute;top:50%}.doc-canvas{max-width:none;box-shadow:var(--shadow-card);background:#fff;display:block}.doc-image{max-width:100%;height:auto;box-shadow:var(--shadow-card);display:block}.dxf-host{width:100%;height:62vh;min-height:320px}.dxf-host canvas{display:block}.doc-hint{margin:0;font-size:12.5px}.plm-progress{flex-direction:column;gap:5px;min-width:110px;display:flex}.plm-progress-head{justify-content:space-between;align-items:baseline;gap:8px;font-size:12px;display:flex}.plm-progress-title{color:var(--ink-3)}.plm-progress-value{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.plm-progress-track{background:var(--surface-2);border-radius:999px;height:6px;overflow:hidden}.plm-progress-fill{background:var(--accent);border-radius:999px;width:0%;height:100%;transition:width .2s}.plm-progress-fill.is-complete{background:var(--ok)}.plm-progress-fill.w-0{width:0%}.plm-progress-fill.w-10{width:10%}.plm-progress-fill.w-20{width:20%}.plm-progress-fill.w-30{width:30%}.plm-progress-fill.w-40{width:40%}.plm-progress-fill.w-50{width:50%}.plm-progress-fill.w-60{width:60%}.plm-progress-fill.w-70{width:70%}.plm-progress-fill.w-80{width:80%}.plm-progress-fill.w-90{width:90%}.plm-progress-fill.w-100{width:100%}.plm-progress-link{text-decoration:none;display:block}.plm-progress-link:hover .plm-progress-title{color:var(--accent)}.plm-progress-link:focus-visible{box-shadow:0 0 0 3px var(--accent-ring);border-radius:6px;outline:none}.plm-stage-track{align-items:flex-start;gap:0;margin:0;padding:6px 4px;list-style:none;display:flex;overflow-x:auto}.plm-stage{flex-direction:column;flex:1 1 0;align-items:center;gap:7px;min-width:66px;display:flex;position:relative}.plm-stage:not(:last-child):after{content:"";background:var(--rule);width:calc(100% - 26px);height:2px;position:absolute;top:7px;left:calc(50% + 13px)}.plm-stage.is-done:not(:last-child):after{background:var(--ok)}.plm-stage-dot{background:var(--surface);border:2px solid var(--rule);z-index:1;border-radius:50%;width:16px;height:16px}.plm-stage.is-done .plm-stage-dot{background:var(--ok);border-color:var(--ok)}.plm-stage.is-current .plm-stage-dot{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring)}.plm-stage-label{color:var(--ink-4);text-align:center;white-space:nowrap;font-size:11px}.plm-stage.is-done .plm-stage-label{color:var(--ink-3)}.plm-stage.is-current .plm-stage-label{color:var(--ink);font-weight:600}.plm-page .muted{color:var(--ink-4)}.plm-head-meta{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:8px;margin-top:9px;font-size:13px;display:flex}.plm-chain{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.plm-chain-item{display:flex}.plm-chain-link{color:var(--ink-2);background:var(--surface-2);border-radius:var(--m-radius-sm);border:1px solid #0000;align-items:center;gap:9px;padding:8px 12px;font-size:13px;text-decoration:none;transition:background .16s,border-color .16s;display:inline-flex}.plm-chain-link:hover{background:var(--surface-3)}.plm-chain-link:focus-visible{box-shadow:0 0 0 3px var(--accent-ring);outline:none}.plm-chain-item.is-current .plm-chain-link{background:var(--surface);border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.plm-chain-item.is-current .plm-chain-link{border-color:color-mix(in srgb, var(--accent) 40%, var(--rule))}}.plm-chain-item.is-current .plm-chain-link{box-shadow:var(--shadow-raised);color:var(--ink)}.plm-chain-pn{color:var(--ink-4)}.plm-form{flex-direction:column;gap:14px;max-width:560px;display:flex}.plm-form-foot{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.plm-modal-scroll{flex-direction:column;gap:14px;max-height:56vh;margin:0 -4px;padding:2px 4px;display:flex;overflow-y:auto}.plm-pn-preview{letter-spacing:.02em;text-align:center;color:var(--ink);background:var(--surface-2);border:1px solid var(--rule-soft);border-radius:var(--m-radius-sm);margin:0;padding:12px 14px;font-size:19px}.plm-stack-tight{flex-direction:column;gap:2px;display:flex}.th-sort{color:inherit;white-space:nowrap;align-items:center;gap:5px;text-decoration:none;display:inline-flex}.th-sort:hover,.th-sort.is-active{color:var(--ink)}.th-sort-arrow{min-width:8px;color:var(--accent);font-size:8px;line-height:1;display:inline-block}.table th:has(.th-sort){cursor:pointer}@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-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}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
